@charset "UTF-8";
/* access layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400, medium: 500, bold: 700 */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400 */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 余白 */
/* 縦書き */
/* 内径 */
/* 文字にグラデ */
/* ------------------------------------------------------------------------*/
/* レイアウト
---------------------------------------------------------------------------*/
/* spot
---------------------------------------------------------------------------*/
.spot {
  /* 1080 */
  width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1440px) {
  .spot {
    width: 88.8888888889vw;
  }
}
@media screen and (max-width: 480px) {
  .spot {
    /* 100vw = 393 */
    width: 79.6437659033vw;
  }
}
.spot-ttl {
  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;
}
.spot-tx {
  text-align: center;
  margin-bottom: 110px;
}
@media screen and (max-width: 1440px) {
  .spot-tx {
    margin-bottom: 7.6388888889vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-tx {
    margin-bottom: 27.989821883vw;
  }
}
.spot-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 80px 40px;
}
@media screen and (max-width: 1440px) {
  .spot-list {
    gap: 5.5555555556vw 2.7777777778vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-list {
    gap: 20.3562340967vw 10.1781170483vw;
  }
}
.spot-item {
  width: 400px;
}
@media screen and (max-width: 1440px) {
  .spot-item {
    width: 27.7777777778vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-item {
    width: 100%;
  }
}
.spot-name {
  font-size: 24px;
}
@media screen and (max-width: 1440px) {
  .spot-name {
    font-size: 1.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-name {
    font-size: 6.106870229vw;
  }
}
.spot-name {
  color: #0E42AB;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 24px;
}
@media screen and (max-width: 1440px) {
  .spot-name {
    margin-bottom: 1.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-name {
    margin-bottom: 6.106870229vw;
  }
}
.spot-time {
  background-color: #363540;
  color: #ffffff;
  margin-bottom: 24px;
}
@media screen and (max-width: 1440px) {
  .spot-time {
    margin-bottom: 1.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-time {
    margin-bottom: 6.106870229vw;
  }
}
.spot-time {
  padding: 6px;
  text-align: center;
}
@media screen and (max-width: 1440px) {
  .spot-time {
    padding: 0.4166666667vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-time {
    padding: 1.5267175573vw;
  }
}
.spot-desc {
  margin-bottom: 30px;
}
@media screen and (max-width: 1440px) {
  .spot-desc {
    margin-bottom: 2.0833333333vw;
  }
}
@media screen and (max-width: 480px) {
  .spot-desc {
    margin-bottom: 7.6335877863vw;
  }
}

/* route
---------------------------------------------------------------------------*/
.route {
  /* 1080 */
  width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1440px) {
  .route {
    width: 88.8888888889vw;
  }
}
@media screen and (max-width: 480px) {
  .route {
    /* 100vw = 393 */
    width: 79.6437659033vw;
  }
}
.route {
  margin-bottom: 96px;
}
@media screen and (max-width: 1440px) {
  .route {
    margin-bottom: 6.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .route {
    margin-bottom: 24.427480916vw;
  }
}
.route-ttl {
  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;
}
.route .gmap {
  margin-top: 30px;
}
@media screen and (max-width: 1440px) {
  .route .gmap {
    margin-top: 2.0833333333vw;
  }
}
@media screen and (max-width: 480px) {
  .route .gmap {
    margin-top: 7.6335877863vw;
  }
}
.route article + article {
  margin-top: 80px;
}
@media screen and (max-width: 1440px) {
  .route article + article {
    margin-top: 5.5555555556vw;
  }
}
@media screen and (max-width: 480px) {
  .route article + article {
    margin-top: 20.3562340967vw;
  }
}

/* parking
---------------------------------------------------------------------------*/
.parking {
  /* 1080 */
  width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1440px) {
  .parking {
    width: 88.8888888889vw;
  }
}
@media screen and (max-width: 480px) {
  .parking {
    /* 100vw = 393 */
    width: 79.6437659033vw;
  }
}
.parking {
  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;
}
@media screen and (max-width: 480px) {
  .parking {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10.1781170483vw;
  }
}
.parking-img {
  width: 580px;
}
@media screen and (max-width: 1440px) {
  .parking-img {
    width: 40.2777777778vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-img {
    width: 100%;
  }
}
.parking-tx {
  width: 644px;
}
@media screen and (max-width: 1440px) {
  .parking-tx {
    width: 44.7222222222vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-tx {
    width: 100%;
  }
}
.parking-tx .ttl-en {
  font-size: 36px;
}
@media screen and (max-width: 1440px) {
  .parking-tx .ttl-en {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-tx .ttl-en {
    font-size: 9.1603053435vw;
  }
}
.parking-tx .ttl-en-underja {
  font-size: 20px;
}
@media screen and (max-width: 1440px) {
  .parking-tx .ttl-en-underja {
    font-size: 1.3888888889vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-tx .ttl-en-underja {
    font-size: 5.0890585242vw;
  }
}
.parking-tx > .desc {
  margin-top: 40px;
}
@media screen and (max-width: 1440px) {
  .parking-tx > .desc {
    margin-top: 2.7777777778vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-tx > .desc {
    margin-top: 10.1781170483vw;
  }
}
.parking-tx > .desc {
  margin-bottom: 22px;
}
@media screen and (max-width: 1440px) {
  .parking-tx > .desc {
    margin-bottom: 1.5277777778vw;
  }
}
@media screen and (max-width: 480px) {
  .parking-tx > .desc {
    margin-bottom: 5.5979643766vw;
  }
}