 @charset "UTF-8";

 html {
   font-size: 0.3224vw;
 }

 @media screen and (min-width: 1900px) {
   html {
     font-size: 6.1256px;
   }
 }

 html,
 body,
 div,
 span,
 applet,
 object,
 iframe,
 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 p,
 blockquote,
 pre,
 a,
 abbr,
 acronym,
 address,
 big,
 cite,
 code,
 del,
 dfn,
 em,
 img,
 ins,
 kbd,
 q,
 s,
 samp,
 small,
 strike,
 strong,
 sub,
 sup,
 tt,
 var,
 b,
 i,
 dl,
 dt,
 dd,
 ol,
 ul,
 li,
 fieldset,
 form,
 label,
 legend,
 table,
 caption,
 tbody,
 tfoot,
 thead,
 tr,
 th,
 td,
 article,
 aside,
 canvas,
 details,
 embed,
 figure,
 figcaption,
 footer,
 header,
 hgroup,
 menu,
 nav,
 output,
 ruby,
 section,
 summary,
 time,
 mark,
 audio,
 video {
   margin: 0;
   padding: 0;
   border: 0;
   vertical-align: baseline;
   box-sizing: border-box;
 }

.l-header {
  padding: 0;
  position: relative;
  z-index: 999;
  background-color: #fff;
  overflow-x: clip;
}
.l-footer {
  padding: 0;
  position: relative;
  z-index: 999;
  background-color: #fff;
  overflow-x: clip;
}

 .pc-footer {
   margin: 0;
 }

 /*-------------------------
 Content
-------------------------*/
 .l-container {
   width: 100%;
   overflow: clip;
 }

 #feature {
   box-sizing: border-box;
   overflow: clip;
   position: relative;
   font-family: "times-new-roman", sans-serif;
   font-weight: 400;
   font-style: normal;
   width: 100%;
   color: #000;
   background: #e6edeB;
 }

 #feature .feature__inner {
   width: 75rem;
   position: relative;
   overflow: clip;
   background: #fff;
 }

 #feature .feature__inner__02 {
   width: 75rem;
   background: #fff;
   margin: 0 auto;
 }

 #feature a {
   transition: all 0.3s ease-in-out;
   display: block;
   transform: none;
   text-decoration: none;
 }

 #feature a:hover {
   cursor: pointer;
   opacity: .7;
 }

 #feature img,
 svg,
 video {
   width: 100%;
   height: auto;
   display: block;
   object-fit: cover;
 }

 #feature .section__inner {
   width: 100%;
 }

 #feature .block_area {
   position: relative;
   height: fit-content;
   display: block;
 }

 #feature .section {
   position: relative;
 }

 #feature .flex {
   display: flex;
 }

 #feature .left {
   display: flex;
   flex-direction: column;
   justify-content: start;
   align-items: center;
   height: calc(100vh - 110px);
   overflow: hidden;
   position: sticky;
   top: 110px;
   margin: 6.8rem auto 0;
   order: 1;
 }

 #feature .left figure {
   width: 56.3rem;
   margin-right: 36.4rem;
 }

 #feature .feature__inner {
   order: 2;
 }

 #feature .right {
   display: flex;
   flex-direction: column;
   justify-content: start;
   align-items: center;
   height: calc(100vh - 110px);
   overflow: hidden;
   position: sticky;
   top: 110px;
   margin: 7.5rem auto 0;
   order: 3;
 }

 #feature .right figure {
   width: 39rem;
   margin-left: 62.4rem;
 }

 /*-------------------------
 fade
-------------------------*/
 #feature .blur {
   opacity: 0;
 }

 #feature .blur.active {
   -webkit-animation: fade-blur 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
   animation: fade_blur 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
 }

 @keyframes fade_blur {
   0% {
     filter: blur(10px);
     transform: scale(1.02);
     opacity: 0;
   }

   100% {
     filter: blur(0);
     transform: scale(1);
     opacity: 1;
   }
 }

 #feature .fadeIn {
   opacity: 0;
 }

 #feature .fadeIn.active {
   -webkit-animation: fade-in 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
   animation: fade_in 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
 }

 @keyframes fade_in {
   0% {
     opacity: 0;
   }

   100% {
     opacity: 1;
   }
 }

 /*-------------------------
 Slider
-------------------------*/
 #feature .splide {
   position: relative;
   z-index: 1;
 }

 .splide__slide a {
   display: block;
 }

 #feature .splide__track {
   background: #fff;
 }

 #feature .splide__slide img {
   width: 100%;
   display: block;
 }

 #feature .splide__pagination {
   position: absolute;
   top: auto;
   bottom: 1.8rem;
   right: 1.6rem;
   z-index: 10;
   display: flex;
   gap: 0.8rem;
   padding: 0;
   margin: 0;
 }

 #feature .block04 .splide__pagination {
   bottom: 2.3rem;
   right: 2.2rem;
 }

 #feature .block06 .splide__pagination {
   bottom: 1.5rem;
   right: 2.2rem;
 }

 #feature .block09 .splide__pagination {
   bottom: 2rem;
   right: 1.9rem;
 }

 #feature .block11 .splide__pagination {
   bottom: 1.8rem;
   right: 1.9rem;
 }

 #feature .block24 .splide__pagination {
   bottom: 1.9rem;
   right: 1.9rem;
 }

 #feature .block25 .splide__pagination {
   bottom: 1.9rem;
   right: 1.9rem;
 }

 #feature .block28 .splide__pagination {
   bottom: 2.3rem;
   right: 1.9rem;
 }

 #feature .splide__pagination__page {
   width: 1rem;
   height: 1rem;
   padding: 0;
   margin: 0;
   display: block;
   flex: none;
   border-radius: 50%;
   box-sizing: border-box;
   border: 1px solid #fff;
   background: transparent;
   opacity: 1;
   appearance: none;
   -webkit-appearance: none;
 }

 #feature .splide__pagination__page.is-active {
   background: #fff;
   transform: scale(1);
 }

 /*-------------------------
 tap_credit
-------------------------*/
 #feature .img_box {
   position: relative;
 }

 #feature .img_box img {
   width: 100%;
   display: block;
   cursor: pointer;
 }

 #feature .box_credit {
   position: absolute;
   left: 3rem;
   bottom: 2.6rem;
   opacity: 0;
   transition: 1.2s;
   z-index: 10;
   pointer-events: none;
 }

 #feature .img_box.active .box_credit {
   opacity: 1;
 }

 #feature .block13 .box_credit,
 #feature .block14 .box_credit {
   right: 3rem;
   bottom: 2.9rem;
 }

 #feature .block22 .box_credit {
   right: 3rem;
   bottom: 2.3rem;
 }

 #feature .block02 .box_credit {
   bottom: 1.95rem;
 }

 #feature .block04 .box_credit,
 #feature .block09 .box_credit,
 #feature .block17 .box_credit {
   bottom: 3rem;
 }

 #feature .block06 .box_credit,
 #feature .block08 .box_credit,
 #feature .block10 .box_credit,
 #feature .block11 .box_credit,
 #feature .block12 .box_credit,
 #feature .block18 .box_credit {
   bottom: 2rem;
 }

 #feature .block24 .box_credit {
   bottom: 2.8rem;
 }

 #feature .block25 .box_credit {
   bottom: 3.5rem;
 }

 #feature .block15 .box_credit {
   left: 2.9rem;
   bottom: 1.95rem;
 }

 #feature .block26 .box_credit,
 #feature .block27 .box_credit {
   left: 2.2rem;
   bottom: 1.8rem;
 }

 #feature .block29 .box_credit {
   left: 2.3rem;
   bottom: 1.95rem;
 }

 /*-------------------------
 hero
-------------------------*/
 #feature .hero {
   width: 75rem;
   height: fit-content;
   margin: auto;
   position: relative;
 }

 #feature .hero_txt figure {
   width: 45.08281rem;
   position: absolute;
   bottom: 14.3rem;
   left: 50%;
   transform: translate(-50%);
 }

 /*-------------------------
 text
-------------------------*/
 #feature .img_ttl {
   font-size: 2.8rem;
   line-height: 1.286;
   color: #abbab6;
   margin-top: 6.5rem;
   font-weight: 400;
 }

 #feature .img_ttl span {
   margin-left: 1.4rem;
 }

 #feature .img_text {
   font-size: 2.2rem;
   letter-spacing: 0.02em;
   line-height: 1.546;
   color: #abbab6;
   margin-top: 2.5rem;
 }

 #feature .img_text.img_text__02 {
   margin: 0.5rem -0.2rem 0 auto;
   text-align: right;
 }

 #feature .img_text.img_text__03 {
   margin-bottom: 0.5rem;
 }

 #feature .img_text.img_text__07 {
   text-align: right;
   margin: 2.2rem 3rem 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__10 {
   margin: 2rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__12 {
   margin: 0.7rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__14 {
   margin: 0.9rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__15 {
   text-align: right;
   margin: 0.5rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__18 {
   text-align: right;
   margin: 1.5rem 1.9rem 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__20 {
   margin: 1.9rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__23 {
   text-align: right;
   margin: 1.4rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__26 {
   text-align: right;
   margin: 1.4rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__27 {
   margin: 0.4rem 0 0 0;
   line-height: 1.6;
 }

 #feature .img_text.img_text__29 {
   text-align: right;
   margin: 1rem 0 0 0;
   line-height: 1.6;
 }

 /*-------------------------
 area
-------------------------*/
 #feature .block01 {
   width: 62.2rem;
   margin: 20rem auto 0;
 }

 #feature .block02 {
   width: 46.9rem;
   margin: 20.3rem 6.5rem 0 auto;
 }

 #feature .block03 {
   width: 62rem;
   margin: 16.2rem auto 0;
 }

 #feature .block04 {
   width: 75rem;
   margin: 15rem auto 0;
 }

 #feature .block05 {
   width: 64.03124rem;
   margin: 16rem auto 0;
 }

 #feature .block06 {
   width: 75rem;
   margin: 15.2rem auto 0;
 }

 #feature .block07 {
   width: 75rem;
   margin: 1.6rem auto 0;
 }

 #feature .block08 {
   width: 64rem;
   margin: 15rem auto 0;
 }

 #feature .block09 {
   width: 75rem;
   margin: 15rem auto 0;
 }

 #feature .block10 {
   width: 61.84953rem;
   margin: 10rem auto 0;
 }

 #feature .block11 {
   width: 75rem;
   margin: 16.1rem auto 0;
 }

 #feature .block12 {
   width: 49.28624rem;
   margin: 7.2rem 0 0 6.7rem;
 }

 #feature .block13 {
   width: 75rem;
   margin: 25.8rem auto 0;
 }

 #feature .block14 {
   width: 61.50001rem;
   margin: 15.2rem auto 0;
 }

 #feature .block15 {
   width: 46.8rem;
   margin: 20.6rem 6.7rem 0 auto;
 }

 #feature .block16 {
   width: 75rem;
   margin: 16rem auto 0;
 }

 #feature .block17 {
   width: 75rem;
   margin: 1.5rem auto 0;
 }

 #feature .block18 {
   width: 61.48031rem;
   margin: 14.9rem auto 0;
 }

 #feature .block19 {
   width: 75rem;
   margin: 20rem auto 0;
 }

 #feature .block20 {
   width: 64rem;
   margin: 20rem auto 0;
 }

 #feature .block21 {
   width: 75rem;
   margin: 23.2rem auto 0;
 }

 #feature .block22 {
   width: 64rem;
   margin: 10.8rem auto 0;
 }

 #feature .block23 {
   width: 46.8rem;
   margin: 15rem 5.5rem 0 auto;
 }

 #feature .block24 {
   width: 75rem;
   margin: 28rem auto 0;
 }

 #feature .block25 {
   width: 75rem;
   margin: 29.2rem auto 0;
 }

 #feature .block26 {
   width: 61.50001rem;
   margin: 14.95rem auto 0;
 }

 #feature .block27 {
   width: 46.8rem;
   margin: 16.8rem auto 0 6.8rem;
 }

 #feature .block28 {
   width: 75rem;
   margin: 23rem auto 0;
 }

 #feature .block29 {
   width: 61.50001rem;
   margin: 9.5rem auto 0;
 }

 #feature .block30 {
   width: 75rem;
   margin: 18.3rem auto 0;
 }

 #feature .block31 {
   width: 62.48752rem;
   margin: 14.6rem auto 0 5.8rem;
 }

 #feature .block32 {
   width: 75rem;
   margin: 5rem auto 0;
 }

 #feature .staff {
   width: 63.5rem;
   margin: 9rem auto 0;
 }

 #feature .staff figure {
   width: 28.44339rem;
 }

 #feature .staff p:nth-of-type(1) {
   font-size: 2.5rem;
   letter-spacing: 0.06em;
   color: #abbab6;
   margin-top: 3.6rem;
   line-height: 1;
 }

 #feature .staff p:nth-of-type(2) {
   font-size: 3.8rem;
   letter-spacing: 0.02em;
   color: #abbab6;
   margin-top: 0.8rem;
   line-height: 1;
 }

 #feature .staff p.staff_credit {
   font-size: 2.3rem;
   letter-spacing: 0.04em;
   line-height: 1.41;
   color: #abbab6;
   margin-top: 6.7rem;
 }

 #feature .btn {
   margin: 44.8rem auto 0 5.8rem;
   width: 64.70239rem;
 }

 /*-------------------------
 credit
-------------------------*/
 #feature .credit-inner a {
   font-size: 2.3rem;
   letter-spacing: -0.06em;
   line-height: 1.5;
   text-align: left;
   color: #fff;
   font-family: courier-new, sans-serif;
   font-weight: 400;
   font-style: normal; 
   pointer-events: auto;
 }

 #feature .credit11 .credit-inner a,
 #feature .credit12 .credit-inner a,
 #feature .credit19 .credit-inner a {
   text-align: right;
 }
