body {
  overflow-x: clip;
}

[data-aos] {
  will-change: transform, opacity;
  contain: layout paint;
}

#page.access .text-contens {
  padding: 90px 0 87px;
}
#page.access .access-inner {
  position: relative;
}
#page.access .access-inner::after {
  content: "";
  display: block;
  background-image: url(../img/access/map.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 410px;
  height: 210px;
  position: absolute;
  top: 0;
  right: -20px;
}
#page.access .contens-title {
  font-size: 35px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.7142857143;
  margin-bottom: 50px;
}
#page.access .contens-text {
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2;
  margin-bottom: 35px;
}
#page.access .access-city-link {
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2;
}
#page.access .access-city-link .text-line {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #3e3a39;
}
#page.access .access-city-link .icon {
  width: 14px;
  margin-left: 7px;
}
@media (max-width: 850px) {
  #page.access .access-inner::after {
    width: 340px;
    height: 174px;
  }
}
@media (max-width: 767px) {
  #page.access .sp-title-move {
    padding: 0 18px;
  }
  #page.access .sp-title-move .header-page-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 30px;
  }
  #page.access .sp-title-move .header-page-title .en-title {
    font-weight: 500;
    font-size: 33px;
    letter-spacing: 0.04em;
    margin-right: 30px;
  }
  #page.access .sp-title-move .header-page-title .ja-title {
    font-size: 14px;
    line-height: 1.749661705;
  }
  #page.access .text-contens {
    padding: 32px 0 65px;
  }
  #page.access .access-inner::after {
    display: none;
  }
  #page.access .contens-title {
    font-size: 24px;
    line-height: 1.684;
    letter-spacing: 0.05rem;
    margin-bottom: 35px;
  }
  #page.access .contens-text {
    font-size: 16px;
    line-height: 2.125;
  }
  #page.access .access-city-link {
    font-size: 15px;
    letter-spacing: 0.01em;
    display: block;
    margin-bottom: 58px;
  }
  #page.access .access-map-image {
    width: 76.3%;
    margin: 0 auto;
  }
}
#page.access .access-map {
  width: 100%;
  max-width: 830px;
  margin: 0 auto;
}
#page.access .access-map iframe {
  width: 100%;
  height: 300px;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}
@media (max-width: 767px) {
  #page.access .access-map {
    margin: 0 auto 90px;
  }
}
#page.access .access-contens {
  background-color: #f7f8f5;
  padding-top: 47px;
  padding-bottom: 85px;
  margin-bottom: 10px;
}
#page.access .access-contens.last {
  padding-bottom: 63px;
  margin-bottom: 135px;
}
#page.access .access-contens-title {
  text-align: center;
  font-size: 33px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 3.4357575758;
}
#page.access .access-contens-icon {
  width: 36px;
  margin: -8px auto 65px;
}
#page.access .access-contens-flow {
  max-width: 828px;
  width: 100%;
  margin: 0 auto;
}
#page.access .access-contens-bus-text {
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2.2105263158;
  margin-bottom: 38px;
}
@media (max-width: 860px) {
  #page.access .access-contens-flow {
    width: 95%;
  }
}
@media (max-width: 767px) {
  #page.access .access-contens {
    padding-top: 65px;
  }
  #page.access .access-contens-title {
    font-size: 31px;
    letter-spacing: 0.12em;
    line-height: 1.66;
    margin-bottom: 35px;
  }
  #page.access .access-contens-icon {
    margin: -8px auto 0;
  }
  #page.access .access-contens-flow {
    display: none;
  }
  #page.access .slider-contens {
    padding: 0px 20px;
  }
  #page.access .access-car-slider, #page.access .access-jr-slider {
    padding-top: 30px;
  }
  #page.access .swiper-button-next {
    background-image: url(../img/access/sp-next-btn.png);
    background-repeat: no-repeat;
    background-size: 26px 26px;
    background-position: right bottom;
    width: 40px;
    height: 40px;
    top: 10px;
    right: 0;
  }
  #page.access .swiper-button-next::after {
    display: none;
  }
  #page.access .swiper-button-prev {
    background-image: url(../img/access/sp-prev-btn.png);
    background-repeat: no-repeat;
    background-size: 26px 26px;
    background-position: left bottom;
    width: 40px;
    height: 40px;
    left: 0;
    top: 10px;
  }
  #page.access .swiper-button-prev::after {
    display: none;
  }
  #page.access .swiper-pagination-fraction {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-right: 40px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 15px;
    letter-spacing: 0.01em;
    font-weight: 500;
    margin: -24px 0 24px;
  }
  #page.access .access-contens-bus-text {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.8571428571;
    margin-bottom: 0;
    margin-top: 32px;
  }
}

@media (hover: hover) {
  .contens-more-btn:hover {
    background-color: #f15a24;
  }
}