@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* medium: 500, bold: 700, black: 900 */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400 */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 余白 */
/* 縦書き */
/* 内径 */
/* ------------------------------------------------------------------------*/
/* アクセス
---------------------------------------------------------------------------*/
/* pg-intr - 導入
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .pg-intr-ttl {
    display: block;
  }
  .pg-intr-ttl .hdl-en + .hdl-ja {
    margin-top: 2.6666666667vw;
    margin-left: 0;
  }
}

/* accs-transport - 交通案内
---------------------------------------------------------------------------*/
.accs-transport-ttl {
  position: relative;
  padding-left: 50px;
  padding-bottom: 1.8em;
  border-bottom: 1px solid #656565;
}
@media screen and (max-width: 1300px) {
  .accs-transport-ttl {
    padding-left: 3.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-transport-ttl {
    padding-left: 9.3333333333vw;
    padding-bottom: 1em;
  }
  .accs-transport-ttl .desc {
    line-height: 2.8;
  }
}
.accs-transport-ttl::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 26px;
  height: 26px;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 20%;
}
@media screen and (max-width: 1300px) {
  .accs-transport-ttl::before {
    width: 2vw;
    height: 2vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-transport-ttl::before {
    width: 4.5333333333vw;
    height: 4.5333333333vw;
    top: 40%;
  }
}
.accs-transport-ttl.car::before {
  background-image: url(../img/access/icon-car.png);
}
.accs-transport-ttl.train::before {
  background-image: url(../img/access/icon-train.png);
}
.accs-transport-ttl.air::before {
  background-image: url(../img/access/icon-air.png);
}
.accs-transport-ttl.ferry::before {
  background-image: url(../img/access/icon-ferry.png);
}

/* accs-parking - 近隣駐車場のご案内
---------------------------------------------------------------------------*/
.accs-parking-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 64px;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list {
    margin-top: 4.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list {
    margin-top: 8.5333333333vw;
  }
}
.accs-parking-list {
  gap: 64px 24px;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list {
    gap: 4.9230769231vw 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list {
    gap: 10.6666666667vw;
  }
}
.accs-parking-list article {
  width: 344px;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list article {
    width: 26.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list article {
    width: 100%;
  }
}
.accs-parking-list-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  color: #586473;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list-ttl {
    gap: 1.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list-ttl {
    gap: 1.8666666667vw;
  }
}
.accs-parking-list-ttl .hdl-en + .hdl-ja {
  margin-left: 0;
  margin-top: 0.8em;
  font-weight: 400;
  line-height: 1.7;
}
.accs-parking-list-takes {
  position: relative;
  padding-left: 38px;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list-takes {
    padding-left: 2.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list-takes {
    padding-left: 5.0666666667vw;
  }
}
.accs-parking-list-takes::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
  height: 22px;
  background-image: url(../img/access/icon-walk.png);
}
@media screen and (max-width: 1300px) {
  .accs-parking-list-takes::before {
    width: 1.5384615385vw;
    height: 1.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list-takes::before {
    width: 4vw;
    height: 4.4vw;
  }
}
.accs-parking-list-data {
  width: 100%;
  border-top: 1px solid #939393;
}
.accs-parking-list-data th, .accs-parking-list-data td {
  font-weight: 400;
  border-bottom: 1px solid #939393;
  line-height: 2;
  padding: 0.7em 0 0.7em 0.7em;
  vertical-align: top;
}
.accs-parking-list-data th {
  width: 120px;
}
@media screen and (max-width: 1300px) {
  .accs-parking-list-data th {
    width: 9.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .accs-parking-list-data th {
    width: 27vw;
  }
}