@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  src: url("/lp/renovation/font/NotoSansJP-Light-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSansJP-Light-subset.woff") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("/lp/renovation/font/NotoSansJP-Regular-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSansJP-Regular-subset.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("/lp/renovation/font/NotoSansJP-Medium-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSansJP-Medium-subset.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("/lp/renovation/font/NotoSansJP-Bold-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSansJP-Bold-subset.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Serif JP";
  src: url("/lp/renovation/font/NotoSerifJP-Light-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSerifJP-Light-subset.woff") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Serif JP";
  src: url("/lp/renovation/font/NotoSerifJP-Regular-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSerifJP-Regular-subset.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Serif JP";
  src: url("/lp/renovation/font/NotoSerifJP-Medium-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSerifJP-Medium-subset.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Serif JP";
  src: url("/lp/renovation/font/NotoSerifJP-Bold-subset.woff2") format("woff2"), url("/lp/renovation/font/NotoSerifJP-Bold-subset.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "MyHelvetica";
  src: url("/lp/renovation/font/Helvetica-Light-subset.woff2") format("woff2"), url("/lp/renovation/font/Helvetica-Light-subset.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "MyHelvetica";
  src: url("/lp/renovation/font/Helvetica-subset.woff2") format("woff2"), url("/lp/renovation/font/Helvetica-subset.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "MyHelvetica";
  src: url("/lp/renovation/font/Helvetica-Bold-subset.woff2") format("woff2"), url("/lp/renovation/font/Helvetica-Bold-subset.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
.grecaptcha-badge {
  visibility: hidden;
}

.main__area {
  position: relative;
  width: 100%;
  background-color: var(--c-white02);
}
@media screen and (min-width: 768px) {
  .main__area {
    max-width: 470px;
    margin-inline: auto;
  }
}

.page-anchor {
  position: absolute;
  top: -90px;
}
@media screen and (min-width: 768px) {
  .page-anchor {
    top: -30px;
  }
}

.animation-trigger {
  transition: all 0.5s ease-out 0s;
}

.header__area {
  background-color: var(--c-brown01);
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.15s ease-out, visibility 0.15s ease-out;
  width: 100%;
  z-index: 1000;
  display: flex;
  justify-content: space-between;
  padding: 15px 20px;
}
.header__area.active {
  visibility: visible;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .header__area {
    display: none;
  }
}

.header-logo__img-wrap {
  width: 49.2753623188%;
  max-width: 171px;
}
.header-logo__img-wrap > img {
  width: 100%;
  height: auto;
  display: block;
}

.header__txt {
  font-size: 1rem;
  line-height: 1;
  padding: 7px 8px 7px 10px;
  border: solid 1px var(--c-black01);
  border-radius: 3px;
  height: -moz-fit-content;
  height: fit-content;
}

.fixed-bottom__area {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.15s ease-out, visibility 0.15s ease-out;
  height: 50px;
  width: 100%;
  z-index: 1000;
  display: flex;
  gap: 7px;
  padding-inline: 15px;
}
.fixed-bottom__area.active {
  visibility: visible;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .fixed-bottom__area {
    width: 50px;
    right: 30px;
    padding-inline: 0;
    left: auto;
    transform: none;
  }
}

.fixed-bottom-form__btn {
  width: calc(100% - 49px - 7px);
  height: 49px;
  background-color: var(--c-brown03);
  border: solid var(--c-brown02) 2px;
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.1428571429rem;
  font-weight: 500;
  color: var(--c-white01);
  transition: var(--tran-all);
}
.fixed-bottom-form__btn:hover {
  filter: brightness(1.05);
  opacity: 1;
  color: var(--c-white01);
}
.fixed-bottom-form__btn:hover, .fixed-bottom-form__btn:active, .fixed-bottom-form__btn:focus {
  color: var(--c-white01);
}
@media screen and (min-width: 768px) {
  .fixed-bottom-form__btn {
    display: none;
  }
}

.fixed-bottom-top__btn {
  width: 49px;
  aspect-ratio: 1/1;
  background-color: var(--c-brown03);
  border: solid var(--c-brown02) 2px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: var(--tran-all);
}
.fixed-bottom-top__btn:hover {
  filter: brightness(1.05);
  opacity: 1;
}
.fixed-bottom-top__btn > span {
  width: 13px;
  aspect-ratio: 1/1;
  border-style: solid;
  border-width: 2px 2px 0 0;
  border-color: var(--c-white01);
  transform: translateY(2px) rotate(-45deg);
}

.main-visual__area {
  height: 100svh;
  position: relative;
}
@media screen and (min-width: 768px) {
  .main-visual__area {
    max-height: 760px;
  }
}

.main-visual__wrap {
  height: 100%;
}
.main-visual__wrap .swiper {
  height: 100%;
}
.main-visual__wrap .slide {
  height: 100%;
}
.main-visual__wrap .slide-media {
  height: 100%;
}
.main-visual__wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.main-visual__wrap .slide01 .main-visual__txt--limited,
.main-visual__wrap .slide01 .main-visual__txt--copy,
.main-visual__wrap .slide01 .main-visual__title--renovation,
.main-visual__wrap .slide01 .main-visual__title--architect,
.main-visual__wrap .slide01 .main-visual__txt--decoration {
  color: #f3eee6;
  border-color: #f3eee6;
}
.main-visual__wrap .slide01 .main-visual__txt--limited::before,
.main-visual__wrap .slide01 .main-visual__txt--copy::before,
.main-visual__wrap .slide01 .main-visual__title--renovation::before,
.main-visual__wrap .slide01 .main-visual__title--architect::before,
.main-visual__wrap .slide01 .main-visual__txt--decoration::before {
  background-color: #f3eee6;
}
.main-visual__wrap .slide01 .main-visual__vertical-line,
.main-visual__wrap .slide01 .main-visual__beside-top-line,
.main-visual__wrap .slide01 .main-visual__beside-bottom-line {
  background-color: #f3eee6;
}
.main-visual__wrap .slide02 .main-visual__txt--limited,
.main-visual__wrap .slide02 .main-visual__txt--copy,
.main-visual__wrap .slide02 .main-visual__title--renovation,
.main-visual__wrap .slide02 .main-visual__title--architect,
.main-visual__wrap .slide02 .main-visual__txt--decoration {
  color: #f8f5f2;
  border-color: #f8f5f2;
}
.main-visual__wrap .slide02 .main-visual__txt--limited::before,
.main-visual__wrap .slide02 .main-visual__txt--copy::before,
.main-visual__wrap .slide02 .main-visual__title--renovation::before,
.main-visual__wrap .slide02 .main-visual__title--architect::before,
.main-visual__wrap .slide02 .main-visual__txt--decoration::before {
  background-color: #f8f5f2;
}
.main-visual__wrap .slide02 .main-visual__vertical-line,
.main-visual__wrap .slide02 .main-visual__beside-top-line,
.main-visual__wrap .slide02 .main-visual__beside-bottom-line {
  background-color: #f8f5f2;
}
.main-visual__wrap .slide03 .main-visual__txt--limited,
.main-visual__wrap .slide03 .main-visual__txt--copy,
.main-visual__wrap .slide03 .main-visual__title--renovation,
.main-visual__wrap .slide03 .main-visual__title--architect,
.main-visual__wrap .slide03 .main-visual__txt--decoration {
  color: #f5f5f5;
  border-color: #f5f5f5;
}
.main-visual__wrap .slide03 .main-visual__txt--limited::before,
.main-visual__wrap .slide03 .main-visual__txt--copy::before,
.main-visual__wrap .slide03 .main-visual__title--renovation::before,
.main-visual__wrap .slide03 .main-visual__title--architect::before,
.main-visual__wrap .slide03 .main-visual__txt--decoration::before {
  background-color: #f5f5f5;
}
.main-visual__wrap .slide03 .main-visual__vertical-line,
.main-visual__wrap .slide03 .main-visual__beside-top-line,
.main-visual__wrap .slide03 .main-visual__beside-bottom-line {
  background-color: #f5f5f5;
}
.main-visual__wrap .slide04 .main-visual__bg {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 252px;
  background-color: #f5f5f6;
}
.main-visual__wrap .slide04 .main-visual__txt--limited,
.main-visual__wrap .slide04 .main-visual__txt--copy,
.main-visual__wrap .slide04 .main-visual__title--renovation,
.main-visual__wrap .slide04 .main-visual__title--architect,
.main-visual__wrap .slide04 .main-visual__txt--decoration {
  color: #bf8766;
  border-color: #bf8766;
}
.main-visual__wrap .slide04 .main-visual__txt--limited::before,
.main-visual__wrap .slide04 .main-visual__txt--copy::before,
.main-visual__wrap .slide04 .main-visual__title--renovation::before,
.main-visual__wrap .slide04 .main-visual__title--architect::before,
.main-visual__wrap .slide04 .main-visual__txt--decoration::before {
  background-color: #bf8766;
}
.main-visual__wrap .slide04 .main-visual__vertical-line,
.main-visual__wrap .slide04 .main-visual__beside-top-line,
.main-visual__wrap .slide04 .main-visual__beside-bottom-line {
  background-color: #bf8766;
}
.main-visual__wrap .slide05 .main-visual__txt--limited,
.main-visual__wrap .slide05 .main-visual__txt--copy,
.main-visual__wrap .slide05 .main-visual__title--renovation,
.main-visual__wrap .slide05 .main-visual__title--architect,
.main-visual__wrap .slide05 .main-visual__txt--decoration {
  color: #412001;
  border-color: #412001;
}
.main-visual__wrap .slide05 .main-visual__txt--limited::before,
.main-visual__wrap .slide05 .main-visual__txt--copy::before,
.main-visual__wrap .slide05 .main-visual__title--renovation::before,
.main-visual__wrap .slide05 .main-visual__title--architect::before,
.main-visual__wrap .slide05 .main-visual__txt--decoration::before {
  background-color: #412001;
}
.main-visual__wrap .slide05 .main-visual__vertical-line,
.main-visual__wrap .slide05 .main-visual__beside-top-line,
.main-visual__wrap .slide05 .main-visual__beside-bottom-line {
  background-color: #412001;
}
.main-visual__wrap .slide06 .main-visual__txt--limited,
.main-visual__wrap .slide06 .main-visual__txt--copy,
.main-visual__wrap .slide06 .main-visual__title--renovation,
.main-visual__wrap .slide06 .main-visual__title--architect,
.main-visual__wrap .slide06 .main-visual__txt--decoration {
  color: #f6f2ee;
  border-color: #f6f2ee;
}
.main-visual__wrap .slide06 .main-visual__txt--limited::before,
.main-visual__wrap .slide06 .main-visual__txt--copy::before,
.main-visual__wrap .slide06 .main-visual__title--renovation::before,
.main-visual__wrap .slide06 .main-visual__title--architect::before,
.main-visual__wrap .slide06 .main-visual__txt--decoration::before {
  background-color: #f6f2ee;
}
.main-visual__wrap .slide06 .main-visual__vertical-line,
.main-visual__wrap .slide06 .main-visual__beside-top-line,
.main-visual__wrap .slide06 .main-visual__beside-bottom-line {
  background-color: #f6f2ee;
}

.main-visual__txt--limited {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.0714285714rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  border-style: solid;
  border-width: 0 1px 1px 1px;
  border-radius: 0 0 4px 4px;
  padding: 3px 13px 3px;
}

.main-visual__title-wrap {
  width: -moz-fit-content;
  width: fit-content;
  min-width: 300px;
  position: absolute;
  top: 61px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.main-visual__vertical-line {
  position: absolute;
  top: 105px;
  width: 1px;
  height: calc(100% - 105px - 33px);
}
.main-visual__vertical-line--left {
  left: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__vertical-line--left {
    left: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__vertical-line--left {
    left: 20px;
  }
}
.main-visual__vertical-line--right {
  right: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__vertical-line--right {
    right: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__vertical-line--right {
    right: 20px;
  }
}
@media (max-width: 329px) {
  .main-visual__vertical-line {
    display: none;
  }
}

.main-visual__beside-top-line {
  position: absolute;
  top: 105px;
  width: calc((100% - 30px - 297px) / 2);
  height: 1px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-top-line {
    width: calc((100% - 60px - 297px) / 2);
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-top-line {
    width: calc((100% - 40px - 297px) / 2);
  }
}
.main-visual__beside-top-line--left {
  left: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-top-line--left {
    left: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-top-line--left {
    left: 20px;
  }
}
.main-visual__beside-top-line--right {
  right: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-top-line--right {
    right: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-top-line--right {
    right: 20px;
  }
}
@media (max-width: 329px) {
  .main-visual__beside-top-line {
    display: none;
  }
}

.main-visual__beside-bottom-line {
  position: absolute;
  bottom: 33px;
  width: calc((100% - 30px - 311px) / 2);
  height: 1px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-bottom-line {
    width: calc((100% - 60px - 311px) / 2);
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-bottom-line {
    width: calc((100% - 40px - 311px) / 2);
  }
}
.main-visual__beside-bottom-line--left {
  left: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-bottom-line--left {
    left: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-bottom-line--left {
    left: 20px;
  }
}
.main-visual__beside-bottom-line--right {
  right: 15px;
}
@media screen and (min-width: 576px) {
  .main-visual__beside-bottom-line--right {
    right: 30px;
  }
}
@media screen and (min-width: 768px) {
  .main-visual__beside-bottom-line--right {
    right: 20px;
  }
}
@media (max-width: 329px) {
  .main-visual__beside-bottom-line {
    display: none;
  }
}

.main-visual__txt--copy {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.2142857143rem;
  letter-spacing: -0.01em;
  line-height: 1;
}
.main-visual__txt--copy > span {
  letter-spacing: -0.46em;
}

.main-visual__title--renovation {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.8928571429rem;
  letter-spacing: -0.14em;
  text-indent: -0.3em;
  line-height: 1;
  margin-top: 7px;
}
.main-visual__title--renovation > span {
  font-size: 2.4642857143rem;
}

.main-visual__title--architect {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.75rem;
  letter-spacing: -0.02em;
  line-height: 1;
  text-indent: 0.6em;
  margin-top: 9px;
}

.main-visual__txt--decoration {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.5864285714rem;
  letter-spacing: 0.08em;
}

#mainvisual-bottom {
  position: absolute;
  bottom: 200px;
}

.introduction__area {
  margin-top: 28px;
  position: relative;
}

.introduction__title {
  font-size: 1.3571428571rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
  padding-bottom: 3px;
}
.introduction__title::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--c-black01);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.introduction__title::after {
  content: "";
  width: 20px;
  height: 10px;
  background-color: var(--c-white02);
  border-bottom: var(--c-black01) 1px solid;
  position: absolute;
  bottom: -9px;
  left: 44%;
  transform: rotate(48deg);
}

.introduction__img-area {
  padding-bottom: 48px;
  position: relative;
  margin-top: 34px;
}

.introduction__img-wrap--issue {
  margin-inline: auto;
  width: 64.6666666667%;
  max-width: 320px;
}
.introduction__img-wrap--issue > img {
  width: 100%;
  height: auto;
}

.introduction__img-wrap--human01 {
  width: 15.7333333333%;
  position: absolute;
  bottom: 0;
  left: 4%;
}
.introduction__img-wrap--human01 > img {
  width: 100%;
  height: auto;
}

.introduction__img-wrap--human02 {
  width: 12.4%;
  position: absolute;
  bottom: 0;
  right: 4%;
}
.introduction__img-wrap--human02 > img {
  width: 100%;
  height: auto;
}

.introduction__txt-wrap {
  padding-top: 20px;
  position: relative;
  padding-bottom: 25px;
}
.introduction__txt-wrap::before {
  content: "";
  width: 100%;
  height: calc(100% - 25px);
  background-color: var(--c-brown02);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.introduction__txt-wrap::after {
  content: "";
  width: 100%;
  height: 25px;
  background-color: var(--c-brown02);
  clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.introduction__txt {
  font-size: 1.0714285714rem;
  text-align: center;
}

.introduction__txt--last {
  padding-bottom: 18px;
}

.introduction__txt--large {
  font-size: 1.3571428571rem;
  text-align: center;
}
.introduction__txt--large > span {
  position: relative;
}
.introduction__txt--large .dot::before {
  content: "";
  width: 3px;
  height: 3px;
  background-color: var(--c-brown03);
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
}
.introduction__txt--large .under-line::before {
  content: "";
  width: 100%;
  height: 4px;
  background-color: var(--c-brown03);
  position: absolute;
  bottom: 3px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.introduction__txt--large .bold {
  font-weight: bold;
}
.introduction__txt--large br {
  display: none;
}
@media (max-width: 360px) {
  .introduction__txt--large br {
    display: block;
  }
}

.about-renovation__area {
  margin-top: 36px;
  position: relative;
}

.about-renovation__title {
  font-size: 1.3571428571rem;
  text-align: center;
  letter-spacing: 0.08em;
  line-height: 0.6em;
  padding-left: 8px;
}
.about-renovation__title > span {
  font-size: 0.9285714286rem;
  text-indent: -0.9em;
  display: block;
  letter-spacing: 0.095em;
}

.about-renovation__txt {
  font-size: 1.0714285714rem;
  padding-inline: 30px;
  text-align: justify;
  margin-top: 18px;
}
.about-renovation__txt > span {
  font-weight: bold;
}

.about-renovation-before__img-area {
  position: relative;
  margin-top: 27px;
}
.about-renovation-before__img-area::before {
  content: "";
  width: calc(100% - 80px);
  height: 1px;
  background-color: #654d3c;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.about-renovation-before__img-wrap {
  margin-inline: auto;
  width: 131px;
}
.about-renovation-before__img-wrap > img {
  width: 100%;
  height: auto;
}

.about-renovation-after__area {
  margin-top: 10px;
  display: flex;
  gap: 10px;
  padding-inline: 15px;
}
@media screen and (min-width: 768px) {
  .about-renovation-after__area {
    padding-inline: 30px;
    gap: 15px;
  }
}

.about-renovation-after__wrap {
  width: calc(50% - 5px);
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .about-renovation-after__wrap {
    width: calc(50% - 7.5px);
  }
}

.about-renovation-arrow__img-wrap {
  width: 33.5px;
}
.about-renovation-arrow__img-wrap > img {
  width: 100%;
  height: auto;
}

.about-renovation-after__title {
  font-size: 1.0714285714rem;
  margin-top: 5px;
}

.about-renovation__img-wrap {
  width: 131px;
  margin-top: 3px;
  z-index: 1;
}
.about-renovation__img-wrap > img {
  width: 100%;
  height: auto;
}

.about-renovation-after__txt {
  font-size: 0.9285714286rem;
  line-height: 1.78em;
  text-align: justify;
  background-color: var(--c-brown02);
  border-radius: 0 0 4px 4px;
  padding: 7px 19px 19px;
  position: relative;
}
.about-renovation-after__txt > span {
  font-weight: bold;
}
.about-renovation-after__txt::before {
  content: "";
  width: 100%;
  height: 19px;
  background-color: var(--c-brown02);
  border-radius: 4px 4px 0 0;
  position: absolute;
  top: -18px;
  left: 0;
}

.about-memories__area {
  margin-top: 47px;
}

.about-memories__img-wrap {
  width: 98px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .about-memories__img-wrap {
    width: 125px;
  }
}
.about-memories__img-wrap > img {
  width: 100%;
  height: auto;
}

.about-memories__title {
  font-size: 1.5714285714rem;
  color: var(--c-brown05);
  text-align: center;
  line-height: 1.2em;
  margin-top: 7px;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .about-memories__title {
    font-size: 1.6428571429rem;
  }
}
.about-memories__title > span {
  display: block;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  font-size: 0.8571428571rem;
  font-weight: 400;
}

.about-memories__txt-wrap {
  margin-top: 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.about-memories__txt {
  font-size: 1.0714285714rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .about-memories__txt {
    font-size: 1.1428571429rem;
  }
}
.about-memories__txt .bold {
  font-weight: bold;
}

.plan-list__area {
  position: relative;
  margin-top: 52px;
}
.plan-list__area::before, .plan-list__area::after {
  content: "";
  width: 100%;
  height: 60%;
  position: absolute;
  top: 30px;
  z-index: -1;
}
.plan-list__area::before {
  background-color: #f9f7f2;
}
.plan-list__area::after {
  background-image: url("/lp/renovation/img/plan-bg.webp");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.2;
}

.plan-list__title {
  text-align: center;
  font-size: 2.6428571429rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .plan-list__title {
    font-size: 2.8571428571rem;
    font-weight: 500;
  }
}
.plan-list__title > span {
  display: block;
  font-size: 0.8571428571rem;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .plan-list__title > span {
    font-size: 0.8571428571rem;
  }
}

.plan-list__txt--small {
  font-size: 0.9285714286rem;
  letter-spacing: 0;
  text-align: center;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .plan-list__txt--small {
    font-size: 1rem;
  }
}

.plan-list__txt--medium {
  font-size: 1.2857142857rem;
  text-align: center;
  line-height: 1.7em;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 768px) {
  .plan-list__txt--medium {
    font-size: 1.3571428571rem;
  }
}
.plan-list__txt--medium > span {
  font-size: 1.0714285714rem;
}
.plan-list__txt--medium .first {
  margin-right: -1px;
}

.plan-list__txt--large {
  font-size: 2.5rem;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  text-align: center;
  letter-spacing: 0.01em;
  line-height: 1.5em;
}
.plan-list__txt--large > span {
  font-size: 2.1428571429rem;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
}

.plan-list-content__wrap {
  border: solid 2px var(--c-brown02);
  background-color: var(--c-white01);
  border-radius: 4px;
  padding: 30px 30px 25px;
  width: calc(100% - 60px);
  max-width: 420px;
  margin-inline: auto;
  margin-top: 9px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media screen and (min-width: 768px) {
  .plan-list-content__wrap {
    padding: 34px 30px 29px;
    gap: 26px;
  }
}

.plan-list-content__inner {
  border-bottom: solid 2px var(--c-brown02);
  padding-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .plan-list-content__inner {
    padding-inline: 20px;
    padding-bottom: 22px;
  }
}
.plan-list-content__inner:last-of-type {
  border-width: 0;
  padding-bottom: 0;
}

.plan-list-content__title {
  display: flex;
  gap: 10px;
  max-width: 245px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .plan-list-content__title {
    max-width: 100%;
  }
}

.plan-list-content__title--en {
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  font-size: 3.2142857143rem;
  line-height: 0.8em;
  color: var(--c-brown03);
}
@media screen and (min-width: 768px) {
  .plan-list-content__title--en {
    font-size: 3.9285714286rem;
  }
}

.plan-list-content__inner--f .plan-list-content__title--en {
  padding-left: 2px;
}

.plan-list-content__title-wrap--jp {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 1px;
}
@media screen and (min-width: 768px) {
  .plan-list-content__title-wrap--jp {
    margin-top: 0;
    gap: 6px;
  }
}

.plan-list-content__title--jp-small {
  font-size: 0.7857142857rem;
  line-height: 1;
  padding-left: 3px;
}
@media screen and (min-width: 768px) {
  .plan-list-content__title--jp-small {
    font-size: 0.9285714286rem;
  }
}

.plan-list-content__title--jp-large {
  font-size: 1.2857142857rem;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 768px) {
  .plan-list-content__title--jp-large {
    font-size: 1.6428571429rem;
  }
}

.plan__title {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.plan__title--en-large {
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  font-size: 3.2142857143rem;
  line-height: 0.8em;
  color: var(--c-brown03);
}
@media screen and (min-width: 768px) {
  .plan__title--en-large {
    font-size: 3.9285714286rem;
  }
}

.plan__title--en-small {
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  font-size: 0.8571428571rem;
  line-height: 1;
  letter-spacing: 0.01em;
  color: var(--c-brown03);
  margin-top: 5px;
}

.plan__title--small {
  font-size: 0.9285714286rem;
  line-height: 1;
  margin-top: 9px;
}
@media screen and (min-width: 768px) {
  .plan__title--small {
    font-size: 1rem;
  }
}

.plan__title--large {
  font-size: 1.7142857143rem;
  line-height: 1;
  margin-top: 6px;
}
@media screen and (min-width: 768px) {
  .plan__title--large {
    margin-top: 7px;
    font-size: 1.8571428571rem;
  }
}

.plan-issue__wrap {
  position: relative;
  width: calc(100% - 60px);
  margin-inline: auto;
  margin-top: 32px;
  border: solid 2px var(--c-brown02);
  border-radius: 4px;
  padding: 15px 15px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-left: 22px;
}
.plan-issue__wrap::after {
  content: "";
  width: 35px;
  height: 15px;
  background-color: var(--c-brown02);
  clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
}

.plan-issue__txt {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "sans-serif" !important;
  font-size: 0.8571428571rem;
  position: relative;
  padding-left: 19px;
}
@media screen and (min-width: 768px) {
  .plan-issue__txt {
    font-size: 1rem;
    padding-left: 23px;
  }
}
.plan-issue__txt > span {
  font-weight: bold;
}
.plan-issue__txt::before {
  content: "";
  width: 14.5px;
  aspect-ratio: 29/27;
  background-image: url("/lp/renovation/img/check-box.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  position: absolute;
  top: 6px;
  left: 0;
}
@media screen and (min-width: 768px) {
  .plan-issue__txt::before {
    width: 16px;
  }
}

.plan-recommendation__txt {
  font-size: 1.0714285714rem;
  text-align: center;
  margin-top: 21px;
}
@media screen and (min-width: 768px) {
  .plan-recommendation__txt {
    font-size: 1.2857142857rem;
    margin-top: 24px;
  }
}
.plan-recommendation__txt > span {
  font-weight: bold;
}

.plan-works__area {
  margin-top: 32px;
  padding-block: 46px 50px;
  background-color: var(--c-gray01);
}
.plan-works__area .plan-gallery {
  margin-top: 8px;
}

.plan-works__title {
  position: relative;
  font-size: 1.5714285714rem;
  font-weight: 500;
  text-align: center;
}
.plan-works__title > span {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.8571428571rem;
  color: var(--c-brown03);
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  letter-spacing: 0.08em;
}
.plan-works__title::before, .plan-works__title::after {
  content: "";
  width: calc((100% - 60px - 117.5px) / 2);
  height: 1px;
  background-color: var(--c-black01);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.plan-works__title::before {
  left: 30px;
}
.plan-works__title::after {
  right: 30px;
}

.plan-works__wrap {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 12px;
}

.plan-works__sub-title {
  font-size: 1.3571428571rem;
  text-align: center;
}

.plan-works-ba__img-wrap {
  position: relative;
  margin-inline: auto;
}
.plan-works-ba__img-wrap > img {
  width: 100%;
  height: auto;
}

.plan-works-ba__img-wrap--after {
  width: calc(100% - 60px);
  margin-top: 6px;
}

.plan-works-ba__img-wrap--before {
  width: 57.3333333333%;
  margin-top: 26px;
}

.plan-works-ba__txt {
  font-size: 0.9285714286rem;
  color: var(--c-white01);
  line-height: 1;
  background-color: rgba(64, 51, 19, 0.4);
  padding: 5px 10px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.plan-gallery__inner {
  width: calc(100% - 60px);
  margin-inline: auto;
}

.plan-gallery__img-wrap {
  width: 100%;
}
.plan-gallery__img-wrap > img {
  width: 100%;
  height: auto;
}

.plan-gallery {
  overflow: hidden;
}
.plan-gallery .swiper {
  overflow: visible;
}
.plan-gallery .swiper-button-prev,
.plan-gallery .swiper-button-next {
  position: relative;
  flex-shrink: 0;
  margin: 0;
  width: 40px;
  height: 40px;
  display: grid;
  place-content: center;
  cursor: pointer;
  transition: var(--tran-all);
  left: 0;
  right: 0;
}
.plan-gallery .swiper-button-prev::after,
.plan-gallery .swiper-button-next::after {
  content: unset;
}
.plan-gallery .swiper-button-prev > img,
.plan-gallery .swiper-button-next > img {
  width: 100%;
  height: auto;
}
.plan-gallery .swiper-button-next {
  transform: rotate(180deg);
}
.plan-gallery .swiper-button-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.plan-gallery .swiper-controller {
  display: flex;
  gap: 9px;
  align-items: center;
  justify-content: flex-end;
  margin-top: 9px;
}
.plan-gallery .swiper-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 5px;
  justify-content: flex-start;
  margin: 0 auto 0 0;
  text-align: center;
  bottom: auto;
  width: calc(100% - 110px);
}
.plan-gallery .swiper-pagination-bullet {
  width: 9px;
  height: 9px;
  cursor: pointer;
  transition: var(--tran-all);
  vertical-align: top;
  border: solid 1px var(--c-brown03);
  border-radius: 0;
  background: unset;
  opacity: 1;
  margin: 0 !important;
}
.plan-gallery .swiper-pagination-bullet-active {
  background-color: var(--c-brown03);
}

.plan-price__area {
  margin-top: 36px;
}

.plan-price__title {
  font-size: 1.1428571429rem;
  line-height: 1.18em;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 150px;
  margin-inline: auto;
  padding-block: 10px 13px;
  background-color: var(--c-brown02);
  border-radius: 4px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .plan-price__title {
    font-size: 1.3571428571rem;
    padding-block: 10px 15px;
  }
}
.plan-price__title::after {
  content: "";
  width: 24px;
  height: 12px;
  background-color: var(--c-brown02);
  clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
  position: absolute;
  bottom: -11px;
  left: 50%;
  transform: translateX(-50%);
}
.plan-price__title > span {
  font-size: 0.7857142857rem;
  letter-spacing: 0.1em;
  display: block;
}

.plan-price__txt-wrap {
  width: calc(100% - 60px);
  max-width: 420px;
  margin-inline: auto;
  background-color: var(--c-white01);
  border-radius: 4px;
  position: relative;
  padding-block: 27px 30px;
  margin-top: 30px;
}
.plan-price__txt-wrap::before {
  content: "";
  width: 76.5px;
  aspect-ratio: 153/63;
  background-image: url("/lp/renovation/img/price-img.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
}

.plan-price__txt {
  font-size: 1.7857142857rem;
  line-height: 1;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  display: flex;
  align-items: baseline;
  gap: 2px;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .plan-price__txt {
    font-size: 1.9285714286rem;
  }
}
.plan-price__txt::before {
  content: "";
  width: 107%;
  height: 8.5px;
  background-color: var(--c-brown02);
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.plan-price__txt > span {
  font-size: 1rem;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .plan-price__txt > span {
    font-size: 1.1428571429rem;
  }
}

.plan-reservation__area {
  background-color: var(--c-brown02);
  padding: 36px 15px 30px;
  position: relative;
  margin-top: 53px;
}
@media screen and (min-width: 576px) {
  .plan-reservation__area {
    padding-inline: 30px;
  }
}
@media screen and (min-width: 768px) {
  .plan-reservation__area {
    padding-inline: 15px;
  }
}

.plan-reservation__title {
  font-size: 2.1428571429rem;
  letter-spacing: 0.07em;
  line-height: 1;
  color: var(--c-brown04);
  position: absolute;
  top: 17px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .plan-reservation__title {
    font-size: 2.8571428571rem;
    top: 10px;
  }
}

.plan-reservation__wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 10px;
}

.plan-reservation-cv__area {
  width: 100%;
  background-color: var(--c-white01);
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  padding-block: 20px 16px;
}
@media screen and (min-width: 768px) {
  .plan-reservation-cv__area {
    padding-block: 26px 16px;
  }
}

.plan-reservation-cv__txt {
  font-size: 0.9285714286rem;
  line-height: 1.7em;
  font-weight: 100;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .plan-reservation-cv__txt {
    font-size: 1.0714285714rem;
  }
}

.plan-reservation-cv__btn {
  font-size: 1.0714285714rem;
  text-align: center;
  font-weight: 500;
  color: var(--c-white01);
  background-color: var(--c-brown04);
  border-radius: 50px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding: 4px 2px;
  margin-top: 9px;
  width: 100%;
  max-width: 200px;
}
@media screen and (min-width: 768px) {
  .plan-reservation-cv__btn {
    font-size: 1.1428571429rem;
    margin-top: 12px;
    max-width: 230px;
  }
}
.plan-reservation-cv__btn:hover, .plan-reservation-cv__btn:focus, .plan-reservation-cv__btn:active {
  color: var(--c-white01);
}

.plan-reservation-cv__img-wrap {
  position: absolute;
  left: 0px;
  bottom: -1px;
  width: 20.2898550725%;
  min-width: 30px;
  transform: translateX(-10px);
  max-width: 120px;
}
.plan-reservation-cv__img-wrap.active {
  transform: translateX(0);
}
.plan-reservation-cv__img-wrap > img {
  width: 100%;
  height: auto;
}

.plan-reservation-other__btn {
  width: calc(50% - 5px);
  border: solid 2px var(--c-brown03);
  background-color: var(--c-white01);
  border-radius: 4px;
  padding-block: 11px 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .plan-reservation-other__btn {
    padding-block: 12px 16px;
  }
}
.plan-reservation-other__btn:hover {
  filter: brightness(1.06);
}
.plan-reservation-other__btn:hover .plan-reservation-other-arrow {
  transform: translateY(30%) rotate(45deg);
}

.plan-reservation-other__title--en {
  font-size: 0.7142857143rem;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  color: var(--c-brown03);
}

.plan-reservation-other__title--jp {
  font-size: 0.9285714286rem;
  line-height: 1.6em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .plan-reservation-other__title--jp {
    font-size: 1rem;
  }
}

.plan-reservation-other-arrow {
  width: 10px;
  aspect-ratio: 1/1;
  border-style: solid;
  border-width: 0 1px 1px 0;
  border-color: var(--c-brown03);
  transform: rotate(45deg);
  transition: var(--tran-all);
  margin-top: 4px;
}

.plan-reservation-other__link::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.s-p-plan-accent__area {
  margin-top: 50px;
  display: flex;
  gap: 9px;
  padding-inline: 30px;
}

.s-p-plan-accent__content {
  background-color: var(--c-brown02);
  position: relative;
  display: flex;
  gap: 10px;
  flex-direction: column;
  align-items: center;
  width: calc(33.3333333333% - 6px);
  padding-block: 6px 10px;
}
@media screen and (min-width: 768px) {
  .s-p-plan-accent__content {
    padding-block: 8px 13px;
  }
}
.s-p-plan-accent__content::before {
  content: "";
  width: 100%;
  height: 25px;
  background-color: var(--c-brown02);
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
}

.s-p-plan-accent__img-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-grow: 1;
}
.s-p-plan-accent__img-wrap > img {
  width: 100%;
  height: auto;
}
.s-p-plan-accent__img-wrap--seismic-resistance {
  width: 70.7070707071%;
  max-width: 120px;
}
.s-p-plan-accent__img-wrap--utility-costs {
  width: 23.2323232323%;
  max-width: 39px;
}
.s-p-plan-accent__img-wrap--subsidy-program {
  width: 40.9090909091%;
  max-width: 69px;
}
.s-p-plan-accent__img-wrap--flooring-and-wallpaper {
  width: 57.0707070707%;
  max-width: 97px;
}
.s-p-plan-accent__img-wrap--equipment {
  width: 31.3131313131%;
  max-width: 53px;
}
.s-p-plan-accent__img-wrap--window {
  width: 53.0303030303%;
  max-width: 90px;
}

.s-p-plan-accent__txt {
  font-size: 0.8571428571rem;
  line-height: 1.7em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .s-p-plan-accent__txt {
    font-size: 1rem;
  }
}
.s-p-plan-accent__txt > span {
  font-weight: bold;
}
.s-p-plan-accent__txt .dot {
  letter-spacing: 0;
  margin-left: -2px;
  letter-spacing: -0.08em;
}

.s-p-plan-eco__area {
  margin-top: 31px;
}

.s-p-plan-eco__copy {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 1px;
  font-size: 1.1428571429rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__copy {
    font-size: 1.2857142857rem;
  }
}
.s-p-plan-eco__copy > span {
  font-size: 0.9285714286rem;
  padding-bottom: 2px;
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__copy > span {
    font-size: 1rem;
    padding-bottom: 2px;
  }
}
.s-p-plan-eco__copy .decolation {
  position: relative;
  width: 4px;
  height: 14px;
}
.s-p-plan-eco__copy .decolation::before {
  content: "";
  width: 1px;
  height: 9px;
  background-color: var(--c-black01);
  position: absolute;
  bottom: 0;
  left: 0;
  transform: rotate(-40deg);
}
.s-p-plan-eco__copy .decolation::after {
  content: "";
  width: 1px;
  height: 12px;
  background-color: var(--c-black01);
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(-16deg);
}
.s-p-plan-eco__copy .decolation-left {
  margin-right: 8px;
  transform: translateY(22%);
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__copy .decolation-left {
    transform: translateY(20%);
  }
}
.s-p-plan-eco__copy .decolation-right {
  transform: scaleX(-1) translateY(22%);
  margin-left: 7px;
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__copy .decolation-right {
    transform: scaleX(-1) translateY(20%);
  }
}

.s-p-plan-eco__title-wrap {
  border-radius: 4px 4px 0 0;
  width: calc(100% - 60px);
  max-width: 420px;
  margin-inline: auto;
  margin-top: 2px;
  position: relative;
  z-index: 1;
  padding-block: 9px 15px;
}
.s-p-plan-eco__title-wrap--s {
  background-color: var(--c-green02);
}
.s-p-plan-eco__title-wrap--p {
  background-color: var(--c-blue02);
}

.s-p-plan-eco__title {
  text-align: center;
  font-size: 1.2857142857rem;
  line-height: 1.4em;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__title {
    font-size: 1.4285714286rem;
  }
}
.s-p-plan-eco__title > span {
  font-size: 1rem;
}

.s-p-plan-eco__title-img {
  width: 100%;
  height: 25px;
  overflow: hidden;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.s-p-plan-eco__title-img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.s-p-plan-eco__content {
  width: calc(100% - 60px);
  max-width: 420px;
  margin-inline: auto;
  border-style: solid;
  border-width: 0 2px 2px 2px;
  border-radius: 0 0 4px 4px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.s-p-plan-eco__content--s {
  border-color: var(--c-green02);
}
.s-p-plan-eco__content--p {
  border-color: var(--c-blue02);
}

.s-p-plan-eco__txt-wrap {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.s-p-plan-eco__txt {
  font-size: 1rem;
  line-height: 1.95em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .s-p-plan-eco__txt {
    font-size: 1.0714285714rem;
  }
}

.s-p-plan-eco__txt--annotation {
  font-size: 0.9285714286rem;
  line-height: 1.8em;
  text-align: justify;
  padding-left: 17px;
  width: calc(100% - 60px);
  max-width: 420px;
  margin-inline: auto;
  margin-top: 12px;
  position: relative;
}
.s-p-plan-eco__txt--annotation::before {
  content: "※";
  font-size: 0.9285714286rem;
  position: absolute;
  left: 0;
  top: 0;
}

.f-plan__area {
  position: relative;
  margin-top: 51px;
}

.f-plan-accent__area {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% - 60px);
  margin-inline: auto;
  margin-top: 29px;
}

.f-plan-accent__img-wrap {
  width: 33.3333333333%;
  position: relative;
}
.f-plan-accent__img-wrap > img {
  width: 100%;
  height: auto;
}

.f-plan-accent__txt {
  position: absolute;
  bottom: 4px;
  left: 3px;
  color: var(--c-white01);
  text-shadow: rgb(0, 0, 0) 1px 0 10px;
  font-size: 0.8571428571rem;
  line-height: 1;
}

.s-plan__area {
  position: relative;
  margin-top: 67px;
}
.s-plan__area .plan-works__area {
  margin-top: 46px;
}

.s-plan-example__area {
  margin-top: 27px;
  display: flex;
  flex-direction: column;
  gap: 41px;
}
.s-plan-example__area .plan-gallery {
  margin-top: 17px;
}

.s-plan-example__title {
  font-size: 1.4285714286rem;
  text-align: center;
  line-height: 1.1em;
}
@media screen and (min-width: 768px) {
  .s-plan-example__title {
    font-size: 1.5714285714rem;
  }
}
.s-plan-example__title > span {
  font-size: 0.7142857143rem;
  display: block;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .s-plan-example__title > span {
    font-size: 0.7857142857rem;
  }
}

.s-plan-example__txt {
  font-size: 1rem;
  text-align: justify;
  padding-inline: 30px;
  margin-top: 13px;
}
@media screen and (min-width: 768px) {
  .s-plan-example__txt {
    font-size: 1.0714285714rem;
  }
}
.s-plan-example__txt > span {
  font-weight: bold;
}

.s-plan-eco__item-wrap {
  display: flex;
  gap: 9px;
}

.s-plan-eco__item {
  padding-block: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  background-color: var(--c-green01);
  border-radius: 4px;
  width: calc(33.3333333333% - 6px);
}
@media screen and (min-width: 768px) {
  .s-plan-eco__item {
    padding-block: 13px 14px;
  }
}

.s-plan-eco__item-txt {
  font-size: 0.9285714286rem;
  text-align: center;
  line-height: 1.7em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .s-plan-eco__item-txt {
    font-size: 1rem;
  }
}

.s-plan-eco__item-img-wrap {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.s-plan-eco__item-img-wrap > img {
  width: 100%;
  height: auto;
}
.s-plan-eco__item-img-wrap--window {
  width: 61.1428571429%;
  max-width: 100px;
}
.s-plan-eco__item-img-wrap--structural-frame {
  width: 55.4285714286%;
  max-width: 90px;
}
.s-plan-eco__item-img-wrap--solar-panel {
  width: 78.2857142857%;
  max-width: 130px;
}

.p-plan__area {
  position: relative;
  margin-top: 67px;
}

.p-plan-eco__item {
  padding-block: 16px 18px;
  display: flex;
  gap: 2.666666666%;
  align-items: center;
  justify-content: center;
  background-color: var(--c-blue01);
  border-radius: 4px;
}

.p-plan-eco__item-txt {
  font-size: 0.9285714286rem;
  text-align: center;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-plan-eco__item-txt {
    font-size: 1rem;
  }
}

.p-plan-eco__item-img-wrap {
  width: 19.1071428571%;
  max-width: 100px;
}
.p-plan-eco__item-img-wrap > img {
  width: 100%;
  height: auto;
}

.process__area {
  position: relative;
  margin-top: 90px;
  background-color: var(--c-brown02);
  padding: 23px 15px 23px;
}
@media screen and (min-width: 576px) {
  .process__area {
    padding-inline: 30px;
    padding-bottom: 35px;
  }
}
@media screen and (min-width: 768px) {
  .process__area {
    padding-inline: 15px;
    padding-bottom: 23px;
  }
}

.proceess__title {
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.06em;
  line-height: 0.75em;
}
@media screen and (min-width: 768px) {
  .proceess__title {
    font-size: 2.3571428571rem;
    line-height: 0.7em;
  }
}
.proceess__title > span {
  font-size: 0.7857142857rem;
  letter-spacing: 0;
  font-weight: 400;
  display: block;
}
@media screen and (min-width: 768px) {
  .proceess__title > span {
    font-size: 0.9285714286rem;
  }
}

.process__content-wrap {
  display: flex;
  flex-direction: column;
  gap: 17px;
  margin-top: 28px;
}

.process__content-inner {
  overflow: hidden;
}

.process__content {
  position: relative;
  background-color: var(--c-white01);
  border-radius: 4px;
  padding: 22px 17px 16px 29px;
}

.page-process-anchor {
  position: absolute;
  top: -70px;
}
@media screen and (min-width: 768px) {
  .page-process-anchor {
    top: -10px;
  }
}

.process__content-title-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.process__content-title-wrap .icon {
  display: block;
  position: relative;
  width: 8px;
  aspect-ratio: 1/1;
  transition: var(--tran-all);
  margin: 0;
}
.process__content-title-wrap .icon::before {
  content: "";
  width: 100%;
  height: 100%;
  border-style: solid;
  border-width: 0 1px 1px 0;
  border-color: var(--c-black01);
  position: absolute;
  top: -40%;
  transform: rotate(45deg);
}

details.process__content[open] .icon {
  transform: scaleY(-1);
}
details.process__content[open] .icon::before {
  top: -40%;
}

summary.process__content-title-wrap {
  list-style: none;
  cursor: pointer;
}

summary.process__content-title-wrap::-webkit-details-marker {
  display: none;
}

.process__content-title {
  display: flex;
  gap: 3px;
  position: relative;
  z-index: 1;
  width: calc(100% - 8px - 18px);
}
.process__content-title::before {
  content: "";
  height: 4px;
  background-color: var(--c-brown01);
  position: absolute;
  top: 33px;
  right: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .process__content-title::before {
    top: 36px;
  }
}
.process__content-title--f .process__content-title-txt--en {
  text-indent: -0.075em;
  padding-right: 4px;
}
.process__content-title--f::before {
  width: 100%;
}
.process__content-title--s .process__content-title-txt--en {
  text-indent: -0.07em;
}
.process__content-title--s::before {
  width: calc(100% - 12px);
}
.process__content-title--p .process__content-title-txt--en {
  text-indent: -0.075em;
}
.process__content-title--p::before {
  width: 100%;
}

.process__content-title-txt--en {
  font-size: 3.5714285714rem;
  line-height: 0.73em;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  color: var(--c-brown01);
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .process__content-title-txt--en {
    font-size: 3.9285714286rem;
  }
}

.process__content-title-txt {
  display: flex;
  gap: 6px;
  flex-direction: column;
  font-size: 1.2857142857rem;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .process__content-title-txt {
    font-size: 1.5714285714rem;
  }
}
.process__content-title-txt .process__content-title-txt--small {
  font-size: 0.7142857143rem;
  letter-spacing: 0.095em;
  line-height: 1;
  padding-left: 3px;
}
@media screen and (min-width: 768px) {
  .process__content-title-txt .process__content-title-txt--small {
    font-size: 12;
  }
}

.process__content-detail-wrap {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding-block: 17px;
}

.process__content-detail {
  position: relative;
  z-index: 1;
}
.process__content-detail::before {
  content: "";
  width: 2px;
  height: calc(100% + 15px);
  background-color: var(--c-brown02);
  position: absolute;
  left: 11px;
  top: 5px;
  z-index: -1;
}
.process__content-detail--last::before {
  content: unset;
}

.process__content-detail-title {
  display: flex;
  gap: 7px;
  align-items: center;
  font-size: 1.1428571429rem;
}
@media screen and (min-width: 768px) {
  .process__content-detail-title {
    font-size: 1.2142857143rem;
  }
}

.process__content-detail-number {
  width: 22px;
  display: block;
}
@media screen and (min-width: 768px) {
  .process__content-detail-number {
    width: 25px;
  }
}
.process__content-detail-number > img {
  width: 100%;
  height: auto;
  display: block;
}

.process__content-detail-txt-wrap {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 6px;
}

.process__content-detail-txt {
  font-size: 0.9285714286rem;
  line-height: 1.7em;
  text-align: justify;
  padding-inline: 32px 26px;
}
@media screen and (min-width: 768px) {
  .process__content-detail-txt {
    font-size: 1.0714285714rem;
    line-height: 1.97;
  }
}
.process__content-detail-txt > a {
  color: var(--c-brown03);
  text-decoration: underline;
  text-decoration-color: var(--c-brown03);
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
}
.process__content-detail-txt a:not(.btn):not(.badge):hover {
  text-decoration: underline;
  text-decoration-color: var(--c-brown03);
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.process__content-detail-txt > span {
  font-weight: 500;
  font-size: 1.0714285714rem;
  display: block;
}
@media screen and (min-width: 768px) {
  .process__content-detail-txt > span {
    font-size: 1.2142857143rem;
  }
}

.qa__area {
  position: relative;
  margin-top: 60px;
}

.qa__title {
  font-size: 2.5714285714rem;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  color: var(--c-brown03);
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .qa__title {
    font-size: 3.2142857143rem;
  }
}
.qa__title > span {
  font-size: 0.8571428571rem;
  letter-spacing: 0.09em;
  text-indent: -0.35em;
  color: var(--c-black01);
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  display: block;
  margin-top: 2px;
}
@media screen and (min-width: 768px) {
  .qa__title > span {
    font-size: 1.1428571429rem;
    text-indent: -0.35em;
  }
}

.qa__txt-wrap {
  padding-inline: 30px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-top: 21px;
}

.qa__txt {
  font-size: 0.9642857143rem;
  display: flex;
  gap: 8px;
  text-align: justify;
}
@media screen and (min-width: 768px) {
  .qa__txt {
    font-size: 1.0714285714rem;
    gap: 10px;
  }
}
.qa__txt > span {
  font-size: 0.9285714286rem;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  padding-left: 2px;
  padding-top: 1px;
  border-radius: 3px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  margin-top: 4px;
}
@media screen and (min-width: 768px) {
  .qa__txt > span {
    font-size: 1.2857142857rem;
    width: 25px;
    height: 25px;
    margin-top: 3px;
  }
}

.qa__txt--q {
  font-weight: 500;
}
.qa__txt--q > span {
  background-color: var(--c-brown03);
  color: var(--c-white01);
  padding-bottom: 1px;
}

.qa__txt--a > span {
  border: solid 1px var(--c-brown03);
  color: var(--c-brown03);
}

.form__area {
  position: relative;
  margin-top: 62px;
  padding: 31px 30px 30px;
  background-color: var(--c-brown02);
}

.form__title {
  position: relative;
  font-size: 1.6428571429rem;
  text-align: center;
  line-height: 1.34;
  padding-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .form__title {
    font-size: 1.9285714286rem;
  }
}
.form__title > span {
  font-size: 0.8571428571rem;
  display: block;
}
.form__title::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--c-brown03);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.form-wrap {
  margin-top: 32px;
}

.liv-aa-renovation .form__area form label {
  text-transform: none;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  color: var(--c-black01);
  display: block;
}
.liv-aa-renovation .form__area input,
.liv-aa-renovation .form__area textarea,
.liv-aa-renovation .form__area select {
  font-size: 1.1428571429rem;
}
.liv-aa-renovation .form__area input::-moz-placeholder, .liv-aa-renovation .form__area textarea::-moz-placeholder {
  color: var(--c-brown02);
  opacity: 1;
  font-size: 1rem;
}
.liv-aa-renovation .form__area input::placeholder,
.liv-aa-renovation .form__area textarea::placeholder {
  color: var(--c-brown02);
  opacity: 1;
  font-size: 1rem;
}
.liv-aa-renovation .form__area .form-item__wrap {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.liv-aa-renovation .form__area .form-group {
  width: 100%;
  margin: 0;
}
.liv-aa-renovation .form__area p {
  padding-inline: 0;
  font-size: 1.0714285714rem;
  margin: 0;
}
.liv-aa-renovation .form__area h5.form-item__title {
  padding-inline: 0;
  font-size: 1.1428571429rem;
  font-weight: 500;
  margin: 0;
  display: flex;
  gap: 7px;
  line-height: 1.5;
}
.liv-aa-renovation .form__area .badge {
  border-radius: 4px;
  margin: 0;
  padding: 0;
  font-size: 0.8571428571rem;
  letter-spacing: 0.1em;
  text-indent: 0.06em;
  line-height: 2;
  font-weight: bold;
  color: var(--c-white01);
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  max-height: 20px;
  width: 38px;
  margin-top: 3px;
}
.liv-aa-renovation .form__area .bg-danger {
  background-color: var(--c-red01) !important;
}
.liv-aa-renovation .form__area .bg-info {
  background-color: var(--c-brown03) !important;
}
.liv-aa-renovation .form__area .form-control {
  color: var(--c-black01);
  border-color: var(--c-white01);
  border-radius: 4px;
  border: 0px;
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "sans-serif" !important;
}
.liv-aa-renovation .form__area .form-control:focus,
.liv-aa-renovation .form__area input:focus,
.liv-aa-renovation .form__area select:focus {
  border-color: var(--c-brown03);
  color: var(--c-black01);
}
.liv-aa-renovation .form__area .row .form-item-contents {
  padding-inline: 0;
}
.liv-aa-renovation .form__area .alert__wrap {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.liv-aa-renovation .form__area .alert {
  margin: 0;
}
.liv-aa-renovation .form__area .alert-danger {
  background-color: var(--c-red01);
  border-color: var(--c-red01);
  padding: 5px 10px;
  font-size: 0.9285714286rem;
}
.liv-aa-renovation .form__area .text-muted {
  font-size: 0.8571428571rem;
  color: var(--c-black01) !important;
}
.liv-aa-renovation .form__area .form__btn-wrap {
  margin-top: 48px;
}
.liv-aa-renovation .form__area .form__btn-wrap .btn-secondary {
  font-size: 1.0714285714rem !important;
  font-weight: 400 !important;
  padding: 10px 20px !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  background-color: #c1c1c1 !important;
  border-color: #c1c1c1 !important;
  border-width: 0;
  border-radius: 4px !important;
  height: auto !important;
  line-height: 1.5em !important;
}
.liv-aa-renovation .form__area .form__btn-wrap .btn-success {
  font-size: 1.0714285714rem !important;
  font-weight: 400 !important;
  padding: 10px 20px !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  background-color: var(--c-brown03) !important;
  border-color: var(--c-brown03) !important;
  border-radius: 4px !important;
  height: auto !important;
  line-height: 1.5em !important;
  color: var(--c-white01) !important;
}
.liv-aa-renovation .form__area .radio__wrap {
  margin-top: 8px;
}
.liv-aa-renovation .form__area .radio__inner {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.liv-aa-renovation .form__area .radio__btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 16px;
  height: 16px;
  border: 1px solid #baac8e;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
  position: relative;
}
.liv-aa-renovation .form__area .radio__btn:checked {
  background-color: #fff;
  border-color: #baac8e;
}
.liv-aa-renovation .form__area .radio__btn:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  transform: translate(-50%, -50%);
  background-color: #baac8e;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .liv-aa-renovation .form__area .radio__btn:checked::after {
    transform: translate(-50%, -50%);
  }
}
.liv-aa-renovation .form__area .radio__item {
  display: flex;
  align-items: center;
  text-transform: none;
  margin-bottom: 0;
  gap: 4px;
}
.liv-aa-renovation .form__area .radio__item .text-dark {
  font-size: 1.0714285714rem;
  font-weight: 400;
  color: var(--c-black01);
  display: block;
}
.liv-aa-renovation .form__area .address__wrap {
  margin-top: 4px;
}
.liv-aa-renovation .form__area .address__wrap .text-muted {
  color: var(--c-brown03) !important;
  margin-top: 4px;
  font-size: 1rem;
}
.liv-aa-renovation .form__area .tel__wrap {
  margin-top: 12px;
}
.liv-aa-renovation .form__area .tel__wrap .input-group {
  align-items: center;
  gap: 5px;
}
.liv-aa-renovation .form__area .tel__wrap .form-control {
  border-radius: 4px !important;
}
.liv-aa-renovation .form__area .tel__wrap .input-group-text {
  background-color: unset;
  border: 0px;
  padding: 0;
  width: 5px;
  height: 1px;
  min-height: 0 !important;
  background-color: var(--c-black01);
}
.liv-aa-renovation .form__area .name__wrap {
  margin-top: 12px;
}
.liv-aa-renovation .form__area .name__wrap .d-flex {
  gap: 10px;
}
.liv-aa-renovation .form__area .mail__wrap {
  margin-top: 12px;
}
.liv-aa-renovation .form__area .text__wrap {
  margin-top: 8px;
}
.liv-aa-renovation .form__area .text-multiple__wrap {
  margin-top: 12px;
}
.liv-aa-renovation .form__area .text-multiple__wrap .form-control {
  min-height: 250px;
}
.liv-aa-renovation .form__area .recapcha-text {
  font-size: 0.7142857143rem;
  margin-top: 10px;
  text-align: justify;
}
.liv-aa-renovation .form__area .recapcha-text > a {
  color: var(--c-brown04);
}

.form-privacypolicy__link {
  font-size: 0.9285714286rem;
  text-decoration: underline;
  text-decoration-color: var(--c-black01);
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
  display: block;
  text-align: center;
  margin-top: 10px;
}
.form-privacypolicy__link:hover {
  text-decoration: underline;
  text-decoration-color: var(--c-black01);
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
}

.liv-aa-renovation-form-confirm .main__area, .liv-aa-renovation-form-post .main__area {
  background-color: var(--c-brown02);
}
.liv-aa-renovation-form-confirm .form__area, .liv-aa-renovation-form-post .form__area {
  margin-top: 0;
  padding-block: 40px 0;
}

.liv-aa-renovation-form-confirm .jumbotron {
  padding: 10px 15px;
  background-color: var(--c-white01);
  border-radius: 4px;
  margin-top: 12px;
}
.liv-aa-renovation-form-confirm .form-item__txt {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "sans-serif" !important;
}
.liv-aa-renovation-form-confirm .form__btn-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}
.liv-aa-renovation-form-confirm .form__btn-wrap .btn-secondary {
  background-color: var(--c-gray01);
}
.liv-aa-renovation-form-confirm p.form-confirm-alert-sentence {
  margin-top: 27px;
}

.liv-aa-renovation-form-post .main__area {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100svh;
}
.liv-aa-renovation-form-post .form-lp-message {
  font-size: 16px;
  margin-top: 27px;
}
.liv-aa-renovation-form-post .form__area .form__btn-wrap .btn-secondary {
  background-color: var(--c-brown03) !important;
  margin-inline: auto;
  display: block;
}

.company__area {
  margin-top: 51px;
  position: relative;
}

.company__title {
  font-size: 1.6428571429rem;
  text-align: center;
  line-height: 1em;
}
@media screen and (min-width: 768px) {
  .company__title {
    font-size: 1.9285714286rem;
    line-height: 0.9em;
  }
}
.company__title > span {
  display: block;
  font-size: 0.7857142857rem;
  letter-spacing: 0.07em;
  font-family: "Helvetica Neue", "Helvetica", "MyHelvetica", "Arial", sans-serif !important;
  color: var(--c-brown03);
}
@media screen and (min-width: 768px) {
  .company__title > span {
    font-size: 0.8571428571rem;
  }
}

.company__content-area {
  display: flex;
  flex-direction: column;
  gap: 11px;
  margin-top: 22px;
}

.company__content-wrap {
  width: calc(100% - 60px);
  margin-inline: auto;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--c-brown03);
}

.company__content-title {
  font-size: 1.0714285714rem;
  color: var(--c-brown03);
}
@media screen and (min-width: 768px) {
  .company__content-title {
    font-size: 1.2142857143rem;
  }
}

.company__txt-wrap {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.company__txt {
  font-size: 0.9285714286rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .company__txt {
    font-size: 1.0714285714rem;
  }
}

.company__link {
  font-size: 0.9285714286rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .company__link {
    font-size: 1.0714285714rem;
  }
}

.footer__area {
  background-color: var(--c-brown02);
  margin-top: 42px;
  padding-block: 35px 80px;
}
@media screen and (min-width: 768px) {
  .footer__area {
    padding-block: 35px 30px;
  }
}

.footer-logo__img-wrap {
  width: 50.6666666667%;
  margin-inline: auto;
  max-width: 230px;
  position: relative;
}
.footer-logo__img-wrap > img {
  width: 100%;
  height: auto;
}

.footer-logo__link::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.footer__txt {
  font-size: 0.8571428571rem;
  line-height: 2.06em;
  text-align: center;
  margin-top: 22px;
}
@media screen and (min-width: 768px) {
  .footer__txt {
    font-size: 1.0714285714rem;
  }
}

.footer__copyright {
  font-size: 0.7142857143rem;
  text-align: center;
  display: block;
  margin-top: 8px;
}
@media screen and (min-width: 768px) {
  .footer__copyright {
    margin-top: 18px;
  }
}

.left__area {
  display: none;
}
@media screen and (min-width: 768px) {
  .left__area {
    display: block;
    position: fixed;
    padding: 30px 15px;
    width: calc((100% - 470px) / 2);
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
    max-height: 100vh;
    overflow-y: auto;
  }
  .left__area.active {
    visibility: visible;
    opacity: 1;
  }
}
@media screen and (min-width: 992px) {
  .left__area {
    padding: 40px 30px;
  }
}

.left__wrap {
  width: -moz-fit-content;
  width: fit-content;
}

.left-top__wrap {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.left-logo__img-wrap {
  width: 100%;
  max-width: 200px;
}
.left-logo__img-wrap > img {
  width: 100%;
  height: auto;
}

.left__txt--limited {
  font-size: 1.1428571429rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  border: solid 1px var(--c-black01);
  border-radius: 4px;
  padding: 1px 10px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1199px) {
  .left__txt--limited {
    font-size: 0.9285714286rem;
  }
}

.left-nav__wrap {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media screen and (min-width: 1200px) {
  .left-nav__wrap {
    margin-top: 40px;
    margin-left: 20px;
  }
}

.left-nav__item {
  position: relative;
}
.left-nav__item::before {
  content: "";
  width: 3px;
  height: 80%;
  background-color: var(--c-brown03);
  border-radius: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  transform-origin: center;
  transition: var(--tran-all);
  opacity: 0;
  transition: var(--tran-opacity-a);
}
.left-nav__item > a {
  font-size: 0.7857142857rem;
  position: relative;
  transition: var(--tran-all);
  display: inline-block;
  opacity: 0.5;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 1200px) {
  .left-nav__item > a {
    font-size: 1.1428571429rem;
  }
}
.left-nav__item > a > span {
  font-size: 0.7142857143rem;
  display: block;
  line-height: 1;
  padding-left: 3px;
  padding-bottom: 11px;
  letter-spacing: 0.075em;
}
.left-nav__item.active::before {
  opacity: 1;
}
.left-nav__item.active > a {
  transform: translateX(12px);
  opacity: 1;
}

.left-nav__link {
  padding-top: 10px;
}

.left-form__btn {
  width: 100%;
  max-width: 200px;
  height: 49px;
  background-color: var(--c-brown03);
  border: solid var(--c-brown02) 2px;
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.9285714286rem;
  font-weight: 500;
  color: var(--c-white01);
  transition: var(--tran-all);
}
@media screen and (min-width: 1200px) {
  .left-form__btn {
    font-size: 1.1428571429rem;
  }
}
.left-form__btn:hover {
  filter: brightness(1.05);
  opacity: 1;
  color: var(--c-white01);
}
.left-form__btn:focus, .left-form__btn:active {
  color: var(--c-white01);
}/*# sourceMappingURL=contents.css.map */