@charset "UTF-8";
/* =============================================
  variables
============================================= */
:root {
  --color-black: #555555;
  --color-white: #fff;
  --bk-color-01: #e5e5e5;
}

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

.l-footer {
  padding-top: initial;
}

.pc-footer {
  margin-top: initial;
}

#feature * {
  font-family: "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", Meiryo, メイリオ, Helvetica, Arial, sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-optical-sizing: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
#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%;
  pointer-events: none;
}
#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 video {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#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;
  overflow: hidden;
}
#feature [class^=img_] img {
  vertical-align: bottom;
}

/*=====================================
  base_fonts
=====================================*/
/*=====================================
  component_block
=====================================*/
#feature .c-text {
  font-size: min(14px, 1vw);
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: min(0.84px, 0.06vw);
  text-align: justify;
  color: var(--color-black);
}

/*=====================================
  component_common
=====================================*/
#feature {
  max-width: initial;
}
#feature .parent_credit {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
#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.sp-none {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
#feature .wrap_credit.pc-none {
  display: none;
}
#feature .wrap_credit .credit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(2px, 0.14286vw);
}
#feature .wrap_credit .credit .item * {
  font-family: "pragmatica", sans-serif;
  font-size: min(29px, 2.07143vw);
  font-weight: 300;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.86;
  letter-spacing: min(1.45px, 0.10357vw);
  text-align: left;
  color: var(--color-black);
}
#feature .wrap_credit .credit .price {
  padding-left: min(4px, 0.28571vw);
}
#feature .swiper {
  position: relative;
}
#feature .swiper.swiper_01, #feature .swiper.swiper_06 {
  width: 100%;
}
#feature .swiper.swiper_01 .swiper-wrapper, #feature .swiper.swiper_06 .swiper-wrapper {
  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 .swiper.swiper_01 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_06 .swiper-wrapper .swiper-slide {
  width: 33.333%;
}
#feature .swiper.swiper_02, #feature .swiper.swiper_05 {
  width: min(320px, 22.85714vw);
}
#feature .swiper.swiper_02 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_05 .swiper-wrapper .swiper-slide {
  width: min(320px, 22.85714vw);
}
#feature .swiper.swiper_03 .swiper-wrapper, #feature .swiper.swiper_04 .swiper-wrapper {
  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;
  gap: min(20px, 1.42857vw);
}
#feature .swiper.swiper_03 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_04 .swiper-wrapper .swiper-slide {
  width: min(320px, 22.85714vw);
}
#feature .swiper.swiper_03 .swiper-wrapper .swiper-slide.swiper-slide-active, #feature .swiper.swiper_04 .swiper-wrapper .swiper-slide.swiper-slide-active {
  opacity: 1 !important;
}
#feature .swiper.swiper_03 .swiper-pagination, #feature .swiper.swiper_04 .swiper-pagination {
  display: none;
}
#feature .swiper .swiper-pagination {
  margin-bottom: initial;
  margin-inline: initial;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  gap: min(7px, 0.5vw);
  left: 0;
  bottom: max(-14px, -1vw);
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
#feature .swiper .swiper-pagination-bullet {
  background-color: #c1c0c0;
  border: 1px solid transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  opacity: 1;
  width: min(7px, 0.5vw);
  height: min(7px, 0.5vw);
}
#feature .swiper .swiper-pagination-bullet-active {
  background-color: #656565;
}

/*=====================================
  component_replace-content
=====================================*/
#feature .pc-none {
  display: none;
}
#feature .sp-none {
  display: block;
}

/*=====================================
modules_animation
=====================================*/
#feature .js_anime.is_fade .animearea {
  opacity: 0;
  -webkit-transition-duration: 1.5s;
          transition-duration: 1.5s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition: 1.5s;
  transition: 1.5s;
}
#feature .js_anime.is_fadein .animearea {
  opacity: 0;
  -webkit-transform: translateY(min(25px, 1.78571vw));
          transform: translateY(min(25px, 1.78571vw));
  -webkit-transition-duration: 1.5s;
          transition-duration: 1.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition: 1.5s;
  transition: 1.5s;
}
#feature .js_anime.is_borderAnime .animearea > *::before {
  -webkit-transition: 1.8s;
  transition: 1.8s;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  width: 0%;
}
#feature .js_anime.is_show.is_fade .animearea {
  opacity: 1;
}
#feature .js_anime.is_show.is_fadein .animearea {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
#feature .js_anime.is_show.is_borderAnime .animearea > *::before {
  width: 100%;
}

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

@media screen and (max-width: 750px) {
  .sp-footer {
    margin-top: initial;
  }
  #feature a:hover {
    opacity: initial;
    cursor: pointer;
  }
  #feature [class^=img_] {
    background-color: transparent;
  }
  #feature .c-text {
    font-size: min(24px, 3.2vw);
    line-height: 2;
    letter-spacing: min(1.44px, 0.192vw);
  }
  #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.sp-none {
    display: none;
  }
  #feature .wrap_credit.pc-none {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #feature .wrap_credit .credit {
    gap: min(12px, 1.6vw);
  }
  #feature .wrap_credit .credit .price {
    padding-left: min(12px, 1.6vw);
  }
  #feature .swiper.swiper_01, #feature .swiper.swiper_06 {
    width: min(750px, 100vw);
  }
  #feature .swiper.swiper_01 .swiper-wrapper, #feature .swiper.swiper_06 .swiper-wrapper {
    -webkit-box-pack: initial;
    -webkit-justify-content: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
  }
  #feature .swiper.swiper_01 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_06 .swiper-wrapper .swiper-slide {
    width: min(540px, 72vw);
    margin-inline: max(-0.8px, -0.10667vw);
  }
  #feature .swiper.swiper_02, #feature .swiper.swiper_05 {
    width: min(660px, 88vw);
  }
  #feature .swiper.swiper_02 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_05 .swiper-wrapper .swiper-slide {
    width: min(660px, 88vw);
  }
  #feature .swiper.swiper_02 .swiper-pagination, #feature .swiper.swiper_05 .swiper-pagination {
    left: initial;
    -webkit-transform: initial;
            transform: initial;
    right: 0;
    gap: min(20px, 2.66667vw);
    bottom: max(-40px, -5.33333vw);
  }
  #feature .swiper.swiper_03, #feature .swiper.swiper_04 {
    width: min(660px, 88vw);
  }
  #feature .swiper.swiper_03 .swiper-wrapper, #feature .swiper.swiper_04 .swiper-wrapper {
    -webkit-box-pack: initial;
    -webkit-justify-content: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    gap: initial;
  }
  #feature .swiper.swiper_03 .swiper-wrapper .swiper-slide, #feature .swiper.swiper_04 .swiper-wrapper .swiper-slide {
    width: min(660px, 88vw);
  }
  #feature .swiper.swiper_03 .swiper-pagination, #feature .swiper.swiper_04 .swiper-pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    left: initial;
    -webkit-transform: initial;
            transform: initial;
    right: 0;
    gap: min(20px, 2.66667vw);
    bottom: max(-40px, -5.33333vw);
  }
  #feature .swiper .swiper-pagination {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    gap: min(20px, 2.66667vw);
    bottom: max(-40px, -5.33333vw);
  }
  #feature .swiper .swiper-pagination-bullet {
    width: min(12px, 1.6vw);
    height: min(12px, 1.6vw);
  }
  #feature .pc-none {
    display: block;
  }
  #feature .sp-none {
    display: none;
  }
  #feature .js_anime.is_fadein .animearea {
    -webkit-transform: translateY(min(50px, 6.66667vw));
            transform: translateY(min(50px, 6.66667vw));
  }
}
/*# sourceMappingURL=common.css.map */