@charset "UTF-8";
/* A Modern CSS Reset */
* {
  margin: 0;
  padding: 0;
}

*,
::before,
::after {
  border-style: solid;
  box-sizing: border-box;
  border-width: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  line-height: 1.5;
  text-rendering: optimizeSpeed;
}

ul,
ol {
  list-style: none;
}

a {
  color: inherit;
  background-color: transparent;
  text-decoration: none;
  text-decoration-skip-ink: auto;
}

img {
  width: 100%;
  display: block;
}

input,
button,
select,
textarea,
address {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  border-radius: 0;
  background: transparent;
  font: inherit;
  outline: none;
}

textarea {
  resize: none;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

body {
  font-family: "Palatino", "Yu Mincho", serif;
  font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

body {
  color: #000000;
}

html {
  font-size: 16px;
}
@media (max-width: 1130px) {
  html {
    font-size: 1.4159292035vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}

a {
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
}

html.fixed,
html.fixed body {
  height: 100%;
  overflow: hidden;
}

.header {
  position: relative;
  z-index: 1000;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 5.875rem;
  background-color: #FFFFFF;
}
@media screen and (max-width: 767px) {
  .header {
    height: 5rem;
  }
}

.header__inner {
  width: 100%;
  max-width: 81.25rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .header__inner {
    width: 95%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

.header__logo img {
  width: 74%;
  height: auto;
}

.header__nav {
  height: inherit;
  display: flex;
  align-items: center;
}

.header__list {
  height: inherit;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.header__link {
  display: block;
  padding: 0.625rem 0.9375rem;
  font-size: 1.125rem;
  font-family: "Abhaya Libre", sans-serif;
  color: #2F2F2F;
  text-transform: uppercase;
}

.footer__top {
  max-width: 65.625rem;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 767px) {
  .footer__top {
    flex-direction: column;
    padding-bottom: 3.125rem;
  }
}

.footer__logo {
  max-width: 18rem;
  height: auto;
}

.footer__icons {
  display: flex;
  gap: 3.75rem;
}

@media screen and (max-width: 767px) {
  .footer__line-wrap {
    text-align: center;
    margin-top: 1.875rem;
  }
}

@media screen and (max-width: 767px) {
  .footer__line-text {
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #7a7a7a;
  }
}

.footer__line-icon {
  font-size: 6.25rem;
  color: #80C87D;
}
@media screen and (max-width: 767px) {
  .footer__line-icon {
    font-size: 5.9375rem;
    margin-top: 1.875rem;
  }
}

.footer__qr-code {
  max-width: 6.25rem;
  height: auto;
}

.footer__container {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .footer__container {
    flex-direction: column;
  }
}

.footer__info-block {
  width: 100%;
  max-width: 43.75rem;
  display: flex;
  justify-content: space-around;
}
@media screen and (max-width: 767px) {
  .footer__info-block {
    display: block;
    width: 100%;
    max-width: 31.25rem;
    margin-inline: auto;
  }
}

.footer__schedule {
  margin-bottom: 1.875rem;
}

.footer__heading {
  font-size: 1rem;
  font-weight: 700;
  font-family: "Futura", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.footer__text {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .footer__text {
    font-size: 0.8125rem;
  }
}

.footer__address {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .footer__address {
    font-size: 0.8125rem;
  }
}

.footer__information {
  margin-bottom: 1.875rem;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .footer__information {
    margin-top: 1.875rem;
  }
}

.footer__contact-button {
  margin-top: 1.25rem;
}

.footer__map {
  width: 100%;
  max-width: 24.375rem;
  height: 21.875rem;
}
@media screen and (max-width: 767px) {
  .footer__map {
    height: 18.75rem;
    max-width: initial;
  }
}

.footer__map-iframe {
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.footer__copyright {
  display: block;
  text-align: center;
  font-size: 1rem;
  font-family: "Abhaya Libre", sans-serif;
  color: #b0b2b7;
  margin-top: 6.25rem;
}

.sticky-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: #81899d;
  opacity: 0.9;
}

.sticky-footer-links {
  display: flex;
}

.sticky-footer-item {
  width: 100%;
}

.sticky-footer-item:first-child {
  border-right: 1px solid #FFFFFF;
}

.sticky-footer-link {
  display: inline-block;
  text-align: center;
  width: 100%;
  padding: 1.25rem 0;
  font-size: 0.9375rem;
  font-weight: 200;
  letter-spacing: 0.05em;
  color: #FFFFFF;
}

.l-inner {
  width: 100%;
  max-width: 90rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5625rem;
  padding-left: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .l-inner {
    max-width: 1110px;
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}

.m-inner {
  width: 100%;
  max-width: 78.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5625rem;
  padding-left: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .m-inner {
    max-width: 1110px;
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}

.s-inner {
  width: 100%;
  max-width: 76.875rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5625rem;
  padding-left: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .s-inner {
    max-width: 1110px;
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}

.button {
  display: inline-block;
  padding: 1.25rem 3.125rem;
  font-size: 1.125rem;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  background-color: #FFFFFF;
  border: 1px solid #000000;
  border-radius: 2.5rem;
  transition: background-color 0.3s, color 0.3s;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .button {
    padding: 0.9375rem 2.5rem;
    font-weight: 500;
  }
}

.button:hover {
  background-color: #000000;
  color: #FFFFFF;
}

.button-reverse {
  display: inline-block;
  padding: 1.25rem 3.125rem;
  font-size: 1.125rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  color: #FFFFFF;
  background-color: #000000;
  border: 1px solid #000000;
  border-radius: 2.5rem;
  transition: background-color 0.3s, color 0.3s;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .button-reverse {
    padding: 0.9375rem 2.5rem;
    font-weight: 500;
  }
}

.button-reverse:hover {
  background-color: #FFFFFF;
  color: #000000;
}

.page-header {
  position: relative;
  height: 12.875rem;
  background-image: url("https://yomo.co.jp/wp-content/uploads/2023/05/YOMO-GIFT.jpg");
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .page-header {
    height: 8.875rem;
    background-position: right;
  }
}

.page-header__content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 12%;
}

.page-header__headline {
  color: #FFFFFF;
  font-size: 1.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  opacity: 0.9;
}

.page-header__subtext {
  color: #FFFFFF;
  font-size: 0.9375rem;
  margin-top: 0.625rem;
  opacity: 0.8;
}

.page__title-wrapper {
  padding-bottom: 0.3125rem;
  border-bottom: 0.0625rem solid #000000;
}

.page__main-title {
  font-size: 1.5rem;
  text-transform: uppercase;
}

.page__sub-title {
  font-size: 1rem;
  color: #7a7a7a;
  margin-top: 1.25rem;
}

/* ふわっと出現させる要素 */
.fadeUpTrigger {
  opacity: 0;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 1;
  /* アニメーション後も表示維持 */
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.pagination {
  display: flex;
  justify-content: center;
  gap: 0.625rem;
}

.pagination a {
  display: inline-block;
  padding: 0 0.3125rem;
  border-bottom: 0.0625rem solid #b0b2b7;
  color: #b0b2b7;
}

.pagination .current {
  display: inline-block;
  padding: 0 0.3125rem;
  border-bottom: initial;
  color: #7a7a7a;
}

.pagination .next.page-numbers,
.pagination .prev.page-numbers {
  display: none;
}

.breadcrumb {
  display: flex;
  gap: 0.3125rem;
  color: #b0b2b7;
}

.current-item {
  color: #3a3d5e;
}

.page-top-button {
  position: fixed;
  z-index: 9000;
  right: 1.25rem;
  bottom: 4.375rem;
  width: 3.125rem;
  height: 3.125rem;
  cursor: pointer;
  background-color: #FFFFFF;
  border: 0.0625rem solid #7a7a7a;
  border-radius: 50%;
}

.page-top-button::after {
  position: absolute;
  top: 45%;
  left: 55%;
  width: 0.625rem;
  height: 0.625rem;
  content: "";
  transform: rotate(-45deg) translate(-50%, -50%);
  border-top: 0.125rem solid #7a7a7a;
  border-right: 0.125rem solid #7a7a7a;
}

/* ハンバーガーメニューのボタン */
.hamburger {
  padding: 0.625rem 0.5rem;
  background-color: rgba(122, 122, 122, 0.1);
  border-radius: 0.125rem;
}

.hamburger span {
  display: block;
  width: 1.5625rem;
  height: 0.1875rem;
  background-color: rgba(0, 0, 0, 0.6);
  transition: 0.3s;
}

.hamburger span:nth-child(2) {
  margin: 0.3125rem 0;
}

.hamburger.open span:nth-child(1) {
  transform: translate(3px, -2px) rotate(45deg);
  transform-origin: left;
}

.hamburger.open span:nth-child(2) {
  opacity: 0;
}

.hamburger.open span:nth-child(3) {
  transform: translate(3px, 0) rotate(-45deg);
  transform-origin: left;
}

/* ドロワーメニュー */
.drawer-menu.js-drawer {
  position: absolute;
  top: 5rem;
  left: 0;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  background-color: #FFFFFF;
  transition: max-height 0.3s ease;
  z-index: 500;
}

.drawer-menu__list {
  height: 36.875rem;
}

.drawer-menu__item {
  border-bottom: 0.0625rem solid #b0b2b7;
}

.drawer-menu__item.active a {
  background-color: rgba(0, 0, 0, 0.6);
  color: #FFFFFF;
}

.drawer-menu__link {
  height: 4rem;
  padding: 1.25rem 0;
  padding-left: 1.25rem;
  display: block;
  font-size: 1rem;
  font-family: "Abhaya Libre", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #7a7a7a;
}

/* ドロワーメニューが開いた時 */
.drawer-menu.open {
  max-height: 37.5rem;
}

.imgHover {
  position: relative;
}

.imgHover img {
  width: 300px;
  transition: 0.5s opacity;
}

.imgHover img:nth-of-type(2) {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: 0.5s opacity;
}

@media screen and (min-width: 768px) {
  .imgHover:hover img:nth-of-type(1) {
    opacity: 0;
    transition: 0.5s opacity;
  }
  .imgHover:hover img:nth-of-type(2) {
    opacity: 1;
    transition: 0.5s opacity;
  }
}
.iconLink {
  position: relative;
  line-height: 1;
}

.iconLink::after {
  position: absolute;
  content: "";
  width: 1em;
  height: 1em;
  right: -1em;
  top: 0.3em;
  background: url(画像のバスを入れる) center center/contain no-repeat;
}

.underBar {
  position: relative;
  display: inline-block;
}
.underBar::before {
  background-color: #000000;
  bottom: 0;
  content: "";
  height: 0.0625rem;
  left: 50%;
  opacity: 1;
  position: absolute;
  transform: translateX(-50%);
  transition: 0.5s;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .underBar:hover:before {
    opacity: 0;
    transition: 0.5s all;
  }
}
.top-fv {
  padding-top: 0.9375rem;
}

.top-fv__slide {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.top-yomo {
  padding-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .top-yomo {
    padding-top: 5rem;
  }
}

.top-yomo__heading {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top-yomo__heading {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }
}

.top-yomo__title {
  font-size: 1.625rem;
  font-weight: 500;
}

.top-yomo__subtitle {
  font-size: 1.125rem;
  font-weight: 500;
}

.top-yomo__news {
  margin-top: 5rem;
  width: 100%;
  max-width: 37.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .top-yomo__news {
    padding: 0 0.9375rem;
  }
}

.top-yomo__news-title {
  text-align: center;
  text-transform: uppercase;
  font-size: 1rem;
  font-family: "Futura", sans-serif;
  font-weight: 500;
}

.top-yomo__news-list {
  margin-top: 1.875rem;
}

.top-yomo__news-item {
  display: flex;
  align-items: center;
  font-size: 0.9375rem;
  color: #7a7a7a;
}
@media screen and (max-width: 767px) {
  .top-yomo__news-item {
    font-size: 0.875rem;
  }
}

.top-yomo__news-item span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.top-yomo__news-item:not(:last-child) {
  margin-bottom: 0.375rem;
}

.top-yomo__news-item time {
  margin-right: 1.375rem;
}

.top-yomo__news-link {
  font-size: 0.875rem;
  color: #b0b2b7;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .top-yomo__news-link {
    font-size: 0.8125rem;
  }
}

.top-yomo__description {
  margin-top: 5rem;
  text-align: center;
}

.top-yomo__description-title {
  font-size: 1rem;
}

.top-yomo__description-content {
  margin-top: 1.875rem;
}

.top-yomo__description-text {
  font-size: 0.9375rem;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .top-yomo__description-text {
    font-size: 0.8125rem;
    display: block;
    margin-bottom: 0.9375rem;
  }
}

@media screen and (max-width: 767px) {
  .top-yomo__description-text span {
    margin-bottom: 0.9375rem;
    display: block;
  }
}

.top-yomo__description-text:nth-of-type(2) {
  margin-bottom: 1.25rem;
}

.top-yomo__cards {
  margin-top: 5rem;
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .top-yomo__cards {
    margin-top: 2.5rem;
    flex-direction: column;
    align-items: center;
  }
}

.top-yomo__card-image {
  width: 100%;
  max-width: 36.25rem;
  height: auto;
  object-fit: cover;
}

.top-room {
  padding-top: 6.25rem;
}

.top-room__inner {
  width: 100%;
  max-width: 67.125rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
  text-align: center;
}

.top-room__subtitle {
  font-size: 0.9375rem;
  font-family: "Futura", sans-serif;
  letter-spacing: 0.1em;
}

.top-room__item {
  margin-top: 1.5625rem;
}

.top-room__item:nth-of-type(2) {
  margin-top: 5rem;
}

.top-room__title {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #000000;
}

.top-room__slide {
  margin-top: 2.1875rem;
}

.top-room__img {
  width: 100%;
  max-width: 64rem;
  height: auto;
  object-fit: cover;
}

.top-room__description {
  font-size: 1rem;
  color: #7a7a7a;
  margin-top: 3.75rem;
}

.top-menu {
  padding-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .top-menu {
    padding-top: 3.125rem;
  }
}

/* ヘディング部分 */
.top-menu__heading {
  text-align: center;
}

.top-menu__subtitle {
  text-transform: uppercase;
  font-size: 0.875rem;
  font-family: "Futura", sans-serif;
  letter-spacing: 0.05em;
}

.top-menu__title {
  font-size: 1.5rem;
  letter-spacing: 0.02em;
  color: #000000;
  margin-top: 0.9375rem;
}

/* リスト部分 */
.top-menu__list {
  margin-top: 1.875rem;
}

/* メニュー項目 */
.top-menu__item {
  border-top: 1px solid #000000;
}

.top-menu__item-body {
  display: flex;
  text-align: center;
  width: 100%;
  max-width: 62.5rem;
  margin-inline: auto;
  padding: 1.25rem 0;
}
@media screen and (max-width: 767px) {
  .top-menu__item-body {
    flex-direction: column;
  }
}

.top-menu__item:nth-child(2) {
  border-bottom: 1px solid #000000;
}

.top-menu__item-heading {
  width: 100%;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .top-menu__item-heading {
    font-size: 1.25rem;
  }
}

/* 価格部分 */
.top-menu__item-pricing {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.375rem;
  line-height: 1.8;
  color: #7a7a7a;
}
@media screen and (max-width: 767px) {
  .top-menu__item-pricing {
    font-size: 1.25rem;
    margin-top: 1.25rem;
  }
}

.top-menu__label {
  width: 8.75rem;
  display: inline-block;
}

.top-menu-option {
  padding-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .top-menu-option {
    padding-top: 2.5rem;
  }
}

.top-menu-option__title {
  text-align: center;
  font-size: 1.625rem;
  font-weight: 500;
  color: #000000;
  letter-spacing: 0.05em;
}

.top-menu-option__img {
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .top-menu-option__img {
    margin-top: 0.9375rem;
  }
}

.top-menu-option__img img {
  max-width: 62rem;
  margin-inline: auto;
  object-fit: cover;
  height: auto;
}

.top-menu-option__list {
  margin-top: 0.625rem;
  padding: 1.875rem 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

.top-menu-option__row:not(:first-child) {
  margin-top: 1.5625rem;
}

@media screen and (max-width: 767px) {
  .top-menu-option__row {
    width: 100%;
    max-width: 28.125rem;
    margin-inline: auto;
  }
}

.top-menu-option__row-body {
  width: 100%;
  max-width: 62.5rem;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top-menu-option__row-body {
    flex-direction: column;
    justify-content: center;
    row-gap: 1.25rem;
  }
}

.top-menu-option__item {
  width: 40%;
  display: flex;
  justify-content: space-between;
  font-size: 1rem;
  text-transform: uppercase;
  color: #b0b2b7;
}
@media screen and (max-width: 767px) {
  .top-menu-option__item {
    width: 85%;
    margin-inline: auto;
    font-size: 0.9375rem;
  }
}

.top-maternity {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .top-maternity {
    padding-top: 1.25rem;
  }
}

@media screen and (max-width: 767px) {
  .top-maternity__inner {
    padding-bottom: 2.5rem;
  }
}

.top-maternity__title {
  font-size: 1.5625rem;
  text-align: center;
  color: #000000;
  letter-spacing: 0.06em;
}

.top-maternity__slider {
  width: 100%;
  max-width: 48rem;
  height: auto;
  object-fit: cover;
  margin-inline: auto;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .top-maternity__slider {
    margin-top: 0.625rem;
  }
}

.top-maternity__description {
  text-align: center;
  margin-top: 2.5rem;
}

.top-maternity__description p {
  font-size: 1rem;
  color: #7a7a7a;
}

.top-maternity__description p:nth-of-type(1),
.top-maternity__description p:nth-of-type(2) {
  margin-bottom: 0.9375rem;
}

.top-maternity__button-wrapper {
  text-align: center;
  margin-top: 2.5rem;
  border-bottom: 1px solid #000000;
  padding-bottom: 5rem;
}

.top-reserve {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .top-reserve {
    padding-top: 1.25rem;
  }
}

.top-reserve__item {
  background-color: #FAFAFA;
}

.top-reserve__item:nth-child(even) {
  background-color: #FFFFFF;
}

.top-reserve__item-body {
  width: 100%;
  max-width: 78.125rem;
  padding-inline: 1.5625rem;
  margin-inline: auto;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .top-reserve__item-body {
    flex-direction: column;
    padding-inline: 0.9375rem;
    padding-bottom: 0.9375rem;
  }
}

.top-reserve__item:nth-of-type(even) .top-reserve__item-body {
  flex-direction: row-reverse;
  padding-top: 3.125rem;
  padding-bottom: 3.125rem;
}
@media screen and (max-width: 767px) {
  .top-reserve__item:nth-of-type(even) .top-reserve__item-body {
    flex-direction: column;
  }
}

.top-reserve__img img {
  padding: 0.625rem 0;
  object-fit: cover;
  width: 100%;
  max-width: 36.875rem;
  height: auto;
}

.top-reserve__content {
  flex: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top-reserve__content {
    margin-top: 2.5rem;
  }
}

.top-reserve__wrapper {
  color: #7a7a7a;
}

.top-reserve__label {
  font-size: 0.875rem;
  font-family: "Futura", sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.top-reserve__title {
  font-size: 1.1875rem;
  margin-top: 1.25rem;
}

.top-reserve__subtitle {
  font-size: 1rem;
}

.top-reserve__text {
  font-size: 1rem;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .top-reserve__text {
    margin-top: 1.875rem;
  }
}

.top-reserve__description {
  font-size: 0.9375rem;
  margin-top: 1.25rem;
}

@media screen and (max-width: 767px) {
  .top-reserve__description p:not(:last-child) {
    margin-bottom: 1.25rem;
  }
}

.top-reserve__button {
  margin-top: 1.875rem;
}

.top-social {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .top-social {
    padding-bottom: 2.5rem;
  }
}

.top-social__container {
  display: flex;
  margin-bottom: 6.25rem;
}

.top-social__item {
  width: 48%;
  text-align: center;
}

.top-social__icons {
  width: 100%;
  max-width: 62.5rem;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top-social__icons {
    width: 100%;
    max-width: 31.25rem;
    margin-inline: auto;
  }
}

.top-social__icon img {
  width: 100%;
  max-width: 7.5rem;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .top-social__icon img {
    width: 70%;
    max-width: 12.5rem;
    margin-inline: auto;
  }
}

.news {
  padding-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .news {
    padding-top: 2.5rem;
  }
}

.news__heading {
  font-size: 1.5rem;
  font-weight: 500;
  color: #7a7a7a;
  text-transform: uppercase;
}

.news__list {
  width: 100%;
  max-width: 68.75rem;
  margin: 2.5rem auto;
}

.news__item {
  display: flex;
  gap: 6.25rem;
}
@media screen and (max-width: 767px) {
  .news__item {
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.news__item:not(:first-child) {
  margin-top: 3.75rem;
}

.news__img {
  width: 100%;
  max-width: 29.0625rem;
}
@media screen and (max-width: 767px) {
  .news__img {
    max-width: 37.5rem;
  }
}

.news__img img {
  max-width: 29.0625rem;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .news__img img {
    max-width: 37.5rem;
  }
}

.news__content {
  flex: 1;
}

.news__date {
  font-size: 0.875rem;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .news__date {
    font-size: 0.75rem;
  }
}

.news__body {
  max-width: 32.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .news__body {
    width: 90%;
  }
}

.news__item-title {
  margin-top: 1.875rem;
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .news__item-title {
    margin-top: 0.9375rem;
  }
}

.news__link-wrap {
  text-align: center;
}

.news__link {
  display: inline-block;
  margin-top: 1.875rem;
  margin-inline: auto;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  text-decoration: underline;
  color: #7a7a7a;
}

.news-detail {
  padding: 2.5rem 0 5rem;
}

.news-detail__container {
  width: 100%;
  max-width: 56.25rem;
  margin-inline: auto;
  height: auto;
  padding: 2.5rem 2rem;
  margin-top: 2.5rem;
  border: 0.0625rem solid #EBEBEB;
}

.yomo-number {
  font-size: 0.875rem;
  font-family: "Futura", sans-serif;
  letter-spacing: 0.04em;
}

.yomo-concept {
  padding-top: 5rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .yomo-concept {
    padding-top: 2.5rem;
  }
}

.yomo-concept__title {
  font-size: 0.875rem;
  font-family: "Futura", sans-serif;
  text-transform: uppercase;
  color: #b0b2b7;
}

.yomo-concept__heading {
  margin-top: 2.5rem;
  font-size: 1.625rem;
}

.yomo-concept__text {
  margin-top: 2.5rem;
  font-size: 0.875rem;
  line-height: 2.5;
}
@media screen and (max-width: 767px) {
  .yomo-concept__text {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 599px) {
  .yomo-concept__text {
    font-size: 1rem;
  }
}

.yomo-description {
  padding-top: 2.5rem;
}

.yomo-description__inner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .yomo-description__inner {
    flex-direction: column;
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.yomo-description__title {
  margin-top: 1.25rem;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
}

.yomo-description__subtitle {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  letter-spacing: 0.06em;
}

.yomo-description__text {
  margin-top: 2.5rem;
  font-size: 0.875rem;
  line-height: 2.2;
}
@media screen and (max-width: 767px) {
  .yomo-description__text {
    font-size: 1rem;
  }
}
@media screen and (max-width: 599px) {
  .yomo-description__text {
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 767px) {
  .yomo-description__img {
    margin-top: 1.25rem;
  }
}

.yomo-description__img img {
  max-width: 33.125rem;
  height: auto;
  object-fit: cover;
}

.yomo-feature {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .yomo-feature {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}

.yomo-feature__inner {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .yomo-feature__inner {
    flex-direction: column;
    align-items: start;
    max-width: 37.5rem;
  }
}

.yomo-feature__wrap {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .yomo-feature__wrap {
    width: 100%;
  }
}

.yomo-feature__title {
  margin-top: 0.625rem;
  font-size: 1.5rem;
}

.yomo-feature__text {
  flex: 1;
  font-size: 0.875rem;
  line-height: 2.5;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .yomo-feature__text {
    margin-top: 1.25rem;
    font-size: 1rem;
    line-height: 2.2;
  }
}
@media screen and (max-width: 599px) {
  .yomo-feature__text {
    font-size: 0.875rem;
  }
}

.yomo-guide {
  padding: 2.5rem 0;
  background-color: rgba(176, 178, 183, 0.3);
}

.yomo-guide__title {
  margin-top: 1.25rem;
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.15em;
}

.yomo-guide__steps {
  margin-top: 2.5rem;
  padding-bottom: 2.5rem;
  border-bottom: 0.0625rem solid #b0b2b7;
}
@media screen and (max-width: 767px) {
  .yomo-guide__steps {
    margin-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

.yomo-guide__step-list {
  display: flex;
  justify-content: space-between;
  max-width: 68.75rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .yomo-guide__step-list {
    max-width: 37.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.625rem;
  }
}

.yomo-guide__step-item {
  display: flex;
  flex-direction: column;
  font-size: 1.25rem;
  line-height: 2;
  color: #7a7a7a;
}

.yomo-guide__detail-item {
  padding: 2.5rem 0;
  padding-left: 2.5rem;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .yomo-guide__detail-item {
    padding: 1.25rem 0;
    padding-left: initial;
    flex-direction: column;
  }
}

.yomo-guide__detail-item:not(:last-child) {
  border-bottom: 0.0625rem solid #000000;
}

.yomo-guide__title-group {
  width: 30%;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  font-size: 1.375rem;
}
@media screen and (max-width: 767px) {
  .yomo-guide__title-group {
    width: 90%;
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 767px) {
  .yomo-guide__item-number {
    font-size: 1.375rem;
  }
}

.yomo-guide__item-text {
  flex: 1;
  font-size: 1.125rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .yomo-guide__item-text {
    width: 80%;
    font-size: 1rem;
    margin-top: 0.625rem;
  }
}

.yomo-expectation {
  padding: 2.5rem 0;
}

.yomo-expectation__heading {
  max-width: 78.125rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
}

.yomo-expectation__title {
  margin-top: 2.5rem;
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__title {
    margin-top: 1.25rem;
  }
}

.yomo-expectation__benefits {
  margin-top: 3.75rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__benefits {
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
  }
}

.yomo-expectation__benefit-groups {
  max-width: 78.125rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
  display: flex;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__benefit-groups {
    flex-direction: column;
  }
}

.yomo-expectation__benefit-group:first-child {
  width: 60%;
  flex-grow: 0;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__benefit-group:first-child {
    width: 100%;
  }
}

.yomo-expectation__benefit-group:last-child {
  width: 40%;
  flex-grow: 1;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__benefit-group:last-child {
    width: 100%;
  }
}

.yomo-expectation__benefit-item {
  margin-bottom: 1.25rem;
  font-size: 1.125rem;
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__benefit-item {
    font-size: 1rem;
    margin-bottom: 0.625rem;
  }
}

.yomo-expectation__restrictions {
  padding: 2.5rem 0;
  background-color: rgba(176, 178, 183, 0.3);
}

.yomo-expectation__restrictions-heading {
  max-width: 78.125rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
}

.yomo-expectation__restrictions-title {
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__restrictions-title {
    font-size: 1.125rem;
  }
}

.yomo-expectation__restriction-list {
  margin-top: 1.25rem;
}

.yomo-expectation__restriction-groups {
  max-width: 78.125rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__restriction-groups {
    flex-direction: column;
  }
}

.yomo-expectation__restriction-group:first-child {
  width: 60%;
  flex-grow: 0;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__restriction-group:first-child {
    width: 100%;
  }
}

.yomo-expectation__restriction-group:last-child {
  width: 40%;
  flex-grow: 1;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__restriction-group:last-child {
    width: 100%;
  }
}

.yomo-expectation__restriction-item {
  margin-bottom: 1.25rem;
  font-size: 1.125rem;
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .yomo-expectation__restriction-item {
    margin-bottom: 0.625rem;
    font-size: 1rem;
  }
}

.yomo-breadcrumb {
  padding-top: 2.5rem;
  padding-bottom: 5rem;
  padding-inline: 1.5625rem;
  max-width: 75rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .yomo-breadcrumb {
    padding-bottom: 2.5rem;
    padding-inline: 0.9375rem;
  }
}

.gift {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .gift {
    padding-top: 2.5rem;
  }
}

.gift__inner {
  text-align: center;
}

.gift__title {
  font-size: 1.625rem;
}

.gift__description {
  font-size: 1rem;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .gift__description {
    font-size: 0.875rem;
  }
}

.gift__pricing {
  font-size: 1rem;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .gift__pricing {
    font-size: 0.875rem;
  }
}

.gift__note {
  font-size: 1rem;
  margin-top: 1.25rem;
}

.gift__button {
  margin-top: 3.125rem;
}

.gift-cards {
  padding-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .gift-cards {
    padding-top: 3.75rem;
  }
}

@media screen and (max-width: 767px) {
  .gift-cards__list {
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.gift-card img {
  max-width: 16.5625rem;
  height: auto;
  object-fit: cover;
}

.gift-step {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .gift-step {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem;
  }
}

.gift-step__title {
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
}

.gift-step__content {
  margin-top: 1.25rem;
}

.gift-step__button-area {
  margin-top: 3.125rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .gift-step__button-area {
    margin-top: 1.875rem;
  }
}

.cookies-title {
  font-size: 1.375rem;
  font-weight: 700;
}

.cookies-text {
  font-size: 0.9375rem;
  overflow-wrap: break-word;
  word-break: break-all;
}

.cookies {
  padding: 1.25rem 0 3.75rem;
}

.cookies__inner {
  overflow-wrap: break-word;
  word-break: break-all;
}
@media screen and (max-width: 767px) {
  .cookies__inner {
    width: 100%;
  }
}

.cookies-hero__img img {
  max-width: 56.875rem;
  height: auto;
  margin-inline: auto;
  object-fit: cover;
}

.cookies-hero__content {
  text-align: center;
  margin-top: 3.75rem;
}

.cookies-hero__logo-img img {
  max-width: 32.5rem;
  height: auto;
  margin-inline: auto;
  object-fit: cover;
}

.cookies-hero__description {
  margin-top: 3.75rem;
}

.cookies-hero__text {
  margin-top: 1.25rem;
}

.cookies-hero__text p:not(:first-child) {
  margin-top: 0.625rem;
}

.cookies-gifts {
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .cookies-gifts {
    margin-top: 1.25rem;
  }
}

.cookies-gifts__title {
  text-align: center;
}

.cookies-gifts__img img {
  max-width: 56.875rem;
  height: auto;
  margin-inline: auto;
  object-fit: cover;
  margin-top: 2.5rem;
}

.cookies-gifts__list {
  max-width: 56.25rem;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  text-align: center;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .cookies-gifts__list {
    flex-direction: column;
    align-items: center;
    gap: 2.5rem;
  }
}

.cookies-gifts__item {
  width: 33%;
}
@media screen and (max-width: 767px) {
  .cookies-gifts__item {
    width: 100%;
  }
}

.cookies-gifts__item-title {
  font-size: 1.25rem;
  font-weight: 700;
}

.cookies-gifts__item-subtitle {
  font-size: 0.875rem;
  font-weight: 700;
}

.cookies-gifts__item-description {
  margin-top: 1.25rem;
}

.cookies-gifts__item-price {
  margin-top: 1.25rem;
}

.cookies-buy {
  margin-top: 2.5rem;
}

.cookies-buy__inner {
  text-align: center;
}

.cookies-buy__note {
  margin-top: 1.25rem;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .cookies-buy__note {
    font-size: 0.75rem;
  }
}

.cookies-donation {
  margin-top: 2.5rem;
  margin-bottom: 6.25rem;
}

.cookies-donation__inner {
  text-align: center;
}

.cookies-donation__title {
  letter-spacing: 0.06em;
}

.cookies-donation__description {
  margin-top: 1.25rem;
}

.cookies-donation__more {
  margin-top: 1.25rem;
  text-align: center;
}

.reserve {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .reserve {
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .reserve__inner {
    max-width: 37.5rem;
  }
}

.reserve__title {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Futura", sans-serif;
}

.reserve__description {
  text-align: center;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  margin-top: 3.125rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .reserve__description {
    width: 90%;
    margin-inline: auto;
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
}

.reserve__description p:nth-child(1) {
  margin-bottom: 1.25rem;
}

.reserve__description p:nth-child(2) {
  margin-bottom: 2.5rem;
}

.reserve__icon-area {
  text-align: center;
}

.reserve__line-link {
  font-size: 10rem;
  color: #80C87D;
}

.column {
  padding: 2.5rem 0 5rem;
}

.column__main {
  width: 100%;
  max-width: 64.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .column__main {
    max-width: 37.5rem;
  }
}

.column__main-img {
  max-width: 64.5rem;
  height: auto;
  object-fit: cover;
}

.column__main-title {
  font-size: 1.25rem;
  font-weight: 700;
  margin-top: 0.9375rem;
}

.column__list {
  display: grid;
  column-gap: 1.25rem;
  row-gap: 2.5rem;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 2.5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .column__list {
    display: block;
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

@media screen and (max-width: 767px) {
  .column__item:not(:first-child) {
    margin-top: 1.875rem;
  }
}

@media screen and (max-width: 767px) {
  .column__item-content {
    display: flex;
    column-gap: 1.25rem;
  }
}

@media screen and (max-width: 767px) {
  .column__item-wrap {
    display: flex;
    flex-direction: column-reverse;
  }
}

.column__item-img {
  width: 100%;
  max-width: 23.75rem;
}

.column__item-img img {
  max-width: 23.75rem;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .column__item-img img {
    min-width: 8.75rem;
  }
}

.column__item-title {
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 0.625rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .column__item-title {
    font-size: 0.6875rem;
    margin-top: initial;
  }
}

.column__item-date {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .column__item-date {
    font-size: 0.5rem;
    margin-top: 0.3125rem;
  }
}

.column__item-description {
  font-size: 1rem;
  margin-top: 0.625rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .column__item-description {
    font-size: 0.625rem;
    margin-top: 0.3125rem;
    -webkit-line-clamp: 2;
  }
}

.column-detail {
  padding: 2.5rem 0 5rem;
}

.column-detail__container {
  width: 100%;
  max-width: 56.25rem;
  margin-inline: auto;
  height: auto;
  padding: 2.5rem 2rem;
  margin-top: 2.5rem;
  border: 0.0625rem solid #EBEBEB;
}

.access-heading {
  padding: 6.25rem 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .access-heading {
    padding: 3.125rem 0;
  }
}

.access-heading__location {
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 2;
}

.access-heading__description {
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  margin-top: 1.25rem;
}

.access-media__inner {
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .access-media__inner {
    flex-direction: column;
    gap: 1.875rem;
  }
}

.access-media__heading {
  font-size: 0.875rem;
  text-align: center;
  letter-spacing: 0.06em;
  margin-bottom: 1.25rem;
}

.access-media__content {
  position: relative;
  width: 100%;
  max-width: 36.25rem;
}
@media screen and (max-width: 767px) {
  .access-media__content {
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.access-media__video {
  width: 100%;
  height: auto;
  object-fit: cover;
  border: 0.0625rem solid black;
}

.access-container {
  padding-top: 5rem;
}

.access-container__inner {
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .access-container__inner {
    flex-direction: column;
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.access {
  width: 100%;
  max-width: 36.25rem;
}

.access__heading {
  font-size: 1rem;
  font-family: "Futura", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.25rem;
}

.access__address {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  line-height: 2.2;
}

.schedule {
  flex: 1;
}

.schedule__heading {
  font-size: 1rem;
  font-family: "Futura", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.25rem;
}

.schedule__text {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  line-height: 2.2;
}

.access-map {
  padding-top: 2.5rem;
  padding-bottom: 3.75rem;
}

.access-map__content {
  display: flex;
  gap: 3.75rem;
}
@media screen and (max-width: 767px) {
  .access-map__content {
    flex-direction: column;
    max-width: 37.5rem;
    margin-inline: auto;
  }
}

.access-map__img {
  max-width: 34.25rem;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .access-map__img {
    max-width: initial;
  }
}

.access-map__iframe {
  max-width: 34.25rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  .access-map__iframe {
    width: 100%;
    height: 25rem;
    max-width: initial;
  }
}

.access-map__breadcrumb {
  margin-top: 3.75rem;
}

.faq {
  padding: 1.25rem 0 5rem;
}
@media screen and (max-width: 767px) {
  .faq {
    padding: 0 0 2.5rem;
  }
}

.faq__list {
  width: 100%;
  max-width: 59.0625rem;
  margin-inline: auto;
}

.faq__item {
  padding: 2.5rem 0;
}

.faq__item:not(:last-child) {
  border-bottom: 0.0625rem solid #b0b2b7;
}

.faq__question {
  display: flex;
  gap: 1.25rem;
}

.faq__question-label {
  width: 100%;
  max-width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  background-color: #81899d;
  color: #FFFFFF;
}

.faq__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #81899d;
}

.faq__answer {
  display: flex;
  gap: 1.25rem;
}

.faq__answer-label {
  width: 100%;
  max-width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #EBEBEB;
  color: #b0b2b7;
}

.faq__text {
  font-size: 1rem;
  color: #b0b2b7;
}

.faq__text a {
  color: #7a7a7a;
  border-bottom: 0.0625rem solid transparent;
  transition: border-color 0.3s;
}
.faq__text a:hover {
  border-bottom: 0.0625rem solid #000000;
}

.company {
  padding: 2.5rem 0 5rem;
}

.company__title-wrapper {
  color: #7a7a7a;
}

.company__main-title {
  text-transform: uppercase;
  font-size: 1.5rem;
}

.company__sub-title {
  font-size: 1rem;
  margin-top: 0.625rem;
}

.company__list {
  color: #7a7a7a;
  margin-top: 5rem;
}

.company__item {
  display: flex;
  align-items: center;
  padding: 1.5rem 0;
  border-top: 0.0625rem solid #b0b2b7;
}
@media screen and (max-width: 599px) {
  .company__item {
    flex-direction: column;
    max-width: 28.125rem;
    margin-inline: auto;
  }
}

.company__item:last-child {
  border-bottom: 0.0625rem solid #b0b2b7;
}

.company__title {
  width: 30%;
  text-align: center;
  font-weight: 700;
}

.company__text {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .company__text {
    text-align: center;
    margin-top: 1.25rem;
  }
}

.company-breadcrumb {
  margin-top: 2.5rem;
}

.contact {
  padding: 2.5rem 0 5rem;
}

.contact__inner {
  width: 100%;
  max-width: 50rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .contact__inner {
    max-width: 40.625rem;
    padding-inline: 0.9375rem;
  }
}

.contact__container {
  width: 100%;
  max-width: 31.25rem;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  margin-inline: auto;
}

.contact__form-wrap:not(:first-child) {
  margin-top: 1.25rem;
}

.contact__form-label {
  font-size: 1rem;
  color: #7a7a7a;
}

.contact__form-input input {
  width: 100%;
  height: 2.625rem;
  padding: 0.625rem;
  border-radius: 0.3125rem;
  border: 0.0625rem solid #7a7a7a;
}

.contact__form-input input:focus {
  border: 0.125rem solid #000000;
}

.contact__form-input-select {
  position: relative;
  width: 100%;
  max-width: 17.5rem;
}

.contact__form-input-select select {
  width: 100%;
  max-width: 17.5rem;
  height: 2.625rem;
  padding: 0.625rem;
  border-radius: 0.3125rem;
  border: 0.0625rem solid #7a7a7a;
}

.contact__form-input-select select:focus {
  border: 0.125rem solid #000000;
}

.contact__form-input-select::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 0.125rem solid #000000;
  border-right: 0.125rem solid #000000;
  transform: rotate(45deg);
  right: 0.9375rem;
  top: 0.9375rem;
}

.contact__form-textarea textarea {
  width: 100%;
  height: 14.25rem;
  max-height: 37.5rem;
  border: 0.0625rem solid #7a7a7a;
  border-radius: 0.3125rem;
  padding: 0.5rem 0.625rem;
  resize: both;
  box-sizing: border-box;
}

.contact__form-textarea textarea:focus {
  border: 0.125rem solid #000000;
}

.contact__form-submit {
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact__form-submit button {
  font-weight: 500;
  text-align: center;
}

.contact-complete {
  padding: 6.25rem 0 9.375rem;
}

.contact-complete__inner {
  max-width: 62.5rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .contact-complete__inner {
    padding-inline: 0.9375rem;
  }
}

.contact-complete__message-wrapper {
  margin-top: 3.75rem;
  text-align: center;
  font-size: 1.375rem;
}
@media screen and (max-width: 767px) {
  .contact-complete__message-wrapper {
    font-size: 1.125rem;
    width: 95%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 599px) {
  .contact-complete__message-wrapper {
    width: 90%;
  }
}

.contact-complete__message {
  letter-spacing: 0.2em;
  line-height: 1.5;
}

.contact-complete__message:nth-of-type(2) {
  margin-top: 1.25rem;
}

.contact-complete__thanks {
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .contact-complete__thanks {
    width: 95%;
    margin-inline: auto;
    margin-top: 1.875rem;
  }
}

.privacy-policy {
  padding: 2.5rem 0 5rem;
}

.privacy-policy__container {
  margin: 2.5rem 0;
  font-size: 0.875rem;
  line-height: 2;
  color: #7a7a7a;
}

.privacy-policy__title {
  font-size: 1rem;
  font-weight: 700;
}

.privacy-policy__content {
  margin-top: 1.25rem;
}

.privacy-policy__item {
  margin-top: 0.9375rem;
}

.privacy-policy__date {
  margin-top: 1.25rem;
}

.page-header__content--error {
  left: initial;
  left: 50%;
  transform: translateX(-50%);
  top: 40%;
}
@media screen and (max-width: 767px) {
  .page-header__content--error {
    top: 30%;
  }
}

.page-header__headline--error {
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page-header__headline--error {
    font-size: 1.5rem;
    color: #FFFFFF;
  }
}
@media screen and (max-width: 599px) {
  .page-header__headline--error {
    font-size: 1.25rem;
  }
}

.error-page {
  padding: 2.5rem 0 5rem;
}
@media screen and (max-width: 767px) {
  .error-page {
    padding: 2.5rem 0 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .error-page__inner {
    max-width: 34.375rem;
    margin-inline: auto;
  }
}

.error-page__navigation {
  text-align: center;
  padding-bottom: 5rem;
}

.error-page__item:not(:first-child) {
  margin-top: 2.5rem;
}

.error-page__link {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
}

@media screen and (max-width: 767px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-sp {
    display: block;
  }
}

/*# sourceMappingURL=style.css.map */
