@charset "UTF-8";
/* !main-visual
---------------------------------------------------------- */
#main-visual {
  width: 100%;
  height: 66rem;
  background: url(../img/top/mv.jpg) center center no-repeat;
  background-size: cover;
  position: relative;
}
@media (max-width: 767px) {
  #main-visual {
    height: 89.4rem;
    background-image: url(../img/top/mv_sp.jpg);
    padding: 2.3rem 3.4rem 0.543rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
}
#main-visual .main-copy {
  width: 78rem;
  background: #fff;
  padding: 6.4rem 3rem 4.4rem 6rem;
}
@media (max-width: 767px) {
  #main-visual .main-copy {
    width: 100%;
    padding: 3.2rem 2rem 1.8rem;
  }
}
#main-visual .main-copy__title {
  font-size: 5rem;
  font-weight: bold;
  color: #557436;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  line-height: 1.6;
  position: relative;
}
@media (max-width: 767px) {
  #main-visual .main-copy__title {
    font-size: 4.898rem;
    word-break: keep-all;
    white-space: nowrap;
  }
}
#main-visual .main-copy__title::before, #main-visual .main-copy__title::after {
  width: 12.6rem;
  height: 10.2rem;
  background: url(../img/common/icon_title.svg) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  content: "";
}
@media (max-width: 767px) {
  #main-visual .main-copy__title::before, #main-visual .main-copy__title::after {
    width: 10rem;
    height: 8.6rem;
  }
}
#main-visual .main-copy__title::before {
  left: -6.5rem;
  top: -6.1rem;
}
@media (max-width: 767px) {
  #main-visual .main-copy__title::before {
    left: -2.5rem;
    top: -3rem;
  }
}
#main-visual .main-copy__title::after {
  right: -2rem;
  bottom: -9.1rem;
}
@media (max-width: 767px) {
  #main-visual .main-copy__title::after {
    right: -0.5rem;
    bottom: -7.8rem;
  }
}
#main-visual .main-copy__title small {
  font-size: 4rem;
}
@media (max-width: 767px) {
  #main-visual .main-copy__title small {
    font-size: 3.918rem;
  }
}
#main-visual .main-copy__text {
  padding: 2.8rem 0 0 1rem;
  font-size: 2rem;
  font-weight: 500;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  line-height: 1.6;
}
@media (max-width: 767px) {
  #main-visual .main-copy__text {
    padding: 1.6rem 0 0 0;
  }
}
#main-visual .main-copy__text p + p {
  margin-top: 1.6em;
}
@media (max-width: 767px) {
  #main-visual .main-copy__text p + p {
    margin-top: 0.7rem;
  }
}
#main-visual .main-features {
  width: 78rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin-top: 1.6rem;
}
@media (max-width: 767px) {
  #main-visual .main-features {
    width: 100%;
  }
}
#main-visual .main-features__item {
  width: 21.2rem;
  font-size: 1px;
  line-height: 1;
}
#main-visual .main-features__item img {
  width: 100%;
}

@media (max-width: 767px) {
  .main-button {
    background: #fff;
    padding: 1.2rem 3.4rem 3.4rem;
  }
  .main-button-notes {
    font-size: 2.4rem;
    line-height: 1.6;
    font-weight: 500;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
  }
  .main-button-notes::before, .main-button-notes::after {
    width: 2.406rem;
    height: 0.121rem;
    background: #333;
    content: "";
  }
  .main-button-notes::before {
    transform: rotate(72.47deg);
  }
  .main-button-notes::after {
    transform: rotate(-72.47deg);
  }
  .main-button-links {
    margin-top: 3.8rem;
    text-align: center;
  }
  .main-button-links a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 1.7rem;
    width: 100%;
    height: 11.6rem;
    border-radius: 0.743rem;
    background: #709A46;
    font-size: 4.627rem;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    position: relative;
  }
  .main-button-links a::before {
    width: 3.4rem;
    height: 4.4rem;
    content: "";
    background: url(../img/common/icon_file.svg) center center no-repeat;
    background-size: 100% 100%;
  }
  .main-button-links a::after {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    z-index: 2;
    font-size: 2.23rem;
    line-height: 1;
    font-weight: bold;
    color: #709A46;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 20.795rem;
    height: 5.202rem;
    background: #fff;
    border: 0.504rem solid #709A46;
    border-radius: 0.76rem;
    box-shadow: 0.504rem 0.504rem 0.1, 8 rgba(125, 80, 47, 0.4);
    content: "30秒で簡単予約";
  }
}
/* !contents
---------------------------------------------------------- */
.brands-wrap {
  width: 100%;
  background: url(../img/top/bg_brands.png) center center no-repeat;
  background-size: cover;
  padding: 10rem 0;
}
@media (max-width: 767px) {
  .brands-wrap {
    padding: 10.9rem 0 9.096rem;
  }
}
.brands-wrap .brands-heading {
  text-align: center;
  margin-bottom: 4.5rem;
  font-size: 7.159rem;
  line-height: 1.6;
  font-weight: bold;
  color: #AC8446;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-heading {
    margin-bottom: 2.16rem;
    font-size: 5.72rem;
  }
}
.brands-wrap .brands-heading span {
  font-size: 3.6rem;
  color: #333;
  margin-bottom: 0.8rem;
  display: block;
}
@media (max-width: 767px) {
  .brands-wrap .brands-heading span {
    font-size: 2.877rem;
    margin-bottom: 0;
  }
}
.brands-wrap .brands-schedule {
  width: 100%;
  max-width: 42.28rem;
  margin: 0 auto;
  margin-bottom: 4.32rem;
  border-top: 0.1rem solid #000;
  border-bottom: 0.1rem solid #000;
  padding: 1rem;
  text-align: center;
  font-size: 3.947rem;
  font-weight: bold;
  line-height: 1.6;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-schedule {
    max-width: 47.7rem;
    margin-bottom: 2.615rem;
    font-size: 4.452rem;
    padding: 1.2rem;
  }
}
.brands-wrap .brands-schedule small {
  font-size: 2.293rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-schedule small {
    font-size: 2.586rem;
  }
}
.brands-wrap .brands-text {
  text-align: center;
  font-size: 2.963rem;
  line-height: 1.6;
  margin-bottom: 10rem;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-text {
    font-size: 2.8rem;
    margin-bottom: 6rem;
  }
}
.brands-wrap .brands-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
  font-size: 2.963rem;
  line-height: 1.6;
  font-weight: bold;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  margin-bottom: 4.9rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-title {
    font-size: 2.367rem;
    margin-bottom: 4.16rem;
    gap: 3.2rem;
    word-break: keep-all;
    white-space: nowrap;
  }
}
.brands-wrap .brands-title::before, .brands-wrap .brands-title::after {
  width: 26.7rem;
  height: 0.1rem;
  background: #000;
  content: "";
}
@media (max-width: 767px) {
  .brands-wrap .brands-title::before, .brands-wrap .brands-title::after {
    width: 100%;
  }
}
.brands-wrap .brands-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9rem;
  width: 100%;
  max-width: 106.4rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .brands-wrap .brands-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 3.2rem;
  }
}
.brands-wrap .brands-list__item {
  border: 0.1rem solid #333;
  position: relative;
  background: #fff;
  padding: 4.2rem 3.8rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-list__item {
    border-width: 0.14rem;
    padding: 5.883rem 5.2rem;
  }
}
.brands-wrap .brands-list__item::before {
  pointer-events: none;
  position: absolute;
  left: 0.4rem;
  right: 0.4rem;
  top: 0.4rem;
  bottom: 0.4rem;
  border: 0.1rem solid #333;
  content: "";
}
@media (max-width: 767px) {
  .brands-wrap .brands-list__item::before {
    left: 0.5rem;
    right: 0.5rem;
    top: 0.5rem;
    bottom: 0.5rem;
    border-width: 0.14rem;
  }
}
.brands-wrap .brands-date {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.1rem;
  margin-bottom: 1.9rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-date {
    gap: 1.544rem;
    margin-bottom: 2.642rem;
  }
}
.brands-wrap .brands-date__title {
  font-size: 2.163rem;
  line-height: 1.6;
  color: #fff;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  font-weight: bold;
  padding: 0 2.9rem 0.5rem;
  border-radius: 4rem;
  background: #AC8446;
}
@media (max-width: 767px) {
  .brands-wrap .brands-date__title {
    font-size: 3.035rem;
    padding: 0 4rem 0.724rem;
    border-radius: 5.613rem;
  }
}
.brands-wrap .brands-date__day {
  font-size: 2.4rem;
  line-height: 1.6;
  font-weight: bold;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-date__day {
    font-size: 3.368rem;
  }
}
.brands-wrap .brands-date__day span {
  font-size: 3.09rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-date__day span {
    font-size: 4.336rem;
  }
}
.brands-wrap .brands-image {
  margin-bottom: 2.3rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-image {
    margin-bottom: 3.2rem;
  }
}
.brands-wrap .brands-image img {
  width: 100%;
}
.brands-wrap .brands-name {
  text-align: center;
  margin-bottom: 1.1rem;
  line-height: 1.6;
  font-weight: bold;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-name {
    margin-bottom: 1.516rem;
  }
}
.brands-wrap .brands-name__eng {
  display: block;
  font-size: 2.463rem;
  margin-bottom: 0.4rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-name__eng {
    font-size: 3.456rem;
    margin-bottom: 0.534rem;
  }
}
.brands-wrap .brands-name__jap {
  display: block;
  font-size: 1.363rem;
}
@media (max-width: 767px) {
  .brands-wrap .brands-name__jap {
    font-size: 1.913rem;
  }
}
.brands-wrap .brands-description {
  margin-bottom: 3.1rem;
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .brands-wrap .brands-description {
    margin-bottom: 3.9rem;
    font-size: 2.4rem;
  }
}
.brands-wrap .brands-button a {
  border: 0.1rem solid #333;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 5.7rem;
  background: #fff;
  font-size: 2rem;
  line-height: 1.6;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  position: relative;
}
@media (max-width: 767px) {
  .brands-wrap .brands-button a {
    border-width: 0.14rem;
    height: 8rem;
    font-size: 2.8rem;
  }
}
.brands-wrap .brands-button a::after {
  position: absolute;
  width: 5.65rem;
  height: 0.45rem;
  content: "";
  background: url(../img//common/icon_links.svg) center center no-repeat;
  background-size: 100% 100%;
  right: 4.4rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
@media (max-width: 767px) {
  .brands-wrap .brands-button a::after {
    width: 8rem;
    height: 0.6rem;
    right: 6.2rem;
  }
}

.movie-wrap {
  width: 100%;
  padding: 10rem 0 8.2rem;
  background: url(../img/top/bg_movie.jpg) center center no-repeat;
  background-size: cover;
}
@media (max-width: 767px) {
  .movie-wrap {
    padding: 10rem 0 5rem;
  }
}
.movie-wrap .movie-area {
  width: 100%;
  max-width: 82rem;
  margin: 0 auto;
  aspect-ratio: 82/43;
  margin-bottom: 4rem;
}
.movie-wrap .movie-area video,
.movie-wrap .movie-area iframe,
.movie-wrap .movie-area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.movie-wrap .movie-description {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 54.1rem;
  margin: 0 auto;
  padding: 2rem;
  font-size: 2.3rem;
  font-weight: 500;
  line-height: 1.6;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  text-align: center;
}
@media (max-width: 767px) {
  .movie-wrap .movie-description {
    padding: 2.3rem 4rem 0.7rem;
    font-size: 2.8rem;
    max-width: 100%;
  }
}
.movie-wrap .movie-description::before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #fff;
  filter: blur(1rem);
  content: "";
}
.movie-wrap .movie-description p + p {
  margin-top: 1.6em;
}

.voice-wrap {
  padding: 8.5rem 0 6.7rem;
  overflow: hidden;
}
@media (max-width: 767px) {
  .voice-wrap {
    padding: 9.4rem 0 8.3rem;
  }
}
.voice-wrap .inner {
  max-width: 128rem;
}
.voice-wrap .heading-large {
  margin-bottom: 9.2rem;
}
@media (max-width: 767px) {
  .voice-wrap .heading-large {
    margin-bottom: 6.3rem;
  }
}

.voice-list {
  width: 100%;
}
.voice-list__item {
  position: relative;
  width: 100%;
  box-shadow: 0.4rem 0.4rem 0.4rem rgba(183, 183, 183, 0.58);
  display: grid;
  grid-template-columns: 56% 44%;
}
@media (max-width: 767px) {
  .voice-list__item {
    display: flex;
    flex-direction: column;
    background: url(../img/top/bg_voice.jpg) center center no-repeat;
    background-size: cover;
    gap: 3.2rem;
    padding: 5.4rem 4rem 3.7rem;
  }
}
.voice-list__item::before, .voice-list__item::after {
  width: 9.8rem;
  height: 10.1rem;
  content: "";
  background: url(../img/top/icon_marker.svg) center center no-repeat;
  background-size: 100% 100%;
  position: absolute;
  z-index: 2;
}
@media (max-width: 767px) {
  .voice-list__item::before, .voice-list__item::after {
    display: none;
  }
}
.voice-list__item::before {
  left: -3.3rem;
  top: -2.9rem;
}
.voice-list__item::after {
  right: -2.569rem;
  bottom: -3.069rem;
}
.voice-list__item + .voice-list__item {
  margin-top: 8rem;
}
@media (max-width: 767px) {
  .voice-list__item + .voice-list__item {
    margin-top: 5.7rem;
  }
}
.voice-list__item:nth-child(even) {
  grid-template-columns: 44% 56%;
}
@media (max-width: 767px) {
  .voice-list__item:nth-child(even) {
    flex-direction: column-reverse;
  }
}
.voice-list .voice-image {
  width: 100%;
  min-height: 46rem;
}
@media (max-width: 767px) {
  .voice-list .voice-image {
    min-height: unset;
    position: relative;
  }
  .voice-list .voice-image::before, .voice-list .voice-image::after {
    width: 9.8rem;
    height: 10.1rem;
    content: "";
    background: url(../img/top/icon_marker.svg) center center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    z-index: 2;
  }
  .voice-list .voice-image::before {
    left: -2.9rem;
    top: -2.9rem;
  }
  .voice-list .voice-image::after {
    right: -2.969rem;
    bottom: -2.569rem;
  }
}
.voice-list .voice-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.voice-list .voice-box {
  width: 100%;
  background: url(../img/top/bg_voice.jpg) center center no-repeat;
  background-size: cover;
  padding: 1.8rem 1rem 1.8rem 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .voice-list .voice-box {
    background: #fff;
    padding: 0 3.4rem 2.7rem;
    display: block;
  }
}
.voice-list__item:nth-child(2n+1) .voice-box {
  padding-left: 6rem;
}
@media (max-width: 767px) {
  .voice-list__item:nth-child(2n+1) .voice-box {
    padding-left: 3.4rem;
  }
}
.voice-list .voice-title {
  margin-bottom: 1.6rem;
  padding: 1.1rem 0 1.2rem;
  border-bottom: 0.1rem dashed #AC8446;
  display: inline-block;
}
@media (max-width: 767px) {
  .voice-list .voice-title {
    display: block;
    text-align: center;
    padding: 1rem 0 1.6rem;
    margin-bottom: 2.4rem;
  }
}
.voice-list .voice-title img {
  height: 3.5rem;
  width: auto;
}
@media (max-width: 767px) {
  .voice-list .voice-title img {
    height: 3.9rem;
  }
}
.voice-list .voice-message {
  font-size: 1.6rem;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .voice-list .voice-message {
    font-size: 2.4rem;
  }
}
.voice-list .voice-message p + p {
  margin-top: 1.6em;
}

.about-wrap {
  padding: 9.2rem 0 10rem;
  width: 100%;
  overflow: hidden;
  background: url(../img/top/bg_about.jpg) center center no-repeat;
  background-size: cover;
}
.about-wrap .about-box {
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: 2.2rem;
  line-height: 1.6;
  font-weight: 500;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  padding-bottom: 4rem;
  width: 100%;
  max-width: 72.2rem;
  margin: 0 auto;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .about-wrap .about-box {
    padding-bottom: 5.3rem;
    margin-bottom: 8.4rem;
    font-size: 2.4rem;
  }
}
.about-wrap .about-box::before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #fff;
  filter: blur(1rem);
  content: "";
}
.about-wrap .about-box p + p {
  margin-top: 1.6em;
}
.about-wrap .about-box .heading-large {
  margin-bottom: 2.9rem;
}
@media (max-width: 767px) {
  .about-wrap .about-box .heading-large {
    margin-bottom: 3.8rem;
  }
}
.about-wrap .about-box .heading-large__eng {
  margin-bottom: 2.9rem;
}
@media (max-width: 767px) {
  .about-wrap .about-box .heading-large__eng {
    margin-bottom: 2.8rem;
  }
}

.reason-wrap {
  padding: 9rem 0 11.5rem;
  background: #FEFAF2;
}
@media (max-width: 767px) {
  .reason-wrap {
    padding: 9rem 0;
  }
}
.reason-wrap .inner {
  max-width: 139rem;
}
.reason-wrap .reason-head {
  margin-bottom: 7.1rem;
  text-align: center;
  position: relative;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.8;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head {
    margin-bottom: 6.4rem;
    font-size: 2.4rem;
  }
}
.reason-wrap .reason-head::before {
  width: 10.9rem;
  height: 10.7rem;
  background: url(../img/top/img_bird.svg) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  content: "";
  left: 50%;
  transform: translateX(-45.5rem);
  top: 19rem;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head::before {
    width: 7.3rem;
    height: 7.2rem;
    top: 18.6rem;
    transform: translateX(-28.7rem);
  }
}
.reason-wrap .reason-head::after {
  width: 7.3rem;
  height: 9.3rem;
  background: url(../img/top/img_glass.svg) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  content: "";
  right: 50%;
  transform: translateX(45.1rem);
  top: 9.6rem;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head::after {
    width: 5.5rem;
    height: 7rem;
    transform: translateX(24.9rem);
    top: 7.7rem;
  }
}
.reason-wrap .reason-head .heading-large {
  margin-bottom: 1.5rem;
  position: relative;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head .heading-large {
    margin-bottom: 6rem;
  }
}
.reason-wrap .reason-head .heading-large::before, .reason-wrap .reason-head .heading-large::after {
  width: 12.6rem;
  height: 10.2rem;
  background: url(../img/common/icon_title.svg) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  content: "";
}
@media (max-width: 767px) {
  .reason-wrap .reason-head .heading-large::before, .reason-wrap .reason-head .heading-large::after {
    background: url(../img/common/icon_title_sp.svg) center center no-repeat;
    background-size: 100% auto;
    width: 9.3rem;
    height: 9.3rem;
  }
}
.reason-wrap .reason-head .heading-large::before {
  left: 50%;
  transform: translateX(-39.2rem);
  top: 5.1rem;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head .heading-large::before {
    transform: translateX(-28.7rem);
    top: 6.7rem;
  }
}
.reason-wrap .reason-head .heading-large::after {
  right: 50%;
  transform: translate(44.7rem, 100%);
  bottom: -5.5rem;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head .heading-large::after {
    transform: translate(29.3rem, 0);
    bottom: -3rem;
  }
}
.reason-wrap .reason-head .heading-large__eng {
  margin-bottom: 0.4rem;
}
@media (max-width: 767px) {
  .reason-wrap .reason-head .heading-large__eng {
    margin-bottom: 1rem;
  }
}

.reason-body .reason-item {
  display: flex;
  align-items: center;
  gap: 2rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item {
    display: block;
  }
}
.reason-body .reason-item__image {
  width: 51.85%;
}
@media (max-width: 767px) {
  .reason-body .reason-item__image {
    width: 100%;
    padding: 0 3rem;
    margin-bottom: 2.3rem;
  }
}
.reason-body .reason-item__image img {
  width: 100%;
}
.reason-body .reason-item__box {
  width: 100%;
  max-width: 56rem;
  background: #fff;
  position: relative;
  box-shadow: 0.4rem 0.4rem 0.4rem rgba(183, 183, 183, 0.58);
  padding: 7.2rem 7.8rem 1rem;
  min-height: 33.7rem;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .reason-body .reason-item__box {
    box-shadow: 0.488rem 0.488rem 0.488rem rgba(157, 157, 157, 0.25);
    min-height: unset;
    padding: 9rem 3.5rem 3.2rem;
    font-size: 2.4rem;
    max-width: 100%;
    font-size: 2.4rem;
  }
}
.reason-body .reason-item + .reason-item {
  margin-top: 10rem;
}
.reason-body .reason-item:nth-child(odd) {
  flex-direction: row-reverse;
}
.reason-body .reason-item .reason-point {
  position: absolute;
  left: 1.3rem;
  top: 1.5rem;
  z-index: 2;
}
@media (max-width: 767px) {
  .reason-body .reason-item .reason-point {
    left: 1.5rem;
    top: 1.5rem;
  }
}
.reason-body .reason-item .reason-point img {
  width: 100%;
}
.reason-body .reason-item.point01 .reason-point {
  width: 15.3rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point01 .reason-point {
    width: 18.7rem;
  }
}
.reason-body .reason-item.point02 .reason-point {
  width: 16.3rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point02 .reason-point {
    width: 19.9rem;
  }
}
.reason-body .reason-item.point03 .reason-point {
  width: 16.5rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point03 .reason-point {
    width: 20.1rem;
  }
}
.reason-body .reason-item.point04 .reason-point {
  width: 16.4rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point04 .reason-point {
    width: 20rem;
  }
}
.reason-body .reason-item .reason-image {
  position: absolute;
  z-index: 2;
}
.reason-body .reason-item .reason-image img {
  width: 100%;
}
.reason-body .reason-item.point01 .reason-image {
  width: 12.8rem;
  top: 2.3rem;
  right: 4.9rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point01 .reason-image {
    width: 12.8rem;
    top: 4.8rem;
    right: 6.2rem;
  }
}
.reason-body .reason-item.point02 .reason-image {
  width: 13.1rem;
  top: 2rem;
  right: 3.4rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point02 .reason-image {
    width: 11.3rem;
    top: 4.7rem;
    right: 2.3rem;
  }
}
.reason-body .reason-item.point03 .reason-image {
  width: 14.6rem;
  top: 5.8rem;
  right: 3.9rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point03 .reason-image {
    width: 14.6rem;
    top: 3.9rem;
    right: 3.7rem;
  }
}
.reason-body .reason-item.point04 .reason-image {
  width: 13.6rem;
  top: 4.437rem;
  right: 2.6rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item.point04 .reason-image {
    width: 13.6rem;
    top: 3.3rem;
    right: 3.1rem;
  }
}
.reason-body .reason-item .reason-title {
  font-size: 2.8rem;
  line-height: 1.42857;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  color: #557436;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item .reason-title {
    font-size: 4.6rem;
    margin-bottom: 3rem;
  }
}
.reason-body .reason-item .reason-title small {
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item .reason-title small {
    font-size: 4rem;
  }
}
.reason-body .reason-item p + p {
  margin-top: 1.6em;
}
.reason-body .reason-item ul {
  margin-top: 1rem;
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .reason-body .reason-item ul {
    font-size: 2rem;
    margin-top: 2.3rem;
  }
}

.service-wrap {
  width: 100%;
  padding: 8.6rem 0 9.2rem;
  background: url(../img/top/bg_service.jpg) center center no-repeat;
  background-size: cover;
}
@media (max-width: 767px) {
  .service-wrap {
    padding: 9.2rem 0 8.7rem;
  }
}
.service-wrap .service-box {
  width: 100%;
  max-width: 72.2rem;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  padding: 0 2rem 8.8rem;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .service-wrap .service-box {
    max-width: 100%;
    padding: 2rem 4rem;
  }
}
.service-wrap .service-box::before {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 11.6rem);
  background: #fff;
  filter: blur(1rem);
  content: "";
}
@media (max-width: 767px) {
  .service-wrap .service-box::before {
    height: calc(100% - 9.6rem);
  }
}
.service-wrap .service-box .heading-large {
  margin-bottom: 3.7rem;
}
@media (max-width: 767px) {
  .service-wrap .service-box .heading-large {
    margin-bottom: 5rem;
  }
}
.service-wrap .service-box .heading-large__eng {
  margin-bottom: 3.8rem;
}
@media (max-width: 767px) {
  .service-wrap .service-box .heading-large__eng {
    margin-bottom: 2.2rem;
  }
}
.service-wrap .service-box .service-title {
  font-size: 2.8rem;
  line-height: 1.6;
  font-weight: 500;
  margin-bottom: 2rem;
  text-align: center;
}
@media (max-width: 767px) {
  .service-wrap .service-box .service-title {
    margin-bottom: 3rem;
  }
}
.service-wrap .service-box .service-message {
  font-size: 2.2rem;
  line-height: 1.3;
  font-weight: 500;
  margin-bottom: 5.2rem;
  text-align: center;
}
@media (max-width: 767px) {
  .service-wrap .service-box .service-message {
    margin-bottom: 4.3rem;
  }
}
.service-wrap .service-box .service-message p + p {
  margin-top: 1.3em;
}
.service-wrap .service-box .service-notes {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 2.2rem;
  line-height: 1.3;
  font-weight: 500;
}
.service-wrap .service-box .service-notes__title {
  font-size: 2.8rem;
  line-height: 1.3;
  color: #AC8446;
  position: relative;
  margin-bottom: 4rem;
  padding: 0 6.5rem;
}
@media (max-width: 767px) {
  .service-wrap .service-box .service-notes__title {
    margin-bottom: 4rem;
  }
}
.service-wrap .service-box .service-notes__title::before, .service-wrap .service-box .service-notes__title::after {
  width: 6.5rem;
  height: 6.8rem;
  background: url(../img/top/icon_service_title.svg) center center no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -1rem;
  z-index: 2;
  content: "";
}
.service-wrap .service-box .service-notes__title::before {
  left: 0;
}
.service-wrap .service-box .service-notes__title::after {
  right: 0;
  transform: scaleX(-1);
}
.service-wrap .service-box .service-notes ul {
  margin-bottom: 4.7rem;
}
@media (max-width: 767px) {
  .service-wrap .service-box .service-notes ul {
    margin-bottom: 3.8rem;
  }
}
.service-wrap .service-box .service-notes ul li {
  font-size: 2.2rem;
  line-height: 1.6;
  font-weight: 500;
  padding-left: 1em;
  text-align: -1em;
}
.service-wrap .service-box .service-notes p + p {
  margin-top: 1.3em;
}

.service-info {
  width: 100%;
  padding: 6.2rem 0 7rem;
}
@media (max-width: 767px) {
  .service-info {
    padding: 12rem 0;
  }
}
.service-info__inner {
  width: 100%;
  max-width: 112rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .service-info__inner {
    max-width: 100%;
  }
}
.service-info .thumb-wrapper {
  display: flex;
  border-top: 0.1rem solid #D5D5D5;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 4.8rem;
}
@media (max-width: 767px) {
  .service-info .thumb-wrapper {
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 3rem;
    padding: 0 2rem;
  }
}
.service-info .thumb-wrapper .thumb-media {
  width: 20rem;
  position: relative;
  padding: 1.8rem 0;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.5;
  cursor: pointer;
}
@media (max-width: 767px) {
  .service-info .thumb-wrapper .thumb-media {
    width: calc(50% - 0.5rem);
    font-size: 2rem;
    padding: 1.2rem 0;
  }
}
.service-info .thumb-wrapper .thumb-media::before {
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(-100%);
  z-index: 2;
  content: "";
  width: 100%;
  height: 0.1rem;
  background: #333;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.service-info .thumb-wrapper .thumb-media.thumb-media-active::before {
  opacity: 1;
}
.service-info .swiper-slide {
  -webkit-transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, transform !important;
  transition-property: opacity, transform, -webkit-transform !important;
}
.service-info__wrap {
  padding: 0 2rem;
  display: flex;
  gap: 8rem;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .service-info__wrap {
    display: block;
    padding: 5.3rem 4.5rem;
    position: relative;
    background: #fff;
    border: 0.1rem solid #557436;
  }
  .service-info__wrap::before {
    pointer-events: none;
    border: 0.1rem solid #557436;
    position: absolute;
    left: 0.3rem;
    right: 0.3rem;
    top: 0.3rem;
    bottom: 0.3rem;
    z-index: 2;
    content: "";
  }
}
.service-info-image {
  width: 50rem;
}
@media (max-width: 767px) {
  .service-info-image {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.service-info-image img {
  width: 100%;
}
.service-info-image p {
  font-size: 1px;
  line-height: 1;
}
.service-info-image p + p {
  margin-top: 7.3rem;
}
.service-info-box {
  width: calc(100% - 58rem);
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .service-info-box {
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.service-info-box p + p {
  margin-top: 2em;
}
@media (max-width: 767px) {
  .service-info-box p + p {
    margin-top: 1.2em;
  }
}
.service-info-title {
  font-size: 2.4rem;
  line-height: 1.8;
  font-weight: bold;
  color: #557436;
  margin-bottom: 3.2rem;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .service-info-title {
    padding: 0 7.5rem;
    font-size: 4rem;
    margin-bottom: 4rem;
    position: relative;
  }
  .service-info-title::before, .service-info-title::after {
    width: 6.5rem;
    height: 6.8rem;
    background: url(../img/top/icon_service_title.svg) center center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 1rem;
    z-index: 2;
    content: "";
  }
  .service-info-title::before {
    left: 0;
  }
  .service-info-title::after {
    right: 0;
    transform: scaleX(-1);
  }
}
.service-info-message {
  width: 100%;
}
.service-info__box {
  width: 100%;
  max-width: 92.4rem;
  margin: 0 auto;
  min-height: 31rem;
  padding: 5.4rem 0;
  margin-top: 11.6rem;
  font-size: 2.3rem;
  line-height: 2;
  letter-spacing: 0.04em;
  font-weight: 600;
  text-align: center;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  background: url(../img/top/bg_service_box.svg) center top no-repeat;
  background-size: 100% 100%;
}
@media (max-width: 767px) {
  .service-info__box {
    margin-top: 6.3rem;
    max-width: 61.235rem;
    min-height: 22.8rem;
    font-size: 2.4rem;
    background: url(../img/top/bg_service_box_sp.svg) center top no-repeat;
    background-size: 100% 100%;
  }
}

.merit-wrap {
  width: 100%;
  padding: 7.2rem 0 10rem;
  background: url(../img/top/bg_merit.jpg) center center no-repeat;
  background-size: cover;
}
@media (max-width: 767px) {
  .merit-wrap {
    padding: 11.1em 0 6.5rem;
  }
}
.merit-wrap .merit-heading {
  text-align: center;
  margin-bottom: 5.2rem;
}
@media (max-width: 767px) {
  .merit-wrap .merit-heading {
    margin-bottom: 7.3rem;
  }
}
.merit-wrap .merit-heading span {
  display: inline-block;
  position: relative;
  z-index: 2;
  font-size: 3.6rem;
  line-height: 1.6;
  font-weight: bold;
  color: #557436;
  padding: 2.8rem 5.1rem 2.1rem;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}
@media (max-width: 767px) {
  .merit-wrap .merit-heading span {
    font-size: 5rem;
    padding: 0;
    line-height: 1.2;
  }
  .merit-wrap .merit-heading span small {
    font-size: 4rem;
  }
}
.merit-wrap .merit-heading span::before {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #fff;
  filter: blur(1rem);
  content: "";
}
@media (max-width: 767px) {
  .merit-wrap .merit-heading span::before {
    filter: blur(3.4rem);
  }
}
.merit-wrap .merit-info {
  width: 100%;
  max-width: 70rem;
  margin: 0 auto;
  margin-top: 7.3rem;
}
@media (max-width: 767px) {
  .merit-wrap .merit-info {
    margin-top: 3rem;
    max-width: 100%;
  }
}
.merit-wrap .merit-info__title {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 2.7rem;
}
@media (max-width: 767px) {
  .merit-wrap .merit-info__title {
    margin-bottom: 3.3rem;
  }
}
.merit-wrap .merit-info__box {
  width: 100%;
  background: #fff;
  padding: 2.8rem 12rem;
  font-size: 2.1rem;
  font-weight: 500;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .merit-wrap .merit-info__box {
    padding: 3.3rem 7.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .merit-wrap .merit-info__box .merit-txt-large {
    font-size: 3rem;
  }
  .merit-wrap .merit-info__box .merit-txt-middle {
    font-size: 2.4rem;
    line-height: 1.2;
    width: 100%;
    margin-top: 2.7rem;
  }
  .merit-wrap .merit-info__box .merit-txt-small {
    font-size: 2rem;
    width: 100%;
    margin-top: 1.1rem;
  }
}
.merit-wrap .merit-info__box p + p {
  margin-top: 1.8em;
}

.plan-wrap {
  background: #FEFAF2;
  width: 100%;
  padding: 8.6rem 0 11.1rem;
}
@media (max-width: 767px) {
  .plan-wrap {
    padding: 9.1rem 0 8.5rem;
  }
}
.plan-wrap .plan-head {
  margin-bottom: 10.4rem;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.8;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .plan-wrap .plan-head {
    margin-bottom: 3.5rem;
    padding-bottom: 7.9rem;
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
.plan-wrap .plan-head::before {
  width: 82.3rem;
  height: 28.7rem;
  content: "";
  position: absolute;
  z-index: -1;
  background: url(../img/top/bg_plan_text.svg) center center no-repeat;
  background-size: 100% 100%;
  left: 50%;
  top: 8.6rem;
  transform: translateX(-39.1rem);
}
@media (max-width: 767px) {
  .plan-wrap .plan-head::before {
    width: 11.1rem;
    height: 4.4rem;
    background: url(../img/top/bg_plan_text_sp.svg) center center no-repeat;
    background-size: 100% 100%;
    top: unset;
    bottom: 0;
    transform: translateX(-50%);
  }
}
.plan-wrap .plan-head p + p {
  margin-top: 1.8em;
}
@media (max-width: 767px) {
  .plan-wrap .plan-head p + p {
    margin-top: 0;
  }
}
.plan-wrap .plan-head .heading-large {
  margin-bottom: 2.7rem;
}
@media (max-width: 767px) {
  .plan-wrap .plan-head .heading-large {
    margin-bottom: 3.8rem;
  }
}
.plan-wrap .plan-head .heading-large__eng {
  margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
  .plan-wrap .plan-head .heading-large__eng {
    margin-bottom: 0.3rem;
  }
}
.plan-wrap .plan-body {
  font-size: 1.9rem;
  line-height: 1.8;
  width: 100%;
  max-width: 112rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body {
    max-width: 100%;
    font-size: 1.8rem;
    line-height: 1.2;
  }
}
.plan-wrap .plan-body p + p,
.plan-wrap .plan-body ul + p {
  margin-top: 1.8em;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body p + p,
  .plan-wrap .plan-body ul + p {
    margin-top: 0;
  }
}
.plan-wrap .plan-body .plan-notes li {
  padding-left: 1em;
  text-indent: -1em;
}
.plan-wrap .plan-body .plan-swiper {
  margin-bottom: 7.5rem;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body .plan-swiper {
    margin-bottom: 4.6rem;
  }
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper {
  display: flex;
  border-top: 0.1rem solid #D5D5D5;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 5rem;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media {
  position: relative;
  padding: 1.65rem 2.5rem;
  cursor: pointer;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media .plan-number {
  font-size: 2.4rem;
  line-height: 1.625;
  font-family: "Poppins", sans-serif;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media .plan-heading {
  color: #AC8446;
  line-height: 1.5;
  display: none;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media .plan-heading__title {
  font-size: 3rem;
  font-weight: bold;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media .plan-heading__price {
  font-size: 2rem;
  margin-top: 1.625rem;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media .plan-heading__price span {
  font-size: 2.5rem;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media::before {
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(-100%);
  z-index: 2;
  content: "";
  width: 100%;
  height: 0.1rem;
  background: #333;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media.thumb-media-active::before {
  opacity: 1;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media.thumb-media-active .plan-number {
  display: none;
}
.plan-wrap .plan-body .plan-swiper .thumb-wrapper .thumb-media.thumb-media-active .plan-heading {
  display: block;
}
.plan-wrap .plan-body .plan-swiper .swiper-slide {
  -webkit-transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, transform !important;
  transition-property: opacity, transform, -webkit-transform !important;
}
.plan-wrap .plan-body .plan-swiper .plan-info {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row-reverse;
  gap: 1.5rem;
  background: #fff;
  padding: 5.3rem;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body .plan-swiper .plan-info {
    display: block;
    border: 0.1rem solid #AC8446;
    padding: 4.5rem 4rem;
  }
}
.plan-wrap .plan-body .plan-swiper .plan-info__image {
  width: 48.5rem;
  font-size: 1px;
  line-height: 1;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body .plan-swiper .plan-info__image {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.plan-wrap .plan-body .plan-swiper .plan-info__image img {
  width: 100%;
}
.plan-wrap .plan-body .plan-swiper .plan-info__box {
  width: calc(100% - 50rem);
  font-size: 1.6rem;
  line-height: 1.8;
  font-weight: 500;
}
@media (max-width: 767px) {
  .plan-wrap .plan-body .plan-swiper .plan-info__box {
    width: 100%;
    font-size: 2.4rem;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box .plan-heading {
    color: #AC8446;
    line-height: 1.5;
    margin-bottom: 3rem;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box .plan-heading__title {
    font-size: 3rem;
    font-weight: bold;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box .plan-heading__price {
    font-size: 2rem;
    margin-top: 1.625rem;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box .plan-heading__price span {
    font-size: 2.5rem;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0 1rem;
    padding: 0 4rem;
    margin-bottom: 4rem;
  }
  .plan-wrap .plan-body .plan-swiper .plan-info__box ul li {
    width: calc(50% - 0.5rem);
    font-size: 2rem;
    line-height: 1.8;
  }
}

.access-wrap {
  width: 100%;
  background: #fff;
  padding: 10.4rem 0 14.4rem;
}
@media (max-width: 767px) {
  .access-wrap {
    padding: 9rem 0;
  }
}
.access-wrap .heading-large {
  margin-bottom: 7rem;
}
@media (max-width: 767px) {
  .access-wrap .heading-large {
    margin-bottom: 5rem;
  }
}
.access-wrap .heading-large__eng {
  margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
  .access-wrap .heading-large__eng {
    margin-bottom: 1rem;
  }
}
.access-wrap .access-area {
  width: 100%;
  max-width: 102.8rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .access-wrap .access-area {
    max-width: 100%;
    display: flex;
    flex-direction: column-reverse;
  }
}
.access-wrap .access-info {
  display: flex;
  flex-wrap: wrap;
  gap: 7.5rem 0;
  align-items: flex-start;
  margin-bottom: 10rem;
}
@media (max-width: 767px) {
  .access-wrap .access-info {
    margin: 8rem 0 0;
    gap: 4rem;
    padding: 0 3.2rem;
  }
}
.access-wrap .access-info__item {
  width: 50%;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 500;
}
@media (max-width: 767px) {
  .access-wrap .access-info__item {
    width: 100%;
  }
}
.access-wrap .access-info__item ul li {
  font-size: 2.4rem;
}
.access-wrap .access-info__item p + p,
.access-wrap .access-info__item ul + p {
  margin-top: 1.6em;
}
@media (max-width: 767px) {
  .access-wrap .access-info__item p + p,
  .access-wrap .access-info__item ul + p {
    margin-top: 0;
  }
}
.access-wrap .access-info__item h3 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 0.5em;
  font-size: 2.8rem;
  line-height: 1.6;
  color: #557436;
  font-weight: bold;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .access-wrap .access-info__item h3 {
    font-size: 3rem;
    gap: 0 3rem;
    margin-bottom: 1.6rem;
  }
}
.access-wrap .access-info__item.is-train h3 img {
  width: 9rem;
}
.access-wrap .access-info__item.is-car h3 img {
  width: 7.5rem;
}
.access-wrap .access-info__item.is-taxi h3 img {
  width: 8.57rem;
}
@media (max-width: 767px) {
  .access-wrap .access-info__item.is-taxi h3 img {
    width: 7.3rem;
  }
}
.access-wrap .access-map {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
@media (max-width: 767px) {
  .access-wrap .access-map {
    flex-direction: column;
    gap: 8.8rem;
  }
}
.access-wrap .access-map__map {
  width: 58%;
  aspect-ratio: 8/5;
}
@media (max-width: 767px) {
  .access-wrap .access-map__map {
    width: 100%;
  }
}
.access-wrap .access-map__map iframe {
  width: 100%;
  height: 100%;
}
.access-wrap .access-map__box {
  font-size: 2rem;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .access-wrap .access-map__box {
    width: 100%;
    padding: 0 3.2rem;
    font-size: 3rem;
  }
}
.access-wrap .access-map__box p + p {
  margin-top: 1.6em;
}

.faq-wrap {
  width: 100%;
  background: #FEFAF2;
  padding: 8.6rem 0 12.7rem;
}
@media (max-width: 767px) {
  .faq-wrap {
    padding: 9.1rem 0 8.9rem;
  }
}
.faq-wrap .heading-large {
  margin-bottom: 9.4rem;
}
@media (max-width: 767px) {
  .faq-wrap .heading-large {
    margin-bottom: 6.2rem;
  }
}
.faq-wrap .heading-large__eng {
  margin-bottom: 1.7rem;
}
@media (max-width: 767px) {
  .faq-wrap .heading-large__eng {
    margin-bottom: 0;
  }
}
.faq-wrap .faq-area {
  width: 100%;
  max-width: 82rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area {
    max-width: 100%;
  }
}
.faq-wrap .faq-area .faq-category {
  margin-bottom: 8rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 3.2rem;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-category {
    margin-bottom: 6.2rem;
  }
}
.faq-wrap .faq-area .faq-category a {
  display: block;
  padding: 1.1rem 1.4rem;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: bold;
  border-bottom: 0.1rem solid #D5D5D5;
  min-width: 18.3rem;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-category a {
    font-size: 2.4rem;
  }
}
@media (min-width: 768px) {
  .faq-wrap .faq-area .faq-category a:hover {
    text-decoration: none;
    background: #fff;
  }
}
.faq-wrap .faq-area .faq-category a.is-active {
  color: #fff;
  background: #557436;
}
.faq-wrap .faq-area .faq-title {
  position: relative;
  padding: 0 0 0 2.6rem;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 1.1rem;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-title {
    font-size: 3rem;
    margin-bottom: 2rem;
    padding: 0 0 0 3.6rem;
  }
}
.faq-wrap .faq-area .faq-title::before {
  width: 0.4rem;
  height: 2rem;
  content: "";
  position: absolute;
  left: 0;
  top: 0.5rem;
  z-index: 2;
  background: #333;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-title::before {
    height: 3rem;
    top: 0.75rem;
    width: 0.6rem;
  }
}
.faq-wrap .faq-area .faq-list__item {
  padding: 3.2rem 0;
  border-bottom: 0.1rem solid #D5D5D5;
}
.faq-wrap .faq-area .faq-list__item dt {
  padding-left: 3.8rem;
  position: relative;
  font-size: 2rem;
  line-height: 1.5;
  color: #557436;
  font-weight: 600;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  margin-bottom: 2.4rem;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-list__item dt {
    padding-left: 5rem;
    font-size: 3rem;
  }
}
.faq-wrap .faq-area .faq-list__item dt::before {
  content: "Q.";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 2rem;
  line-height: 1.5;
  color: #557436;
  font-weight: 600;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  z-index: 2;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-list__item dt::before {
    font-size: 3rem;
  }
}
.faq-wrap .faq-area .faq-list__item dd {
  padding-left: 3.8rem;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
}
.faq-wrap .faq-area .faq-list__item dd a {
  text-decoration: underline;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-list__item dd {
    padding-left: 5rem;
    font-size: 2rem;
    line-height: 1.4;
  }
}
.faq-wrap .faq-area .faq-list__item dd::before {
  content: "A.";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 2rem;
  line-height: 1.5;
  color: #AC8446;
  font-weight: 600;
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  z-index: 2;
}
@media (max-width: 767px) {
  .faq-wrap .faq-area .faq-list__item dd::before {
    font-size: 3rem;
  }
}

.contact-wrap {
  width: 100%;
  background: #F3EDE1;
  padding: 8.7rem 0 11.6rem;
}
.contact-wrap .heading-large {
  margin-bottom: 8.5rem;
}
@media (max-width: 767px) {
  .contact-wrap .heading-large {
    margin-bottom: 10rem;
  }
}
.contact-wrap .heading-large__eng {
  margin-bottom: 1.7rem;
}
@media (max-width: 767px) {
  .contact-wrap .heading-large__eng {
    margin-bottom: 0;
  }
}
.contact-wrap .contact-form {
  width: 100%;
  max-width: 64rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form {
    max-width: 100%;
    padding: 0 2.3rem;
  }
}
.contact-wrap .contact-form__item {
  margin-bottom: 3.2rem;
}
.contact-wrap .contact-form__item dt {
  font-size: 1.6rem;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form__item dt {
    font-size: 3.2rem;
  }
}
.contact-wrap .contact-form__item dt::before {
  min-width: 3.6rem;
  height: 1.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1rem;
  font-size: 1rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form__item dt::before {
    font-size: 1.4rem;
    min-width: 8rem;
    height: 3.2rem;
    border-radius: 2rem;
    font-size: 2rem;
  }
}
.contact-wrap .contact-form__item dt.is-required::before {
  border: 0.1rem solid #E18700;
  color: #E18700;
  content: "必須";
}
@media (max-width: 767px) {
  .contact-wrap .contact-form__item dt.is-required::before {
    font-size: 2rem;
  }
}
.contact-wrap .contact-form__item dt.is-any::before {
  border: 0.1rem solid #999999;
  color: #999999;
  content: "任意";
}
.contact-wrap .contact-form__item dd {
  font-size: 1.6rem;
  line-height: 1.5;
}
.contact-wrap .contact-form .radio-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4rem;
}
.contact-wrap .contact-form .radio-list label {
  display: block;
  position: relative;
  cursor: pointer;
}
.contact-wrap .contact-form .radio-list label span {
  display: block;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  padding-left: 3.6rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .radio-list label span {
    font-size: 3.2rem;
  }
}
.contact-wrap .contact-form .radio-list label span::before, .contact-wrap .contact-form .radio-list label span::after {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 100%;
  content: "";
  position: absolute;
  left: 0;
  top: 0.3rem;
  z-index: 1;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .radio-list label span::before, .contact-wrap .contact-form .radio-list label span::after {
    top: 1.6rem;
  }
}
.contact-wrap .contact-form .radio-list label span::before {
  border: 0.1rem solid #999999;
}
.contact-wrap .contact-form .radio-list label span::after {
  z-index: 2;
  border: 0.6rem solid #999999;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.contact-wrap .contact-form .radio-list label input[type=radio] {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0;
}
.contact-wrap .contact-form .radio-list label input[type=radio]:checked + span::after {
  opacity: 1;
}
.contact-wrap .contact-form input[type=text],
.contact-wrap .contact-form input[type=tel],
.contact-wrap .contact-form input[type=email],
.contact-wrap .contact-form input[type=date],
.contact-wrap .contact-form textarea,
.contact-wrap .contact-form select {
  width: 100%;
  height: 4.6rem;
  border-radius: 0.8rem;
  background: #fff;
  border: 0;
  padding: 0 1.5rem;
  font-size: 1.6rem;
  line-height: 1.5;
  outline: none;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form input[type=text],
  .contact-wrap .contact-form input[type=tel],
  .contact-wrap .contact-form input[type=email],
  .contact-wrap .contact-form input[type=date],
  .contact-wrap .contact-form textarea,
  .contact-wrap .contact-form select {
    height: 7.5rem;
    font-size: 3.2rem;
  }
}
.contact-wrap .contact-form input[type=date] {
  position: relative;
  z-index: 1;
  color: #333;
}
.contact-wrap .contact-form input[type=date]::after {
  width: 2.7rem;
  height: 2.7rem;
  content: "";
  position: absolute;
  right: 1.3rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;
  background: url(../img/top/icon_date.svg) center center no-repeat;
  background-size: 100% 100%;
  pointer-events: none;
}
.contact-wrap .contact-form input[type=date]::-webkit-datetime-edit-fields-wrapper {
  display: flex;
}
.contact-wrap .contact-form input[type=date]::-webkit-datetime-edit-text, .contact-wrap .contact-form input[type=date]::-webkit-datetime-edit-month-field, .contact-wrap .contact-form input[type=date]::-webkit-datetime-edit-day-field, .contact-wrap .contact-form input[type=date]::-webkit-datetime-edit-year-field {
  color: #333;
}
.contact-wrap .contact-form input[type=date]::-webkit-inner-spin-button, .contact-wrap .contact-form input[type=date]::-webkit-clear-button {
  -webkit-appearance: none;
}
.contact-wrap .contact-form input[type=date]::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 1;
}
.contact-wrap .contact-form textarea {
  height: 24rem;
  padding: 1.5rem;
}
.contact-wrap .contact-form select {
  background: url(../img/top/icon_select.svg) right 0.5rem center no-repeat #fff;
  background-size: 1.5rem auto;
  padding: 0 3.5rem 0 1.5rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form select {
    font-size: 3.2rem;
  }
}
.contact-wrap .contact-form .contact-notes {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0.8rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .contact-notes {
    font-size: 2.4rem;
  }
}
.contact-wrap .contact-form .date-list__item {
  display: flex;
  align-items: center;
  gap: 3rem;
}
.contact-wrap .contact-form .date-list__item .data-title {
  word-break: keep-all;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .date-list__item .data-title {
    font-size: 3.2rem;
  }
}
.contact-wrap .contact-form .date-list__item .data-day {
  width: 100%;
  max-width: 20rem;
}
.contact-wrap .contact-form .date-list__item .data-time {
  width: 100%;
  max-width: 13rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .date-list__item .data-time {
    max-width: 34rem;
  }
}
.contact-wrap .contact-form .date-list__item + .date-list__item {
  margin-top: 0.8rem;
}
.contact-wrap .contact-form .address-list {
  width: 100%;
  max-width: 47.4rem;
}
.contact-wrap .contact-form .address-list__item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .address-list__item {
    font-size: 2.8rem;
  }
}
.contact-wrap .contact-form .address-list__item.is-postcode input[type=text] {
  max-width: 16.4rem;
}
.contact-wrap .contact-form .address-list__item.is-pref select {
  max-width: 16.4rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .address-list__item.is-pref select {
    max-width: 44.4rem;
  }
}
.contact-wrap .contact-form .address-list__item .address-title {
  width: 4em;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .address-list__item .address-title {
    font-size: 2.8rem;
    width: 5em;
  }
}
.contact-wrap .contact-form .address-list__item .address-contents {
  width: calc(100% - 4em - 0.8rem);
}
.contact-wrap .contact-form .address-list__item + .address-list__item {
  margin-top: 0.8rem;
}
.contact-wrap .contact-form .date-section {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .date-section {
    font-size: 2.4rem;
  }
}
.contact-wrap .contact-form .date-section__item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.contact-wrap .contact-form .date-section__item select {
  width: 16.4rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-form .date-section__item select {
    width: 27.4rem;
  }
}
.contact-wrap .contact-agree {
  margin-bottom: 3.2rem;
}
.contact-wrap .contact-agree label {
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.contact-wrap .contact-agree label span {
  display: block;
  position: relative;
  font-size: 1.4rem;
  line-height: 1.5;
  padding-left: 3.1rem;
}
@media (max-width: 767px) {
  .contact-wrap .contact-agree label span {
    font-size: 2.8rem;
    padding-left: 5.1rem;
  }
}
.contact-wrap .contact-agree label span::before, .contact-wrap .contact-agree label span::after {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0.2rem;
  content: "";
  position: absolute;
  left: 0;
  top: 0.3rem;
  z-index: 1;
}
@media (max-width: 767px) {
  .contact-wrap .contact-agree label span::before, .contact-wrap .contact-agree label span::after {
    width: 3rem;
    height: 3rem;
  }
}
.contact-wrap .contact-agree label span::before {
  border: 0.1rem solid #999999;
}
.contact-wrap .contact-agree label span::after {
  z-index: 2;
  background: #999999;
  opacity: 0;
  transform: scale(0.7);
  transition: opacity 0.3s ease;
}
.contact-wrap .contact-agree label input[type=checkbox] {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0;
}
.contact-wrap .contact-agree label input[type=checkbox]:checked + span::after {
  opacity: 1;
}
.contact-wrap .contact-button input[type=submit] {
  width: 100%;
  height: 6.3rem;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #fff;
  font-weight: 500;
  border-radius: 0.4rem;
  background: #E18700;
  border: 0;
}
@media (max-width: 767px) {
  .contact-wrap .contact-button input[type=submit] {
    font-size: 2.8rem;
  }
}

.page-confirm input[type=date] {
  color: #333;
}
.page-confirm input[type=date]::-webkit-datetime-edit-fields-wrapper {
  display: flex;
}
.page-confirm input[type=date]::-webkit-datetime-edit-text, .page-confirm input[type=date]::-webkit-datetime-edit-month-field, .page-confirm input[type=date]::-webkit-datetime-edit-day-field, .page-confirm input[type=date]::-webkit-datetime-edit-year-field {
  color: #333;
}
.page-confirm .wpcf7-form .contact-button,
.page-confirm .wpcf7-form .wpcf7-submit-wrapper {
  display: flex;
  gap: 2rem;
  align-items: center;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .page-confirm .wpcf7-form .contact-button,
  .page-confirm .wpcf7-form .wpcf7-submit-wrapper {
    gap: 2.8rem;
    flex-direction: column;
  }
}
.page-confirm input[type=button],
.page-confirm button.wpcf7-back,
.page-confirm .wpcf7-back-button {
  width: auto;
  min-width: 12rem;
  height: 6.3rem;
  padding: 0 2.4rem;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #333;
  font-weight: 500;
  border-radius: 0.4rem;
  background: #fff;
  border: 0.1rem solid #333;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .page-confirm input[type=button],
  .page-confirm button.wpcf7-back,
  .page-confirm .wpcf7-back-button {
    min-width: 100%;
    font-size: 2.8rem;
    height: 6.3rem;
  }
}
.page-confirm input[type=button]:hover,
.page-confirm button.wpcf7-back:hover,
.page-confirm .wpcf7-back-button:hover {
  background: #f5f5f5;
  opacity: 0.8;
}
.page-confirm .contact-button {
  flex: 1;
  min-width: 0;
}
@media (max-width: 767px) {
  .page-confirm .contact-button {
    width: 100%;
  }
}
.page-confirm .contact-button input[type=submit] {
  width: 100%;
  height: 6.3rem;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #fff;
  font-weight: 500;
  border-radius: 0.4rem;
  background: #E18700;
  border: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .page-confirm .contact-button input[type=submit] {
    font-size: 2.8rem;
  }
}
.page-confirm .contact-button input[type=submit]:hover {
  opacity: 0.9;
}
.page-confirm .wpcf7-submit-wrapper {
  flex: 1;
  min-width: 0;
}
@media (max-width: 767px) {
  .page-confirm .wpcf7-submit-wrapper {
    width: 100%;
  }
}
.page-confirm .wpcf7-submit-wrapper input[type=submit] {
  width: 100%;
  height: 6.3rem;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #fff;
  font-weight: 500;
  border-radius: 0.4rem;
  background: #E18700;
  border: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .page-confirm .wpcf7-submit-wrapper input[type=submit] {
    font-size: 2.8rem;
  }
}
.page-confirm .wpcf7-submit-wrapper input[type=submit]:hover {
  opacity: 0.9;
}
.page-confirm .contact-button p {
  display: flex;
  gap: 3rem;
}

.page-thanks .thanks-content {
  width: 100%;
  max-width: 70rem;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 767px) {
  .page-thanks .thanks-content {
    max-width: 100%;
  }
}
.page-thanks .thanks-message {
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .page-thanks .thanks-message {
    font-size: 2.8rem;
    line-height: 2;
    margin-bottom: 6rem;
    text-align: left;
  }
}
.page-thanks .thanks-button {
  margin-top: 4rem;
}
@media (max-width: 767px) {
  .page-thanks .thanks-button {
    margin-top: 5rem;
  }
}
.page-thanks .thanks-button a {
  display: inline-block;
  width: 100%;
  max-width: 30rem;
  height: 6.3rem;
  padding: 0 2.4rem;
  font-size: 1.6rem;
  line-height: 6.3rem;
  color: #fff;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border-radius: 0.4rem;
  background: #E18700;
  border: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .page-thanks .thanks-button a {
    max-width: 100%;
    font-size: 2.8rem;
    height: 6.3rem;
    line-height: 6.3rem;
  }
}
.page-thanks .thanks-button a:hover {
  opacity: 0.9;
}

.page-top-wrap {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 9999;
}
.page-top-wrap.is-visible {
  opacity: 1;
  visibility: visible;
}
.page-top-wrap.is-hidden {
  display: none;
}
@media (max-width: 767px) {
  .page-top-wrap {
    display: none;
  }
}

.page-top {
  position: relative;
  width: 45rem;
  height: 22.5rem;
  display: block;
}

.page-top-close {
  position: absolute;
  top: -1rem;
  right: -1rem;
  width: 3rem;
  height: 3rem;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  border: none;
  border-radius: 50%;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
  z-index: 1;
}
.page-top-close:hover {
  background: rgba(0, 0, 0, 0.9);
}/*# sourceMappingURL=style.css.map */