* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

ul:not(.wp-block-list) {
  list-style-type: none;
}

a:has([class]) {
  color: inherit;
  text-decoration: none;
}

ul:not(.wp-block-list),
ol:not(.wp-block-list),
div {
  margin: 0;
  padding: 0;
}

html {
  font-family: 'Open Sans', sans-serif;
  font-size: 10px;
  color: #00212a;
  scroll-behavior: smooth;
}
html:has(.hamburger-is-open) {
  overflow: hidden;
}
html:has(.guides-detail) .guides-detail {
  font-size: initial;
}

body {
  background-color: #c6c1c9;
}
body.lower {
  background-color: #fff;
}

.image {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  display: block;
}
.image--100 {
  height: 100%;
}
.image--auto {
  width: auto;
}
.image--contain {
  -o-object-fit: contain;
  object-fit: contain;
}

.container {
  max-width: calc(1200px + 8.33%);
  margin-inline: auto;
  padding-inline: 4.17%;
}
@media screen and (max-width: 767px) {
  .container {
    padding-inline: 8%;
  }
}
.container--narrow {
  max-width: calc(1000px + 8.6%);
  padding-inline: 4.3%;
}
@media screen and (max-width: 767px) {
  .container--narrow {
    padding-inline: 8%;
  }
}
.container--extra-narrow {
  max-width: calc(800px + 8.6%);
  padding-inline: 4.3%;
}
@media screen and (max-width: 767px) {
  .container--extra-narrow {
    padding-inline: 8%;
  }
}

.header {
  position: absolute;
  inset: 0 0 auto;
  z-index: 1000;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header.scrolled {
  translate: 0 -100%;
}
.header.fixed {
  position: fixed;
  background-color: #c6c1c9;
  translate: 0 0;
}
.header.fixed .header__content {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: calc(1200px + 8.33%);
  padding-inline: 4.17%;
  padding-block: 15px;
  margin-inline: auto;
}
@media screen and (max-width: 1080px) {
  .header.fixed .header__content {
    padding-block: 12px;
  }
}
.header.fixed .header__logo {
  position: relative;
  width: 149px;
  height: 50px;
  z-index: 2;
}
@media screen and (max-width: 1080px) {
  .header.fixed .header__logo {
    width: 106px;
    height: 35px;
  }
}
.header.fixed .header__logo img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header.fixed .header__logo img:first-of-type {
  opacity: 0;
}
.header.fixed .header__logo img:last-of-type {
  opacity: 1;
}
.header.fixed .header__link a {
  color: #00212a;
  text-decoration: none;
}
.header.fixed .header__link a::after {
  -webkit-filter: initial;
  filter: initial;
}
.header.fixed .header__link-icon {
  -webkit-filter: initial;
  filter: initial;
}
.header.fixed .header__language-switcher {
  width: 162px;
  gap: 10px;
  background-color: #7b7684;
  border-radius: 23px;
  padding-inline: 20px 15px;
}
.header.fixed .header__language-switcher-text {
  color: #fff;
  font-size: 1.4rem;
}
.header.fixed .header__language-switcher-text::after {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
  margin-left: 15px;
}
.header.fixed .header__language-switcher-icon {
  width: 16px;
  height: 16px;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
.header.fixed .header__language-switcher-links {
  background-color: #7b7684;
}
.header.fixed .header__language-switcher-link {
  color: #fff;
}
.header.fixed .header__hamburger-button-icon span {
  background-color: #00212a;
}
.header.hamburger-is-open .header__logo img:first-of-type {
  opacity: 0;
}
.header.hamburger-is-open .header__logo img:last-of-type {
  opacity: 1;
}
.header__content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding-inline: 1.88% 2.08%;
  padding-top: 30px;
  z-index: 1;
}
@media screen and (max-width: 1080px) {
  .header__content {
    padding-block: 22px;
    padding-inline: 4.17%;
  }
}
.header__logo {
  position: relative;
  width: 178px;
  height: 60px;
}
@media screen and (max-width: 1080px) {
  .header__logo {
    width: 106px;
    height: 35px;
  }
}
.header__logo img {
  position: absolute;
  inset: 0;
}
.header__logo img:last-child {
  opacity: 0;
}
.header__nav-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 40px;
}
@media screen and (max-width: 1080px) {
  .header__nav-wrapper {
    gap: 20px;
  }
}
.header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 1080px) {
  .header__nav {
    position: absolute;
    inset: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 10px;
    height: 100svh;
    background-color: #c6c1c9;
    padding-block: 99px !important;
    padding-inline: 5.33% !important;
    z-index: -1;
    translate: 0 -100%;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    overflow: scroll;
    opacity: 0;
    pointer-events: none;
  }
}
.header__nav.is-open {
  translate: 0 0;
  opacity: 1;
  pointer-events: auto;
}
.header__link {
  position: relative;
  height: 100%;
}
@media screen and (max-width: 1080px) {
  .header__link {
    width: 100%;
    height: auto;
    background-color: #fff;
    border-radius: 5px;
    padding: 16px;
    cursor: pointer;
  }
}
.header__link a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1080px) {
  .header__link a {
    gap: 7px;
    color: #00212a;
    font-size: 2rem;
    font-family: 'futura-pt-bold', sans-serif;
    font-weight: 700;
  }
}
@media screen and (max-width: 1080px) {
  .header__link a:has(+ .header__accordion-wrapper) {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.header__link > a::after {
  content: '';
  position: absolute;
  inset: calc(100% + 12px) 0 auto;
  margin-inline: auto;
  width: 10px;
  height: 5px;
  background-image: url('../public/img/icons/caret.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 1080px) {
  .header__link > a::after {
    display: none;
  }
}
@media screen and (max-width: 1080px) {
  .header__link[data-target]::before {
    content: '';
    position: absolute;
    top: 26px;
    right: 20px;
    margin-inline: auto;
    width: 10px;
    height: 5px;
    background-image: url('../public/img/icons/caret.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
}
@media screen and (max-width: 1080px) {
  .header__link:not([data-target])::after {
    content: '';
    position: absolute;
    top: 26px;
    right: 20px;
    margin-inline: auto;
    width: 10px;
    height: 5px;
    background-image: url('../public/img/icons/caret.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    rotate: -90deg;
  }
}
.header__link:last-of-type a::after {
  display: none;
}
@media screen and (min-width: 1081px) {
  .header__link:hover a,
  .header__link.is-active a {
    opacity: 0.5;
  }
}
@media screen and (min-width: 1081px) {
  .header__link:hover a::after,
  .header__link.is-active a::after {
    scale: -1;
  }
}
.header__link:is([data-target])::after {
  content: '';
  position: absolute;
  inset: 100% 0 auto;
  height: 30px;
}
@media screen and (min-width: 1081px) {
  .header__link::before {
    content: '';
    position: absolute;
    inset: calc(100% + 30px) 0 auto;
    background-color: transparent;
    opacity: 0.5;
    height: 15px;
  }
}
.header__link.accordion-is-open::before {
  scale: -1;
}
.header__link.accordion-is-open .header__accordion-wrapper {
  grid-template-rows: 1fr;
  margin-top: 10px;
}
.header__link-icon {
  height: 18px;
  aspect-ratio: 1/1;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 1080px) {
  .header__link-icon {
    height: 16px;
    -webkit-filter: initial;
    filter: initial;
  }
}
.header__language-switcher {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  gap: 5px;
  width: 161px;
  border-radius: 25px;
  background-color: #fff;
  padding: 16px 15px 13px 20px;
}
@media screen and (max-width: 1080px) {
  .header__language-switcher {
    padding: 12px 8px 9px 13px;
  }
}
@media screen and (max-width: 767px) {
  .header__language-switcher {
    width: 141px;
  }
}
.header__language-switcher::before {
  content: '';
  position: absolute;
  inset: 100% 0 auto;
  height: 5px;
}
.header__language-switcher:hover .header__language-switcher-link-wrapper {
  grid-template-rows: 1fr;
}
.header__language-switcher-icon {
  display: block;
}
@media screen and (max-width: 1080px) {
  .header__language-switcher-icon {
    width: 16px;
    height: 16px;
  }
}
.header__language-switcher-text {
  position: relative;
  bottom: 2px;
  font-size: 1.6rem;
  font-weight: 600;
  cursor: default;
}
@media screen and (max-width: 1080px) {
  .header__language-switcher-text {
    bottom: 1px;
    font-size: 14px;
  }
}
.header__language-switcher-text::after {
  content: '';
  vertical-align: middle;
  display: inline-block;
  width: 20px;
  height: 10px;
  margin-left: 8px;
  background-image: url('../public/img/icons/white-caret.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-filter: brightness(0);
  filter: brightness(0);
  rotate: 90deg;
  line-height: 1em;
}
.header__language-switcher-link-wrapper {
  position: absolute;
  inset: calc(100% + 5px) 0 auto;
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header__language-switcher-links {
  position: relative;
  overflow: hidden;
  background-color: #fff;
  border-radius: 5px;
}
.header__language-switcher-link {
  display: block;
  padding: 10px 15px;
  font-size: 1.6rem;
  text-decoration: none;
  color: inherit;
}
@media screen and (max-width: 1080px) {
  .header__language-switcher-link {
    padding: 8px 12px;
    font-size: 14px;
  }
}
.header__hamburger-button {
  display: none;
}
@media screen and (max-width: 1080px) {
  .header__hamburger-button {
    display: block;
    width: 24px;
    height: 16px;
    cursor: pointer;
  }
}
.header__hamburger-button.is-open .header__hamburger-button-icon span {
  background-color: #fff;
}
.header__hamburger-button.is-open
  .header__hamburger-button-icon
  span:nth-child(1) {
  rotate: 45deg;
  translate: 2px 6px;
}
.header__hamburger-button.is-open
  .header__hamburger-button-icon
  span:nth-child(2) {
  scale: -1 1;
  opacity: 0;
}
.header__hamburger-button.is-open
  .header__hamburger-button-icon
  span:nth-child(3) {
  rotate: -45deg;
  translate: 2px -8px;
}
.header__hamburger-button-icon {
  display: block;
  width: 100%;
  height: 100%;
}
.header__hamburger-button-icon span {
  display: block;
  width: 100%;
  height: 3px;
  background-color: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header__hamburger-button-icon span:not(:last-child) {
  margin-bottom: 4px;
}
.header__dropdown-wrapper {
  width: 100%;
}
.header__dropdown-content {
  position: absolute;
  inset: calc(100% + 12px) 0 auto;
  translate: 0;
  opacity: 0;
  max-width: 1200px;
  padding: 30px 7% 50px;
  margin-inline: auto;
  background-color: #fff;
  border-radius: 10px;
  pointer-events: none;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-box-shadow: 0 5px 10px rgba(0, 33, 42, 0.1);
  box-shadow: 0 5px 10px rgba(0, 33, 42, 0.1);
  z-index: 0;
}
.header__dropdown-content.hovered {
  opacity: 1;
  pointer-events: auto;
}
.header__dropdown-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  font-size: 4rem;
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
  line-height: 1.875em;
}
.header__dropdown-label + .header__dropdown-row {
  margin-top: 7px;
}
.header__dropdown-label-icon {
  display: block;
  height: 24px;
}
.header__dropdown-destination-area-heading {
  display: block;
  margin-bottom: 25px;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(0, 33, 42, 0.3);
  font-size: 2.5rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.6em;
  text-decoration: none;
  color: inherit;
}
@media screen and (max-width: 1080px) {
  .header__dropdown-destination-area-heading {
    margin-bottom: 16px;
    font-size: 1.6rem;
  }
}
.header__dropdown-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 25px 2.5%;
}
@media screen and (max-width: 1080px) {
  .header__dropdown-row {
    gap: 10px 3.2%;
  }
}
.header__dropdown-card {
  position: relative;
  -ms-flex-preferred-size: 18%;
  flex-basis: 18%;
  height: 117px;
  border-radius: 5px;
  overflow: hidden;
}
@media screen and (max-width: 1080px) {
  .header__dropdown-card {
    -ms-flex-preferred-size: 48.4%;
    flex-basis: 48.4%;
    height: 88px;
  }
}
.header__dropdown-card:hover .header__dropdown-card-image img {
  scale: 1.1;
}
.header__dropdown-card-image {
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.header__dropdown-card-image img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header__dropdown-card-content {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.header__dropdown-card-content::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(50%, #fff),
    color-stop(80%, #6a6a6a),
    to(#545454)
  );
  background-image: linear-gradient(
    to bottom,
    #fff 50%,
    #6a6a6a 80%,
    #545454 100%
  );
  mix-blend-mode: multiply;
  opacity: 0.5;
}
.header__dropdown-card-title {
  position: relative;
  left: 10px;
  bottom: 10px;
  max-width: 125px;
  font-family: 'futura-pt-bold', sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5em;
  text-wrap: pretty;
  color: #fff;
  z-index: 1;
}
@media screen and (max-width: 1080px) {
  .header__dropdown-card-title {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .header__dropdown-card-title {
    max-width: initial;
  }
}
.header__accordion-wrapper {
  display: none;
}
@media screen and (max-width: 1080px) {
  .header__accordion-wrapper {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    padding-left: 24px;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
}
.header__accordion-content {
  overflow: hidden;
}

.footer {
  background-color: #c6c1c9;
  padding-block: 80px 70px;
}
@media screen and (max-width: 1080px) {
  .footer {
    padding-block: 80px 40px;
  }
}
@media screen and (max-width: 1080px) {
  .footer .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-inline: 8%;
  }
}
.footer__layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 39px;
  padding-bottom: 32px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 1080px) {
  .footer__layout {
    display: contents;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 30px;
  }
}
@media screen and (max-width: 1080px) {
  .footer__site-info {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-bottom: 35px;
  }
}
.footer__logo {
  display: block;
  width: 170px;
  margin-bottom: 20px;
}
@media screen and (max-width: 1080px) {
  .footer__logo {
    margin-inline: auto;
    margin-bottom: 37px;
  }
}
.footer__text {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2.2857142857em;
}
@media screen and (max-width: 1080px) {
  .footer__text {
    text-align: center;
  }
}
.footer__text a {
  color: inherit;
  text-decoration: none;
}
.footer__search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 13px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1080px) {
  .footer__search-form {
    margin-bottom: 35px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.footer__search-button {
  width: 24px;
  height: 24px;
  border: none;
  background-color: transparent;
  outline: none;
}
.footer__search-input {
  width: 298px;
  background-color: #00212a;
  text-align: center;
  border: none;
  outline: none;
  border-radius: 25px;
  padding: 10px 5px;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.875em;
  text-decoration: none;
}
@media screen and (max-width: 1080px) {
  .footer__search-input {
    width: 276px;
  }
}
.footer__search-input::-webkit-input-placeholder {
  color: #fff;
}
.footer__search-input::-moz-placeholder {
  color: #fff;
}
.footer__search-input:-ms-input-placeholder {
  color: #fff;
}
.footer__search-input::-ms-input-placeholder {
  color: #fff;
}
.footer__search-input::placeholder {
  color: #fff;
}
@media screen and (max-width: 1080px) {
  .footer__links-wrapper {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
.footer__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 1080px) {
  .footer__links {
    gap: 30px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 33px;
  }
}
@media screen and (max-width: 767px) {
  .footer__links {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.footer__links-col-label {
  display: block;
  margin-bottom: 13px;
  font-size: 2rem;
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
  line-height: 1.3em;
}
.footer__links-item a {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2.2857142857em;
  color: inherit;
  text-decoration: none;
}
.footer__cpy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 1080px) {
  .footer__cpy {
    display: contents;
    text-align: center;
  }
}
.footer__cpy-text {
  font-size: 1.4rem;
  font-weight: 600;
}
@media screen and (max-width: 1080px) {
  .footer__cpy-text {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
  }
}
.footer__sub-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 1080px) {
  .footer__sub-links {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding-block: 35px;
    margin-bottom: 40px;
    border-block: 1px solid rgba(0, 33, 42, 0.3);
  }
}
.footer__sub-link {
  position: relative;
  font-size: 1.4rem;
  font-weight: 600;
  color: inherit;
  text-decoration: none;
}
.footer__sub-link:not(:last-of-type) {
  padding-right: 20px;
}
@media screen and (max-width: 1080px) {
  .footer__sub-link:not(:last-of-type) {
    padding-right: 0;
    margin-bottom: 15px;
  }
}
.footer__sub-link:not(:last-of-type)::after {
  content: '';
  position: absolute;
  inset: 0 0 0 auto;
  margin: auto;
  width: 1px;
  height: 12px;
  background-color: #00212a;
}
@media screen and (max-width: 1080px) {
  .footer__sub-link:not(:last-of-type)::after {
    display: none;
  }
}
.footer__sub-link:not(:first-of-type) {
  padding-left: 20px;
}
@media screen and (max-width: 1080px) {
  .footer__sub-link:not(:first-of-type) {
    padding-left: 0;
  }
}

.photo-stack {
  position: relative;
  padding-block: 25px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.photo-stack__item {
  position: relative;
  width: 240px;
  height: 240px;
  border-radius: 10px;
  background-color: #fff;
}
.photo-stack__item:not(:has(img))::before {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 91.67%;
  height: 91.67%;
  background-color: #0c0c0c;
  border-radius: 5px;
}
.photo-stack__item img {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 91.67%;
  height: 91.67%;
  border-radius: 5px;
}
.photo-stack__item:first-of-type {
  rotate: -15deg;
}
.photo-stack__item:has(img) {
  position: absolute;
  inset: 0;
  margin: auto;
}

.button {
  background-color: #f9d312;
  border: none;
  border-radius: 25px;
  padding-block: 9px;
  cursor: pointer;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  text-align: center;
  text-decoration: none;
}
.button__text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2em;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.button:hover {
  background-color: #ffe35b;
}
.button--secondary {
  background-color: #00212a;
}
.button--secondary .button__text {
  color: #fff;
}
.button--secondary:hover {
  background-color: #174551;
}
.button--outline {
  background-color: transparent;
  border: 1px solid #00212a;
}
.button--outline .button__text {
  color: #00212a;
  font-weight: 600;
}
.button--outline:hover {
  background-color: #00212a;
  border-color: transparent;
}
.button--outline:hover .button__text {
  color: #fff;
}
.button--white {
  background-color: #fff;
}
.button--white .button__text {
  color: #00212a;
}
.button--white:hover {
  background-color: #c6c1c9;
}
.button--icon {
  gap: 30px;
  width: 50%;
  height: 88px;
  border-radius: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .button--icon {
    gap: 20px;
    width: 100%;
    height: 60px;
  }
}
.button--icon .button__text {
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  .button--icon .button__text {
    font-size: 2rem;
  }
}
.button--icon .button__icon {
  width: 36px;
  height: 36px;
}
@media screen and (max-width: 767px) {
  .button--icon .button__icon {
    width: 24px;
    height: 24px;
  }
}

.heading {
  font-size: 5rem;
  font-weight: 700;
  line-height: 1.28em;
  font-family: 'futura-pt-bold', sans-serif;
}
@media screen and (max-width: 1080px) {
  .heading {
    font-size: 4.2rem;
  }
}
@media screen and (max-width: 767px) {
  .heading {
    font-size: 35px;
    line-height: 1.5em;
  }
}
.heading--lg {
  font-size: 8rem;
  line-height: 1.25em;
}
@media screen and (max-width: 1080px) {
  .heading--lg {
    font-size: 6.4rem;
  }
}
@media screen and (max-width: 767px) {
  .heading--lg {
    font-size: 35px;
    line-height: 1.5em;
  }
}

.app-map {
  position: relative;
  width: 100%;
}
.app-map__area {
  position: absolute;
}
.app-map__area svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  pointer-events: none;
}
.app-map__area path {
  fill: #d6d6d6;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.app-map__area.active path {
  fill: #f9d312;
}
.app-map__area.active.has-post::before {
  scale: 1.5;
}
.app-map__area.has-post::before {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  width: 18.67px;
  height: 27.47px;
  background-image: url('../public/img/icons/pin-with-shadow.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .app-map__area.has-post::before {
    width: 14.94px;
    height: 21.98px;
  }
}

.breadcrumbs {
  position: relative;
  margin-top: 100px;
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .breadcrumbs {
    margin-top: 80px;
  }
}
.breadcrumbs__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 4%;
  margin: 0 auto;
  max-width: calc(1200px + 8%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .breadcrumbs__content {
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .breadcrumbs__content {
    padding-inline: 8%;
  }
}
.breadcrumbs__link,
.breadcrumbs__marker {
  font-size: 1.4rem;
  line-height: 1.5em;
}
.breadcrumbs__link {
  color: inherit;
  text-decoration: none;
}
.breadcrumbs__link:not(:last-child):hover {
  -webkit-text-decoration: underline 1px solid #00212a;
  text-decoration: underline 1px solid #00212a;
}

@media screen and (max-width: 1080px) {
  .top {
    overflow-x: hidden;
  }
}
.top .mv {
  position: relative;
  isolation: isolate;
}
.top .mv__bg {
  height: 650px;
}
@media screen and (max-width: 767px) {
  .top .mv__bg {
    height: 600px;
  }
}
.top .mv__content {
  position: absolute;
  inset: 0;
}
.top .mv__content::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(#eee, #8a8a8a);
  mix-blend-mode: multiply;
}
.top .mv__content .container {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.top .mv__content-wrapper {
  padding-bottom: 4.23%;
  position: relative;
  margin-top: auto;
  color: #fff;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .top .mv__content-wrapper {
    padding-bottom: 10%;
  }
}
.top .mv__hero-title {
  margin-bottom: 30px;
  font-size: 8rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.2875em;
}
@media screen and (max-width: 1080px) {
  .top .mv__hero-title {
    font-size: 6.4rem;
  }
}
@media screen and (max-width: 767px) {
  .top .mv__hero-title {
    font-size: 4rem;
    line-height: 1.25em;
    margin-bottom: 16px;
  }
}
.top .mv__hero-text {
  font-size: 2rem;
  font-weight: 700;
  line-height: 2em;
}
.top .leading {
  padding-block: 53px 77px;
}
@media screen and (max-width: 767px) {
  .top .leading {
    padding-block: 60px 80px;
  }
}
.top .leading__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 7.64%;
  margin-bottom: 82px;
  padding-right: 8.33%;
  padding-bottom: 53px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 1080px) {
  .top .leading__row {
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .top .leading__row {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px;
    padding-bottom: 75px;
    margin-bottom: 75px;
  }
}
.top .plan__layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 9.25%;
}
@media screen and (max-width: 1080px) {
  .top .plan__layout {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 50px;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__layout {
    gap: 40px;
  }
}
.top .plan__catch {
  font-size: 4rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.5em;
}
@media screen and (max-width: 1080px) {
  .top .plan__catch {
    width: 100%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__catch {
    text-align: start;
    font-size: 3rem;
    line-height: 1.5em;
  }
}
.top .plan__card-row {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 5.12%;
}
@media screen and (max-width: 1080px) {
  .top .plan__card-row {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__card-row {
    gap: 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.top .plan__card {
  width: 29.87%;
}
@media screen and (max-width: 1080px) {
  .top .plan__card {
    width: 23.9%;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__card {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.top .plan__image {
  position: relative;
  aspect-ratio: 210/250;
  height: 250px;
  background-color: #fff;
  border-radius: 10px;
}
@media screen and (max-width: 1080px) {
  .top .plan__image {
    aspect-ratio: 189/230;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__image {
    aspect-ratio: 130/154;
    width: 130px;
    height: 154px;
  }
}
.top .plan__image img {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 90.48%;
  height: 92%;
}
.top .plan__card-text {
  margin-top: 15px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.75em;
  text-align: center;
}
@media screen and (max-width: 1080px) {
  .top .plan__card-text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__card-text {
    margin-left: 6.67%;
    margin-top: initial;
    text-align: start;
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__selector-section {
    padding-inline: 5.33%;
  }
}
.top .plan__selector-block {
  margin-top: 75px;
  background-color: #fff;
  padding: 38px 13% 40px;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .top .plan__selector-block {
    margin-top: 85px;
    padding: 30px 7.46% 40px;
  }
}
.top .plan__selector-heading {
  font-size: 2.5rem;
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
  line-height: 1.28em;
}
@media screen and (max-width: 767px) {
  .top .plan__selector-heading {
    font-size: 2rem;
    white-space: nowrap;
  }
}
.top .plan__selector-heading::before {
  content: '';
  display: inline-block;
  margin-right: 15px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: #f9d312;
}
@media screen and (max-width: 767px) {
  .top .plan__selector-heading::before {
    margin-right: 10px;
    width: 12px;
    height: 12px;
  }
}
.top .plan__selector-input-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-top: 15px;
}
@media screen and (max-width: 1080px) {
  .top .plan__selector-input-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 8px;
  }
}
.top .plan__selector-item {
  -ms-flex-preferred-size: 37.84%;
  flex-basis: 37.84%;
}
@media screen and (max-width: 1080px) {
  .top .plan__selector-item {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
}
.top .plan__selector-item:first-of-type {
  margin-right: 10px;
}
@media screen and (max-width: 1080px) {
  .top .plan__selector-item:first-of-type {
    margin-bottom: 24px;
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .top .plan__selector-item:first-of-type {
    margin-bottom: 14px;
  }
}
.top .plan__selector-item-label {
  display: block;
  font-size: 1.4rem;
  line-height: 2.2857142857em;
}
.top .plan__selector-input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  min-width: 280px;
  border-radius: 5px;
  border: 1px solid rgba(0, 33, 42, 0.3);
  background-color: #fff;
  background-image: url('../public/img/icons/caret.svg');
  background-repeat: no-repeat;
  background-size: 10px 5px;
  background-position: center right 15px;
  padding: 15px;
  color: rgba(0, 33, 42, 0.4);
  font-size: 1.6rem;
}
.top .plan__selector-button {
  width: 150px;
  margin-left: 20px;
  color: #00212a;
}
@media screen and (max-width: 1080px) {
  .top .plan__selector-button {
    margin-top: 20px;
    margin-inline: auto;
  }
}
.top .how {
  padding-block: 80px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .top .how {
    padding-block: 70px 80px;
  }
}
.top .how__heading {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .top .how__heading {
    margin-bottom: 20px;
  }
}
.top .how__leading-text {
  margin-bottom: 34px;
}
.top .how__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px 2%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .top .how__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
}
.top .how__grid .how__grid-item:first-child {
  grid-column: 1/-1;
}
@media screen and (max-width: 767px) {
  .top .how__grid .how__grid-item:first-child {
    height: 200px;
  }
}
.top .how__grid .how__grid-item:not(:first-child) {
  grid-row: 2/3;
}
@media screen and (max-width: 767px) {
  .top .how__grid .how__grid-item:not(:first-child) {
    grid-row: auto;
    height: 150px;
  }
}
.top .how__grid-item {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.top .how__grid-item--has-gradient::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(60%, #fff),
    color-stop(75%, #6a6a6a),
    to(#545454)
  );
  background-image: linear-gradient(
    to bottom,
    #fff 60%,
    #6a6a6a 75%,
    #545454 100%
  );
  mix-blend-mode: multiply;
  z-index: 1;
}
.top .how__grid-item:hover img {
  scale: 1.1;
}
.top .how__grid-item-bg {
  overflow: hidden;
}
.top .how__grid-item-bg img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.top .how__grid-item-overlay-content {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 1;
  padding-inline: 25px;
}
@media screen and (max-width: 767px) {
  .top .how__grid-item-overlay-content {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding-bottom: 10px;
    padding-inline: 10px;
  }
}
.top .how__grid-item-overlay-content:has(.how__grid-item-overlay-title--sm) {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-inline: 20px;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .top .how__grid-item-overlay-content:has(.how__grid-item-overlay-title--sm) {
    padding-inline: 10px;
  }
}
.top .how__grid-item-overlay-title {
  font-size: 3rem;
  color: #fff;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.2666666667em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .top .how__grid-item-overlay-title {
    font-size: 2rem;
    line-height: 1.5em;
  }
}
.top .how__grid-item-overlay-title--sm {
  font-size: 2.5rem;
  line-height: 1.32em;
}
@media screen and (max-width: 767px) {
  .top .how__grid-item-overlay-title--sm {
    font-size: 2rem;
    line-height: 1.5em;
  }
}
.top .how__container {
  position: relative;
  isolation: isolate;
  max-width: 1200px;
  margin-inline: auto;
  background-color: #ecebec;
  border-radius: 20px;
  padding-block: 70px 80px;
  overflow: hidden;
}
@media screen and (max-width: 1080px) {
  .top .how__container {
    margin-inline: 4%;
  }
}
@media screen and (max-width: 767px) {
  .top .how__container {
    padding-block: 50px 60px;
    margin-inline: 5.33%;
  }
}
.top .how__plan-heading {
  margin-bottom: 28px;
}
@media screen and (max-width: 767px) {
  .top .how__plan-heading {
    margin-bottom: 18px;
  }
}
.top .how__plan-text {
  margin-bottom: 36px;
}
.top .how__plans {
  counter-reset: plan-counter;
}
@media screen and (max-width: 767px) {
  .top .how__plans {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 57px;
  }
}
.top .how__plans-row {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5%;
}
@media screen and (max-width: 767px) {
  .top .how__plans-row {
    display: contents;
  }
}
.top .how__plans-row:last-of-type::before {
  inset: 86px auto auto -10%;
}
.top
  .how__plans-row:first-of-type
  .how__plan-item:not(:last-of-type)
  .how__plan-item-image::before {
  content: '';
  position: absolute;
  left: calc(100% + 17px);
  width: 0;
  height: 0;
  border-bottom: 7px solid #00212a;
  border-inline: 4.5px solid transparent;
  rotate: 223deg;
}
.top
  .how__plans-row:first-of-type
  .how__plan-item
  .how__plan-item-image::before {
  top: 65.3%;
}
.top
  .how__plans-row:first-of-type
  .how__plan-item
  .how__plan-item-image::after {
  left: 50%;
}
.top
  .how__plans-row:nth-of-type(2)
  .how__plan-item
  .how__plan-item-image::before {
  content: '';
  position: absolute;
  top: 35.63%;
  right: calc(100% + 43px);
  width: 0;
  height: 0;
  border-bottom: 7px solid #00212a;
  border-inline: 4.5px solid transparent;
  rotate: 223deg;
}
@media screen and (max-width: 1080px) {
  .top
    .how__plans-row:nth-of-type(2)
    .how__plan-item
    .how__plan-item-image::before {
    top: 37.4%;
    right: calc(100% + 20px);
  }
}
.top
  .how__plans-row:nth-of-type(2)
  .how__plan-item:nth-of-type(2)
  .how__plan-item-image::before {
  top: 37.5%;
  right: calc(100% + 22px);
}
@media screen and (max-width: 1080px) {
  .top
    .how__plans-row:nth-of-type(2)
    .how__plan-item:nth-of-type(2)
    .how__plan-item-image::before {
    top: 37.3%;
  }
}
.top
  .how__plans-row:nth-of-type(2)
  .how__plan-item:nth-of-type(3)
  .how__plan-item-image::before {
  top: 37.67%;
  right: calc(100% + 20px);
}
@media screen and (max-width: 1080px) {
  .top
    .how__plans-row:nth-of-type(2)
    .how__plan-item:nth-of-type(3)
    .how__plan-item-image::before {
    top: 37.4%;
  }
}
.top
  .how__plans-row:nth-of-type(2)
  .how__plan-item
  .how__plan-item-image::after {
  right: 50%;
  -webkit-transform-origin: right;
  transform-origin: right;
}
@media screen and (max-width: 767px) {
  .top .how__plans-row:nth-of-type(2) .how__plan-item:last-child::after {
    display: none;
  }
}
.top .how__plan-item {
  position: relative;
  counter-increment: plan-counter;
  width: 30%;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item {
    width: 100%;
    max-width: 285px;
  }
}
.top .how__plan-item:nth-child(2) {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item:nth-child(2) {
    margin-top: 0;
  }
}
.top .how__plan-item:nth-child(3) {
  margin-top: 160px;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item:nth-child(3) {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .top .how__plan-item::after {
    content: '';
    position: absolute;
    inset: calc(100% + 15px) 0 auto;
    margin: auto;
    width: 13px;
    height: 37px;
    background-image: url('../public/img/icons/arrow.svg');
    background-size: contain;
    background-repeat: no-repeat;
  }
}
.top .how__plan-item-bubble {
  position: absolute;
  inset: 20px auto auto -20px;
  display: grid;
  place-items: center;
  width: 87px;
  height: 87px;
  border-radius: 50%;
  background-color: #f9d312;
  z-index: 1;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-bubble {
    inset: 15px auto auto -15px;
    width: 70px;
    height: 70px;
  }
}
.top .how__plan-item-bubble::after {
  content: '';
  position: absolute;
  inset: auto 8px 0 auto;
  width: 0;
  height: 0;
  border-bottom: 12px solid #f9d312;
  border-inline: 18px solid transparent;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-bubble::after {
    border-inline-width: 14.5px;
    border-bottom-width: 10px;
  }
}
.top .how__plan-item-bubble span {
  font-size: 2rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.25em;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-bubble span {
    font-size: 16px;
  }
}
.top .how__plan-item-bubble span::after {
  content: counter(plan-counter, decimal-leading-zero);
  display: block;
  text-align: center;
}
.top .how__plan-item-image {
  position: relative;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-image {
    width: 85%;
    margin-inline: auto;
  }
}
.top .how__plan-item-image img {
  border-radius: 50%;
}
.top .how__plan-item-image::after {
  content: '';
  position: absolute;
  top: 5%;
  bottom: 0;
  margin-block: auto;
  display: block;
  height: 1px;
  width: calc(100% - 3px);
  rotate: 13.5deg;
  background-color: #00212a;
  -webkit-transform-origin: left;
  transform-origin: left;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-image::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-image::before {
    display: none;
  }
}
.top .how__plan-item-image-overlay {
  position: absolute;
  inset: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.top .how__plan-item-image-overlay::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(30%, rgba(174, 174, 174, 0.56)),
    to(#535353)
  );
  background-image: linear-gradient(
    to bottom,
    rgba(174, 174, 174, 0.56) 30%,
    #535353 100%
  );
  mix-blend-mode: multiply;
  border-radius: 50%;
}
.top .how__plan-item-image-overlay-icon {
  position: relative;
  width: 26px;
  margin-bottom: 10px;
  z-index: 1;
}
.top .how__plan-item-image-overlay-label {
  position: relative;
  font-size: 3rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.0666666667em;
  color: #fff;
  z-index: 1;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-image-overlay-label {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-image-overlay-label {
    font-size: 30px;
  }
}
.top .how__plan-item-content {
  margin-top: 17px;
}
.top .how__plan-item-time {
  display: block;
  margin-bottom: 8px;
  font-size: 2.5rem;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.28em;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-time {
    font-size: 2rem;
  }
}
.top .how__plan-item-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
  margin-top: 16px;
}
.top .how__plan-item-actions .button {
  width: 140px;
}
@media screen and (max-width: 1080px) {
  .top .how__plan-item-actions .button {
    width: 120px;
  }
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-actions .button {
    width: 140px;
  }
}
.top .how__plan-item-actions .button__text {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .top .how__plan-item-actions .button__text {
    font-size: 16px;
  }
}
.top .what {
  padding-block: 106px 80px;
}
@media screen and (max-width: 767px) {
  .top .what {
    padding-block: 120px 80px;
  }
}
.top .what__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 8.4%;
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .top .what__row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 37px;
    margin-bottom: 50px;
  }
}
.top .what__photo-stack {
  position: relative;
  margin-top: -25px;
}
.top .what__heading {
  margin-bottom: 32px;
}
@media screen and (max-width: 767px) {
  .top .what__heading {
    margin-bottom: 24px;
  }
}
.top .what__category:not(:last-of-type) {
  margin-bottom: 75px;
}
@media screen and (max-width: 767px) {
  .top .what__category:not(:last-of-type) {
    margin-bottom: 57px;
  }
}
.top .what__category-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 32px;
  margin-bottom: 23px;
}
@media screen and (max-width: 767px) {
  .top .what__category-heading {
    margin-bottom: 30px;
    gap: 10px;
    font-size: 3rem !important;
  }
}
.top .what__category-heading::before {
  content: '';
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.top .what__category-heading--food {
  gap: 28px;
}
@media screen and (max-width: 767px) {
  .top .what__category-heading--food {
    gap: 10px;
  }
}
.top .what__category-heading--food::before {
  width: 45px;
  height: 42px;
  background-image: url('../public/img/icons/food-&-drink.svg');
}
@media screen and (max-width: 767px) {
  .top .what__category-heading--food::before {
    width: 25px;
    height: 23px;
  }
}
.top .what__category-heading--see::before {
  width: 37px;
  height: 45px;
  background-image: url('../public/img/icons/flag.svg');
}
@media screen and (max-width: 767px) {
  .top .what__category-heading--see::before {
    width: 20px;
    height: 25px;
  }
}
.top .what__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px 2%;
}
@media screen and (max-width: 767px) {
  .top .what__grid {
    gap: 15px;
  }
}
.top .what__grid .what__category-item {
  -ms-flex-preferred-size: 32%;
  flex-basis: 32%;
}
@media screen and (max-width: 767px) {
  .top .what__grid .what__category-item {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
}
.top .what__grid--see .what__category-item {
  -ms-flex-preferred-size: 23.5%;
  flex-basis: 23.5%;
}
@media screen and (max-width: 767px) {
  .top .what__grid--see .what__category-item {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
}
.top .what__grid--see .what__category-item-content {
  padding: 10px 20px;
}
.top .what__category-item {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top .what__category-item {
    aspect-ratio: 315/150;
  }
}
.top .what__category-item::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(60%, #fff),
    color-stop(75%, #6a6a6a),
    to(#545454)
  );
  background-image: linear-gradient(
    to bottom,
    #fff 60%,
    #6a6a6a 75%,
    #545454 100%
  );
  mix-blend-mode: multiply;
  z-index: 1;
}
.top .what__category-item:hover img {
  scale: 1.1;
}
.top .what__category-item-image {
  overflow: hidden;
  height: 100%;
}
.top .what__category-item-image img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.top .what__category-item-content {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  z-index: 1;
  padding: 15px 25px;
}
@media screen and (max-width: 767px) {
  .top .what__category-item-content {
    padding: 5px 10px;
  }
}
.top .what__category-item-title {
  max-width: 135px;
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  font-family: 'futura-pt-bold', sans-serif;
  line-height: 1.75em;
  text-transform: uppercase;
}
@media screen and (max-width: 1080px) {
  .top .what__category-item-title {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .top .what__category-item-title {
    max-width: initial;
    font-size: 20px;
  }
}
.top .what__category-item-title--full {
  max-width: initial;
}
.top .explore {
  background-color: #00212a;
  background-image: url('../public/img/top/explore-grid.svg');
  background-size: contain;
  background-position: center;
  padding-block: 77px 80px;
}
@media screen and (max-width: 767px) {
  .top .explore {
    background-image: url('../public/img/top/explore-grid-sp.svg');
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  .top .explore__container {
    padding-inline: 0;
  }
}
.top .explore__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 26px;
}
@media screen and (max-width: 767px) {
  .top .explore__heading {
    padding-inline: 8%;
    font-size: 3rem;
  }
}
.top .explore__heading::before {
  content: '';
  display: inline-block;
  margin-right: 15px;
  width: 33px;
  height: 45px;
  background-image: url('../public/img/icons/white-pin.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top;
}
@media screen and (max-width: 767px) {
  .top .explore__heading::before {
    margin-right: 10px;
    width: 18px;
    height: 25px;
  }
}
@media screen and (max-width: 767px) {
  .top .explore__text {
    padding-inline: 8%;
  }
}
.top .explore__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-block: 35px 70px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .top .explore__tags {
    position: relative;
    left: 8%;
    margin-block: 55px 50px;
    width: 100vw;
    padding-right: 15%;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow: scroll;
  }
}
.top .explore__tag {
  padding-inline: 25px;
  background-color: #fff;
  color: #00212a;
}
@media screen and (max-width: 767px) {
  .top .explore__tag {
    padding-inline: 20px;
    padding-block: 5px;
  }
}
.top .explore__tag--active {
  background-color: #f9d312;
}
.top .explore__tag .button__text {
  color: #00212a;
}
.top .explore__app-wrapper {
  position: relative;
}
.top .explore__app {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 8.1%;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .top .explore__app {
    gap: 90px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.top .explore__app .explore__app-map-wrapper {
  opacity: 0;
}
.top .explore__app.active {
  position: relative;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.top .explore__app.active .explore__app-map-wrapper {
  opacity: 1;
}
.top .explore__app-slider {
  margin-left: 6.8%;
}
@media screen and (max-width: 767px) {
  .top .explore__app-slider {
    margin-left: 0;
  }
}
.top .explore__app-slider .splide__arrow {
  width: 50px;
  height: 50px;
  opacity: 1;
  background-color: #fff;
}
.top .explore__app-slider .splide__arrow--prev {
  left: -36px;
}
@media screen and (max-width: 767px) {
  .top .explore__app-slider .splide__arrow--prev {
    left: 18px;
  }
}
.top .explore__app-slider .splide__arrow--next {
  right: -36px;
}
@media screen and (max-width: 767px) {
  .top .explore__app-slider .splide__arrow--next {
    right: 18px;
  }
}
.top .explore__app-slider .splide__arrow svg {
  fill: #00212a;
}
.top .explore__app-slider .splide__arrow[disabled] {
  opacity: 0.5;
}
.top .explore__app-slider-item {
  border-radius: 10px;
  background-color: #fff;
  overflow: hidden;
  -webkit-box-shadow: 0 5px 10px rgba(255, 255, 255, 0.1);
  box-shadow: 0 5px 10px rgba(255, 255, 255, 0.1);
}
.top .explore__app-slider-item-image {
  width: calc(100% - 10px);
  aspect-ratio: 310/200;
  overflow: hidden;
  margin: 5px auto 27px;
  border-radius: 5px;
}
.top .explore__app-slider-item-content {
  position: relative;
  padding: 0 25px 20px;
}
.top .explore__app-slider-item-content::before {
  content: '';
  position: absolute;
  inset: 8px auto auto -9px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #f9d312;
}
.top .explore__app-slider-item-title {
  font-family: 'futura-pt-bold', sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.32em;
}
.top .explore__app-sub-text {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2em;
}
.top .explore__app-slider-item-action {
  margin-top: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.top .explore__app-slide-button {
  padding: 4px 33.5px;
}
.top .explore__app-map-wrapper {
  width: 53.18%;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .top .explore__app-map-wrapper {
    width: 84%;
    margin-inline: auto;
  }
}

.shop-detail__container {
  padding: 0 4%;
  margin: 0 auto;
  max-width: calc(1200px + 8%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .shop-detail__container {
    max-width: 100%;
  }
}
.shop-detail__post-title {
  margin-bottom: 24px;
}
.shop-detail__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
}
.shop-detail__tags--post {
  margin-bottom: 24px;
}
.shop-detail__tag {
  padding: 10px 20px;
  border: 1px solid #00212a;
  border-radius: 10px;
  font-size: 1.6rem;
  font-weight: 600;
}
.shop-detail__tag.rounded {
  border-radius: 30px;
}
.shop-detail__rate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 16px;
}
.shop-detail__rate--invert {
  color: #fff;
}
.shop-detail__rate--post {
  margin-bottom: 24px;
}
.shop-detail__rate-stars {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.shop-detail__rate-stars span {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2rem;
  font-weight: 900;
  opacity: 0.2;
}
.shop-detail__rate-stars span.filled {
  opacity: 1;
}
.shop-detail__rate-price {
  font-size: 1.6rem;
  font-weight: 600;
}
.shop-detail__nav-slider {
  margin-top: 16px !important;
}
.shop-detail__nav-slide {
  height: 100%;
  aspect-ratio: 1/1;
}
.shop-detail__nav-slide.is-active {
  border: 4px solid #00212a !important;
}
.shop-detail__sns-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .shop-detail__sns-btns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
    margin-top: 24px;
  }
}
.shop-detail__main {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 80px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1200px) {
  .shop-detail__main {
    gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .shop-detail__main {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.shop-detail__sidebar {
  position: sticky;
  top: 0;
  width: 20%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  padding-top: 120px;
}
@media screen and (max-width: 1200px) {
  .shop-detail__sidebar {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .shop-detail__sidebar {
    position: relative;
    top: unset;
    width: 100%;
    padding-top: 60px;
  }
}
.shop-detail__sidebar-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  border: 1px solid #99a6aa;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .shop-detail__sidebar-content {
    gap: 16px;
  }
}
.shop-detail__sidebar-link {
  font-size: 1.6rem;
  opacity: 0.5;
  text-decoration: none;
  color: inherit;
}
.shop-detail__sidebar-link.active {
  opacity: 1;
}
.shop-detail__sidebar-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .shop-detail__sidebar-btns {
    gap: 12px;
  }
}
.shop-detail__sidebar-btn {
  gap: 10px;
  width: 100%;
  height: 40px;
}
.shop-detail__sidebar-btn .button__icon {
  width: 18px;
  height: 18px;
}
.shop-detail__sidebar-btn .button__text {
  font-size: 1.5rem;
}
.shop-detail__content {
  position: relative;
  width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 60px;
  padding-top: 120px;
}
@media screen and (max-width: 1200px) {
  .shop-detail__content {
    width: 75%;
  }
}
@media screen and (max-width: 767px) {
  .shop-detail__content {
    width: 100%;
    padding-top: 0;
  }
}
.shop-detail__content-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
  scroll-margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .shop-detail__content-block {
    gap: 16px;
    scroll-margin-top: 80px;
  }
}
.shop-detail__content-heading {
  font-size: 4rem;
}
@media screen and (max-width: 767px) {
  .shop-detail__content-heading {
    font-size: 30px;
  }
}
.shop-detail__content-p {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5em;
}
.shop-detail__content-p.fw-regular {
  font-weight: 400;
}
.shop-detail__content-btn {
  width: 140px;
}
.shop-detail__content-image {
  border-radius: 10px;
  overflow: hidden;
}
.shop-detail__content-map {
  width: 100%;
  height: 300px;
}
.shop-detail__content-map iframe {
  width: 100% !important;
  height: 100% !important;
}
.shop-detail__sched {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
}
.shop-detail__sched-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  font-size: 1.6rem;
  line-height: 1.5em;
}
.shop-detail__sched-dt {
  width: 100px;
  font-weight: 700;
}
.shop-detail__sched-dd {
  font-weight: 600;
}
.shop-detail__checklist-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 767px) {
  .shop-detail__checklist-ul {
    gap: 16px;
  }
}
.shop-detail__checklist-ul li {
  position: relative;
  padding-left: 36px;
  font-size: 1.6rem;
  font-weight: 600;
}
.shop-detail__checklist-ul li::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url('../public/img/icons/checkmark.svg') no-repeat center/contain;
}
.shop-detail__highlights {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 40px;
}
.shop-detail__highlight-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
  width: calc(33.33% - 27px);
  font-weight: 600;
}
@media screen and (max-width: 1200px) {
  .shop-detail__highlight-item {
    width: calc(50% - 20px);
  }
}
@media screen and (max-width: 767px) {
  .shop-detail__highlight-item {
    width: 100%;
  }
}
.shop-detail__highlight-image {
  height: 200px;
  border-radius: 8px;
}
.shop-detail__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 40px;
}
.shop-detail__menu--lined {
  gap: 0;
}
.shop-detail__menu--lined .shop-detail__menu-row {
  border-bottom: 1px dashed #99a6aa;
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu--lined .shop-detail__menu-row {
    padding: 24px 0;
  }
}
.shop-detail__menu--lined .shop-detail__menu-row:first-child {
  padding-top: 0;
}
.shop-detail__menu-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 40px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu-row:not(.shop-detail__menu-row--single) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
  }
}
.shop-detail__menu-col {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu-col {
    gap: 16px;
  }
}
.shop-detail__menu-heading {
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu-heading {
    font-size: 24px;
  }
}
.shop-detail__menu-price {
  font-family: 'futura-pt-bold', sans-serif;
  color: #ca1d10;
  font-size: 3rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu-price {
    font-size: 24px;
  }
}
.shop-detail__menu-image {
  height: 27vw;
  max-height: 300px;
}
@media screen and (max-width: 767px) {
  .shop-detail__menu-image {
    width: 100%;
    height: 100%;
    max-height: unset;
  }
}
.shop-detail__related {
  padding: 80px 0;
  background-color: #00212a;
}
@media screen and (max-width: 767px) {
  .shop-detail__related {
    padding: 60px 0;
  }
}
.shop-detail__related-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 6.4rem;
}
@media screen and (max-width: 767px) {
  .shop-detail__related-heading {
    font-size: 40px;
  }
}
.shop-detail__related-icon {
  width: 45px;
  height: 45px;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 767px) {
  .shop-detail__related-icon {
    width: 30px;
    height: 30px;
  }
}
.shop-detail__related-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 40px;
}
.shop-detail__related-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
  width: calc(33.33% - 27px);
}
@media screen and (max-width: 767px) {
  .shop-detail__related-item {
    width: 100%;
  }
}
.shop-detail__related-title {
  font-family: 'Open Sans', sans-serif;
  color: #fff;
  font-size: 2.4rem;
  text-wrap: pretty;
}
@media screen and (max-width: 767px) {
  .shop-detail__related-title {
    font-size: 20px;
  }
}
.shop-detail__related-image {
  height: 20vw;
  max-height: 280px;
}
@media screen and (max-width: 767px) {
  .shop-detail__related-image {
    width: 100%;
    height: 100%;
    max-height: unset;
  }
}
.shop-detail__related-btn {
  display: block;
  width: 150px;
  margin: 40px auto 0;
}

.shop-list {
  padding-bottom: 120px;
}
.shop-list__layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 6.67%;
}
@media screen and (max-width: 767px) {
  .shop-list__layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
  }
}
.shop-list__navigation {
  width: 24%;
  min-width: 240px;
}
@media screen and (max-width: 767px) {
  .shop-list__navigation {
    width: 100%;
  }
}
.shop-list__navigation-block:not(:last-of-type) {
  margin-bottom: 24px;
}
.shop-list__navigation-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  font-size: 3rem;
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  .shop-list__navigation-label {
    font-size: 23px;
  }
}
.shop-list__navigation-label-icon {
  display: block;
  height: 31px;
}
@media screen and (max-width: 767px) {
  .shop-list__navigation-label-icon {
    height: 24px;
  }
}
.shop-list__navigation-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  margin-top: 8px;
  padding: 13px 16px;
  border-radius: 5px;
  border: 1px solid #99a6aa;
  background-image: url('../public/img/icons/caret.svg');
  background-repeat: no-repeat;
  background-size: 10px 6px;
  background-position: calc(100% - 16px) center;
  font-size: 1.6rem;
  font-family: 'Open Sans', sans-serif;
  color: #00212a;
  line-height: 1.5em;
}
.shop-list__navigation-category-list {
  margin-top: 8px;
  padding: 20px;
  border: 1px solid #99a6aa;
  border-radius: 10px;
}
.shop-list__navigation-category-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  font-size: 1.8rem;
  font-weight: 700;
}
.shop-list__navigation-category-item.active
  .shop-list__navigation-category-radio::after {
  display: block;
}
.shop-list__navigation-category-item--sub {
  font-weight: 400;
}
.shop-list__navigation-category-item:not(:last-of-type) {
  margin-bottom: 15px;
}
.shop-list__navigation-category-radio {
  position: relative;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff;
  border: 2px solid #99a6aa;
}
.shop-list__navigation-category-radio::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 50%;
  height: 50%;
  border-radius: 50%;
  background-color: #f9d312;
  display: none;
}
.shop-list__navigation-sub-cats {
  margin-bottom: 15px;
  padding-left: 20px;
}
.shop-list__title {
  font-size: 5rem;
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .shop-list__title {
    font-size: 38px;
  }
}
.shop-list__sort {
  position: relative;
  width: 240px;
  margin-top: 20px;
  z-index: 2;
}
.shop-list__sort .low-to-high::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url('../public/img/icons/Sort_Ascending.svg');
  background-size: 22px;
  background-repeat: no-repeat;
  background-position: center;
}
.shop-list__sort:hover .shop-list__sort-items-wrapper {
  grid-template-rows: 1fr;
  padding-block: 13px;
  opacity: 1;
}
.shop-list__current-sort-label {
  position: relative;
  background-color: #ecebec;
  border: 1px solid #99a6aa;
  border-radius: 5px;
  cursor: default;
}
.shop-list__current-sort-label::before {
  content: '';
  position: absolute;
  inset: auto 0 -5px;
  height: 5px;
  z-index: 1;
}
.shop-list__current-sort-label::after {
  content: '';
  position: absolute;
  inset: 0 16px 0 auto;
  display: block;
  width: 10px;
  height: 6px;
  margin-block: auto;
  background-image: url('../public/img/icons/caret.svg');
  background-repeat: no-repeat;
  background-size: contain;
}
.shop-list__current-sort-label-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  padding: 13px 16px;
  font-size: 1.6rem;
  line-height: 1.5em;
}
.shop-list__sort-items-wrapper {
  position: absolute;
  inset: calc(100% + 5px) 0 auto;
  display: grid;
  grid-template-rows: 0fr;
  background-color: #ecebec;
  padding-inline: 16px;
  overflow: hidden;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  border: 1px solid #99a6aa;
  border-radius: 5px;
  opacity: 0;
}
.shop-list__sort-items {
  overflow: hidden;
}
.shop-list__sort-item-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  padding-block: 13px;
  font-size: 1.6rem;
  cursor: pointer;
}
.shop-list__content {
  width: 100%;
}
.shop-list__archive-items {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.shop-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 24px;
  padding-block: 40px;
  border-bottom: 1px dashed #99a6aa;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .shop-list__item {
    gap: 12px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-block: 20px;
  }
}
.shop-list__item:hover {
  opacity: 0.5;
}
.shop-list__item-thumbnail {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 200px;
  height: 200px;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .shop-list__item-thumbnail {
    width: 150px;
    height: 150px;
  }
}
.shop-list__item-content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
@media screen and (max-width: 767px) {
  .shop-list__item-content {
    display: contents;
  }
}
.shop-list__item-title {
  font-size: 3.2rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .shop-list__item-title {
    -ms-flex-item-align: center;
    align-self: center;
    font-size: 20px;
    width: calc(100% - 150px - 32px);
  }
}
.shop-list__item-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
  margin-block: 20px;
}
@media screen and (max-width: 767px) {
  .shop-list__item-categories {
    margin-block: 10px;
    width: 100%;
  }
}
.shop-list__item-category {
  padding: 10px 20px;
  border-radius: 30px;
  border: 1px solid #000;
  font-size: 1.4rem;
  font-family: 'Inter', sans-serif;
}
.shop-list__item-price-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .shop-list__item-price-wrapper {
    margin-bottom: 12px;
  }
}
.shop-list__item-price-icon {
  font-size: 2rem;
  font-weight: 900;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1em;
  opacity: 0.2;
}
.shop-list__item-price-icon--active {
  opacity: 1;
}
.shop-list__item-price {
  font-size: 1.6rem;
  font-weight: 600;
}
.shop-list__item-text {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5em;
}
.shop-list__pagination {
  display: grid;
  place-items: center;
  margin-top: 40px;
}

.guides {
  background-color: #fff;
  padding-block: 75px 80px;
}
@media screen and (max-width: 767px) {
  .guides {
    padding-top: 65px;
  }
}
.guides__heading {
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .guides__heading {
    margin-bottom: 20px;
  }
}
.guides__text {
  font-weight: 700 !important;
  margin-bottom: 35px;
  text-align: center;
}
.guides__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 2%;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .guides__row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
    margin-bottom: 25px;
  }
}
.guides__row--archive {
  row-gap: 40px;
}
@media screen and (max-width: 767px) {
  .guides__row--archive {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
.guides__row--archive .guides__item {
  width: 31.08%;
}
@media screen and (max-width: 767px) {
  .guides__row--archive .guides__item {
    width: 46%;
  }
}
@media screen and (max-width: 600px) {
  .guides__row--archive .guides__item {
    width: 100%;
  }
}
.guides__item {
  width: calc(32% - 2px);
  border-radius: 10px;
  border: 1px solid rgba(0, 33, 42, 0.3);
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  overflow: hidden;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .guides__item {
    width: 280px;
  }
}
.guides__item:hover .guides__item-image img {
  scale: 1.1;
}
.guides__item:hover .guides__item-icon {
  translate: 5px 0;
}
.guides__item-image {
  position: relative;
  left: -2px;
  height: 180px;
  width: calc(100% + 8px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .guides__item-image {
    height: 157px;
  }
}
.guides__item-image img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.guides__item-content {
  padding: 20px 20px 15px;
}
.guides__item-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 10px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3em;
  font-family: 'futura-pt-bold', sans-serif;
}
.guides__item-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2em;
  color: rgba(0, 33, 42, 0.5);
}
.guides__item-icon {
  margin-top: 15px;
  margin-left: auto;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #00212a;
  background-image: url('../public/img/icons/white-caret.svg');
  background-size: 20px 10px;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .guides__item-icon {
    width: 30px;
    height: 30px;
    background-size: 5px 8px;
  }
}
.guides__button-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.guides__button {
  padding-inline: 43.5px;
  margin-inline: auto;
}
.guides__archive-wrapper {
  margin-top: 80px;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .guides__archive-wrapper {
    margin-top: 65px;
    padding-bottom: 65px;
  }
}
.guides__pagination {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .guides__pagination {
    margin-top: 65px;
  }
}

.guides-detail .guides__title {
  margin-top: 0;
}
.guides-detail__heading-block {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .guides-detail__heading-block {
    margin-bottom: 45px;
  }
}
.guides-detail__share-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 24px;
  margin-block: 40px;
}
@media screen and (max-width: 767px) {
  .guides-detail__share-block {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px;
    margin-block: 20px;
  }
}
.guides-detail__share-block--align-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.guides-detail__share-label {
  font-family: 'futura-pt-bold', sans-serif;
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .guides-detail__share-label {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .guides-detail__share-label--align-center {
    text-align: center;
  }
}
.guides-detail__share-item {
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 767px) {
  .guides-detail__share-item {
    width: 30px;
    height: 30px;
  }
}
.guides-detail__featured-image {
  width: 100%;
  aspect-ratio: 1200/675;
}
@media screen and (max-width: 767px) {
  .guides-detail__featured-image {
    aspect-ratio: 4/3;
  }
}
.guides-detail__content img {
  width: 100%;
}
.guides-detail__heading {
  margin-top: 0;
  margin-bottom: 24px;
}
.guides-detail__related-posts {
  border-top: 1px solid rgba(0, 33, 42, 0.3);
  padding-block: 80px;
}
.guides-detail__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2%;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .guides-detail__row {
    gap: 24px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.guides-detail__row .guides__item {
  width: 32%;
}
@media screen and (max-width: 767px) {
  .guides-detail__row .guides__item {
    width: 100%;
  }
}

.app-map[data-content='tokyo'] .app-map__area[data-area='nerima'] {
  top: 13.3455210238%;
  left: 0.1883239171%;
  width: 33.1770244821%;
  height: 22.3034734918%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='itabashi'] {
  top: 6.0329067642%;
  left: 17.3258003766%;
  width: 27.6233521657%;
  height: 21.6983546618%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='kita'] {
  top: 6.7641681901%;
  left: 35.3107344633%;
  width: 23.1581920904%;
  height: 22.4716636197%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='adachi'] {
  top: 0.1828153565%;
  right: 17.5141242938%;
  width: 34.2052730697%;
  height: 26.5063985375%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='sunigami'] {
  top: 29.3418647166%;
  left: 6.7796610169%;
  width: 22.7062146893%;
  height: 21.5978062157%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='nakano'] {
  top: 27.7879341865%;
  left: 17.3258003766%;
  width: 19.4369114878%;
  height: 19.5978062157%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='shinjuku'] {
  top: 29.2504570384%;
  left: 30.6967984934%;
  width: 20.472693032%;
  height: 19.0365630713%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='toshima'] {
  top: 24.3144424132%;
  left: 32.0150659134%;
  width: 20.9284369115%;
  height: 11.4277879342%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='bunkyo'] {
  top: 27.60511883%;
  left: 42.9378531073%;
  width: 15.9416195857%;
  height: 12.281535649%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='arakawa'] {
  top: 21.2065813528%;
  right: 29.3785310734%;
  width: 18.6572504708%;
  height: 10.1882998172%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='taito'] {
  top: 28.8848263254%;
  right: 31.0734463277%;
  width: 13.4425612053%;
  height: 12.3875685558%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='taito']::before {
  inset: auto 0 35.4191263282% 0;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='sumida'] {
  top: 25.2285191956%;
  right: 22.0338983051%;
  width: 14.9943502825%;
  height: 18.7550274223%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='katsushika'] {
  top: 7.1297989031%;
  right: 7.3446327684%;
  width: 23.1111111111%;
  height: 28.8628884826%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='setagaya'] {
  bottom: 23.7659963437%;
  left: 5.8380414313%;
  width: 29.2052730697%;
  height: 31.3436928702%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='shibuya'] {
  top: 42.0475319927%;
  left: 27.4952919021%;
  width: 17.3653483992%;
  height: 16.9396709324%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='shibuya']::before {
  inset: 26.0275458193% auto auto 45.3270019426%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='minato'] {
  top: 45.155393053%;
  left: 40.8662900188%;
  width: 20.483992467%;
  height: 19.8482632541%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='minato']::before {
  inset: 29.4740720273% auto auto 30.3392479544%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='chiyoda'] {
  top: 37.6599634369%;
  left: 46.7043314501%;
  width: 15.0527306968%;
  height: 12.3144424132%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='chuo'] {
  top: 40.4021937843%;
  left: 54.802259887%;
  width: 9.7495291902%;
  height: 17.0548446069%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='chuo']::before {
  inset: 13.9350412692% auto auto 28.9743094456%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='koto'] {
  bottom: 22.3034734918%;
  right: 19.9623352166%;
  width: 22.7871939736%;
  height: 41.281535649%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='edogawa'] {
  top: 22.3034734918%;
  right: 0.4708097928%;
  width: 24.0320150659%;
  height: 37.8592321755%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='meguro'] {
  bottom: 28.1535648995%;
  left: 27.8719397363%;
  width: 15.7514124294%;
  height: 20.689213894%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='shinagawa'] {
  bottom: 22.029250457%;
  left: 37.1939736347%;
  width: 22.0244821092%;
  height: 19.4478976234%;
}
.app-map[data-content='tokyo'] .app-map__area[data-area='ota'] {
  bottom: 0.5484460695%;
  left: 25.2354048964%;
  width: 50.6610169492%;
  height: 31.1535648995%;
}

.map-reference {
  opacity: 0.2;
}

.app-map[data-content='kanto'] {
  display: none;
}

.overflow {
  overflow: hidden;
}

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

@media screen and (min-width: 1081px) {
  .min-1081-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 1080px) {
  .min-1081-flex {
    display: none;
  }
}

.tablet {
  display: none;
}
@media screen and (max-width: 1080px) {
  .tablet {
    display: block;
  }
}

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

.text {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 2em;
}
@media screen and (max-width: 1080px) {
  .text {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .text {
    font-size: 16px;
  }
}
.text--fs-18 {
  font-size: 1.8rem;
  line-height: 1.7777777778em;
}
@media screen and (max-width: 1080px) {
  .text--fs-18 {
    font-size: 1.6rem;
  }
}

.white {
  color: #fff;
}

.area-term {
  text-transform: capitalize;
}

.wp-pagenavi,
.shop-list__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi,
  .shop-list__pagination {
    gap: 7px;
  }
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .next,
.wp-pagenavi .prev,
.shop-list__pagination .previouspostslink,
.shop-list__pagination .nextpostslink,
.shop-list__pagination .next,
.shop-list__pagination .prev {
  color: inherit;
  text-decoration: none;
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after,
.wp-pagenavi .next::after,
.wp-pagenavi .prev::after,
.shop-list__pagination .previouspostslink::after,
.shop-list__pagination .nextpostslink::after,
.shop-list__pagination .next::after,
.shop-list__pagination .prev::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 10px;
  height: 22px;
  background-image: url('../public/img/icons/caret.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .prev,
.shop-list__pagination .previouspostslink,
.shop-list__pagination .prev {
  margin-right: 10px;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .prev,
  .shop-list__pagination .previouspostslink,
  .shop-list__pagination .prev {
    margin-right: 8px;
  }
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .prev::after,
.shop-list__pagination .previouspostslink::after,
.shop-list__pagination .prev::after {
  content: '';
  rotate: 90deg;
}
.wp-pagenavi .previouspostslink:has(+ .current),
.wp-pagenavi .prev:has(+ .current),
.shop-list__pagination .previouspostslink:has(+ .current),
.shop-list__pagination .prev:has(+ .current) {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
.wp-pagenavi .nextpostslink,
.wp-pagenavi .next,
.shop-list__pagination .nextpostslink,
.shop-list__pagination .next {
  margin-left: 10px;
}
.wp-pagenavi .nextpostslink::after,
.wp-pagenavi .next::after,
.shop-list__pagination .nextpostslink::after,
.shop-list__pagination .next::after {
  content: '';
  rotate: -90deg;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .page,
.wp-pagenavi .current,
.wp-pagenavi .page-numbers,
.wp-pagenavi .next,
.wp-pagenavi .prev,
.shop-list__pagination .previouspostslink,
.shop-list__pagination .nextpostslink,
.shop-list__pagination .page,
.shop-list__pagination .current,
.shop-list__pagination .page-numbers,
.shop-list__pagination .next,
.shop-list__pagination .prev {
  position: relative;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid #000;
  font-size: 1.6rem;
  font-weight: 600;
  color: inherit;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .page,
  .wp-pagenavi .current,
  .wp-pagenavi .page-numbers,
  .wp-pagenavi .next,
  .wp-pagenavi .prev,
  .shop-list__pagination .previouspostslink,
  .shop-list__pagination .nextpostslink,
  .shop-list__pagination .page,
  .shop-list__pagination .current,
  .shop-list__pagination .page-numbers,
  .shop-list__pagination .next,
  .shop-list__pagination .prev {
    width: 30px;
    height: 30px;
  }
}
.wp-pagenavi .page,
.shop-list__pagination .page {
  opacity: 0.2;
}
.wp-pagenavi .current,
.shop-list__pagination .current {
  background-color: #000;
  color: #fff;
}
.wp-pagenavi .current + .next,
.shop-list__pagination .current + .next {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
/*# sourceMappingURL=main.css.map */
