@charset "UTF-8";
/* =============================================
  variables
============================================= */
:root {
  --main-color-01: #282828;
}

/*===========================================
  vw 計算のための処理 Function
===========================================*/
/*=====================================
  base_base
=====================================*/
.l-container {
  margin-inline: auto;
  width: 100%;
  /* min-width: 1140px; */
  overflow: clip;
}

#feature * {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-style: normal;
  color: #000;
}
#feature *:focus {
  outline: none;
}
#feature a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
#feature a:hover {
  opacity: 0.7;
  cursor: pointer;
}
#feature li {
  list-style: none;
}
#feature img {
  max-width: 100%;
  width: 100%;
}
#feature a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
#feature a:hover {
  opacity: 0.7;
  cursor: pointer;
}
#feature p {
  margin: initial;
}
#feature [class*=img_] {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#feature .pc-none {
  display: none !important;
}
#feature .sp-none {
  display: block !important;
}
#feature .sp-none.wrap_credit {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

/*=====================================
  base_fonts
=====================================*/
/*=====================================
  component_common
=====================================*/
#feature {
  max-width: initial;
}
#feature [class*=inner_box] {
  position: relative;
}
#feature .wrap_credit {
  position: absolute;
  left: 0;
  bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
#feature .wrap_credit.--left {
  width: initial;
  display: initial;
  bottom: 0;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  padding-right: min(80px, 2.7416vw);
}
#feature .wrap_credit.--left .credit {
  -webkit-box-align: end;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end;
}
#feature .wrap_credit.--pc-left {
  width: initial;
  display: initial;
  bottom: 0;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  padding-right: min(80px, 2.7416vw);
}
#feature .wrap_credit.--pc-left .credit {
  -webkit-box-align: end;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end;
}
#feature .wrap_credit.--right {
  width: initial;
  display: initial;
  left: initial;
  right: 0;
  bottom: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  padding-left: min(80px, 2.7416vw);
}
#feature .wrap_credit.--right .credit {
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
}
#feature .wrap_credit.--pc-right {
  width: initial;
  display: initial;
  left: initial;
  right: 0;
  bottom: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  padding-left: min(94px, 3.22138vw);
}
#feature .wrap_credit.--pc-right .credit {
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
}
#feature .wrap_credit.--ps-right {
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
}
#feature .wrap_credit.--pc-ps-right {
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
}
#feature .wrap_credit.--ps-light {
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
}
#feature .wrap_credit.--col-block .credit {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(20px, 0.6854vw);
}
#feature .wrap_credit.--pc-col-block .credit {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(20px, 0.6854vw);
}
#feature .wrap_credit .credit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(28px, 0.95956vw);
}
#feature .wrap_credit .credit .item * {
  font-family: "nimbus-sans", sans-serif;
  font-size: min(25px, 0.85675vw);
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  letter-spacing: min(0.13px, 0.00446vw);
  text-align: center;
  text-decoration: underline;
  color: #000;
}
#feature .swiper {
  width: 100%;
}
#feature .text {
  font-size: min(27px, 0.92529vw);
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 2.07;
  letter-spacing: min(2.03px, 0.06957vw);
  text-align: justify;
  color: #000;
}

/*=====================================
modules_animation
=====================================*/
#feature .js-fade {
  opacity: 0;
  -webkit-transition: opacity 1600ms, -webkit-transform 1600ms;
  transition: opacity 1600ms, -webkit-transform 1600ms;
  transition: opacity 1600ms, transform 1600ms;
  transition: opacity 1600ms, transform 1600ms, -webkit-transform 1600ms;
}
#feature .js-fade-right {
  opacity: 0;
  -webkit-transform: translateX(18px);
          transform: translateX(18px);
  -webkit-transition: opacity 1600ms, -webkit-transform 1600ms;
  transition: opacity 1600ms, -webkit-transform 1600ms;
  transition: opacity 1600ms, transform 1600ms;
  transition: opacity 1600ms, transform 1600ms, -webkit-transform 1600ms;
}
#feature .is-active {
  opacity: 1;
  -webkit-transform: translate(0rem);
          transform: translate(0rem);
}

#feature .fv_title .js-eachTextAnime span {
  opacity: 0;
  position: relative;
  left: min(30px, 1.0281vw);
}
#feature .fv_title .js-eachTextAnime.appeartext span {
  -webkit-animation: text_anime_on 0.7s ease-out forwards;
          animation: text_anime_on 0.7s ease-out forwards;
}
@-webkit-keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
@keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

/*=====================================
modules_js
=====================================*/

@media screen and (max-width: 750px) {
  #feature a:hover {
    opacity: initial;
    cursor: pointer;
  }
  #feature .pc-none {
    display: block !important;
  }
  #feature .pc-none.wrap_credit {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  #feature .sp-none.wrap_credit {
    display: none !important;
  }
  #feature .sp-none {
    display: none !important;
  }
  #feature .wrap_credit {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #feature .wrap_credit.--pc-left {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transform: initial;
            transform: initial;
  }
  #feature .wrap_credit.--pc-right {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transform: initial;
            transform: initial;
  }
  #feature .wrap_credit.--sp-right {
    width: initial;
    display: initial;
    left: initial;
    right: 0;
    bottom: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    padding-left: min(80px, 5.11509vw);
  }
  #feature .wrap_credit.--sp-right .credit {
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
  }
  #feature .wrap_credit.--pc-ps-right {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #feature .wrap_credit.--pc-col-block .credit {
    gap: min(40px, 2.55754vw);
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
  }
  #feature .wrap_credit.--sp-col-block .credit {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #feature .wrap_credit .credit {
    gap: min(60px, 3.83632vw);
  }
  #feature .wrap_credit .credit .item * {
    font-size: min(50px, 3.19693vw);
    line-height: 1.08;
    letter-spacing: min(0.25px, 0.01598vw);
  }
  #feature .text {
    font-size: min(48px, 3.06905vw);
    line-height: 1.86;
    letter-spacing: min(4.8px, 0.30691vw);
  }
}
/*# sourceMappingURL=common.css.map */