@charset "utf-8";

.map {
  padding-top: 70px;
}
.map__content {
  max-width: calc(100% - 32px - 32px);
}
.map__content__tab {
  width: 100%;
}
.map__content__tab__list {
  justify-content: center;
  gap: 32px;
}
.map__content__tab__list__item {
  width: auto;
  max-width: 282px;
  min-height: calc(41 / 16 * 1em);
  justify-items: center;
  align-items: start;
  box-sizing: border-box;
  padding-bottom: .5em;
  background: linear-gradient(0deg, currentColor, currentColor) no-repeat bottom left/0% 2px;
  font-size: clamp(11px, calc(16 / 1200 * 100vw), 16px);
  transition: background-size .3s ease-out;
}
.map__content__tab__list__item.swiper-slide-thumb-active {
  background-size: 100% 2px;
}
.map__content__tabpanel {
  width: 100%;
  margin-inline: 0;
  margin-top: 32px;
}
/* .map__content__tabpanel__list {
}
.map__content__tabpanel__list__item {
} */
.map__content__tabpanel__list__item__photo {
  margin-inline: auto;
}
/* .map__content__tabpanel__list__item__photo__link {
}
.map__content__tabpanel__list__item__photo__link2 {
} */
.map__content__btn {
  margin-top: 32px;
  gap: 32px;
}
.map__content__btn__item {
  flex: 0 1 min(100%, 283px);
}
.map__content__btn__item a {
  grid-template-columns: auto auto;
  justify-content: center;
  gap: 0 calc(16 / 16 * 1em);
  font-size: clamp(11px, calc(16 / 1200 * 100vw), 16px);
  padding-right: 0;
}
.map__content__btn__item--print a::after {
  position: relative;
  width: calc(20 / 16 * 1em);
  height: calc(20 / 16 * 1em);
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="19" height="19" viewBox="0 0 19 19"><path d="M15.5,19H3.5c-.827,0-1.5-.673-1.5-1.5v-4c0-.827.673-1.5,1.5-1.5h12c.827,0,1.5.673,1.5,1.5v4c0,.827-.673,1.5-1.5,1.5ZM3.5,13c-.275,0-.5.225-.5.5v4c0,.275.225.5.5.5h12c.275,0,.5-.225.5-.5v-4c0-.275-.225-.5-.5-.5H3.5Z"/><path d="M3,1.5c0-.276.225-.5.5-.5h12c.275,0,.5.224.5.5v4.5h1V1.5c0-.827-.673-1.5-1.5-1.5H3.5c-.827,0-1.5.673-1.5,1.5v4.5h1V1.5Z"/><path d="M17.5,6H1.5c-.827,0-1.5.673-1.5,1.5v6c0,.827.673,1.5,1.5,1.5h.5v-1h-.5c-.275,0-.5-.225-.5-.5v-6c0-.276.225-.5.5-.5h16c.275,0,.5.224.5.5v6c0,.275-.225.5-.5.5h-.5v1h.5c.827,0,1.5-.673,1.5-1.5v-6c0-.827-.673-1.5-1.5-1.5Z"/><path d="M3.5,9h-1c-.276,0-.5-.224-.5-.5s.224-.5.5-.5h1c.276,0,.5.224.5.5s-.224.5-.5.5Z"/></svg>') no-repeat center/100% auto;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="19" height="19" viewBox="0 0 19 19"><path d="M15.5,19H3.5c-.827,0-1.5-.673-1.5-1.5v-4c0-.827.673-1.5,1.5-1.5h12c.827,0,1.5.673,1.5,1.5v4c0,.827-.673,1.5-1.5,1.5ZM3.5,13c-.275,0-.5.225-.5.5v4c0,.275.225.5.5.5h12c.275,0,.5-.225.5-.5v-4c0-.275-.225-.5-.5-.5H3.5Z"/><path d="M3,1.5c0-.276.225-.5.5-.5h12c.275,0,.5.224.5.5v4.5h1V1.5c0-.827-.673-1.5-1.5-1.5H3.5c-.827,0-1.5.673-1.5,1.5v4.5h1V1.5Z"/><path d="M17.5,6H1.5c-.827,0-1.5.673-1.5,1.5v6c0,.827.673,1.5,1.5,1.5h.5v-1h-.5c-.275,0-.5-.225-.5-.5v-6c0-.276.225-.5.5-.5h16c.275,0,.5.224.5.5v6c0,.275-.225.5-.5.5h-.5v1h.5c.827,0,1.5-.673,1.5-1.5v-6c0-.827-.673-1.5-1.5-1.5Z"/><path d="M3.5,9h-1c-.276,0-.5-.224-.5-.5s.224-.5.5-.5h1c.276,0,.5.224.5.5s-.224.5-.5.5Z"/></svg>') no-repeat center/100% auto;
}
.map__content__btn__item--google a::after {
  position: relative;
  width: calc(15 / 16 * 1em);
  height: calc(20 / 16 * 1em);
  -webkit-mask: url('data:image/svg+xml;utf8,<svg width="15" height="20" viewBox="0 0 15 20" xmlns="http://www.w3.org/2000/svg"><path d="M13.8721 7.75659C13.8721 4.23714 11.0194 1.38372 7.5 1.38354C3.98044 1.38354 1.12695 4.23703 1.12695 7.75659C1.12699 8.44978 1.23733 9.11633 1.44141 9.73999L1.53516 10.0046L1.5459 10.0378C2.15342 12.0661 3.70861 14.174 5.15527 15.8035C5.87236 16.6111 6.55096 17.2878 7.0498 17.7625C7.24068 17.9441 7.40627 18.0947 7.53613 18.2126C7.69443 18.0689 7.90515 17.8763 8.15137 17.6394C8.72405 17.0883 9.49348 16.307 10.2803 15.3865C11.8744 13.5213 13.4606 11.1734 13.7432 9.0437C13.7446 9.03302 13.7469 9.02204 13.749 9.01147C13.8299 8.60616 13.872 8.18658 13.8721 7.75659ZM14.8721 7.75659C14.872 8.25286 14.8233 8.73819 14.7295 9.20776C14.3943 11.6393 12.6389 14.1652 11.04 16.0359C10.227 16.9872 9.43407 17.792 8.84473 18.3591C8.54998 18.6428 8.30529 18.8678 8.13379 19.0222C8.04804 19.0994 7.98006 19.1593 7.93359 19.2C7.91036 19.2203 7.89223 19.2362 7.87988 19.2468C7.8738 19.2521 7.8695 19.2567 7.86621 19.2595C7.86466 19.2609 7.86322 19.2617 7.8623 19.2625L7.86133 19.2634H7.86035C7.69675 19.403 7.46564 19.4209 7.28516 19.3162L7.21094 19.2634L7.20996 19.2625C7.20915 19.2618 7.20748 19.2607 7.20605 19.2595C7.20321 19.2571 7.19944 19.2532 7.19434 19.2488C7.1838 19.2397 7.16814 19.2269 7.14844 19.2097C7.1086 19.1749 7.0504 19.1236 6.97656 19.0574C6.82889 18.925 6.61752 18.7318 6.36035 18.4871C5.84638 17.998 5.14718 17.301 4.40723 16.4675C2.9397 14.8146 1.26078 12.5713 0.587891 10.325L0.588867 10.324C0.291387 9.52362 0.126991 8.65888 0.126953 7.75659C0.126953 3.68475 3.42815 0.383545 7.5 0.383545C11.5717 0.383717 14.8721 3.68485 14.8721 7.75659Z"/><path d="M9.61719 7.75623C9.61718 6.58639 8.66886 5.63806 7.49902 5.63806C6.3292 5.63807 5.38087 6.5864 5.38086 7.75623C5.38086 8.92606 6.32919 9.87438 7.49902 9.87439C8.66886 9.87439 9.61719 8.92607 9.61719 7.75623ZM10.6172 7.75623C10.6172 9.47835 9.22115 10.8744 7.49902 10.8744C5.77691 10.8744 4.38086 9.47834 4.38086 7.75623C4.38087 6.03412 5.77691 4.63807 7.49902 4.63806C9.22114 4.63806 10.6172 6.03411 10.6172 7.75623Z"/></svg>') no-repeat center/100% auto;
  mask: url('data:image/svg+xml;utf8,<svg width="15" height="20" viewBox="0 0 15 20" xmlns="http://www.w3.org/2000/svg"><path d="M13.8721 7.75659C13.8721 4.23714 11.0194 1.38372 7.5 1.38354C3.98044 1.38354 1.12695 4.23703 1.12695 7.75659C1.12699 8.44978 1.23733 9.11633 1.44141 9.73999L1.53516 10.0046L1.5459 10.0378C2.15342 12.0661 3.70861 14.174 5.15527 15.8035C5.87236 16.6111 6.55096 17.2878 7.0498 17.7625C7.24068 17.9441 7.40627 18.0947 7.53613 18.2126C7.69443 18.0689 7.90515 17.8763 8.15137 17.6394C8.72405 17.0883 9.49348 16.307 10.2803 15.3865C11.8744 13.5213 13.4606 11.1734 13.7432 9.0437C13.7446 9.03302 13.7469 9.02204 13.749 9.01147C13.8299 8.60616 13.872 8.18658 13.8721 7.75659ZM14.8721 7.75659C14.872 8.25286 14.8233 8.73819 14.7295 9.20776C14.3943 11.6393 12.6389 14.1652 11.04 16.0359C10.227 16.9872 9.43407 17.792 8.84473 18.3591C8.54998 18.6428 8.30529 18.8678 8.13379 19.0222C8.04804 19.0994 7.98006 19.1593 7.93359 19.2C7.91036 19.2203 7.89223 19.2362 7.87988 19.2468C7.8738 19.2521 7.8695 19.2567 7.86621 19.2595C7.86466 19.2609 7.86322 19.2617 7.8623 19.2625L7.86133 19.2634H7.86035C7.69675 19.403 7.46564 19.4209 7.28516 19.3162L7.21094 19.2634L7.20996 19.2625C7.20915 19.2618 7.20748 19.2607 7.20605 19.2595C7.20321 19.2571 7.19944 19.2532 7.19434 19.2488C7.1838 19.2397 7.16814 19.2269 7.14844 19.2097C7.1086 19.1749 7.0504 19.1236 6.97656 19.0574C6.82889 18.925 6.61752 18.7318 6.36035 18.4871C5.84638 17.998 5.14718 17.301 4.40723 16.4675C2.9397 14.8146 1.26078 12.5713 0.587891 10.325L0.588867 10.324C0.291387 9.52362 0.126991 8.65888 0.126953 7.75659C0.126953 3.68475 3.42815 0.383545 7.5 0.383545C11.5717 0.383717 14.8721 3.68485 14.8721 7.75659Z"/><path d="M9.61719 7.75623C9.61718 6.58639 8.66886 5.63806 7.49902 5.63806C6.3292 5.63807 5.38087 6.5864 5.38086 7.75623C5.38086 8.92606 6.32919 9.87438 7.49902 9.87439C8.66886 9.87439 9.61719 8.92607 9.61719 7.75623ZM10.6172 7.75623C10.6172 9.47835 9.22115 10.8744 7.49902 10.8744C5.77691 10.8744 4.38086 9.47834 4.38086 7.75623C4.38087 6.03412 5.77691 4.63807 7.49902 4.63806C9.22114 4.63806 10.6172 6.03411 10.6172 7.75623Z"/></svg>') no-repeat center/100% auto;
}
@media (any-hover: hover){
  .map__content__tab__list__item:hover {
    background-size: 100% 2px;
  }
}
@media screen and (max-width: 768px){
  .map {
    padding-top: calc(var(--header-height) + 50px);
  }
  .map__content {
    max-width: calc(100% - 8px - 8px);
  }
  .map__content__tab__list {
    gap: 8px;
  }
  .map__content__tab__list__item {
    max-width: none;
    min-height: calc(37 / 13 * 1em);
    font-size: min(calc(13 / 375 * 100vw), 13px);
  }
  .map__content__tabpanel {
    margin-top: 0;
  }
  .map__content__btn {
    margin-top: 18px;
    gap: 8px;
  }
  .map__content__btn__item {
    flex: 0 1 min(100%, calc(50% - 4px));
  }
  .map__content__btn__item a {
    gap: 0 calc(8 / 13 * 1em);
    font-size: min(calc(13 / 375 * 100vw), 13px);
  }
  .map__content__btn__item--print a::after {
    width: calc(13 / 13 * 1em);
    height: calc(13 / 13 * 1em);
  }
  .map__content__btn__item--google a::after {
    width: calc(10 / 13 * 1em);
    height: calc(13 / 13 * 1em);
  }
}



.location {
  padding-top: 100px;
}
.location__gallery {
  max-width: calc(100% - 32px - 32px);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 2px;
}
/* .location__gallery__item {
} */
.location__area {
  margin-top: 170px;
  grid-template-columns: auto minmax(32px, 1fr) minmax(0, calc(912 / 1540 * 100%)) 32px minmax(0, calc(283 / 1540 * 100%));
  align-items: start;
}
.location__area__heading {
  grid-column: 1;
}
.location__area__photo {
  grid-column: 3;
}
.location__area__desc {
  grid-column: 5;
}
/* .location__area__desc__copy {
} */
.location__view {
  position: relative;
  z-index: 1;
  margin-top: 170px;
}
.location__view__photo {
  position: relative;
  z-index: 1;
}
.location__view__photo img {
  min-height: 400px;
  object-fit: cover;
}
.location__view__desc {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  translate: -50% -65%;
}
.location__view__desc__heading {
  font-size: clamp(14px, calc(22 / 1200 * 100vw), 22px);
  letter-spacing: .2em;
  writing-mode: vertical-rl;
}
.location__btn {
  max-width: 283px;
  margin-top: 65px;
}
@media screen and (max-width: 768px){
  .location {
    padding-top: 65px;
  }
  .location__gallery {
    max-width: calc(100% - 8px - 8px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .location__area {
    margin-top: 65px;
    grid-template-columns: 100%;
  }
  .location__area__heading {
    justify-self: start;
  }
  .location__area__photo {
    grid-column: 1;
    margin-top: 65px;
    margin-inline: calc(50% - var(--window-half-width));
  }
  .location__area__desc {
    grid-column: 1;
    margin-top: 65px;
  }
  .location__view {
    margin-top: 65px;
  }
  .location__view__photo img {
    min-height: 0;
  }
  .location__view__desc {
    translate: -50% -75%;
  }
  .location__view__desc__heading {
    font-size: min(calc(20 / 375 * 100vw), 20px);
  }
  .location__btn {
    max-width: 237px;
    margin-top: 32px;
  }
}



.access {
  margin-top: 100px;
}
.access__search {
  box-sizing: border-box;
  padding: 64px;
  background: #fff;
}
.access__search__form {
  gap: 32px;
}
.access__search__form__condition {
  flex: 0 1 auto;
  grid-template-columns: minmax(0, auto) minmax(0, auto);
  align-items: center;
  gap: 32px 71px;
  background: url('data:image/svg+xml;utf8,<svg width="9" height="8" viewBox="0 0 9 8" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4L0.5 7.5L2.63379 4L0.5 0.5L8.5 4Z" fill="%23151515"/></svg>') no-repeat center/9px auto;
}
.access__search__form__condition__item {
  grid-template-columns: auto minmax(0, 283px) auto;
  align-items: stretch;
  gap: 0 calc(24 / 16 * 1em);
  font-size: clamp(11px, calc(16 / 1200 * 100vw), 16px);
}
/* .access__search__form__condition__item--start {
}
.access__search__form__condition__item--goal {
} */
.access__search__form__condition__item__name {
  letter-spacing: .2em;
  text-align: center;
  writing-mode: vertical-rl;
  padding-right: calc(20 / 16 * 1em);
  border-right: 2px solid rgb(var(--color-gold));
}
.access__search__form__condition__item__input {
  width: 100%;
  min-width: 0;
  height: calc(48 / 16 * 1em);
  box-sizing: border-box;
  padding-inline: 1em;
  font-size: inherit;
  font-family: inherit;
  border: 1px solid rgba(21, 21, 21, .1);
  border-radius: 0;
  outline: none;
  appearance: none;
}
.access__search__form__condition__item__input::placeholder {
  color: rgba(21, 21, 21, .3);
}
.access__search__form__condition__item--goal .access__search__form__condition__item__input {
  text-align: center;
}
.access__search__form__condition__item__station {
  align-self: center;
}
.access__search__form__btn {
  flex: 0 1 min(100%, 283px);
  height: calc(48 / 16 * 1em);
  box-sizing: border-box;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  border-left: none;
  border-right: none;
  font-size: clamp(11px, calc(16 / 1200 * 100vw), 16px);
  font-family: inherit;
  border-radius: 0;
  background: url('data:image/svg+xml;utf8,<svg width="8" height="7" viewBox="0 0 8 7" xmlns="http://www.w3.org/2000/svg"><path d="M8 3.5L0 7L2.13379 3.5L-3.0598e-07 0L8 3.5Z" fill="%23151515"/></svg>') no-repeat center right/7px auto;
  outline: none;
  appearance: none;
  cursor: pointer;
}
.access__btn {
  max-width: 283px;
  margin-top: 65px;
}
@media screen and (max-width: 768px){
  .access {
    margin-top: 65px;
  }
  .access__search {
    padding: 32px 28px;
    width: calc(100% - 8px - 8px);
  }
  .access__search__form {
    gap: 24px 0;
  }
  .access__search__form__condition {
    flex: 1 0 100%;
    grid-template-columns: 100%;
    align-items: start;
    gap: 56px 0;
    background: url('data:image/svg+xml;utf8,<svg width="9" height="8" viewBox="0 0 9 8" xmlns="http://www.w3.org/2000/svg" transform="rotate(90)"><path d="M8.5 4L0.5 7.5L2.63379 4L0.5 0.5L8.5 4Z" fill="%23151515"/></svg>') no-repeat center/7px auto;
  }
  .access__search__form__condition__item {
    grid-template-columns: auto minmax(0, 400px) auto;
    font-size: min(calc(16 / 375 * 100vw), 16px);
  }
  .access__search__form__condition__item__name {
    padding-right: calc(24 / 13 * 1em);
    font-size: calc(13 / 16 * 100%);
  }
  .access__search__form__btn {
    flex: 1 0 100%;
    height: calc(45 / 13 * 1em);
    font-size: min(calc(13 / 375 * 100vw), 13px);
  }
  .access__btn {
    max-width: 237px;
    margin-top: 32px;
  }
}