@charset "utf-8";

/* TOP動画用 */
.main-view video#topmovie-pc {
  width: 100%;
  height: auto;
  display: block;
}

.main-view {
  width: 100%;
  margin-left: -1px;
  position: relative;
}

.main-view .overlay {
  background-image: url(../image/contents/home/movie-cover.png);
  background-repeat: repeat;
  width: 100%;
  height:100%;
  height: -webkit-fill-available;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, .1);
  background-size: 3px 3px;
  z-index: 0;
}

video#topmovie-tab.pc-none {
  display: none;
}

/* top animation */

.animation,
.animation-01 {
  opacity: 0;
  position: relative;
  top: 50px;
  transition: 0.5s;
}

.animation.active,
.animation-01.active {
  opacity: 1;
  top: 0;
  transition: 0.5s;
}

.fadeup {
  animation-name: fadeupAnime;
  animation-duration: 0.7s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeupAnime {
  from {
    opacity: 0;
    transform: translateY(50px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.delay-time01 {
  animation-delay: 0.3s;
}

.delay-time02 {
  animation-delay: 0.5s;
}

/* top menu */
#home .header {
  background-color: transparent;
  box-shadow: none;
}

.header-inner {
  max-width: 100%;
  margin: 0 0 0 auto;
  padding: 25px 0 0;
  width: 99%;
}

#home .header-tel {
  padding: 20px 0;
}

#home .contact {
  width: 90%;
  margin: auto;
}

.header .nav-scroll {
  position: absolute;
  top: 0;
  right: -330px;
  transition: .5s;
  height: 100%;
}

.header .nav-scroll.active {
  right: 0;
  transition: .5s;
}

#home #g-navi {
  width: 300px;
  transition: .5s;
  height: 100%;
  box-shadow: 0px 0 10px rgb(0 83 100 / 10%);
  background-color: #ffffff;
  min-height: 100vh;
  overflow-y: auto;
}

#home #g-navi.open {
  display: block;
  padding-top: 80px;
  transition: .5s;
}

#home #g-navi #navi-list li {
  width: 100%;
}

#home #g-navi ul#navi-list li.service .child {
  top: 210px;
}
#home #g-navi ul#navi-list li.company .child {
  top: 672px;
}
#home #g-navi #navi-list {
  flex-wrap: wrap;
}

#home #openMenu::before {
  position: absolute;
  content: "";
  background-image: url(../image/base/menu_bg.png);
  width: 175px;
  height: 155px;
  right: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: top right;
  opacity: .8;
}

/* main-view */

.main-view .txt-area {
  color: #fff;
  height: 185px;
  position: absolute;
  top: 36%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 1200px;
  text-align: left;
  width: 90%;
}

.main-view .txt-area .main-txt {
  display: block;
  font-size: 60px;
  font-family: "Roboto";
  font-weight: 900;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 1em;
  margin-bottom: 32px;
  text-transform: uppercase;
}

.main-view .txt-area .main-txt .space {
  padding: 0 6px 0 8px;
}

.main-view .txt-area .sub-txt {
  display: block;
  font-size: 30px;
  font-family: "Roboto";
  font-weight: 500;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 1.5em;
}

.main-view .btn-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1080px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2.5vw;
  width: 90%;
}

.main-view .btn-area .txt-3box {

  border-radius: 6px;

  background-color: #fff;
}

.main-view .btn-area .link-bnr {
  background: linear-gradient(90deg, #009dbf, #21b9d0);
  border-radius: 5px;
  color: #fff;
  display: block;
  position: relative;
  padding: 15px 15px 17px;
}

.main-view .btn-area .link-bnr:hover {
  opacity: 0.7;
}

.main-view .btn-area .link-bnr::before {
  background-image: url(../image/contents/home/ico_company.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 56px;
  width: 56px;
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.main-view .btn-area .txt-3box:nth-child(2) .link-bnr::before {
  background-image: url(../image/contents/home/ico_product.png);
}

.main-view .btn-area .txt-3box:nth-child(3) .link-bnr::before {
  background-image: url(../image/contents/home/ico_recruit.png);
}

.main-view .btn-area .txt-3box:nth-child(2) .link-bnr {
  background: linear-gradient(90deg, #008b45, #00b44c);
}

.main-view .btn-area .txt-3box:nth-child(3) .link-bnr {
  background: linear-gradient(45deg, #d86702 0%, #e58d02 100%);
}

.main-view .btn-area .link-bnr::after {
  background-image: url(../image/contents/arrow_white.svg);
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 25px;
  width: 25px;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {
  background-image: url(../image/contents/tab_ico_white.svg);
  right: 27px;
}

.main-view .btn-area .bnr-ttl {
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-left: 80px;
  position: relative;
  text-align: left;
}

.main-view .btn-area .bnr-ttl .sub-ttl {
  display: block;
  font-family: "Roboto";
  font-weight: bold;
  font-size: 74%;
  line-height: 1em;
  letter-spacing: 0.1em;
  padding-top: 5px;
  text-transform: uppercase;
}

/* contents */

#openMenu {
  cursor: pointer;
  margin: 0;
  position: relative;
  width: 40px;
  height: 22px;
  right: 0;
  bottom: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .5s;
}

#openMenu:hover {
  transition: .5s;
  opacity: 0.6;
}

#openMenu .headerColorScroll.nav-black,
.header .img-logo .headerColorScroll.no-main {
  opacity: 1;
  transition: .5s;
}

#home .menu-ico.nav-black.headerColorScroll {
  display: none;
}

.header .img-logo .headerColorScroll.main {
  opacity: 0;
  transition: .5s;
}

.header .img-logo .headerColorScroll.no-main {
  display: none;
  opacity: 0;
  transition: .5s;
}

.header .img-logo img.headerColorScroll.main {
  display: none;
}

#openMenu img {
  position: absolute;
  top: -30px;
  right: 38px;
  transition: .5s;
}

.no-hide #openMenu img {

  width: 31px;
}

.navi-inner {
  margin-bottom: 50px;
}

#openMenu img.nav-black,
.header .img-logo .no-main {
  opacity: 0;
}

.header .img-logo img {
  max-width: 320px;
}

.header .img-logo {
  width: 320px;
}

header.no-hide #openMenu {
  transition: .5s;
  z-index: 1;
}

header.no-hide #openMenu::before {
  display: none;
}

/*#openMenu .headerColorScroll.nav-black {
  filter: brightness(0);
}*/

#contents h2 {
  margin-bottom: 33px;
}

#top-product {
  padding: 65px 0 70px;
}

#contents #top-product h2 {
  margin-bottom: 20px;
}

#top-product .product-box {
  margin-bottom: 25px;
}

#top-product .txt {
  font-size: 18px;
  letter-spacing: 0.05em;
  margin-bottom: 35px;
}

#top-about{
  padding: 65px 0 80px;
}

#top-about .bnr-ttl {
  background: linear-gradient(90deg, #009dbf, #21b9d0);
  border-radius: 0 0 5px 5px;
  color: #fff;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.15em;
  padding: 26px 20px 20px 60px;
  position: relative;
  top: -1px;
}

#top-about .bnr-ttl .sub-ttl {
  display: inline-block;
  font-family: "Roboto";
  font-weight: 500;
  font-size: 70%;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  margin-left: 25px;
  text-transform: uppercase;
}

#top-concept {
  padding: 65px 0 80px;
}

#top-concept .link-bnr {
  border: 4px solid #008b46;
  border-radius: 5px;
  color: #fff;
  display: block;
  position: relative;
}

#top-concept .link-bnr img {
  border-radius: 1px;
  display: inline-block;
}

#top-concept .link-bnr .bnr-ttl {
  background: linear-gradient(90deg, #008b45, #00b44c);
  border-radius: 5px;
  display: flex;
  font-size: 28px;
  font-weight: 500;
  flex-direction: column;
  height: 170px;
  justify-content: center;
  letter-spacing: 0.1em;
  margin: 0;
  padding: 20px 10px;
  writing-mode: vertical-rl;
  width: 95px;
  position: absolute;
  top: 30px;
  left: 35px;
}

#top-concept .link-bnr .bnr-ttl .sub-ttl {
  display: block;
  font-family: 'Roboto', sans-serif;
  font-size: 50%;
  font-weight: bold;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  line-height: 1em;
  margin-left: 10px;
  padding-top: 3px;
  text-orientation: sideways;
  text-transform: uppercase;
}

#contents .bg-gray .link-btn {
  background: linear-gradient(90deg, #009dbf, #21b9d0);
}

#contents .link-btn {
  max-width: 340px;
}

#contents #top-column h2 {
  margin-bottom: 45px;
}

#contents #top-column .link-btn {
  margin-top: 10px;
}
#contents #top-movie {
  padding: 65px 0;
}

#contents #top-column {
  padding: 65px 0 40px;
}
#contents #top-news {
  padding: 65px 0 50px;
}

.youtube {
  margin: auto;
  text-align: center;
  max-width: 860px;
  height: 484px;
}

.youtube iframe {
  width: 800px;
  height: 450px;
  border: none;
}

#contents #top-news .news-contents {
  background-color: transparent;
}

#contents #top-news .inner {
  max-width: 1000px;
}

#contents #top-news .inner .txt-right {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-top: 8px;
}

#contents #top-pickup {
  padding: 65px 0 80px;
}

#top-pickup a[href$=".pdf"]::before {
  display: none;
}

#top-pickup .txt-3box {
  margin: 0 20px 20px 0;
  width: calc(100% / 3 - 14px);
}

#top-pickup .txt-3box.end {
  margin-right: 0;
}

#top-pickup .txt-4box{
  margin-right: 20px;
  width: calc(100% / 4 - 15px);
}

#top-pickup .txt-4box.end{
  margin-right: 0;
  }

#top-pickup .link-bnr {
  background: linear-gradient(90deg, #009dbf, #21b9d0);
  border-radius: 5px;
  color: #fff;
  display: block;
  padding: 48px 10px;
  position: relative;
}

#top-pickup .link-bnr::after {
  background-image: url(../image/contents/arrow_white.svg);
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 25px;
  width: 25px;
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}

#top-pickup .txt-4box:nth-child(4) .link-bnr::after,
#top-pickup .txt-4box:nth-child(6) .link-bnr::after,
#top-pickup .txt-4box:nth-child(7) .link-bnr::after {
  background-image: url(../image/contents/tab_ico_white.svg);
  right: 10px;
  height: 22px;
  width: 22px;
}

#top-pickup .link-bnr .bnr-ttl {
  font-size: 21px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-bottom: 0;
  padding-left: 84px;
  position: relative;
}

#top-pickup .txt-4box .link-bnr{
  padding: 50px 10px;
}

#top-pickup .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_01.png?ver=20250605);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 60px;
  width: 60px;
  position: absolute;
  left: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}

#top-pickup .txt-4box .bnr-ttl::before {
  height: 60px;
  width: 60px;
  left: 0;
}

#top-pickup .txt-4box .link-bnr .bnr-ttl {
  padding-left: 75px;
  font-size: 19px;
}

#top-pickup .txt-3box:nth-child(2) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_02.png?ver=20250605);
}

#top-pickup .txt-3box:nth-child(3) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_03.png?ver=20250605);
}

#top-pickup .txt-4box:nth-child(4) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_04.png?ver=20250605);
}

#top-pickup .txt-4box:nth-child(5) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_05.png?ver=20250605);
}

#top-pickup .txt-4box:nth-child(6) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_06.png?ver=20250605);
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl::before {
  background-image: url(../image/contents/home/pickup_ico_07.png?ver=20250605);
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl {
  font-size: 16px;
  line-height: 1.75em;
}

#top-pickup .txt-4box:nth-child(7) .link-bnr {
  padding: 37.5px 10px;
}

#top-pickup .txt-4box .link-bnr::after {
  right: 7px;
}

#top-pickup .link-bnr .bnr-ttl .sub-ttl {
  display: block;
  font-family: "Roboto";
  font-weight: bold;
  font-size: 73%;
  letter-spacing: 0.1em;
  line-height: 1em;
  padding-top: 13px;
  text-transform: uppercase;
}

#top-contact {
  background-image: url(../image/contents/home/top_contact_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 65px 0 82px;
}

#top-contact .txt {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 0 auto;
  max-width: 1040px;
  padding-bottom: 33px;
  position: relative;
  right: -7px;
}

#top-contact .txt::before {
  background-image: url(../image/contents/home/top_contact_photo.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 145px;
  width: 173px;
  position: absolute;
  bottom: 0;
  right: 20px;
}

#top-contact .contact-box .txt-2box {
  background-color: #fff;
  border-radius: 5px 0 0 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: 50px 20px;
  width: 50%;
}

#top-contact .contact-box .txt-2box.end {
  border-left: 2px solid #d6e6d2;
  border-radius: 0 5px 5px 0;
}

#top-contact .contact-box .ttl {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}

#top-contact .contact-box .end .ttl {
  margin-top: -13px;
  margin-bottom: 25px;
}

#top-contact .contact-box .txt-2box.end .ttl {
  margin-left: -30px;
}

#top-contact .contact-box .tel-item {
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}

#top-contact .contact-box a[href*="tel:"] {
  color: #009dbf;
  background: linear-gradient(90deg, #009dbf, #21b9d0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
  font-size: 57px;
  font-family: "Roboto";
  font-weight: bold;
  line-height: 1em;
  letter-spacing: 0;
  max-width: 480px;
  margin: 0 auto 5px;
  margin-right: 20px;
  position: relative;
}

#top-contact .contact-box a[href*="tel:"]::before {
  background-image: url(../image/contents/blue_tel_ico.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 28px;
  width: 29px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px;
  margin: auto;
}

#top-contact .contact-box .link-btn {
  background: linear-gradient(90deg, #009dbf, #21b9d0);
  max-width: 380px;
  padding: 21px 12px;
  width: 100%;
}

.top-bnr-area img {
  border-radius: 5px;
  display: block;
}

.top-bnr-area {
  padding: 30px 0;
}

#contents .top-bnr-area .inner {
  max-width: 1050px;
}

#contents .top-bnr-area .inner .rikunabi img{
  border: 2px solid #0068b7;
}

#contents .top-bnr-area .inner .rikunabi.rikunabi-2027 img{
  border: 2px solid #265bda;
}

#contents .top-bnr-area .inner .mynavi img{
  border: 2px solid #00aee7;
}

#contents .top-bnr-area .inner .txt-6box {
  align-items: center;
  display: flex;
  justify-content: center;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(4),#contents .top-bnr-area .inner .txt-6box:nth-child(5){
  display: block;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(4) img,#contents .top-bnr-area .inner .txt-6box:nth-child(5) img{
  border-radius: 0;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(1) img {
  width: 128px;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(4) img {
  width: 220px;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(5) img {
  width: 220px;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(6) img {
  margin: 0 auto;
  width: 109px;
}

#contents .top-bnr-area .bnr-txt {
  display: block;
  font-size: 12px;
  margin-top: -3px;
}

#contents .top-bnr-area p {
  margin-bottom: 0;
}

#contents .top-bnr-area p.mb-10{
  margin-bottom: 10px;
}

#top-about .txt-2box {
  max-width: 580px;
}

.concept-box .txt-3box {
  margin-right: 3.1%;
}

.concept-box .txt-3box.end {
  margin-right: 0;
}

#top-about .txt-2box.end {
  margin-right: 0px;
}

@media screen and (min-width: 960px) {
  #home .navi-inner .sub-nav {
    order: 1;
    width: 100%;
    display: block;
  }

  #home .navi-inner .header-search {
    display: block;
  }

  #home .header-search .searchform {
    justify-content: center;
    margin: 30px auto;
    width: 92%;
  }

  .header-search .search-input-area {
    width: calc(100% - 90px);
  }

  .header-inner {
    padding: 35px 0 0;
  }
}

@media screen and (max-width: 1300px) {
  .main-view video#topmovie-pc {
    display: none;
  }

  .main-view video#topmovie-tab {
    display: block;
    height: inherit;
  }

  #top-contact .contact-box a[href*="tel:"] {
    margin-right: 0;
  }

  #top-pickup .txt-4box:nth-child(4) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(6) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(7) .link-bnr::after {
    right: 10px;
    height: 18px;
    width: 18px;
  }

  #top-pickup .link-bnr::after {
    right: 5px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    padding-left: 85px;
  }

  #top-pickup .bnr-ttl::before {
    height: 65px;
    width: 65px;
    left: 5px;
  }

  .main-view {
    height: calc(100vw / 1.6);
  }

  .main-view .overlay {
    height: 62.5vw;
  }

  #top-pickup .txt-4box .link-bnr .bnr-ttl {
    font-size: 16px;
}

  #top-pickup .txt-4box:nth-child(7) .bnr-ttl {
    font-size: 14px;
}


#top-pickup .txt-4box:nth-child(7) .link-bnr {
  padding: 40.5px 10px;
}

}

@media screen and (max-width: 1200px) {
  #top-concept .link-bnr .bnr-ttl {
    top: 20px;
  }

  #contents .top-bnr-area .bnr-txt {
    font-size: 10px;
    letter-spacing: 0em;
}
}

@media screen and (max-width: 1140px) {
  .main-view {
    height: calc(100vw / 1.5);
  }

  .header .img-logo img {
    max-width: 280px;
  }

  .main-view .overlay {
    height: -webkit-fill-available;
  }

  #openMenu {
    right: 0;
  }

  #top-contact .contact-box .txt-2box {
    padding: 40px 20px;
  }

  #top-contact .contact-box a[href*="tel:"]::before {

    height: 23px;

    width: 24px;
  }

  #top-contact .contact-box a[href*="tel:"] {
    font-size: 45px;
    max-width: 393px;
  }

  #top-contact .contact-box .link-btn {
    padding: 15px 12px;
  }

  #top-contact .contact-box .txt-2box.end .ttl {
    margin-left: 0;
    margin-bottom: 20px;
  }

  #top-contact .contact-box .ttl {
    font-size: 20px;
    margin-bottom: 10px;
  }

  #top-contact .txt::before {
    height: 116px;
    width: 142px;
  }

  #top-contact .txt {
    font-size: 17px;
  }

  #top-contact {
    padding: 55px 0 70px;
  }

  #top-pickup .txt-4box:nth-child(4) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(6) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(7) .link-bnr::after {
    right: 13px;
    height: 20px;
    width: 20px;
  }

  #top-pickup .txt-3box {
    margin: 0 20px 25px 0;
    width: calc(100% / 3 - 15px);
  }

  #top-pickup .bnr-ttl::before {
    height: 38px;
    width: 38px;
    left: 5px;
  }

  #top-pickup .link-bnr .bnr-ttl .sub-ttl {
    padding-top: 10px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    font-size: 17px;
    padding-left: 55px;
  }

  #contents #top-pickup {
    padding: 55px 0 40px;
  }

  #contents #top-news .inner .txt-right {
    font-size: 16px;
  }

  #contents #top-news {
    padding: 55px 0 40px;
  }

  #contents #top-column h2 {
    margin-bottom: 35px;
  }

  #contents h2 {
    margin-bottom: 28px;
  }

  #top-concept .link-bnr .bnr-ttl {
    font-size: 24px;
    top: 5%;
    height: 140px;
    width: 85px;
  }

  #top-concept {
    padding: 55px 0 65px;
  }

  #top-about .bnr-ttl .sub-ttl {
    margin-left: 20px;
  }

  #top-about .bnr-ttl {
    font-size: 24px;
    letter-spacing: 0.13em;
    padding: 21px 15px 17px 40px;
  }

  #top-product {
    padding: 55px 0 60px;
  }

  #top-product .txt {
    font-size: 17px;
    margin-bottom: 30px;
  }

  .main-view .btn-area .bnr-ttl {

    font-size: 17px;
  }

  .main-view .txt-area {
    height: 155px;
  }

  .main-view .txt-area .sub-txt {
    font-size: 26px;
  }

  .main-view .txt-area .main-txt {
    font-size: 50px;
  }
  
  #top-pickup .txt-4box .link-bnr .bnr-ttl {
    padding-left: 45px;
    font-size: 15px;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl {
  font-size: 13px;
}

#top-pickup .txt-4box:nth-child(7) .link-bnr {
  padding: 42.5px 10px;
}

#top-pickup .txt-4box .bnr-ttl::before {
  height: 38px;
  width: 38px;
}
}

@media screen and (max-width: 1024px) {
  #top-product .txt {
    font-size: 16px;
  }

  #top-contact .contact-box .txt-2box {
    padding: 35px 20px;
  }

  #top-contact .contact-box a[href*="tel:"] {
    font-size: 43px;
    max-width: 375px;
  }

  #top-contact .txt {
    font-size: 16px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    font-size: 16px;
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {

    height: 21px;
  }

  .main-view .btn-area .link-bnr::before {
    height: 46px;
    width: 46px;
  }

  .main-view .btn-area .bnr-ttl {
    font-size: 16px;
    line-height: 1.5em;
    padding-left: 70px;
  }

  .main-view .txt-area {
    height: 145px;
    top: unset;
    bottom: 15vw;
  }

  .main-view .txt-area .sub-txt {
    font-size: 24px;
  }

  .main-view .txt-area .main-txt {
    font-size: 43px;
    margin-bottom: 25px;
  }
}

/* view-959 Mobile,Tablet */
@media screen and (max-width: 959px) {
  .youtube iframe {
    width: 750px;
    height: 400px;
}

  #home #g-navi ul#navi-list li .child {
    top: 0;
  }

  .header .img-logo img {
    max-width: 250px;
  }

  .no-hide .header .img-logo .headerColorScroll.no-main {
    display: block;
    opacity: 1;
    transition: .5s;
  }

  .main-view .btn-area .link-bnr::before {
    background-image: url(../image/contents/home/sp_ico_company.png);
  }

  .main-view .btn-area .txt-3box:nth-child(2) .link-bnr::before {
    background-image: url(../image/contents/home/sp_ico_product.png);
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::before {
    background-image: url(../image/contents/home/sp_ico_recruit.png);
  }

  #contents .top-bnr-area .inner .txt-6box {
    margin-right: 15px;
    width: calc(100% / 6 - 13px);
  }

  #contents .top-bnr-area .inner .txt-6box.end {
    margin-right: 0;
  }

  #top-contact .contact-box .txt-2box {
    padding: 28px 15px;
  }

  #top-contact .contact-box .txt-2box.end .ttl {
    margin: -6px auto 15px;
  }

  #top-contact .contact-box .link-btn {
    font-size: 15px;
  }

  #top-contact .contact-box a[href*="tel:"]::before {
    height: 17px;
    width: 18px;
    left: 15px;
  }

  #top-contact .contact-box a[href*="tel:"] {
    font-size: 36px;
    margin: 0 auto 5px;
    max-width: 295px;
    padding-left: 15px;
  }

  #top-contact .contact-box .ttl {
    font-size: 18px;
  }

  #top-contact .txt::before {
    height: 102px;
    width: 125px;
  }

  #top-contact .txt {
    max-width: 600px;
    padding-bottom: 30px;
  }

  #top-contact {
    padding: 45px 0 60px;
  }

  #top-pickup .txt-4box:nth-child(4) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(6) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(7) .link-bnr::after {
    height: 20px;
    width: 20px;
  }

  #top-pickup .link-bnr .bnr-ttl .sub-ttl {
    padding-top: 5px;
  }

  #top-pickup .link-bnr {
    padding: 25px 15px 28px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    padding-left: 80px;
  }

  #top-pickup .txt-3box,
  #top-pickup .txt-3box.end {
    margin: 0 15px 20px 0;
    width: calc(100% / 2 - 10px);
  }

  #top-pickup .txt-3box:nth-child(2n) {
    margin-right: 0;
  }

  #contents #top-pickup {
    padding: 50px 0 35px;
  }

  #contents #top-news .inner .txt-right {
    font-size: 15px;
  }

  #contents #top-news {
    padding: 50px 0 35px;
  }

  #top-concept .link-bnr .bnr-ttl {
    font-size: 22px;
    top: 7%;
    height: 130px;
  }

  #top-column {
    padding: 50px 0 60px;
  }

  #top-concept .inner {
    max-width: 550px;
  }

  #top-about .bnr-ttl .sub-ttl {
    margin-left: 15px;
  }

  #top-about .bnr-ttl {
    font-size: 22px;
    margin-bottom: 0;
    padding: 17px 15px 14px 30px;
  }

  #top-about .txt-2box {
    margin-right: 3%;
    width: 48.5%;
  }

  #top-concept .txt-3box {
    margin-right: 3.2%;
    width: 48%;
  }

  #top-about .txt-2box.end,
  #top-concept .txt-3box.end {
    margin-right: 0;
  }

  #top-product {
    padding: 50px 0 55px;
  }

  #top-movie {
    padding: 50px 0 55px;
  }

  #top-column {
    padding: 50px 0 55px;
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {
    right: 15px;
  }

  .main-view .btn-area .link-bnr::after {
    right: 10px;
  }

  .main-view .btn-area .txt-3box {
    margin-right: 15px;
    width: calc(100% / 3 - 10px);
  }

  .main-view .btn-area .txt-3box.end {
    margin-right: 0;
  }

  #openMenu {
    width: 35px;
    transition: unset;
  }

  .no-hide #openMenu img {
    right: 20px;
    top: -5px;
    width: 28px;
  }

  .header .img-logo a {
    height: 100%;
    width: 100%;
  }

  #openMenu img {
    transition: unset;
    width: auto;
    top: -10px;
    right: 25px;
  }

  #home #g-navi {
    width: 100%;
    padding-top: 40px;
    z-index: 0;
    transition: .5s;
    top: 0;
  }

  #home .header-inner {
    padding-top: 15px;
    width: 98%;
    z-index: 1;
  }

  #home .sub-nav {
    order: 2;
    width: 100%;
  }

  #home #g-navi #navi-list li a {
    border: none;
  }

  .main-view video#topmovie-sp {
    display: none;
  }

  .main-view video#topmovie-tab {
    height: 68vw;
    z-index: -1;
  }

  .main-view .overlay {
    height: 68vw;
  }

  #top-pickup .txt-4box {
    margin-right: 15px;
    width: calc(100% / 2 - 10px);
}

#top-pickup .txt-4box:nth-child(2n) {
  margin-right: 0;
}

#top-pickup .txt-4box:last-child{
  margin-top: 20px;
}

#top-pickup .txt-4box .link-bnr .bnr-ttl {
  padding-left: 80px;
}

#top-pickup .txt-4box .bnr-ttl::before {
  height: 51px;
  width: 51px;
  left: 3px;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl::before {
  left: 5px;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl {
  line-height: 1.6em;
}

#top-pickup .txt-4box:nth-child(7) .link-bnr {
  padding: 19.5px 10px;
}

#top-pickup .txt-4box .link-bnr {
  padding: 25px 15px 28px;
}

#top-pickup .bnr-ttl::before {
  height: 51px;
  width: 51px;
  left: 3px;
}
}

@media screen and (max-width: 834px) {
  #contents .top-bnr-area .inner .txt-6box {
    margin-right: 10px;
    width: calc(100% / 6 - 10px);
}

#contents .top-bnr-area .inner .txt-6box.end {
  margin-right: 0;
}

.youtube {
  width: 100%;
  height: 340px;
}

.youtube iframe {
  width: 640px;
  height: 340px;
}

}

@media screen and (max-width: 767px) {
  .youtube iframe {
    width: 100%;
}

  #contents .top-bnr-area .inner {
    max-width: 500px;
  }

  #contents .top-bnr-area .bnr-txt {
    line-height: 1em;
    margin-top: 8px;
  }

  #contents .top-bnr-area .inner .txt-6box {
    margin-right: 10px;
    width: calc(100% / 3 - 8px);
}

  #contents .top-bnr-area .inner .txt-6box:nth-child(1),
  #contents .top-bnr-area .inner .txt-6box:nth-child(2),
  #contents .top-bnr-area .inner .txt-6box:nth-child(3),
  #contents .top-bnr-area .inner .txt-6box:nth-child(4) {
    margin-bottom: 20px;
  }

  #contents .top-bnr-area .inner .txt-6box:nth-child(3n) {
    margin-right: 0;
  }

  #top-contact .contact-box .link-btn::before {
    right: -3px;
  }

  #top-contact .contact-box a[href*="tel:"] {
    max-width: 260px;
    padding-left: 20px;
  }

  #top-contact .contact-box a[href*="tel:"]::before {
    left: 0;
  }

  #top-contact .contact-box .ttl {
    font-size: 17px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    font-size: 16px;
    padding-left: 70px;
  }

  #top-concept .inner {
    max-width: 520px;
  }

  #top-about .bnr-ttl {
    font-size: 21px;
    padding: 14px 15px 11px 25px;
  }

  #contents .link-btn {
    max-width: 310px;
  }

  .main-view .btn-area {
    bottom: 4vw;
  }

  .main-view .btn-area .bnr-ttl .sub-ttl {
    padding-top: 3px;
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {
    right: 8px;
    height: 19px;
  }

  .main-view .btn-area .link-bnr::after {
    right: 5px;
  }

  .main-view .btn-area .link-bnr::before {
    height: 40px;
    width: 40px;
    left: 10px;
  }

  .main-view .btn-area .bnr-ttl {
    padding-left: 50px;
  }

  /*.main-view {
    height: calc(100vw / 1.3);
  }*/

  .main-view .txt-area .main-txt {
    margin-bottom: 5px;
  }

  .main-view .txt-area .sub-txt {
    font-size: 20px;
  }
}

@media screen and (max-width: 640px) {
  .youtube iframe {
    height: 300px;
}

  #top-contact .contact-box .link-btn::before {
    right: 10px;
  }

  #top-contact .contact-box .txt-2box.end {
    border-top: 2px solid #d6e6d2;
    border-left: none;
    border-radius: 0 0 5px 5px;
    padding: 25px 15px 28px;
  }

  #top-contact .contact-box .txt-2box {
    border-radius: 5px 5px 0 0;
    margin-right: 0;
    padding: 20px 15px;
    width: 100%;
  }

  #top-contact .txt {
    padding-bottom: 25px;
  }

  #top-contact h2 {
    margin-bottom: 20px;
  }

  #top-contact .txt::before {
    display: none;
  }

  #top-pickup .txt-4box:nth-child(4) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(6) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(7) .link-bnr::after {
    right: 5px;
  }

  #top-pickup .link-bnr::after {
    right: 0;
  }

  #top-pickup .link-bnr .bnr-ttl {
    padding-left: 55px;
  }

  #top-pickup .bnr-ttl::before {
    height: 45px;
    width: 45px;
    left: -3px;
  }

  .main-view .btn-area .bnr-ttl {
    padding-left: 45px;
  }
  
  #top-pickup .txt-4box .bnr-ttl::before {
    height: 45px;
    width: 45px;
    left: -3px;
  }

  #top-pickup .txt-4box:nth-child(7) .bnr-ttl::before{
    left: -3px;
  }

  #top-pickup .txt-4box .bnr-ttl {
    padding-left: 45px;
  }

  .main-view .btn-area .link-bnr::after {
    right: 0;
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {
    right: 0;
  }

  .main-view .btn-area .link-bnr::before {
    height: 40px;
    width: 40px;
    left: 12px;
  }
  
  #top-pickup .txt-3box .link-bnr .bnr-ttl {
    font-size: 16px;
  }

  #top-pickup .txt-4box .link-bnr .bnr-ttl {
    font-size: 16px;
    padding-left: 55px;
  }

  #top-pickup .txt-4box:nth-child(7) .bnr-ttl {
    font-size: 15px;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(4),
#contents .top-bnr-area .inner .txt-6box:nth-child(5) {
  margin-right: 10px;
  width: calc(100% / 2 - 8px);
}

#contents .top-bnr-area .inner .txt-6box:nth-child(3n) {
  margin-right: 0;
}

#contents .top-bnr-area .inner .txt-6box:nth-child(5){
  margin-right: 0;
}
}

@media screen and (max-width: 559px) {

  .youtube {
    width: 100%;
    height: 270px;
}

.youtube iframe {
  height: 280px;
}

  .no-hide #openMenu img {
    right: 20px;
    top: -5px;
    width: 22px;
  }

  .header .img-logo img {
    max-width: 210px;
  }

  .header .img-logo img.main {
    max-width: 230px;
    top: -9px;
    left: -12px;
  }

  .main-view .btn-area .link-bnr::after {
    height: 20px;
    width: 20px;
  }

  .main-view .btn-area .txt-3box:nth-child(3) .link-bnr::after {
    height: 16px;
    width: 20px;
  }

  .main-view video#topmovie-pc,
  .main-view video#topmovie-tab {
    display: none;
  }

  .main-view video#topmovie-sp {
    display: block;
  }

  .main-view video#topmovie-sp {
    height: 120vw;
  }

  .main-view {
    width: 100%;
    height: calc(96vw / 0.8);
    margin-left: 0;
  }

  .main-view video {
    width: 100%;
  }

  .main-view .txt-area {
    top: 20%;
    height: 98px;
    z-index: 1;
  }

  .main-view .overlay {
    height: 120vw;
    z-index: 0;
  }

  #openMenu {
    width: 26px;
  }

  #openMenu img {
    top: -4px;
    right: 18px;
  }

  #home #openMenu::before {
    width: 140px;
    height: 123px;
  }

  #top-concept .link-bnr .bnr-ttl .sub-ttl {
    margin-left: 3px;
  }

  #home #g-navi.open {
    padding-top: 71px;
  }

  #top-contact .contact-box .txt-2box.end .ttl {
    margin: -6px auto 10px;
  }

  #top-contact .contact-box .ttl {
    margin-bottom: 5px;
  }

  #top-contact .contact-box a[href*="tel:"] {
    margin-bottom: 2px;
  }

  #top-contact .contact-box .tel-item {
    font-size: 15px;
  }

  #top-contact {
    padding: 35px 0 50px;
  }

  #top-pickup .txt-3box, #top-pickup .txt-3box.end {
    margin: 0 10px 10px 0;
}

  #top-pickup .link-bnr .bnr-ttl .sub-ttl {
    padding-top: 2px;
  }

  #top-pickup .txt-4box:nth-child(4) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(6) .link-bnr::after,
  #top-pickup .txt-4box:nth-child(7) .link-bnr::after {
    right: 4px;
    height: 18px;
    width: 18px;
  }

  #top-pickup .link-bnr::after {
    right: 0;
  }

  #top-pickup .bnr-ttl::before {
    top: 3px;
    margin-bottom: 8px;
    position: relative;
  }

  #top-pickup .link-bnr {
    padding: 13px 15px 18px;
  }

  #top-pickup .link-bnr .bnr-ttl {
    font-size: 15px;
    padding-left: 0;
    text-align: center;
  }

  #contents #top-pickup {
    padding: 40px 0 25px;
  }

  #contents #top-news {
    padding: 40px 0 25px;
  }

  #contents #top-column h2 {
    margin-bottom: 25px;
  }

  #contents h2 {
    margin-bottom: 20px;
  }

  #top-concept .txt-3box.end {
    margin-top: 15px;
  }

  #top-concept .link-bnr img {
    object-fit: cover;
    height: 40vw;
    width: 100%;
  }

  #top-concept .link-bnr .bnr-ttl {
    font-size: 19px;
    height: 110px;
    left: 30px;
  }

  #top-concept {
    padding: 40px 0 45px;
  }

  #top-about .txt-2box.end {
    margin-top: 15px;
  }

  #top-about .txt-2box,
  #top-concept .txt-3box {
    margin-right: 0;
    width: 100%;
  }

  #top-about .bnr-ttl {

    font-size: 19px;
  }

  #contents .link-btn {
    max-width: 100%;
  }

  #top-product .product-box {
    margin-bottom: 15px;
  }

  #contents #top-product h2 {
    margin-bottom: 15px;
  }

  #top-product .txt {
    line-height: 1.7em;
    margin-bottom: 22px;
  }

  #top-product {
    padding: 40px 0 45px;
  }

  #contents #top-movie {
    padding: 40px 0 45px;
  }

  .main-view .btn-area .link-bnr {
    padding: 8px 15px 12px;
  }

  .main-view .btn-area .link-bnr::before {
    position: relative;
    height: 32px;
    width: 32px;
    left: 0;
  }

  .main-view .btn-area .bnr-ttl .sub-ttl {
    padding-top: 0;
  }

  .main-view .btn-area .bnr-ttl {
    font-size: 14px;
    line-height: 1.7em;
    margin-top: 2px;
    padding-left: 0;
    text-align: center;
  }

  .main-view .btn-area .txt-3box {
    margin-right: 8px;
    width: calc(100% / 3 - 7px);
  }

  .main-view .txt-area .sub-txt {
    font-size: 18px;
  }

  .main-view .txt-area .main-txt {
    font-size: 27px;
    margin-bottom: 20px;
  }

  .main-view .btn-area {
    bottom: 6vw;
    justify-content: center;
    width: 93%;
  }

  /*.main-view {
    height: calc(100vw / 0.8);
  }*/

  #home .header-inner {
    width: 97%;
  }

  #top-pickup .txt-4box .link-bnr .bnr-ttl {
    padding-left: 0;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl {
  line-height: 1.5em;
}

#top-pickup .txt-4box:nth-child(7) .link-bnr .bnr-ttl .sub-ttl {
  padding-top: 7px;
}

#top-pickup .txt-4box:nth-child(7) .link-bnr {
  padding: 13px 15px 18px;
}

#top-pickup .txt-3box .link-bnr .bnr-ttl {
  font-size: 14px;
}

#top-pickup .txt-3box .link-bnr .bnr-ttl,#top-pickup .txt-4box .link-bnr .bnr-ttl {
  font-size: 14px;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl{
  font-size: 12.5px;
}

#top-pickup .txt-4box {
  margin-right: 10px;
  width: calc(100% / 2 - 10px);
}

#top-pickup .txt-4box:last-child {
  margin-top: 10px;
}

#top-pickup .txt-4box.end {
  margin-right: 0;
}

#top-pickup .link-bnr::after {
  height: 20px;
  width: 20px;
  right: 2px;
}

#top-pickup .txt-4box .link-bnr::after{
  right: 2px;
}

#top-pickup .txt-4box:nth-child(7) .bnr-ttl::before {
  left: 0;
}

#top-pickup .txt-4box .link-bnr {
  padding: 13px 15px 18px;
}
}

@media screen and (max-width: 500px) {
  .youtube iframe {
    height: 240px;
}
}

@media screen and (max-width: 430px) {
  .main-view .txt-area {
    top: 14%;
  }

  .main-view .btn-area {
    bottom: 4vw;
  }

  .main-view .txt-area .main-txt {
    margin-bottom: 10px;
  }

  .youtube,.youtube iframe {
    height: 215px;
}
}

@media screen and (max-width: 393px) {
.youtube iframe {
    height: 185px;
}

.youtube {
  height: 185px;
}
}

@media screen and (max-width: 390px) {
  #openMenu img {
    top: -4px;
    right: 19px;
  }

  #home #openMenu::before {
    width: 132px;
    height: 115px;
  }
}

@media screen and (max-width: 375px) {}
