@charset "UTF-8";
html {
  font-size: 10px;
  overflow-x: hidden;
}
.l-container {
  width: 100%;
}

.l-container #feature {
  margin: 0 auto;
  width: 100%;
  text-align: center;
  overflow: clip;
}
.l-container #feature * {
  box-sizing: border-box;
}
.l-container #feature *::after {
  box-sizing: border-box;
}
.l-container #feature *::before {
  box-sizing: border-box;
}
.l-container #feature a {
  display: block;
  text-decoration: none;
  position: relative;
}
.l-container #feature a::after {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.6);
  transition: all 0.4s;
}
.l-container #feature a:hover {
  cursor: pointer;
}
.l-container #feature a:hover::after {
  opacity: 1;
  transition: 0.4s;
}
.l-container #feature .default-img {
  width: 100%;
  display: block;
}
.l-container #feature picture {
  display: block;
}
.l-container #feature .creditContainer .credit {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.8rem;
}
.l-container #feature .creditContainer li {
  width: fit-content;
  position: relative;
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  line-height: 2.1rem;
  letter-spacing: 0.04em;
  color: #58595B;
}
.l-container #feature .creditContainer li a {
  color: #58595B;
  transition: 0.3s;
  text-decoration: none;
}
.l-container #feature .creditContainer li a:hover {
  opacity: 0.6;
  cursor: pointer;
  text-decoration: none;
}
.l-container #feature .creditContainer li a::after {
  display: none;
}
.l-container #feature .creditContainer .price {
  margin-left: 0.4rem;
}
.l-container #feature .hero {
  margin: 0 auto 0;
  width: 100%;
  position: relative;
}
.l-container #feature .hero__inner {
  width: 140rem;
  margin: 0 auto 0;
}
.l-container #feature .hero__img {
  margin: 0 auto 0;
  width: 120rem;
}
.l-container #feature .container {
  margin: 0 auto;
  width: 100%;
  position: relative;
}
.l-container #feature .container__inner {
  width: 140rem;
  margin: 0 auto;
}
.l-container #feature .container__img_01 {
  margin: 0 auto 0;
  width: 47rem;
}
.l-container #feature .container__img_02 {
  margin: 0 auto 0;
  width: 41rem;
}
.l-container #feature .container__img_03 {
  margin: 0 auto 0;
  width: 38.4rem;
}
.l-container #feature .container__img_03 a::after {
  -webkit-mask-image: url("../img/img_03.png");
  mask-image: url("../img/img_03.png");
  -webkit-mask-size: cover;
  mask-size: cover;
}
.l-container #feature .container__img_04 {
  margin: 0 auto 0;
  width: 42rem;
}
.l-container #feature .container__img_05 {
  margin: 0 auto 0;
  width: 38rem;
}
.l-container #feature .container__img_06 {
  margin: 0 auto 0;
  width: 45rem;
}
.l-container #feature .container__img_07 {
  margin: 0 auto 0;
  width: 51rem;
}
.l-container #feature .container__img_09 {
  margin: 0 auto 0;
  width: 40.8rem;
}
.l-container #feature .container__img_09 a::after {
  -webkit-mask-image: url("../img/img_09.png");
  mask-image: url("../img/img_09.png");
  -webkit-mask-size: cover;
  mask-size: cover;
}
.l-container #feature .container__img_10 {
  margin: 0 auto 0;
  width: 46rem;
}
.l-container #feature .container__img_11 {
  margin: 0 auto 0;
  width: 41rem;
}
.l-container #feature .container__img_12 {
  margin: 0 auto 0;
  width: 50rem;
}
.l-container #feature .container__img_13 {
  width: 35rem !important;
}
.l-container #feature .container__img_14 {
  width: 35rem !important;
}
.l-container #feature .container__img_15 {
  width: 35rem !important;
}
.l-container #feature .container__img_16 {
  margin: 0 auto 0;
  width: 46rem;
}
.l-container #feature .container__img_17 {
  margin: 0 auto 0;
  width: 40rem;
}
.l-container #feature .container01 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 12rem;
}
.l-container #feature .container01__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container01__img_01 {
  margin: 0 20rem 0 auto;
}
.l-container #feature .container01__img_02 {
  position: absolute;
  top: 54.5rem;
  left: 16rem;
}
.l-container #feature .container01__img_03 {
  margin: 13rem auto 0 46.5rem;
}
.l-container #feature .container01 .creditContainer_01 {
  position: absolute;
  top: 118.5rem;
  left: 16rem;
  width: 16rem;
}
.l-container #feature .container02 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 16rem;
}
.l-container #feature .container02__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container02__img_04 {
  margin: 0 26rem 0 auto;
}
.l-container #feature .container02__img_05 {
  position: absolute;
  top: 24.5rem;
  left: 28rem;
}
.l-container #feature .container02__img_06 {
  margin: 24.5rem auto 0;
}
.l-container #feature .container02 .creditContainer_02 {
  position: absolute;
  top: 149.2rem;
  left: 95.5rem;
  width: 16rem;
}
.l-container #feature .container03 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 16rem;
}
.l-container #feature .container03__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container03__img_07 {
  margin: 0 auto 0 30rem;
}
.l-container #feature .container03__img_line {
  position: absolute;
  top: 0rem;
  left: 30rem;
  z-index: 20;
  width: 51rem;
  pointer-events: none;
}
.l-container #feature .container03__img_09 {
  position: absolute;
  top: 19.2rem;
  right: 28.5rem;
  z-index: 20;
}
.l-container #feature .container03 .creditContainer_03 {
  margin: 2.5rem auto 0 30rem;
  width: 30rem;
}
.l-container #feature .container03 .creditContainer_03 li:not(:last-child)::after {
  content: ",";
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  line-height: 2.1rem;
  letter-spacing: 0.04em;
  color: #58595B;
  position: absolute;
  top: 0;
  right: -0.4rem;
}
.l-container #feature .container04 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 15.7rem;
}
.l-container #feature .container04__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container04__img_10 {
  margin: 0 22rem 0 auto;
}
.l-container #feature .container04__img_11 {
  position: absolute;
  top: 32rem;
  left: 23rem;
  z-index: 20;
}
.l-container #feature .container04 .creditContainer_04 {
  margin: 2.5rem 21.9rem 0 auto;
  width: 16rem;
}
.l-container #feature .container04 .creditContainer_04 .credit {
  justify-content: flex-end;
}
.l-container #feature .container05 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 31.7rem;
}
.l-container #feature .container05__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container05__img_12 {
  margin: 0 auto 0;
}
.l-container #feature .container05__slide {
  margin: 6rem auto 0;
  width: 121rem;
  overflow: hidden;
}
.l-container #feature .container05__img_line {
  position: absolute;
  top: 0rem;
  left: 0rem;
  z-index: 20;
  width: 35rem;
  pointer-events: none;
}
.l-container #feature .container05 .creditContainer_05 {
  margin: 2.5rem auto 0;
  width: 35rem;
}
.l-container #feature .container05 .creditContainer_05 .credit {
  justify-content: center;
}
.l-container #feature .container05 .creditContainer_05 li:not(:last-child)::after {
  content: ",";
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  line-height: 2.1rem;
  letter-spacing: 0.04em;
  color: #58595B;
  position: absolute;
  top: 0;
  right: -0.4rem;
}
.l-container #feature .container06 {
  position: relative;
  margin: 0 auto 0;
  padding-top: 15.6rem;
  padding-bottom: 28.1rem;
}
.l-container #feature .container06__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container06__img_16 {
  margin: 0 auto 0 24rem;
}
.l-container #feature .container06__img_17 {
  position: absolute;
  top: 32rem;
  right: 24rem;
  z-index: 20;
}
.l-container #feature .container06 .creditContainer_06 {
  margin: 2.6rem auto 0 24rem;
  width: 16rem;
}
.l-container #feature .container07 {
  position: relative;
  margin: 0 auto 0;
}
.l-container #feature .container07__inner {
  position: relative;
  margin: auto;
}
.l-container #feature .container07__btn {
  margin: 0 auto 0;
  width: 11rem;
}
.l-container #feature .container07__staff {
  margin-top: 13.5rem;
  margin-bottom: 13.6rem;
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  line-height: 2.1rem;
  letter-spacing: 0.05em;
  color: #58595B;
}
.l-container #feature .look-slide {
  position: fixed;
  top: calc((100vh - 25.1rem) / 2);
  width: 100vw;
  writing-mode: vertical-rl;
  z-index: 30;
  pointer-events: none;
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.3rem;
  line-height: 8.5rem;
  letter-spacing: 0.065em;
  color: #2A477A;
  font-feature-settings: "palt";
  /* 初期状態は非表示 */
  visibility: hidden;
  opacity: 0;
  transition: opacity 1.1s ease-in-out, visibility 1.1s ease-in-out;
}
.l-container #feature .look-slide_active {
  visibility: visible;
  opacity: 1;
}
.l-container #feature .fade_center.fadeUp-hidden {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
.l-container #feature .fade_center.animate-active {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  -webkit-transition: opacity 480ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -moz-transition: opacity 480ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -o-transition: opacity 480ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -ms-transition: opacity 480ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: opacity 480ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.l-container #feature .fade_right.fadeUp-hidden {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -webkit-transform: translate3d(5%, 0, 0);
  -moz-transform: translate3d(5%, 0, 0);
  -o-transform: translate3d(5%, 0, 0);
  -ms-transform: translate3d(5%, 0, 0);
  transform: translate3d(5%, 0, 0);
}
.l-container #feature .fade_right.animate-active {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: opacity 680ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 680ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: opacity 680ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -moz-transform 680ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: opacity 680ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -o-transform 680ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -ms-transition: opacity 680ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -ms-transform 680ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 680ms cubic-bezier(0.455, 0.03, 0.515, 0.955), transform 680ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.l-container #feature .fade_left.fadeUp-hidden {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -webkit-transform: translate3d(-5%, 0, 0);
  -moz-transform: translate3d(-5%, 0, 0);
  -o-transform: translate3d(-5%, 0, 0);
  -ms-transform: translate3d(-5%, 0, 0);
  transform: translate3d(-5%, 0, 0);
}
.l-container #feature .fade_left.animate-active {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: opacity 580ms ease, -webkit-transform 580ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: opacity 580ms ease, -moz-transform 580ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: opacity 580ms ease, -o-transform 580ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -ms-transition: opacity 580ms ease, -ms-transform 580ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 580ms ease, transform 580ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.feature-snslist {
  overflow: hidden;
}

.pc-footer {
  margin-top: 0 !important;
}

.l-footer {
  padding-top: 0 !important;
}

@media screen and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}