@charset "UTF-8";
.bl-access, .bl-tamatsukuri-map {
  margin-inline: auto;
}
@media print, screen and (min-width: 768.1px) {
  .bl-access, .bl-tamatsukuri-map {
    width: 1000px;
    max-width: calc(100% - 20px);
  }
}
@media screen and (max-width: 768px) {
  .bl-access, .bl-tamatsukuri-map {
    width: 76.9230769231vw;
  }
}

/**
【HTML例】
<section class="bl-compact-heading">
  <hgroup class="bl-compact-heading__hgroup">
    <div class="bl-compact-heading__magatama common-heading-magatama">
      <span class="icomoon icon-magatama"></span>
      <h1 class="bl-compact-heading__heading ja">玉造観光案内所</h1>
      <span class="en">Visitor Center</span>
    </div>
    <p class="bl-compact-heading__catch font-zen-old-yakuhan u-break-keep">玉造温泉の旅を、もっと楽しく。</p>
  </hgroup>
</section>

--page-color-background と --page-color-magatama で色を制御
**/
.bl-compact-heading {
  position: relative;
  z-index: 5;
}
.bl-compact-heading::before {
  content: "";
  display: block;
  width: 100%;
  background-color: var(--page-color-background);
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
}
.bl-compact-heading__magatama .icon-magatama {
  color: var(--page-color-magatama);
}
.bl-compact-heading__magatama .ja {
  color: #fff;
}
.bl-compact-heading__magatama .en {
  color: #eee5d1;
}
.bl-compact-heading__catch {
  margin-block: var(--leading-trim);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.1em;
  text-align: center;
}
@media print, screen and (min-width: 768.1px) {
  .bl-compact-heading {
    padding-top: 55px;
  }
  .bl-compact-heading::before {
    height: 215px;
  }
  .bl-compact-heading__catch {
    padding-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .bl-compact-heading {
    padding-top: 47px;
  }
  .bl-compact-heading::before {
    height: 174px;
  }
  .bl-compact-heading__catch {
    margin-inline: auto;
    padding-top: 35px;
    width: 82.0512820513vw;
  }
}

body {
  --page-color-background: #226a52;
  --page-color-magatama: #967A21;
}

.bl-access {
  position: relative;
  z-index: 0;
}
@media print, screen and (min-width: 768.1px) {
  .bl-access {
    margin-top: 94px;
  }
  .bl-access .common-cloud.et {
    top: 1524px;
    left: -276px;
  }
  .bl-access .common-cloud.kodure1 {
    top: 3500px;
    right: -164px;
  }
}
@media screen and (max-width: 768px) {
  .bl-access {
    margin-top: 17.9487179487vw;
  }
  .bl-access .common-cloud.et {
    width: 99.0769230769vw;
    top: 226.9230769231vw;
    left: -36.1538461538vw;
  }
  .bl-access .common-cloud.kodure1 {
    bottom: 564.1025641026vw;
    right: -29.4871794872vw;
    width: 58.8717948718vw;
  }
}

.bl-map__type {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #226a52;
  font-weight: 700;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.1em;
}
.bl-map__icon {
  margin-bottom: 8px;
}
.bl-map__map {
  display: block;
}
@media print, screen and (min-width: 768.1px) {
  .bl-map__type {
    margin-top: 52px;
  }
  .bl-map__data {
    margin-top: 26px;
  }
}
@media screen and (max-width: 768px) {
  .bl-map__type {
    margin-top: 10.7692307692vw;
  }
  .bl-map__data {
    margin-left: calc((100% - 100vw) / 2);
    margin-right: calc((100% - 100vw) / 2);
    width: auto !important;
    max-width: none;
  }
}

.bl-area__navigation {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
.bl-area__navigation-item {
  padding: 7px 32px 7px 20px;
  border: 1px solid #226a52;
  border-radius: 100vmax;
  min-width: 136px;
  background: none;
  color: #226a52;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 0;
  transition: color 0.4s, background-color 0.4s;
}
.bl-area__navigation-item .text {
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.025em;
}
.bl-area__navigation-item .arrow {
  border: 1px solid currentColor;
  border-left: 0;
  border-top: 0;
  aspect-ratio: 1/1;
  width: 7px;
  height: auto;
  transform: rotate(45deg) translateY(-25%);
  transform-origin: center center;
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  transition: border-color 0.4s;
}
.bl-area__type {
  padding: 7px;
  background: #226a52;
  color: #eee5d1;
  font-weight: 700;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.1em;
  display: grid;
  place-items: center;
}
.bl-area__data {
  margin-top: 20px;
}
.bl-area__link-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.bl-area__link-items + .bl-area__link-items {
  margin-top: 34px;
}
.bl-area__link-item {
  margin-block: var(--leading-trim);
  font-weight: 400;
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: 0.025em;
  word-break: keep-all;
  transition: color 0.4s;
}
.bl-area__link-item a {
  text-decoration: underline;
}
@media (hover: hover) {
  .bl-area__navigation-item:hover {
    background-color: #226a52;
    color: #eee5d1;
  }
  .bl-area__link-item:hover {
    color: #226a52;
  }
}
@media print, screen and (min-width: 768.1px) {
  .bl-area {
    margin-top: 120px;
  }
  .bl-area__list {
    margin-top: 88px;
  }
  .bl-area__type:nth-of-type(n+2) {
    margin-top: 90px;
  }
  .bl-area__link-items {
    margin-top: 42px;
  }
}
@media screen and (max-width: 768px) {
  .bl-area {
    margin-top: 16.4102564103vw;
  }
  .bl-area__list {
    margin-top: 14.8717948718vw;
  }
  .bl-area__type:nth-of-type(n+2) {
    margin-top: 22.0512820513vw;
  }
  .bl-area__illust-track {
    margin-left: calc((100% - 100vw) / 2);
    margin-right: calc((100% - 100vw) / 2);
    width: auto !important;
    max-width: none;
    padding-inline: 11.5384615385vw;
    overflow-x: auto;
  }
  .bl-area__illust {
    max-width: none;
  }
  .bl-area__illust img {
    width: auto;
    max-width: none;
  }
  .bl-area__link-items {
    margin-top: 52px;
  }
}

.bl-tamatsukuri-map {
  position: relative;
  z-index: 0;
}
.bl-tamatsukuri-map__map-frame iframe {
  border: 0;
  display: block;
}
.bl-tamatsukuri-map__description {
  margin-block: var(--leading-trim);
  padding-top: 22px;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.73;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 768.1px) {
  .bl-tamatsukuri-map {
    margin-top: 120px;
  }
  .bl-tamatsukuri-map__map-frame, .bl-tamatsukuri-map__description {
    margin-inline: auto;
    width: 728px;
  }
  .bl-tamatsukuri-map .common-cloud.hikyaku {
    top: -40px;
    left: -200px;
  }
}
@media screen and (max-width: 768px) {
  .bl-tamatsukuri-map {
    margin-top: 20.5128205128vw;
  }
  .bl-tamatsukuri-map__map-frame {
    margin-left: calc((100% - 100vw) / 2);
    margin-right: calc((100% - 100vw) / 2);
    width: auto !important;
    max-width: none;
  }
  .bl-tamatsukuri-map__map-frame iframe {
    width: 100%;
  }
  .bl-tamatsukuri-map .common-cloud.hikyaku {
    width: 61.5384615385vw;
    top: -40px;
    left: -120px;
  }
}

@media screen and (max-width: 768px) {
  .js-observe-horizontal-scroll {
    position: relative;
    z-index: 0;
  }
  .js-observe-horizontal-scroll::before {
    content: "";
    display: block;
    width: 150px;
    height: 150px;
    background: url(../../images/access/icon__scrollable.svg) no-repeat center center/contain;
    position: absolute;
    z-index: 1;
    top: 50px;
    left: 0;
    right: 0;
    margin: auto;
    pointer-events: none;
    transition: opacity 0.2s;
  }
  .js-observe-horizontal-scroll__active::before {
    opacity: 0;
  }
}
/*# sourceMappingURL=page-access.css.map */