 @charset "utf-8";
/* CSS Document */
/* access_overwrite.css */





/* =========================
breakpoint
========================= */
@media screen and ( min-width: 769px ){
    /* SP <> PC ブレークポイント */
}
@media screen and ( min-width: 1389px ){
    /* XDデザインサイズ　1388 */
}





img {
    max-width: none;
    width: 100%;
}
@media screen and ( min-width: 769px ){
    img {
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
c-title--page--full
========================= */
.c-title--page--full {
    height: auto;
}
@media screen and ( min-width: 769px ){
}
@media screen and ( min-width: 1389px ){
}





/* =========================
page_main_visual
========================= */
.page_main_visual .c-title--page--full__title picture {
    width: calc( 99.08 * 100vw / 375 );
    aspect-ratio: 333 / 88;
}
@media screen and ( min-width: 769px ){
    .page_main_visual .c-title--page--full__title picture {
        width: max( min( calc( 152.16 * 100vw / 1388 ), 209.98px ), 152.16px );
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
t-access__guide
========================= */
.l-content-section--v2.t-access__guide {
    padding-top: min( 7.205vw, 120px );
    padding-bottom: min( 7.205vw, 120px );
}
.t-access__guide__map {
    padding-bottom: calc( 20 * 100vw / 375 );
}
.t-access__guide__map__image {
    position:relative;
    z-index: 5;
}
.t-access__guide__map__image figcaption {
    top: 102%;
    right: auto;
    left: 0;
    background-color: transparent;
}
.t-access__guide__map__image figcaption span {
    font-size: 0.8em;
}
@media screen and ( min-width: 769px ){
    .l-content-section--v2.t-access__guide {
    }
    .t-access__guide__map {
        padding-bottom: max( min( calc( 20 * 100vw / 1388 ), 27.6px ), 20px );
    }
    .t-access__guide__map__image {
    }
    .t-access__guide__map__image figcaption {
    }
    .t-access__guide__map__image figcaption span {
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
route_map
========================= */
.route_map {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
@media screen and ( min-width: 769px ){
    .route_map {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: max( min( calc( 50 * 100vw / 1388 ), 69px ), 50px );
        padding: max( min( calc( 60 * 100vw / 1388 ), 82.8px ), 60px ) 0;
        flex-wrap: wrap;
    }
}
@media screen and ( min-width: 1389px ){
}

.route_map-column_left, 
.route_map-column_right, 
.route_map-column_remark {
    position: relative;
    width: 100%;
    margin: 0;
}
.route_map-column_left {
    padding: calc( 20 * 100vw / 375 ) 0 calc( 20 * 100vw / 375 );
}
.route_map-column_right {
    padding: calc( 10 * 100vw / 375 ) 0 calc( 20 * 100vw / 375 );
}
@media screen and ( min-width: 769px ){
    .route_map-column_left, 
    .route_map-column_right {
    }
    .route_map-column_left {
        width: max( min( calc( 498 * 100vw / 1388 ), 687.24px ), 498px );
        width: max( min( calc( 650 * 100vw / 1388 ), 897px ), 650px );
         width: max( min( calc( 521 * 100vw / 1388 ), 719px ), 521px );
       padding: 0;
    }
    .route_map-column_right {
        display: flex;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
        width: max( min( calc( 335 * 100vw / 1388 ), 462.3px ), 335px );
        padding: 0;
    }
    .route_map-column_remark {
        width: calc( max( min( calc( 521 * 100vw / 1388 ), 719px ), 521px ) + max( min( calc( 335 * 100vw / 1388 ), 462.3px ), 335px ) + max( min( calc( 50 * 100vw / 1388 ), 69px ), 50px ) );
        margin: 0 auto;
    }
}
@media screen and ( max-width: 769px ){
    .route_map-column_remark {
        display: none;
    }
}
@media screen and ( min-width: 1389px ){
}

.route_map-title {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: calc( 20 * 100vw / 375 ) 0 calc( 20 * 100vw / 375 );
}
.route_map-title-inner {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0;
    padding: 0;
}
.route_map-title-inner .line_name {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-normal );
    line-height: 1;
    letter-spacing: 0.02em;
}
.route_map-title-inner .wrapper {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    width: auto;
    margin: calc( -10 * 100vw / 375 ) 0 0;
    padding: 0;
}
.route_map-title-inner .content {
    position: relative;
    margin: 0;
    padding: 0 0 calc( 5 * 100vw / 375 );
    font-size: calc( 30 * 100vw / 375 );
    line-height: 1;
    letter-spacing: 0.02em;
}
.route_map-title-inner .content .text_large {
    color: #908552;
    font-size: 1.5em;
    line-height: 1;
    letter-spacing: 0.02em;
}
.route_map-title-inner .remark {
    position: relative;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-small );
    line-height: 1;
    letter-spacing: 0.02em;
    text-align: right;
}
.route_map-image {
    position:relative;
    z-index: 5;
}
.route_map-image figcaption {
    top: 100%;
    right: auto;
    left: 0;
    color: #333;
    background-color: transparent;
}
@media screen and ( min-width: 769px ){
    .route_map-title {
        justify-content: center;
        padding: 0 0 calc( 10 * 100vw / 1388 );
    }
    .route_map-title-inner {
        position: relative;
        display: inline-flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        margin: 0;
        padding: 0;
    }
    .route_map-title-inner .line_name {
        padding: 0;
    }
    .route_map-title-inner .wrapper {
        margin: min( max( calc( -10 * 100vw / 1388 ), -13.8px ), -10px ) 0 0;
    }
    .route_map-title-inner .content {
        padding: 0 0 calc( 5 * 100vw / 1388 );
        font-size: max( min( calc( 45 * 100vw / 1388 ), 62.1px ), 45px );
    }
    .route_map-title-inner .content .text_large {
    }
    .route_map-title-inner .remark {
    }
    .route_map-image {
    }
    .route_map-image figcaption {
        right: 0;
        left: auto;
    }
}
@media screen and ( min-width: 1389px ){
}

.route_map-column_right > .remark {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0 0 calc( 20 * 100vw / 375 );
}
.route_map-column_right > .remark > ul {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc( 5 * 100vw / 375 );
}
.route_map-column_right > .remark > ul li {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-small );
    line-height: 1.66;
    letter-spacing: 0.02em;
}
.route_map-column_right > .remark > ul li span {
    width: calc( 100% - 2em );
}
.route_map-column_right > .remark > ul li span.icon_symbol {
    width: 1.5em;
}
@media screen and ( min-width: 769px ){
    .route_map-column_right > .remark {
        display: none;
        padding: 0;
    }
    .route_map-column_right > .remark > ul {
        gap: max( min( calc( 5 * 100vw / 1388 ), 6.9px ), 5px );
    }
    .route_map-column_right > .remark > ul li {
        line-height: 1.5;
    }
    .route_map-column_right > .remark > ul li span {
        width: calc( 100% - 2em );
    }
    .route_map-column_right > .remark > ul li span.icon_symbol {
        width: 1.5em;
    }
}
@media screen and ( min-width: 1389px ){
}

.route_map-column_right > .wrapper {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.route_map-column_right .route_map-caption {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 10 * 100vw / 375 );
    padding: 0.5em 0;
    font-size: var( --font_size-small );
    line-height: 1;
    letter-spacing: 0.02em;
    text-align: center;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
}
.route_map-column_right .shijou_station, 
.route_map-column_right .kyoto_station {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 5 * 100vw / 375 );
    padding: 0;
}
.route_map-column_right .time_required {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 15 * 100vw / 375 );
    padding: 0;
}
.route_map-column_right .time_required > .content {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 10 * 100vw / 375 );
    padding: 0;
    font-size: var( --font_size-normal );
    line-height: 1;
    letter-spacing: 0.15em;
    text-align: center;
}
.route_map-column_right .time_required > .content .text_large {
    color: #908552;
    font-size: 1.5em;
}
.route_map-column_right .time_required > .remark {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-small );
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-align: center;
}
@media screen and ( min-width: 769px ){
    .route_map-column_right > .wrapper {
    }
    .route_map-column_right .route_map-caption {
        margin: 0 0 calc( 10 * 100vw / 1388 );
    }
    .route_map-column_right .shijou_station, 
    .route_map-column_right .kyoto_station {
        margin: 0 0 max( min( calc( 5 * 100vw / 1388 ), 6.9px ), 5px );
    }
    .route_map-column_right .time_required {
        margin: 0 0 calc( 15 * 100vw / 1388 );
    }
    .route_map-column_right .time_required > .content {
        margin: 0 0 max( min( calc( 5 * 100vw / 1388 ), 6.9px ), 5px );
    }
    .route_map-column_right .time_required > .content .text_large {
    }
    .route_map-column_right .time_required > .remark {
    }
}
@media screen and ( min-width: 1389px ){
}
















.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: none;
}

.leaflet-bar a:last-child {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 0;
}

.leaflet-control-container > * {
  left: auto;
  top: auto;
  bottom: 40px;
  right: 20px;
}
@media screen and (max-width: 768px) {
  .leaflet-control-container > * {
    bottom: min(2.667vw, 12px);
    right: min(2.667vw, 12px);
  }
}




