html {
  scroll-behavior: smooth;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}
.js-fade {
  opacity: 0;
  transition: opacity 1s ease-in;
}
.js-fade.js-fade-top {
  transform: translateY(-3rem);
  display: inline-block;
}
.js-fade.is-active {
  opacity: 1;
  transform: translateY(0);
}

.l-container {
  width: 100%;
}

.feature {
  box-sizing: border-box;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0 auto;
  overflow: clip;
  position: relative;
  width: 100%;
  background: #105859;
}
.feature * {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
  scroll-margin-top: 50px;
}
.feature a {
  color: #000;
  text-decoration: none;
  transition: opacity 0.3s;
}
.feature a:hover {
  opacity: 0.6;
}
.feature video {
  max-width: 100%;
  vertical-align: bottom;
}
.feature img {
  vertical-align: bottom;
  max-width: 100%;
}
.feature .credit {
  margin-top: 2.312rem;
}
.feature .credit .item {
  display: inline-block;
  position: relative;
  margin-right: 1.02rem;
  margin-bottom: 0.68rem;
}
.feature .credit .item .link {
  line-height: 1;
  font-size: 1.496rem;
  letter-spacing: 0.02em;
  color: #C74956;
}
.feature .credit .item .link .price {
  letter-spacing: -0.02em;
}
.feature .credit .item.-mr0, .feature .credit .item:last-child {
  margin-right: 0;
}
.feature .credit .item.-mr0:before, .feature .credit .item:last-child:before {
  display: none;
}
.feature .wrap {
  display: flex;
}
.feature .wrap .leftcont {
  width: calc((100% - 51rem) / 2);
}
.feature .wrap .leftcont__Inner {
  width: 100%;
  text-align: center;
  position: relative;
  top: 0;
  height: 100%;
}
.feature .wrap .leftcont__Sticky {
  position: sticky;
  top: 80px;
  height: calc(100vh - 80px);
  left: 0;
  text-align: center;
}
.feature .wrap .leftcont__Logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.feature .wrap .leftcont__Logo img {
  width: 28.6rem;
  display: inline-block;
}
.feature .wrap .rightcont {
  width: calc((100% - 51rem) / 2);
}
.feature .wrap .rightcont__Inner {
  text-align: center;
  position: relative;
  top: 0;
  height: 100%;
}
.feature .wrap .rightcont__Sticky {
  position: sticky;
  top: 80px;
  height: calc(100vh - 80px);
  left: 0;
}
.feature .wrap .rightcont__List {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.feature .wrap .rightcont__List li {
  text-align: left;
  position: relative;
}
.feature .wrap .rightcont__List li.-selected:before {
  position: absolute;
  content: "";
  width: 2rem;
  height: 2rem;
  top: 50%;
  left: -3.2rem;
  transform: translateY(-50%);
  background: url("./../img/star.png");
  background-size: cover;
}
.feature .wrap .rightcont__List li a {
  font-size: 1.6rem;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #fff;
}
.feature .wrap .centercont {
  width: 51rem;
  overflow: hidden;
  position: relative;
  background: #fff;
}
.feature .mv {
  background: #105859;
  padding-bottom: 5.44rem;
  position: relative;
}
.feature .mv__Star {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -5.1rem;
  width: 10.2rem;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .mv__Thum {
  margin-bottom: 2.38rem;
}
.feature .mv__Ttl {
  font-size: 6.12rem;
  color: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.005em;
  line-height: 1;
  text-align: center;
  margin-bottom: 8.16rem;
}
.feature .mv__Ttl span {
  display: block;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.768rem;
  letter-spacing: 0.08em;
  margin-top: 0.68rem;
}
.feature .mv__Subttl {
  font-size: 5.984rem;
  color: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  margin-bottom: 4.08rem;
}
.feature .mv__Subttl span {
  display: block;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.768rem;
  letter-spacing: 0.01em;
  margin-top: 0.68rem;
}
.feature .mv__List {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 0.068rem solid #fff;
}
.feature .mv__Item {
  width: 50%;
  border-bottom: 0.068rem solid #fff;
}
.feature .mv__Item:nth-child(odd) {
  border-right: 0.068rem solid #fff;
}
.feature .mv__Item a {
  display: block;
  text-align: center;
  padding: 2.312rem 0 3.672rem;
  font-size: 1.632rem;
  letter-spacing: 0.05em;
  color: #fff;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  position: relative;
}
.feature .mv__Item a:before {
  position: absolute;
  bottom: 2.04rem;
  left: 50%;
  transform: translateX(-50%);
  width: 1.632rem;
  height: 0.816rem;
  content: "";
  background: url("./../img/icon_arrow_bottom_white.png");
  background-size: cover;
}
.feature .sec01 {
  background: #F5F1E6;
  padding: 5.44rem 0 6.8rem;
}
.feature .sec01__Star {
  width: 2.72rem;
  margin: 0 auto 2.04rem;
  display: block;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .sec01__Ttl {
  text-align: center;
  font-size: 2.72rem;
  color: #105859;
  letter-spacing: 0.06em;
  line-height: 1;
  font-weight: 500;
  margin: 0 auto 5.44rem;
}
.feature .sec01__Box {
  display: flex;
  flex-flow: column;
  gap: 2.72rem;
}
.feature .sec01__Flex {
  display: flex;
  justify-content: space-between;
  background: #fff;
  width: 45.56rem;
  margin: auto;
}
.feature .sec01__Flex-Thum {
  width: 20.4rem;
}
.feature .sec01__Flex-Detail {
  width: 25.16rem;
  padding-top: 2.72rem;
}
.feature .sec01__Flex-Detail-Price {
  font-size: 3.128rem;
  font-family: "libre-caslon-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: -0.025em;
  color: #105859;
  text-align: center;
  margin-bottom: 1.02rem;
}
.feature .sec01__Flex-Detail-Price .-yen {
  font-size: 2.448rem;
}
.feature .sec01__Flex-Detail-Price .-line01 {
  display: inline-block;
  margin-right: 0.748rem;
  width: 0.816rem;
  height: 0.136rem;
  background-color: #105859;
  transform: translateY(-0.68rem);
}
.feature .sec01__Flex-Detail-Price .-line02 {
  display: inline-block;
  margin-right: 0.748rem;
  margin-left: 0.748rem;
  width: 0.816rem;
  height: 0.136rem;
  background-color: #105859;
  transform: translateY(-0.68rem);
}
.feature .sec01__Flex-Detail-Price .-line03 {
  display: inline-block;
  margin-left: 0.748rem;
  width: 0.816rem;
  height: 0.136rem;
  background-color: #105859;
  transform: translateY(-0.68rem);
}
.feature .sec01__Flex-Detail-Txt {
  font-size: 1.496rem;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 2.618rem;
  color: #787878;
  text-align: center;
  margin-bottom: 1.7rem;
}
.feature .sec01__Flex-Detail-Check {
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 10.88rem;
  height: 2.72rem;
  color: #fff;
  background: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.768rem;
  line-height: 1;
}
.feature .sec01__Flex-Detail-Check span {
  position: relative;
  padding-right: 1.564rem;
  display: inline-block;
  transform: translate(0.408rem, 0.272rem);
  letter-spacing: 0.09em;
}
.feature .sec01__Flex-Detail-Check span:before {
  position: absolute;
  top: 40%;
  right: 0;
  transform: translateY(-50%);
  width: 0.68rem;
  height: 1.088rem;
  content: "";
  background: url("./../img/icon_arrow_check.png");
  background-size: cover;
}
.feature .sec02 {
  padding: 5.44rem 0 6.12rem;
}
.feature .sec02__Star {
  width: 2.72rem;
  margin: 0 auto 2.04rem;
  display: block;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .sec02__Ttl {
  text-align: center;
  font-size: 2.72rem;
  color: #105859;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 500;
  margin: 0 auto 3.4rem;
}
.feature .sec02__Txt {
  text-align: center;
  font-size: 1.496rem;
  color: #787878;
  letter-spacing: 0.05em;
  line-height: 2.618rem;
  margin: 0 auto 2.72rem;
}
.feature .sec02__Ranking {
  display: flex;
  flex-wrap: wrap;
  gap: 1.36rem 0;
  justify-content: space-between;
  width: 44.2rem;
  margin: auto;
  counter-reset: number 0;
}
.feature .sec02__Ranking .m-item {
  padding-top: 6.12rem;
  width: 20.4rem;
  position: relative;
}
.feature .sec02__Ranking .m-item:before {
  position: absolute;
  top: 0.68rem;
  left: 0;
  font-size: 3.4rem;
  content: "No.";
  color: #D6C596;
  font-family: "libre-caslon-display", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.feature .sec02__Ranking .m-item:after {
  position: absolute;
  top: 0;
  left: 4.76rem;
  font-size: 4.08rem;
  counter-increment: number 1;
  content: counter(number) " ";
  color: #D6C596;
  font-family: "libre-caslon-display", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.feature .sec02__Ranking .m-item-image {
  margin-bottom: 2.312rem;
}
.feature .sec02__Ranking .m-item-name {
  text-align: center;
  font-size: 1.36rem;
  color: #787878;
  line-height: 2.38rem;
}
.feature .sec02__Ranking .m-item-price {
  text-align: center;
  font-size: 1.36rem;
  color: #787878;
  line-height: 2.38rem;
}
.feature .sec03 {
  padding: 5.44rem 0 9.656rem;
  background-color: #105859;
  background-image: url("./../img/bg_sec03.png");
  background-size: 100%;
  background-repeat: no-repeat;
}
.feature .sec03__Star {
  width: 6.12rem;
  margin: 0 auto 2.856rem;
  display: block;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .sec03__Ttl {
  font-size: 5.984rem;
  color: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  margin-bottom: 1.36rem;
}
.feature .sec03__Txt {
  font-size: 1.768rem;
  line-height: 3.094rem;
  color: #D6C596;
  letter-spacing: 0.04em;
  text-align: center;
  margin-bottom: 8.16rem;
}
.feature .sec03 .-box02 {
  margin-top: 10.54rem;
}
.feature .sec03__Subttl {
  font-size: 4.624rem;
  color: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  margin-bottom: 3.4rem;
}
.feature .sec03__Slidewrap {
  position: relative;
  margin-bottom: 6.46rem;
}
.feature .sec03__Slidewrap .swiper-pagination {
  top: 43.52rem;
  width: 100%;
  bottom: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.816rem;
  z-index: 100;
}
.feature .sec03__Slidewrap .swiper-pagination .swiper-pagination-bullet {
  width: 4.08rem;
  height: 0.408rem;
  background: #fff;
  position: relative;
  opacity: 1;
  border-radius: 0;
}
.feature .sec03__Slidewrap .swiper-pagination .swiper-pagination-bullet:before {
  display: none;
}
.feature .sec03__Slidewrap .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #D6C596;
}
.feature .sec03__Slidewrap .swiper-slide {
  transform: scale(0.866);
  transition: 0.6s;
  color: #fff;
}
.feature .sec03__Slidewrap .swiper-slide.swiper-slide-active {
  transform: scale(1);
}
.feature .sec03__Detail {
  color: #fff;
  position: relative;
}
.feature .sec03__Detail-Ttl {
  text-align: center;
  font-size: 2.04rem;
  white-space: nowrap;
  line-height: 3.57rem;
}
.feature .sec03__Detail-Ttl a {
  color: #fff;
}
.feature .sec03__Detail-Price {
  text-align: center;
  font-size: 2.04rem;
  letter-spacing: 0.1em;
  line-height: 3.57rem;
  margin-bottom: 2.584rem;
}
.feature .sec03__Detail-Price a {
  color: #fff;
}
.feature .sec03__Detail-Price span {
  font-size: 1.496rem;
}
.feature .sec03__Detail-Desc {
  text-align: center;
  font-size: 1.496rem;
  letter-spacing: 0.01em;
  line-height: 2.584rem;
}
.feature .sec04 {
  background: #F5F1E6;
  padding: 5.44rem 0 9.18rem;
  position: relative;
}
.feature .sec04:before {
  position: absolute;
  pointer-events: none;
  width: 52.36rem;
  height: 39.44rem;
  content: "";
  top: 21.352rem;
  left: -0.68rem;
  background: url("./../img/bg_sec04.png");
  background-size: cover;
}
.feature .sec04__Star {
  width: 2.72rem;
  margin: 0 auto 2.856rem;
  display: block;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .sec04__Ttl {
  font-size: 5.984rem;
  color: #105859;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  margin-bottom: 4.08rem;
}
.feature .sec04__Ttl span {
  display: block;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.768rem;
  letter-spacing: 0.05em;
  margin-top: 0.68rem;
}
.feature .sec04__Modelwrap {
  position: relative;
  width: 100%;
  height: 43.18rem;
  margin: 0 auto 2.04rem;
}
.feature .sec04 .-model01 {
  position: absolute;
  width: 30.464rem;
  top: -0.544rem;
  left: 0.952rem;
}
.feature .sec04 .-model02 {
  position: absolute;
  width: 40.528rem;
  top: -2.856rem;
  left: 16.32rem;
}
.feature .sec04__Subttl {
  text-align: center;
  font-size: 2.04rem;
  font-weight: 500;
  color: #787878;
  margin-bottom: 0.544rem;
}
.feature .sec04__Pricelist {
  text-align: center;
  margin-bottom: 0.68rem;
}
.feature .sec04__Pricelist li {
  font-size: 2.04rem;
  line-height: 3.57rem;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #787878;
}
.feature .sec04__Pricelist li a {
  color: #787878;
}
.feature .sec04__Pricelist li .-sex {
  color: #D6C596;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.075em;
  padding-right: 1.36rem;
  font-weight: 600;
}
.feature .sec04__Pricelist li .-tax {
  font-size: 1.496rem;
  padding-left: 0.204rem;
}
.feature .sec04__Txt {
  text-align: center;
  font-size: 1.496rem;
  line-height: 2.618rem;
  color: #787878;
}
.feature .sec05 {
  padding: 6.12rem 0 6.8rem;
  position: relative;
}
.feature .sec05__Star {
  width: 2.72rem;
  margin: 0 auto 2.448rem;
  display: block;
  transition: 1s;
  transition-delay: 0.8s;
}
.feature .sec05__Ttl {
  font-size: 5.44rem;
  color: #105859;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  line-height: 5.984rem;
  text-align: center;
  margin-bottom: 1.36rem;
}
.feature .sec05__Ttl span {
  display: block;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.768rem;
  letter-spacing: 0.05em;
  margin-top: -1.088rem;
}
.feature .sec05__Txt {
  text-align: center;
  font-size: 1.496rem;
  line-height: 2.618rem;
  color: #787878;
  letter-spacing: 0.02em;
  text-align: center;
}
.feature .sec05__Txt.-txt01 {
  margin-bottom: 3.06rem;
}
.feature .sec05__Txt.-txt02 {
  margin-bottom: 4.76rem;
}
.feature .sec05__Model {
  margin-bottom: 5.44rem;
}
.feature .sec05__List {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2.04rem;
  width: 44.2rem;
  margin: 0 auto 4.76rem;
}
.feature .sec05__Item {
  width: 20.4rem;
}
.feature .sec05__Item-Thum {
  margin-bottom: 2.38rem;
}
.feature .sec05__Item-Txt {
  text-align: center;
  font-size: 1.36rem;
  line-height: 2.38rem;
  color: #787878;
}
.feature .sec05__Btn {
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27.2rem;
  height: 5.44rem;
  color: #fff;
  background: #D6C596;
  letter-spacing: 0.1em;
}

.l-footer {
  padding: 0;
}

.pc-footer {
  margin: 0;
}