@charset "UTF-8";
.mv .cap-image .cap {
    color : #fff;
}
.inner {
    margin: auto;
    padding-right: 15px;
    padding-left: 15px;
    max-width: 1030px;
}
#sec-access {
    color: #fff;
    background : #000 url(../img/bg-br_pc.jpg) repeat-y;
    background-size : 100%;
}
@media screen and (max-width: 767px) {
  #sec-access {
    background : url(../img/bg-br_sp.jpg) repeat-y;
    background-size : 100%;
  }
}
.access-title {
    margin: 0 0 80px;
    text-align: center;
}
.access-title .ttl {
    font-size: 27px;
    letter-spacing: 0.075em;
    margin: 0 0 25px;
}
.access-title .txt {
    font-size: 15px;
    letter-spacing: 0.01em;
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .access-title { margin: 0 0 50px; }
    .access-title .ttl { letter-spacing: 0.01em; }
}
.subway-block { 
    padding: clamp(50px, 6.9444444444444444444vw, 100px) 0 0;
}
.subway-img img { width: 100%;}
.subway-map {
    margin: 0 auto clamp(40px, 6.9444444444444444444vw, 100px);
    max-width: 960px;
    display: grid;
    grid-template-columns: 33.4% auto;
    column-gap: clamp(20px, 3.4722222222222222222vw, 50px);
    row-gap: 40px;
}
.subway-map .desc { margin-top: clamp(20px, 2.7777777777777777778vw, 40px);}
.subway-map .desc .info { margin-top: clamp(20px, 2.0833333333333333333vw, 30px);}
@media screen and (max-width: 767px) {
    .subway-map { grid-template-columns: 1fr;}
    .subway-block .access-title .txt { letter-spacing: 0;}
    .subway-map .desc { margin-top: 0px;}
    .subway-map .desc .photo{
        width: 86%;
        margin: auto;
    }
    .subway-map .desc .info { margin: 35px 5px 0;}
    .subway-map .desc .info img { width: 100%;}
}

.station-block { padding: clamp(50px, 6.9444444444444444444vw, 100px) 0 clamp(50px, 6.9444444444444444444vw, 100px);}
.station-ttl .ttl {
    font-size: clamp(15px, 1.5277777777777777778vw, 22px);
    line-height: 1.7;
    margin-bottom: clamp(2px, 0.34722222222222222222vw, 5px);
}
.station-ttl .txt {
    font-size: clamp(10px, 0.83333333333333333333vw, 12px);
    line-height: 1.5;
}
.station-time { margin: clamp(20px, 1.7361111111111111111vw, 25px) auto clamp(50px, 4.5138888888888888889vw, 65px);}
.station-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 0;
    column-gap: clamp(15px, 1.7361111111111111111vw, 25px);
    row-gap: 20px;
    margin-bottom: 25px;
}
.station-list .img { margin-bottom: clamp(10px, 1.0416666666666666667vw, 15px);}
.station-direct {
    display: grid;
    grid-template-columns: repeat(3, auto);
    padding: clamp(20px, 1.7361111111111111111vw, 25px) 0 clamp(20px, 2.0833333333333333333vw, 30px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: clamp(50px, 5.9027777777777777778vw, 85px);
    justify-content: center;
    gap: 50px;
}
.station-car {
    display: grid;
    grid-template-columns: 23% auto;
    column-gap: clamp(20px, 3.4722222222222222222vw, 50px);
    row-gap: 50px;
    align-items: center;
    margin-bottom: 25px;
}
.station-car .ttl {
    font-size: 21px;
    line-height: 1.7;
    margin-bottom: 20px;
}
.station-car .txt {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.7;
}
.station-box {
    background-color: rgba(255, 255, 255, 0.2);
    padding: 25px 15px 25px;
}
@media screen and (max-width: 767px) {
    .station-block .access-title { margin-bottom: 50px!important;}
    .station-list {
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: 55px;
    }
    .station-direct {
        grid-template-columns: 1fr;
        padding: 0;
        gap: 0;
    }
    .station-direct li { padding: 20px 8%;}
    .station-direct li + li { border-top: 1px solid #fff;}
    .station-direct .station-ttl .ttl { font-size: 22px;}
    .station-direct .station-ttl .txt { font-size: 12px;}
    .station-car {
        grid-template-columns: 1fr;
        margin-bottom: 50px;
    }
    .station-car .desc { text-align: center;}
    .station-car .img {
        width: 85%;
        margin: auto;
    }
    .station-car .txt {
        font-size: 15px;
        letter-spacing: 0.01em;
        line-height: 2;
    }
    .station-box {
        margin: 0 -15px 0;
        padding: 40px 15px 55px;
    }
    .station-box .cap-image {
        width: 60%;
        margin: auto;
    }
}