* {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

video {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  z-index: 2;
}

.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(228, 113, 114, 0.9);
  border: none;
  border-radius: clamp(10px, -2.2222px + 3.2593vw, 20px);
  cursor: pointer;
  padding: 0;
  transition: opacity 0.3s ease, transform 0.2s ease;
  z-index: 2;
  width: clamp(90px, 1.1111px + 23.7037vw, 180px);
  height: clamp(50px, -1.1111px + 13.642vw, 100px);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 clamp(2px, -0.1111px + 0.5432vw, 4px) clamp(4px, -0.2222px + 1.0864vw, 8px) rgba(0, 0, 0, 0.3);
  display: none;
}
.play-button:hover {
  transform: translate(-50%, -50%) scale(1.1);
}
.play-button .play-icon {
  width: 0;
  height: 0;
  border-left: clamp(15px, 1.1111px + 3.7037vw, 30px) solid #fff;
  border-top: clamp(7px, -0.1852px + 1.9753vw, 15px) solid transparent;
  border-bottom: clamp(7px, -0.1852px + 1.9753vw, 15px) solid transparent;
  margin-left: clamp(1px, -0.037px + 0.2963vw, 3px);
}

header#lp-header,
main#lp-main,
footer#lp-footer,
section {
  max-width: 780px;
  margin: 0 auto;
}

main#lp-main,
footer#lp-footer {
  background-color: #e2ded2;
}

main {
  overflow-x: hidden;
}

.copyright {
  margin: 0;
  padding: 0;
}

.path {
  transition: clip-path 1.2s ease-in-out;
}
.path.up {
  clip-path: inset(0 0 100% 0);
}
.path.dn {
  clip-path: inset(100% 0 0 0);
}
.path.lt {
  clip-path: inset(0 100% 0 0);
}
.path.rt {
  clip-path: inset(0 0 0 100%);
}
.path.active {
  opacity: 1;
  clip-path: inset(0);
}

.scroll {
  transition: opacity 1.2s ease, transform 1.2s ease;
}
.scroll.up {
  opacity: 0;
  transform: translateY(clamp(-40px, 2.2222px - 11.284vw, -80px));
}
.scroll.dn {
  opacity: 0;
  transform: translateY(clamp(40px, -2.2222px + 11.284vw, 80px));
}
.scroll.lt {
  opacity: 0;
  transform: translateX(clamp(-40px, 2.2222px - 11.284vw, -80px));
}
.scroll.rt {
  opacity: 0;
  transform: translateX(clamp(40px, -2.2222px + 11.284vw, 80px));
}
.scroll.active {
  opacity: 1;
  transform: translate(0, 0);
}

.fade {
  transition: opacity 1.2s ease, transform 1.2s ease;
}
.fade.in {
  opacity: 0;
  transform: scale(0.5);
}
.fade.active {
  opacity: 1;
  transform: scale(1);
}

.s_0_3 {
  transition-duration: 0.3s;
}

.s_0_5 {
  transition-duration: 0.5s;
}

@keyframes btn {
  0% {
    transform: scale(0.92);
  }
  40% {
    transform: scale(0.97);
  }
  60% {
    transform: scale(0.86);
  }
  80% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.92);
  }
}
.anim {
  animation: btn 1.3s ease-in infinite;
}

#fv .fv-main {
  position: relative;
  overflow: hidden;
  padding-top: 177.6923076923%;
}
#fv .fv-main::before {
  content: "";
  display: block;
}
#fv .fv-main .fv-preview {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 3;
}
#fv .fv-main .fv-preview.hide {
  opacity: 0;
}
#fv .fv-main .fv-video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
#fv .fv-second {
  position: relative;
}
#fv .fv-second .fv-title,
#fv .fv-second .fv-girl,
#fv .fv-second .fv-lead,
#fv .fv-second .fv-lead .fv-lead-rt,
#fv .fv-second .fv-lead .fv-lead-lt {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
#fv .fv-second .fv-girl {
  z-index: 2;
}
#fv .fv-carousel {
  padding: clamp(30px, 2.2222px + 7.4074vw, 60px) 0;
}
#fv .fv-carousel .fv-slider-ttl {
  width: 100%;
  height: clamp(13px, -1.8148px + 3.9506vw, 29px);
  background: url(../img/fv/slider-ttl.webp) repeat-x;
  background-size: contain;
}
#fv .fv-carousel .fv-slider-wrapper {
  padding: clamp(9px, 0.3333px + 2.321vw, 18px) 0;
}
#fv .fv-carousel .fv-slider-wrapper .fv-slider .fv-slide-item {
  height: auto;
  padding: 0 clamp(3px, 0.3333px + 0.7407vw, 6px);
}

#merit {
  padding: clamp(16px, 1.1852px + 3.9506vw, 32px) clamp(10px, -4.8148px + 3.9506vw, 26px) clamp(20px, 1.4815px + 4.9383vw, 40px);
  background-color: #ffffff;
}
#merit .merit-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(20px, 12.5926px + 1.9753vw, 28px);
}
#merit .merit-list .merit-item {
  width: 100%;
  padding: clamp(10px, -1.1111px + 2.963vw, 21px) clamp(13px, -1.1111px + 3.7037vw, 26px) clamp(18px, 1.3333px + 4.4444vw, 36px);
  background-color: #e2ded2;
}
#merit .merit-list .merit-item .merit-item-ttl {
  margin: 0 clamp(-6px, 0.6667px - 1.7778vw, -12px);
  margin-bottom: clamp(12px, -0.8519px + 3.4568vw, 25px);
}

#secret {
  padding: clamp(25px, 1.1111px + 6.3704vw, 50px) clamp(12px, -0.8519px + 3.4568vw, 25px);
  background-color: #e2ded2;
}
#secret .secret-ttl {
  margin-bottom: clamp(30px, 2.2222px + 7.4074vw, 60px);
  text-align: center;
}
#secret .secret-ttl span {
  display: block;
}
#secret .secret-ttl span.en {
  margin-bottom: clamp(22px, 2.2222px + 5.284vw, 44px);
}
#secret .secret-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(20px, 0.7407px + 5.1358vw, 40px);
}
#secret .secret-list .secret-item {
  width: 100%;
  background-color: #ffffff;
}
#secret .secret-list .secret-item .secret-item-ttl {
  display: block;
}
#secret .secret-list .secret-item .secret-item-body {
  padding: clamp(15px, 1.1111px + 3.7037vw, 30px) clamp(12px, -0.8519px + 3.4568vw, 25px);
}
#secret .secret-list .secret-item .secret-item-body .secret-item-video,
#secret .secret-list .secret-item .secret-item-body .secret-item-photo {
  position: relative;
  margin-bottom: clamp(10px, -0.7407px + 2.8642vw, 20px);
}

#features {
  background-color: #2f2f2f;
}
#features .head {
  margin-bottom: clamp(16px, 0.8889px + 4.0494vw, 32px);
}
#features .features-ttl {
  margin-bottom: clamp(7px, -0.1852px + 1.9753vw, 15px);
}
#features .features-ttl span {
  display: block;
}
#features .features-ttl span.en {
  margin-bottom: clamp(10px, -0.7407px + 2.8642vw, 20px);
}
#features .features-lead {
  margin-bottom: clamp(38px, -2.8148px + 10.8951vw, 77px);
}
#features .features-lead .photo {
  position: relative;
  display: block;
}
#features .features-lead .infos {
  display: block;
  margin-top: clamp(-15px, 0.3704px - 4.1049vw, -30px);
}
#features .features-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(25px, 1.1111px + 6.3704vw, 50px);
}
#features .features-list .features-item {
  width: 100%;
}
#features .features-list .features-item .features-item-ttl {
  margin-bottom: clamp(12px, 0.4444px + 3.0864vw, 24px);
}

#update {
  padding: clamp(24px, 2.6667px + 5.679vw, 48px) 0 0;
  background-color: #e2ded2;
}
#update .update-ttl {
  margin-bottom: clamp(20px, 0.7407px + 5.1358vw, 40px);
}
#update .update-photo {
  display: block;
}
#update .update-lead {
  padding: clamp(22px, 2.2222px + 5.284vw, 44px) 0;
}

.sec-size {
  position: relative;
  padding: clamp(25px, 1.1111px + 6.3704vw, 50px) 0;
  background-color: #ffffff;
}
.sec-size::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../img/size/ruler.webp) repeat-y;
  background-position: top right;
  background-size: auto;
}
.sec-size .size-ttl {
  position: relative;
  margin-bottom: clamp(17px, -1.5556px + 4.9383vw, 35px);
  z-index: 1;
}
.sec-size .size-ttl-chart {
  position: absolute;
  left: clamp(4px, 0.4444px + 0.9877vw, 8px);
  top: clamp(5px, 0.5556px + 1.2346vw, 10px);
}
.sec-size .size-chart {
  position: relative;
  margin-bottom: clamp(30px, 2.2222px + 7.4074vw, 60px);
  z-index: 1;
}
.sec-size .size-carousel {
  position: relative;
  z-index: 1;
}
.sec-size .size-carousel .size-slide-item {
  height: auto;
  padding: 0 clamp(5px, 0.5556px + 1.2346vw, 10px);
}

.sec-delivery {
  padding: clamp(26px, -0.8519px + 7.1605vw, 55px);
  background-color: #2f2f2f;
}
.sec-delivery .delivery-head {
  margin-bottom: clamp(20px, -3.1481px + 6.1728vw, 45px);
}
.sec-delivery .delivery-lead {
  margin-bottom: clamp(20px, -3.1481px + 6.1728vw, 45px);
}
.sec-delivery .delivery-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(26px, 3.7778px + 5.9259vw, 50px);
}
.sec-delivery .delivery-list .delivery-item {
  width: 100%;
  padding: clamp(3px, -0.7037px + 0.9877vw, 7px);
  background-color: #e2ded2;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-ttl {
  display: flex;
  align-items: center;
  padding: clamp(10px, -2.963px + 3.4568vw, 24px) 0;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body {
  padding: clamp(10px, -8.5185px + 4.9383vw, 30px) clamp(10px, -4.8148px + 3.9506vw, 26px);
  background-color: #ffffff;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .sale {
  margin: 0 -4px;
  margin-bottom: clamp(12px, -4.6667px + 4.4444vw, 30px);
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .price {
  margin-bottom: clamp(12px, -4.6667px + 4.4444vw, 30px);
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(7px, 0.8148px + 1.6543vw, 14px);
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list .link-item {
  width: 100%;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list .link-item a {
  display: block;
  transition: all 0.3s ease;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list .link-item a:hover {
  opacity: 0.7;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list .link-item a img {
  display: block;
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list.horz {
  gap: clamp(3px, -0.6667px + 1.0864vw, 7px);
}
.sec-delivery .delivery-list .delivery-item .delivery-item-body .link-list.horz .link-item {
  width: calc((100% - clamp(7px, -1.3333px + 2.1728vw, 15px)) / 3);
}

#problems {
  position: relative;
}
#problems .problems-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
#problems .problems-ttl {
  position: relative;
}
#problems .problems-body {
  position: relative;
}

#reasons .reasons-head {
  background-color: #e2ded2;
}
#reasons .reasons-resolve {
  position: relative;
  background-color: #ffffff;
}
#reasons .reasons-resolve .dakara {
  position: absolute;
  left: 50%;
  top: clamp(-18px, 1.0741px - 5.0617vw, -37px);
  transform: translateX(-50%);
}
#reasons .reasons-resolve .resolve-video-list {
  display: flex;
  align-items: flex-start;
  padding: 0 clamp(30px, -1.4815px + 8.3951vw, 64px);
}
#reasons .reasons-resolve .resolve-video-list .resolve-video-item {
  position: relative;
  width: 50%;
}
#reasons .reasons-more {
  background-color: #ffffff;
}
#reasons .reasons-more .reasons-more-body {
  position: relative;
}
#reasons .reasons-more .reasons-more-body .reasons-more-right {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

#special {
  position: relative;
}
#special .special-video {
  position: absolute;
  width: clamp(145px, -0.3704px + 38.7654vw, 302px);
  height: clamp(239px, -4.5185px + 64.9383vw, 502px);
  top: clamp(657px, 2.3704px + 174.5679vw, 1364px);
  left: clamp(33px, -0.3333px + 8.8889vw, 69px);
  border: clamp(2px, 0.1481px + 0.4938vw, 4px) solid #2f2f2f;
  overflow: hidden;
}
#special .special-video video {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}

#availability {
  position: relative;
}
#availability img {
  display: block;
}
#availability .availability-left {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
#availability .availability-right {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

#comfortable {
  background-color: #ffffff;
}

#faq {
  background-color: #e2ded2;
}
#faq .faq-list .faq-item img {
  display: block;
}

.p-page_content {
  padding-left: 0;
  padding-right: 0;
}

.p-page_content__inner {
  max-width: 100%;
}

.u-margin__top--60,
.u-margin__bottom--100 {
  margin: 0;
}