@charset "UTF-8";
html {
  scroll-behavior: smooth;
}

body {
  font-family: YuGothic, "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
  background: transparent !important;
}

ul,
li {
  list-style-type: none;
}

.lp-re-02 {
  position: relative;
}
.lp-re-02 img {
  display: block;
  width: 100%;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.lp-re-02__inner {
  margin: 0 auto;
  width: min(100%, 430px);
  position: relative;
  box-shadow: -13px 0 13px -13px rgba(67, 50, 11, 0.16), 13px 0 13px -13px rgba(67, 50, 11, 0.16);
  z-index: 1;
}

.lp-re-02__headline img {
  width: auto;
}

.lp-re-02__cta-img {
  margin-bottom: 30px;
}

.lp-re-02__cta-text {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  line-height: 0.9333333333;
  color: #ac7862;
}
.lp-re-02__cta-text .large {
  font-size: 30px;
}

.lp-re-02__cta-btn {
  border-radius: 9999px;
  width: 100%;
  max-width: 370px;
  margin: 10px auto 0;
  height: 60px;
  background: #ac7862;
  border: 1px solid #ac7862;
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  position: relative;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (any-hover: hover) {
  .lp-re-02__cta-btn:hover {
    background: #000000;
  }
  .lp-re-02__cta-btn:hover .lp-re-02__cta-btn-text {
    color: #FFF;
  }
  .lp-re-02__cta-btn:hover .lp-re-02__cta-btn-text::before {
    background: url("../img/lp-re-02/lp-re-02__cta-btn-icon-hover--white.svg") no-repeat center center/cover;
  }
}

.lp-re-02__cta-btn-text {
  padding-left: 31px;
  font-weight: bold;
  font-size: 18px;
  color: #fff;
  letter-spacing: 0.26em;
  line-height: 1.75;
  position: relative;
  transition: all 0.3s ease;
}
.lp-re-02__cta-btn-text::before {
  content: "";
  background: url("../img/lp-re-01/lp-re-01__cta-btn-icon.svg") no-repeat center center/cover;
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  width: 20px;
  height: 22px;
  transition: all 0.3s ease;
}

.scroll-fade-up {
  opacity: 0;
  transform: translateY(80px);
  transition: all 800ms ease;
}

.scroll-fade-up.is-fadein {
  opacity: 1;
  transform: translateY(0);
}

.scroll-fade-in--left {
  opacity: 0;
  transform: translateX(-80px);
  transition: all 800ms ease;
}

.scroll-fade-in--left.is-fadein {
  opacity: 1;
  transform: translateX(0);
}

.scroll-fade-in--right {
  opacity: 0;
  transform: translateX(80px);
  transition: all 800ms ease;
  margin-left: -9px;
}

.scroll-fade-in--right.is-fadein {
  opacity: 1;
  transform: translateX(0);
}

.lp-re-02-header-wrap {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 430px) {
  .lp-re-02-header-wrap {
    z-index: 10;
  }
}

.lp-re-02-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
}
@media screen and (max-width: 430px) {
  .lp-re-02-header {
    z-index: 10;
    top: 26px;
  }
}

.lp-re-02-header__inner {
  background-color: #E5DDDB;
  position: fixed;
  gap: 430px;
  width: 100%;
  height: 100%;
  display: flex;
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.lp-re-02-header__inner--about {
  background-color: #FFFEF7;
}
.lp-re-02-header__inner--point-1 {
  background-color: #F4F0EF;
}
.lp-re-02-header__inner--point-2 {
  background-color: #E6EBF2;
}
.lp-re-02-header__inner--point-3 {
  background-color: #F0F0E1;
}
.lp-re-02-header__inner--point-4 {
  background-color: #F2EFF5;
}
.lp-re-02-header__inner--point-5 {
  background-color: #F7EEE4;
}
.lp-re-02-header__inner--special-offer {
  background-color: #F8F8F8;
}
.lp-re-02-header__inner--price {
  background-color: #F2EDEC;
}
.lp-re-02-header__inner--flow {
  background-color: #FCFAFA;
}
.lp-re-02-header__inner--quality {
  background-color: #FDFDE8;
}
@media screen and (max-width: 430px) {
  .lp-re-02-header__inner {
    display: flex;
    justify-content: space-between;
    gap: 0;
    position: relative;
    padding-inline: 30px 15px;
    z-index: 200;
  }
}

.lp-re-02-header__side {
  width: calc(50% - 215px);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: min(7.5vh, 60px);
  padding-left: 4.39238653vw;
}
@media screen and (max-width: 1250px) {
  .lp-re-02-header__side {
    padding-left: 20px;
  }
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__side {
    padding: 0;
  }
}
@media screen and (max-width: 430px) {
  .lp-re-02-header__side {
    display: none;
  }
}

.lp-re-02-header__side-headline {
  font-family: "Jost", sans-serif;
  font-weight: normal;
  font-size: 27px;
  letter-spacing: -0.01em;
  line-height: 45px;
  text-align: left;
  color: #ac7862;
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__side-headline {
    display: none;
  }
}

.lp-re-02-header__side-list {
  margin-top: 23px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__side-list {
    display: none;
  }
}

.lp-re-02-header__side-item {
  transition: opacity 0.3s ease;
  position: relative;
  opacity: 0.3;
}
.lp-re-02-header__side-item.active {
  opacity: 1;
}
.lp-re-02-header__side-item a {
  text-decoration: none;
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .lp-re-02-header__side-item a:hover {
    opacity: 0.7;
  }
}

.lp-re-02-header__side-link {
  font-weight: bold;
  font-size: 16px;
  line-height: 22px;
  text-align: left;
  color: #000;
}
.lp-re-02-header__side-link .--big {
  font-size: 34px;
}

.lp-re-02-header__side-sub-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 18px 0 0 24px;
}

.lp-re-02-header__side-sub-item {
  opacity: 0.3;
}
.lp-re-02-header__side-sub-item.active {
  opacity: 1;
}

.lp-re-02-header__side-sub-link {
  display: flex;
  align-items: center;
  gap: 16px;
}

.lp-re-02-header__side-sub-num {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 300;
  font-size: 29px;
  line-height: 1;
  text-align: center;
  color: #000;
}

.lp-re-02-header__side-sub-text {
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0em;
  line-height: 25px;
  text-align: left;
  color: #000;
}

.lp-re-02-header__side-btn {
  margin-top: auto;
  margin-left: -10px;
  margin-bottom: 27px;
  max-width: 300px;
}
@media screen and (max-width: 1250px) {
  .lp-re-02-header__side-btn {
    padding-right: 10px;
    max-width: 280px;
  }
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__side-btn {
    display: none;
  }
}

.lp-re-02-header__side-btn-text {
  font-weight: bold;
  font-size: 13px;
  text-align: center;
  color: #ac7862;
}
.lp-re-02-header__side-btn-text .large {
  font-size: 20px;
}

.lp-re-02-header__right {
  position: relative;
  height: 100%;
  width: calc(50% - 215px);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  z-index: -1;
  padding: 54px 4.39238653vw 64px;
}
@media screen and (max-width: 1250px) {
  .lp-re-02-header__right {
    padding: 54px 20px 64px;
  }
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__right {
    display: none;
  }
}

.lp-re-02-header__right-logo {
  width: 100%;
  max-width: 213px;
}
@media screen and (max-width: 1060px) {
  .lp-re-02-header__right-logo {
    display: none;
  }
}
@media screen and (max-width: 430px) {
  .lp-re-02-header__right-logo {
    display: block;
    position: fixed;
    top: 20px;
    right: 20px;
    max-width: 112px;
    height: -moz-fit-content;
    height: fit-content;
  }
}

.lp-re-02-header__right-img {
  position: absolute;
  max-width: 100%;
  opacity: 0;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 430px) {
  .lp-re-02-header__right-img {
    display: none;
  }
}
.lp-re-02-header__right-img.active {
  opacity: 1;
}
.lp-re-02-header__right-img img {
  height: 103dvh;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right;
     object-position: right;
}

.fix-window::before {
  content: "";
  width: 100%;
  height: 4px;
  background-color: #000000;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
.fix-window::after {
  content: "";
  width: 100%;
  height: 4px;
  background-color: #000000;
  position: fixed;
  bottom: 0px;
  left: 0;
  z-index: 100;
}

.fix-window-side::before {
  content: "";
  width: 4px;
  height: 100%;
  background-color: #000000;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
.fix-window-side::after {
  content: "";
  width: 4px;
  height: 100%;
  background-color: #000000;
  position: fixed;
  top: 0px;
  right: 0;
  z-index: 100;
}

@media screen and (max-width: 430px) {
  .lp-re-02-mv {
    position: relative;
    height: auto; /* 長さはデザイン通り */
    overflow: hidden;
    height: 100svh;
  }
}

@media screen and (max-width: 430px) {
  .lp-re-02-mv__inner {
    height: 100%;
    width: 100%;
    height: 100svh;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1; /* 必要に応じて調整 */
  }
}

.lp-re-02-mv__layer {
  background-color: #fff;
  padding: 12px 14px 0;
}
@media screen and (max-width: 430px) {
  .lp-re-02-mv__layer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    height: 100%;
  }
}

.lp-re-02-mv__cycle {
  width: 135px;
  margin-top: -100px;
  margin-inline: auto;
  animation: cycle 10s linear infinite;
}
@media screen and (max-width: 430px) {
  .lp-re-02-mv__cycle {
    margin-top: -68px;
  }
}
.lp-re-02-mv__cycle img {
  aspect-ratio: 1;
}

@keyframes cycle {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
.lp-re-02-mv__text {
  font-family: "Tsukushi B Round Gothic";
  font-weight: bold;
  font-size: 23px;
  letter-spacing: 0em;
  line-height: 41px;
  text-align: center;
  color: #000;
  margin-top: min(6.511627907vw, 28px);
}
@media screen and (max-width: 430px) {
  .lp-re-02-mv__text {
    font-size: min(5.3488372093vw, 23px);
    line-height: 1.7826086957;
  }
}

.lp-re-02-mv__line {
  display: block;
  width: 1px;
  height: min(6.511627907vw, 28px);
  background-color: #ac7862;
  margin: min(10.6976744186vw, 46px) auto 0;
}
@media screen and (max-width: 430px) {
  .lp-re-02-mv__line {
    margin: min(4.6511627907vw, 46px) auto 0;
  }
}

.lp-re-02-about__layer {
  padding: 40px 0 80px;
  background-color: #f2f1e9;
  border-top: 3px solid #000;
}

.lp-re-02-about__headwrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lp-re-02-about__headline {
  font-weight: bold;
  font-size: 25px;
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
  color: #000;
  position: relative;
  padding-bottom: 6px;
  margin-top: -6px;
}
.lp-re-02-about__headline::before {
  content: "";
  width: 110%;
  height: 3px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
}

.lp-re-02-about__bgtext {
  font-family: "Jost", sans-serif;
  font-weight: bold;
  font-size: min(19.0697674419vw, 82px);
  line-height: 1;
  text-align: left;
  color: #fff;
}
.lp-re-02-about__bgtext.--big {
  font-size: min(26.0465116279vw, 112px);
  line-height: 1;
  margin-top: -40px;
}

.lp-re-02-about__text {
  font-weight: 500;
  font-size: 15px;
  letter-spacing: -0.01em;
  line-height: 35px;
  text-align: left;
  color: #000;
  width: min(100%, 348px);
  margin-inline: auto;
  padding-inline: min(4.6511627907vw, 20px);
}
.lp-re-02-about__text .--bold {
  font-weight: 700;
}

.lp-re-02-about-swiper {
  margin-top: 112px;
}

.lp-re-02-about-wrapper {
  transition-timing-function: linear !important;
}

.lp-re-02-about__img img {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}

.lp-re-02-point {
  overflow: hidden;
}

.lp-re-02-point__intro {
  background-color: #ffffff;
  border-top: 3px solid #000;
  padding: min(11.6279069767vw, 50px) min(6.976744186vw, 30px);
  position: relative;
}
.lp-re-02-point__intro::before {
  content: "";
  width: min(23.9534883721vw, 103px);
  aspect-ratio: 1;
  background: url("../img/lp-re-02/lp-re-02-point__badge.webp") no-repeat center center/contain;
  position: absolute;
  top: 0;
  left: 0;
}

.lp-re-02-point__headbox {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  margin: 0 auto;
}

.lp-re-02-point__headline {
  font-weight: bold;
  font-size: min(7.4418604651vw, 32px);
  letter-spacing: -0.1em;
  line-height: 1.09375;
  color: #000;
  margin: 0 auto;
}
.lp-re-02-point__headline .--big {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 300;
  font-size: min(26.7441860465vw, 115px);
  line-height: 1;
  color: #000;
}

.lp-re-02-point__headbox-text {
  font-weight: bold;
  font-size: 15px;
  letter-spacing: 0em;
  line-height: 1;
  text-align: left;
  color: #000;
  position: absolute;
  top: min(3.7209302326vw, 16px);
  right: 5%;
}
.lp-re-02-point__headbox-text::before {
  content: "";
  width: 140px;
  height: 9px;
  background: url("../img/lp-re-02/lp-re-02-point__headbox-text.svg") no-repeat center center/contain;
  position: absolute;
  bottom: -16px;
  left: 0px;
}

.lp-re-02-point__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 12px;
}

.lp-re-02-point__item {
  display: flex;
  align-items: center;
  gap: min(7.4418604651vw, 32px);
  position: relative;
  padding: 6px 18px;
}
.lp-re-02-point__item::before {
  content: "";
  font-family: "Jost", sans-serif;
  font-weight: bold;
  font-size: min(9.5348837209vw, 41px);
  line-height: 1;
  text-align: right;
  color: #fff;
  text-transform: uppercase;
  opacity: 0.8;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.lp-re-02-point__item:nth-child(1) {
  background-color: #e5dddb;
}
.lp-re-02-point__item:nth-child(1)::before {
  content: "Movie";
}
.lp-re-02-point__item:nth-child(2) {
  background-color: #cfd7e3;
}
.lp-re-02-point__item:nth-child(2)::before {
  content: "Location";
}
.lp-re-02-point__item:nth-child(3) {
  background-color: #e3e2cf;
}
.lp-re-02-point__item:nth-child(3)::before {
  content: "Design";
}
.lp-re-02-point__item:nth-child(4) {
  background-color: #dbd6de;
}
.lp-re-02-point__item:nth-child(4)::before {
  content: "Hospitality";
}
.lp-re-02-point__item:nth-child(5) {
  background-color: #eadccf;
}
.lp-re-02-point__item:nth-child(5)::before {
  content: "Quality";
}

.lp-re-02-point__number {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 300;
  font-size: min(9.0697674419vw, 39px);
  line-height: 1;
  text-align: left;
  color: #000;
}

.lp-re-02-point__text {
  font-weight: bold;
  font-size: min(3.9534883721vw, 17px);
  letter-spacing: -0.05em;
  line-height: 25px;
  text-align: left;
  color: #000;
  position: relative;
}

.lp-re-02-point__content:nth-child(1) {
  background-color: #e5dddb;
}
.lp-re-02-point__content:nth-child(1) .lp-re-02-point__content-wrap::before {
  content: "Movie";
}
.lp-re-02-point__content:nth-child(2) {
  background-color: #cfd7e3;
}
.lp-re-02-point__content:nth-child(2) .lp-re-02-point__content-wrap::before {
  content: "Location";
}
.lp-re-02-point__content:nth-child(3) {
  background-color: #e3e2cf;
}
.lp-re-02-point__content:nth-child(3) .lp-re-02-point__content-wrap::before {
  content: "DESIGN";
}
.lp-re-02-point__content:nth-child(4) {
  background-color: #dbd6de;
}
.lp-re-02-point__content:nth-child(4) .lp-re-02-point__content-wrap::before {
  content: "HOSPITALITY";
}
.lp-re-02-point__content:nth-child(5) {
  background-color: #eadccf;
}
.lp-re-02-point__content:nth-child(5) .lp-re-02-point__content-wrap::before {
  content: "quality";
}

.lp-re-02-point__content {
  border-top: 1px solid #000;
  padding: min(6.976744186vw, 30px) min(3.2558139535vw, 14px) min(9.3023255814vw, 40px);
}
.lp-re-02-point__content #point-2 {
  padding: 30px 14px 100px;
}

.lp-re-02-point__content-wrap {
  display: flex;
  align-items: center;
  gap: min(5.5813953488vw, 24px);
  margin-left: min(9.3023255814vw, 40px);
  margin-top: 16px;
  position: relative;
}
.lp-re-02-point__content-wrap::before {
  content: "";
  font-family: "Jost", sans-serif;
  font-weight: bold;
  font-size: min(14.1860465116vw, 61px);
  line-height: 1;
  letter-spacing: -0.05em;
  text-align: right;
  color: #fff;
  text-transform: uppercase;
  opacity: 0.5;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-20%);
  white-space: nowrap;
}
.lp-re-02-point__content-wrap.-ml_24 {
  margin-left: min(5.5813953488vw, 24px);
}

.lp-re-02-point__content-number {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 300;
  font-size: min(30.4651162791vw, 131px);
  line-height: 1;
  text-align: right;
  color: #000;
  position: relative;
}

.lp-re-02-point__content-right {
  position: relative;
}

.lp-re-02-point__content-title {
  font-family: "Tsukushi B Round Gothic";
  font-weight: bold;
  font-size: 15px;
  line-height: 32px;
  text-align: center;
  color: #fff;
  background-color: #000;
  position: relative;
  padding: 4px 18px;
}
.lp-re-02-point__content-title::before {
  content: "";
  width: 16px;
  height: 11px;
  background-color: #000;
  -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
          clip-path: polygon(100% 0, 0 0, 100% 100%);
  position: absolute;
  bottom: 2px;
  left: 50px;
  transform: translate(-50%, 100%);
}

.lp-re-02-point__content-headline {
  font-weight: bold;
  font-size: 22px;
  letter-spacing: 0em;
  line-height: 33px;
  text-align: left;
  color: #000;
  margin-top: 12px;
}

.lp-re-02-point__content-text {
  max-width: 340px;
  margin-top: 10px;
  margin-inline: auto;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: -0.01em;
  line-height: 30px;
  text-align: left;
  color: #000;
}
.lp-re-02-point__content-text .--bold {
  font-weight: bold;
}

.lp-re-02-point__content-video {
  max-width: 340px;
  margin-top: 28px;
  margin-inline: auto;
}
.lp-re-02-point__content-video iframe {
  width: 100%;
  aspect-ratio: 340/194;
}

.lp-re-02-point__content-location-list {
  display: flex;
  flex-direction: column;
  gap: 50px;
  margin-top: 32px;
  margin-inline: -14px;
  overflow: hidden;
}

.lp-re-02-point__content-location-item {
  width: 95.3488372093%;
}
.lp-re-02-point__content-location-item:nth-child(odd) {
  margin-left: auto;
}

.lp-re-02-point__content-material {
  display: flex;
  flex-direction: column;
  gap: 40px;
  border: 1px solid #000000;
  background-color: #fff;
  border-radius: 10px;
  padding: 30px 26px;
  margin-top: 26px;
  margin-inline: 10px;
}

.lp-re-02-point__content-material-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(3.7209302326vw, 16px);
  width: 100%;
  background-color: #ac7862;
  padding: min(1.6279069767vw, 7px) min(3.7209302326vw, 16px);
  position: relative;
}
.lp-re-02-point__content-material-head::before {
  content: "";
  width: 30px;
  aspect-ratio: 30/15;
  background-color: #ac7862;
  -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
          clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translate(-50%, 100%);
}

.lp-re-02-point__content-material-text {
  font-weight: bold;
  font-size: min(2.7906976744vw, 12px);
  letter-spacing: -0.1em;
  line-height: 16px;
  text-align: left;
  color: #fff;
}

.lp-re-02-point__content-material-subtext {
  font-weight: bold;
  font-size: min(5.3488372093vw, 23px);
  letter-spacing: 0em;
  line-height: 1;
  text-align: left;
  color: #fff;
}

.lp-re-02-point__content-material-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  justify-content: space-around;
  gap: 20px 2px;
  margin-top: 30px;
}

.lp-re-02-point__content-material-item {
  width: min(100%, 104px);
}

.lp-re-02-point__content-material-img {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.lp-re-02-point__content-material-img img {
  width: min(100%, 74px);
  aspect-ratio: 1;
}

.lp-re-02-point__content-material-caption {
  font-family: "Noto Sans CJK JP";
  font-weight: normal;
  font-size: min(2.7906976744vw, 12px);
  line-height: 1.4166666667;
  letter-spacing: -0.1em;
  text-align: center;
  color: #000;
}

.lp-re-02-point__content-ring-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(6.511627907vw, 28px);
  width: 100%;
  background-color: #ac7862;
  padding: min(1.6279069767vw, 7px) min(3.7209302326vw, 16px);
  position: relative;
}
.lp-re-02-point__content-ring-head::before {
  content: "";
  width: 30px;
  aspect-ratio: 30/15;
  background-color: #ac7862;
  -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
          clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translate(-50%, 100%);
}

.lp-re-02-point__content-ring-text {
  font-weight: bold;
  font-size: min(2.7906976744vw, 12px);
  letter-spacing: -0.1em;
  line-height: 1.3333333333;
  text-align: left;
  color: #fff;
}

.lp-re-02-point__content-ring-subtext {
  font-weight: bold;
  font-size: min(5.3488372093vw, 23px);
  letter-spacing: 0em;
  line-height: 1;
  text-align: left;
  color: #fff;
}

.lp-re-02-point__content-ring-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  justify-content: space-around;
  gap: min(4.6511627907vw, 20px) min(0.4651162791vw, 2px);
  margin-top: 30px;
}

.lp-re-02-point__content-ring-item {
  width: min(100%, 104px);
}

.lp-re-02-point__content-ring-img {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.lp-re-02-point__content-ring-img img {
  width: min(100%, 63px);
  aspect-ratio: 1;
}

.lp-re-02-point__content-ring-caption {
  font-family: "Noto Sans CJK JP";
  font-weight: normal;
  font-size: min(2.7906976744vw, 12px);
  line-height: 1.4166666667;
  text-align: center;
  color: #000;
}

.lp-re-02-point__content-swiper {
  margin-top: min(18.6046511628vw, 80px);
}

.lp-re-02-point__content-wrapper {
  transition-timing-function: linear !important;
}

.lp-re-02-point__content-slide-img {
  position: relative;
}
.lp-re-02-point__content-slide-img img {
  aspect-ratio: 1;
}

.lp-re-02-point__content-warranty {
  background-color: #fff;
  border: 1px solid #000000;
  border-radius: 10px;
  margin-top: 30px;
  margin-inline: min(2.3255813953vw, 10px);
  padding: min(6.976744186vw, 30px) min(6.0465116279vw, 26px) min(11.6279069767vw, 50px);
}

.lp-re-02-point__content-warranty-headline {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(5.5813953488vw, 24px);
}
.lp-re-02-point__content-warranty-headline::before {
  content: "";
  width: 9px;
  aspect-ratio: 9/41;
  background: url("../img/lp-re-02/lp-re-02-point__content-warranty-symbol.svg") no-repeat center center/contain;
}
.lp-re-02-point__content-warranty-headline::after {
  content: "";
  width: 9px;
  aspect-ratio: 9/41;
  background: url("../img/lp-re-02/lp-re-02-point__content-warranty-symbol.svg") no-repeat center center/contain;
  scale: -1;
}

.lp-re-02-point__content-warranty-headline-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: bold;
  font-size: min(5.1162790698vw, 22px);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
  color: #2d2d2d;
}
.lp-re-02-point__content-warranty-headline-text .--sub {
  font-family: "Jost", sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: 10px;
  line-height: 27px;
  text-align: center;
  color: #d6b04a;
}

.lp-re-02-point__content-warranty-text {
  font-weight: 500;
  font-size: 14px;
  line-height: 30px;
  color: #000;
  margin-top: 20px;
}

.lp-re-02-special-offer__layer {
  border-top: 3px solid #000;
  background-color: #FFF;
  padding: min(16.2790697674vw, 70px) min(7.9069767442vw, 34px) min(11.6279069767vw, 50px);
}

.c-lp-re-02-headline {
  font-weight: bold;
  font-size: min(3.9534883721vw, 17px);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
  color: #000;
  position: relative;
  z-index: 1;
}
.c-lp-re-02-headline .--big {
  font-size: min(7.6744186047vw, 33px);
  line-height: 1.7;
}
.c-lp-re-02-headline .--brown {
  color: #AC7862;
}
.c-lp-re-02-headline .--darkTaupe {
  color: #938557;
}
.c-lp-re-02-headline::before {
  content: "";
  font-family: Jost;
  font-weight: bold;
  font-size: min(13.488372093vw, 58px);
  letter-spacing: -0.02em;
  line-height: 1;
  text-align: center;
  color: #ebe7e2;
  text-transform: uppercase;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -40%);
  z-index: -1;
  white-space: nowrap;
}

.lp-re-02-special-offer__headline::before {
  content: "special offer";
  color: #EBE7E2;
}

.lp-re-02-special-offer__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 30px;
}

.lp-re-02-special-offer__item {
  padding: min(4.6511627907vw, 20px);
  border-radius: 20px;
  background: #f2f2f2;
  position: relative;
}

.lp-re-02-special-offer__circle {
  width: min(24.8837209302vw, 107px);
  height: min(24.8837209302vw, 107px);
  background: #a53232;
  font-weight: bold;
  font-size: min(2.7906976744vw, 12px);
  line-height: 1.5833333333;
  text-align: center;
  color: #fff;
  border-radius: 9999px;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-7deg);
  right: -20px;
  top: -42px;
}
.lp-re-02-special-offer__circle .num {
  font-size: min(3.7209302326vw, 16px);
}

.lp-re-02-special-offer__item-headgroup {
  display: flex;
  align-items: center;
  gap: min(6.976744186vw, 30px);
}

.lp-re-02-special-offer__num {
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: min(9.0697674419vw, 39px);
  letter-spacing: -0.01em;
  line-height: 1;
  color: #ac7862;
}

.lp-re-02-special-offer__item-headline {
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: min(4.1860465116vw, 18px);
  letter-spacing: -0.01em;
  line-height: 2.5;
  text-align: left;
  color: #000;
  text-transform: uppercase;
}

.lp-re-02-special-offer__text {
  font-weight: 500;
  font-size: min(3.023255814vw, 13px);
  letter-spacing: -0.02em;
  line-height: 1.9230769231;
  text-align: left;
  color: #000;
  margin-top: 10px;
}

.lp-re-02-special-offer__plus {
  display: block;
  width: 40px;
  aspect-ratio: 1;
  margin: 20px auto 0;
}

.lp-re-02-special-offer__service {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(6.511627907vw, 28px);
  font-weight: bold;
  font-size: min(4.8837209302vw, 21px);
  letter-spacing: 0em;
  line-height: 2.1428571429;
  text-align: center;
  color: #000;
  margin-top: 4px;
}
.lp-re-02-special-offer__service .--accent {
  color: #ac7862;
}

.lp-re-02-special-offer__service-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 12px;
}

.lp-re-02-special-offer__service-item {
  display: flex;
  border-radius: 10px;
  background-color: #f2f2f2;
}

.lp-re-02-special-offer__service-img {
  width: 36.1111111111%;
}

.lp-re-02-special-offer__service-content {
  padding: min(4.1860465116vw, 18px) min(5.5813953488vw, 24px);
}

.lp-re-02-special-offer__service-text {
  font-weight: bold;
  font-size: min(3.488372093vw, 15px);
  letter-spacing: 0em;
  line-height: 1.4666666667;
  text-align: left;
  color: #000;
}

.lp-re-02-special-offer__btn {
  margin-top: min(9.3023255814vw, 40px);
}

.lp-re-02-price__layer {
  background-color: #e5dddb;
  border-top: 3px solid #000;
  padding: min(20.9302325581vw, 90px) min(6.976744186vw, 30px) min(16.2790697674vw, 70px);
}

.lp-re-02-price__headline::before {
  content: "GOOD PRICE";
  color: #fff;
  opacity: 0.6;
}

.lp-re-02-price__text {
  max-width: 340px;
  font-weight: 500;
  font-size: 14px;
  line-height: clac(30/14);
  text-align: left;
  color: #000;
  margin-top: 28px;
  margin-inline: auto;
}

.lp-re-02-price__wrap {
  display: flex;
  gap: min(8.3720930233vw, 36px);
  margin-top: 30px;
}

.lp-re-02-price__left {
  position: relative;
  background-color: #938557;
  border-radius: 7px;
  width: min(34.4186046512vw, 148px);
  padding: min(2.7906976744vw, 12px);
}
.lp-re-02-price__left::after {
  content: "";
  display: block;
  width: min(3.7209302326vw, 16px);
  height: min(0.6976744186vw, 3px);
  background-color: #000000;
  position: absolute;
  top: 50%;
  right: min(-5.5813953488vw, -24px);
  transform: translateY(-50%);
}
.lp-re-02-price__left::before {
  content: "";
  display: block;
  width: min(3.7209302326vw, 16px);
  height: min(0.6976744186vw, 3px);
  background-color: #000000;
  position: absolute;
  top: 50%;
  right: min(-5.5813953488vw, -24px);
  transform: translateY(-50%);
  rotate: 90deg;
}

.lp-re-02-price__left-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: min(4.1860465116vw, 18px);
  line-height: 1;
  text-align: center;
  color: #fff;
}

.lp-re-02-price__left-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: min(4.1860465116vw, 18px);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
  color: #fff;
  margin-top: 8px;
}
.lp-re-02-price__left-text .tax {
  font-size: min(2.7906976744vw, 12px);
}

.lp-re-02-price__right {
  position: relative;
  background-color: #938557;
  border-radius: 7px;
  width: 185px;
  padding: 10px 10px;
}

.lp-re-02-price__right-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
}

.lp-re-02-price__right-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 11px;
  letter-spacing: -0.02em;
  line-height: 18px;
  text-align: center;
  color: #fff;
  margin-top: 8px;
}

.lp-re-02-price__example {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 40px auto 0;
  font-weight: bold;
  font-size: 12px;
  letter-spacing: 0em;
  line-height: 23px;
  text-align: center;
  color: #000;
  background-color: #fff;
  border-radius: 9999px;
  position: relative;
  padding: 8px 32px;
}
.lp-re-02-price__example::before {
  content: "";
  width: 18px;
  aspect-ratio: 18/14;
  background-color: #fff;
  -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
          clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translate(-50%, 100%);
}

.lp-re-02-price__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px;
}

.lp-re-02-price__item {
  display: flex;
  gap: 16px;
  background-color: #fff;
  padding: 20px;
}

.lp-re-02-price__item-image {
  width: 130px;
}

.lp-re-02-price__item-content {
  flex: 1;
  padding-top: 10px;
}
.lp-re-02-price__item-content.--pt_0 {
  padding-top: 0;
}

.lp-re-02-price__item-content-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 13px;
  letter-spacing: 0em;
  line-height: 20px;
  text-align: left;
  color: #000;
}

.lp-re-02-price__item-content-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 11px;
  letter-spacing: 0em;
  line-height: 20px;
  text-align: left;
  color: #000;
  margin-top: 14px;
}

.lp-re-02-price__item-content-price {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  text-decoration: underline;
  font-size: 20px;
  letter-spacing: 0em;
  line-height: 1;
  text-align: left;
  color: #938557;
}
.lp-re-02-price__item-content-price .tax {
  font-size: 11px;
}
.lp-re-02-price__item-content-price .ls0 {
  letter-spacing: 0;
}

.lp-re-02-price__item-content-note {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 11px;
  letter-spacing: 0em;
  line-height: 1.4;
  text-align: left;
  color: #000;
  margin-top: 10px;
}

.lp-re-02-flow__layer {
  padding: 110px 30px 50px;
  background-color: #F2F0F0;
  border-top: 3px solid #000;
}

.lp-re-02-flow__headline::before {
  content: "WORKFLOW";
  color: #FFFFFF;
  transform: translate(-50%, -45%);
}

.lp-re-02-quality__layer {
  background-color: #efedcf;
  border-top: 3px solid #000;
  padding: 96px 30px 50px;
}

.lp-re-02-quality__headline::before {
  content: "QUALITY";
  color: #FFFFFF;
  transform: translate(-50%, -45%);
}

.lp-re-02-cta__layer {
  background-color: #ffffff;
  border-top: 3px solid #000;
  padding: 40px 0px 50px;
}

.lp-re-02__cta-wrap {
  position: relative;
}
.lp-re-02__cta-wrap::before {
  content: "";
  display: block;
  width: 134px;
  aspect-ratio: 134/134;
  background: url("../img/lp-re-02/cycle-2.webp") no-repeat center center/cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  animation: cycle2 10s linear infinite;
}

@keyframes cycle2 {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}/*# sourceMappingURL=lp-re-02.css.map */