@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 縦書き */
/* 内径 */
/* 文字 */
.intr {
  padding-top: 0;
  padding-bottom: 190px; }
  @media screen and (max-width: 1680px) {
    .intr {
      padding-bottom: 11.3095238095vw; } }
  @media screen and (max-width: 480px) {
    .intr {
      padding-bottom: 25.3333333333vw; } }

/* map
---------------------------------------------------------------------------*/
.map {
  position: relative;
  background-image: url(../img/access/map-bg02.png);
  background-size: 2001px auto;
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 510px;
  margin-bottom: 190px;
  /*&::before {
  	@include bfaf;
  	width: 2000px;
  	height: 1730px;
  	@include bgcontain;
  	@include left50;
  	top: 1106px;
  	background-image: url(../img/cmn/deco-blue2yellow.png);
  	z-index: -1;
  	@include mq(xl) {
  		width: px2vw(2000);
  		height: px2vw(1730);
  		top: px2vw(1106);
  	}
  }*/ }
  @media screen and (max-width: 1680px) {
    .map {
      padding-top: 30.3571428571vw;
      background-size: 119.1071428571vw auto;
      margin-bottom: 11.3095238095vw; } }
  @media screen and (max-width: 480px) {
    .map {
      padding-top: 120vw;
      background-size: 290vw auto;
      background-position: -60vw top; } }
  .map-wrap {
    width: 1080px;
    margin: 0 auto; }
    @media screen and (max-width: 1680px) {
      .map-wrap {
        width: 64.2857142857vw; } }
    @media screen and (max-width: 480px) {
      .map-wrap {
        width: 89.3333333333vw; } }
  .map-list {
    width: 540px;
    margin: 0 0 0 auto;
    padding-bottom: 64px; }
    @media screen and (max-width: 1680px) {
      .map-list {
        width: 32.1428571429vw;
        padding-bottom: 3.8095238095vw; } }
    @media screen and (max-width: 480px) {
      .map-list {
        width: 100%;
        padding-bottom: 8.5333333333vw; } }
    .map-list li {
      position: relative;
      padding-left: 125px;
      padding-top: 10px;
      padding-bottom: 10px;
      border-bottom: 1px solid #a9a19e;
      font-size: 18px;
      color: #585657; }
      @media screen and (max-width: 1680px) {
        .map-list li {
          font-size: 1.0714285714vw; } }
      @media screen and (max-width: 480px) {
        .map-list li {
          font-size: 4.8vw; } }
      @media screen and (max-width: 1680px) {
        .map-list li {
          padding-left: 7.4404761905vw;
          padding-top: 0.5952380952vw;
          padding-bottom: 0.5952380952vw; } }
      @media screen and (max-width: 480px) {
        .map-list li {
          padding-left: 2em;
          padding-top: 0.5em;
          padding-bottom: 0.5em; } }
      .map-list li::before {
        position: absolute;
        content: "";
        width: 25px;
        height: 23px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        background-image: url(../img/access/map-icn@2x.png);
        left: 85px;
        top: 50%;
        transform: translateY(-50%); }
        @media screen and (max-width: 1680px) {
          .map-list li::before {
            width: 1.4880952381vw;
            height: 1.369047619vw;
            left: 5.0595238095vw; } }
        @media screen and (max-width: 480px) {
          .map-list li::before {
            width: 3.3333333333vw;
            height: 3.0666666667vw;
            left: .51em; } }
  .map-wrap2 {
    width: 1280px;
    margin: 0 auto;
    text-align: center;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .map-wrap2 {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .map-wrap2 {
        width: 89.3333333333vw; } }
    .map-wrap2 iframe {
      width: 100%;
      height: 610px; }
      @media screen and (max-width: 1680px) {
        .map-wrap2 iframe {
          height: 36.3095238095vw; } }
      @media screen and (max-width: 480px) {
        .map-wrap2 iframe {
          height: 60vw; } }
  .map-ttl {
    font-size: 22px;
    letter-spacing: .05em;
    padding-top: 38px;
    margin-bottom: 60px; }
    @media screen and (max-width: 1680px) {
      .map-ttl {
        font-size: 1.3095238095vw; } }
    @media screen and (max-width: 480px) {
      .map-ttl {
        font-size: 5.8666666667vw; } }
    @media screen and (max-width: 1680px) {
      .map-ttl {
        padding-top: 2.2619047619vw;
        margin-bottom: 3.5714285714vw; } }
    @media screen and (max-width: 480px) {
      .map-ttl {
        padding-top: 5.0666666667vw;
        margin-bottom: 8vw; } }
  .map-btn {
    width: 520px;
    margin: 0 auto; }
    @media screen and (max-width: 1680px) {
      .map-btn {
        width: 30.9523809524vw; } }
    @media screen and (max-width: 480px) {
      .map-btn {
        width: 89.3333333333vw; } }
    .map-btn a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      position: relative;
      width: 100%;
      height: 80px;
      border: 1px solid #a9a19e;
      border-radius: 8px; }
      @media screen and (max-width: 1680px) {
        .map-btn a {
          height: 4.7619047619vw;
          border-radius: 0.4761904762vw; } }
      @media screen and (max-width: 480px) {
        .map-btn a {
          height: 16vw;
          border-radius: 1.0666666667vw; } }
      .map-btn a span {
        display: block;
        width: 100%;
        white-space: nowrap;
        text-align: center;
        font-size: 18px;
        letter-spacing: .05em;
        padding-left: 1.8em; }
        @media screen and (max-width: 1680px) {
          .map-btn a span {
            font-size: 1.0714285714vw; } }
        @media screen and (max-width: 480px) {
          .map-btn a span {
            font-size: 4.8vw; } }
      .map-btn a::before {
        position: absolute;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        background-image: url(../img/cmn/icn-pin@2x.png);
        width: 21px;
        height: 29px;
        left: 137px;
        top: 50%;
        transform: translateY(-50%); }
        @media screen and (max-width: 1680px) {
          .map-btn a::before {
            width: 1.25vw;
            height: 1.7261904762vw;
            left: 8.1547619048vw; } }
        @media screen and (max-width: 480px) {
          .map-btn a::before {
            width: 2.8vw;
            height: 3.8666666667vw;
            left: 10.6666666667vw; } }
  .map-addr {
    font-size: 18px;
    letter-spacing: .05em;
    line-height: 2.22;
    padding-top: 40px; }
    @media screen and (max-width: 1680px) {
      .map-addr {
        font-size: 1.0714285714vw; } }
    @media screen and (max-width: 480px) {
      .map-addr {
        font-size: 4.8vw; } }
    @media screen and (max-width: 1680px) {
      .map-addr {
        padding-top: 2.380952381vw; } }
    @media screen and (max-width: 480px) {
      .map-addr {
        padding-top: 5.3333333333vw; } }

/* access
---------------------------------------------------------------------------*/
.access {
  margin-bottom: 48px; }
  @media screen and (max-width: 1680px) {
    .access {
      margin-bottom: 2.8571428571vw; } }
  @media screen and (max-width: 480px) {
    .access {
      margin-bottom: 6.4vw; } }
  .access-wrap {
    width: 1280px;
    margin: 0 auto;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .access-wrap {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .access-wrap {
        width: 89.3333333333vw; } }
  .access-wrap2 {
    width: 1080px;
    margin: 0 auto;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .access-wrap2 {
        width: 64.2857142857vw; } }
    @media screen and (max-width: 480px) {
      .access-wrap2 {
        width: 89.3333333333vw; } }
  .access-img img {
    border-radius: 20px; }
    @media screen and (max-width: 1680px) {
      .access-img img {
        border-radius: 1.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .access-img img {
        border-radius: 2.6666666667vw;
        width: 100%;
        height: 60vw;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;"; } }
  .access .pg-ttl {
    padding-top: 38px;
    margin-bottom: 60px;
    text-align: center; }
    @media screen and (max-width: 1680px) {
      .access .pg-ttl {
        padding-top: 2.2619047619vw;
        margin-bottom: 3.5714285714vw; } }
    @media screen and (max-width: 480px) {
      .access .pg-ttl {
        padding-top: 5.0666666667vw;
        margin-bottom: 8vw; } }
  .access .pg-desc {
    margin-bottom: 60px; }
    @media screen and (max-width: 1680px) {
      .access .pg-desc {
        margin-bottom: 3.5714285714vw; } }
    @media screen and (max-width: 480px) {
      .access .pg-desc {
        margin-bottom: 8vw; } }

.route {
  margin-bottom: 96px;
  /*&.train {
  	position: relative;
  	&::before {
  		@include bfaf;
  		width: 2000px;
  		height: 1126px;
  		@include bgcontain;
  		@include left50;
  		top: 320px;
  		background-image: url(../img/cmn/deco-blue@2x.png);
  		z-index: -1;
  		@include mq(xl) {
  			width: px2vw(2000);
  			height: px2vw(1126);
  			top: px2vw(320);
  		}
  	}
  }
  &.bus {
  	position: relative;
  	&::before {
  		@include bfaf;
  		width: 2000px;
  		height: 1126px;
  		@include bgcontain;
  		@include left50;
  		top: 96px;
  		background-image: url(../img/cmn/deco-yellow@2x.png);
  		z-index: -1;
  		@include mq(xl) {
  			width: px2vw(2000);
  			height: px2vw(1126);
  			top: px2vw(96);
  		}
  	}
  }*/ }
  @media screen and (max-width: 1680px) {
    .route {
      margin-bottom: 5.7142857143vw; } }
  @media screen and (max-width: 480px) {
    .route {
      margin-bottom: 12.8vw; } }
  .route-wrap {
    width: 1280px;
    margin: 0 auto;
    border: 1px solid #a9a19e;
    border-radius: 20px;
    padding: 64px 100px; }
    @media screen and (max-width: 1680px) {
      .route-wrap {
        width: 76.1904761905vw;
        border-radius: 1.1904761905vw;
        padding: 3.8095238095vw 5.9523809524vw; } }
    @media screen and (max-width: 480px) {
      .route-wrap {
        width: 89.3333333333vw;
        border-radius: 2.6666666667vw;
        padding: 8.5333333333vw 5.3333333333vw; } }
  .route-ttl {
    margin-bottom: 40px;
    color: #585657;
    text-align: center; }
    @media screen and (max-width: 1680px) {
      .route-ttl {
        margin-bottom: 2.380952381vw; } }
    @media screen and (max-width: 480px) {
      .route-ttl {
        margin-bottom: 5.3333333333vw; } }

/* parking
---------------------------------------------------------------------------*/
.parking {
  margin-bottom: 190px; }
  @media screen and (max-width: 1680px) {
    .parking {
      margin-bottom: 11.3095238095vw; } }
  @media screen and (max-width: 480px) {
    .parking {
      margin-bottom: 25.3333333333vw; } }
  .parking-wrap {
    width: 1280px;
    margin: 0 auto;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .parking-wrap {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .parking-wrap {
        width: 89.3333333333vw; } }
  .parking-wrap2 {
    width: 1080px;
    margin: 0 auto;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .parking-wrap2 {
        width: 64.2857142857vw; } }
    @media screen and (max-width: 480px) {
      .parking-wrap2 {
        width: 89.3333333333vw; } }
  .parking-img img {
    border-radius: 20px; }
    @media screen and (max-width: 1680px) {
      .parking-img img {
        border-radius: 1.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .parking-img img {
        border-radius: 2.6666666667vw;
        width: 100%;
        height: 60vw;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;"; } }
  .parking .pg-ttl {
    padding-top: 38px;
    margin-bottom: 60px;
    text-align: center; }
    @media screen and (max-width: 1680px) {
      .parking .pg-ttl {
        padding-top: 2.2619047619vw;
        margin-bottom: 3.5714285714vw; } }
    @media screen and (max-width: 480px) {
      .parking .pg-ttl {
        padding-top: 5.0666666667vw;
        margin-bottom: 8vw; } }
  .parking .pg-desc {
    margin-bottom: 60px; }
    @media screen and (max-width: 1680px) {
      .parking .pg-desc {
        margin-bottom: 3.5714285714vw; } }
    @media screen and (max-width: 480px) {
      .parking .pg-desc {
        margin-bottom: 8vw; } }
  .parking ul {
    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: 480px) {
      .parking ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; } }
    .parking ul li {
      width: 620px; }
      @media screen and (max-width: 1680px) {
        .parking ul li {
          width: 36.9047619048vw; } }
      @media screen and (max-width: 480px) {
        .parking ul li {
          width: 100%; }
          .parking ul li + li {
            margin-top: 8vw; } }
      .parking ul li img {
        border-radius: 13px; }
        @media screen and (max-width: 1680px) {
          .parking ul li img {
            border-radius: 0.7738095238vw; } }
        @media screen and (max-width: 480px) {
          .parking ul li img {
            border-radius: 1.7333333333vw; } }
      .parking ul li p {
        padding: 40px 100px;
        font-size: 22px;
        letter-spacing: .05em;
        padding: 5.3333333333vw; }
        @media screen and (max-width: 1680px) {
          .parking ul li p {
            font-size: 1.3095238095vw; } }
        @media screen and (max-width: 480px) {
          .parking ul li p {
            font-size: 5.8666666667vw; } }
        @media screen and (max-width: 1680px) {
          .parking ul li p {
            padding: 2.380952381vw 5.9523809524vw; } }

/* link
---------------------------------------------------------------------------*/
.link {
  position: relative;
  /*&::before {
  	@include bfaf;
  	width: 2000px;
  	height: 1126px;
  	@include bgcontain;
  	@include left50;
  	top: -411px;
  	background-image: url(../img/cmn/deco-blue@2x.png);
  	z-index: -1;
  	@include mq(xl) {
  		width: px2vw(2000);
  		height: px2vw(1126);
  		top: px2vw(-411);
  	}
  }*/ }
  .link .pg-ttl {
    text-align: center;
    color: #646432;
    margin-bottom: 40px; }
    @media screen and (max-width: 1680px) {
      .link .pg-ttl {
        margin-bottom: 2.380952381vw; } }
    @media screen and (max-width: 480px) {
      .link .pg-ttl {
        margin-bottom: 5.3333333333vw; } }
  .link-wrap {
    width: 1280px;
    margin: 0 auto;
    border: 1px solid #a0a078;
    border-radius: 20px;
    padding: 64px 100px;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .link-wrap {
        width: 76.1904761905vw;
        border-radius: 1.1904761905vw;
        padding: 3.8095238095vw 5.9523809524vw; } }
    @media screen and (max-width: 480px) {
      .link-wrap {
        width: 89.3333333333vw;
        border-radius: 2.6666666667vw;
        padding: 8.5333333333vw 5.3333333333vw; } }
  .link th {
    width: 480px; }
    @media screen and (max-width: 1680px) {
      .link th {
        width: 28.5714285714vw; } }
  .link td {
    width: 600px; }
    @media screen and (max-width: 1680px) {
      .link td {
        width: 35.7142857143vw; } }
