@charset "utf-8";
/*--京access.css--*/
/* ##########PC########## */
.access_box{}

.page_h_list{
    position: relative;
    padding-bottom: 5rem;
}

.page_h_list_inner{
    width: 41.25rem;
    margin: 0 auto;
    position: relative;
}

.page_h_list_inner::before{
    content:"";
    display: block;
    width: 8rem;
    height: 10.5rem;
    background: url(../shared/access/illust_access01.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -2rem;
    right: -12rem;
    z-index: 2;
}

.page_h_list_inner ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1rem;
}

.page_h_list_inner ul li{
    width: calc((100% - 1rem) / 2);
}

.page_h_list_inner ul li a{
    font-size: 1.1em;
    display: block;
    padding: 1.2em 3rem 1.2em 2.5rem;
    text-align: center;
    background: #f5f5f5;
    color: #222 !important;
    font-weight: 600;
    border-radius: 2em;
    text-decoration: none;
    line-height: 1;
    position: relative;
    transition: .5s all ease;
}

.page_h_list_inner ul li a:hover{
    opacity: 0.8;
    box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.45);
}

.page_h_list_inner ul li a::before{
    content: "";
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    background: #202020;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 1.25rem);
    right: 0.5rem;
}

.page_h_list_inner ul li a::after{
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    background: url(../shared/icon_arrow_w.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 0.5rem);
    right: 1.25rem;
}

.page_h_list_inner ul li:first-child a::after,
.page_h_list_inner ul li:nth-child(2) a::after{
    transform: rotate(90deg);
}

/*access_map_box_1*/
.access_map_box_1{
    margin-bottom: 4rem;
}

.access_wrap{
    width: 61rem;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 3rem;
    margin: 0 auto 3rem auto;
}

.access_wrap .access_img{
    width: 30rem;
    position: relative;
}

.access_wrap .access_img img{
    max-width: 100%;
    height: auto;
    border-radius: 1rem;
}

.access_wrap .car_access_time{
    box-sizing: border-box;
    width: calc(100% - 3rem);
    margin: 0;
    border: 4px solid #1266a4;
    background: #fff;
    padding: 0.5rem 2rem 0.5rem 5rem;
    border-radius: 3rem;
    position: relative;
    line-height: 1.4;
    position: absolute;
    bottom: 1.5rem;
    left: 1.5rem;
}

.access_wrap .car_access_time .car_icon{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.75rem;
    height: 3.75rem;
    background: #e1f4fa;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 1.875rem);
    left: 0.7rem;
}

.access_wrap .car_access_time .car_icon img{
    max-width: 2.5rem;
    height: auto;
}

.access_wrap .car_access_time dl{
    text-align: center;
}

.access_wrap .car_access_time dl dt{
    font-size: 1.1rem;
}

.access_wrap .car_access_time dl dd{
    font-size: 1.4rem;
    color: #1266a4;
    font-weight: 600;
    font-family: "Zen Maru Gothic", sans-serif;
}

.access_wrap .car_access_time dl dd .number{
    padding: 0 0.3rem;
    font-size: 1.7rem;
}

.access_wrap .access_detail{
    flex: 1;
    line-height: 1.6;
}

.access_wrap .access_detail .nav_box{
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.access_wrap .access_detail .nav_box .nav_box_header{
    text-align: center;
    font-weight: 600;
    padding: 0.5rem 1.5rem;
    background: #face9f;
    font-size: 1.1rem;
    font-family: "Zen Maru Gothic", sans-serif;
    border-radius: 100vh;
}

.access_wrap .nav_box .nav_box_inner{
    padding: 1rem 0.2rem;
    background: #fff;
}

.access_wrap .nav_box .nav_box_inner p{
    margin-bottom: 1rem;
}

.page_body .nav_box table{
    margin: 0;
    border-top: none;
}

.page_body .access_wrap .nav_box .nav_box_inner table th{
    padding: 0 1rem 0 0;
    white-space: nowrap;
    vertical-align: top;
    border-bottom: none;
    font-weight: normal;
}

.page_body .access_wrap .nav_box .nav_box_inner table td{
    padding: 0;
    border-bottom: none;
}

.access_wrap .nav_box .nav_box_inner table td .fs_s{
    font-size: 0.9rem;
    color: #858585;
}


.access_wrap .access_detail .car_chui_box{
    border-radius: 1.5rem;
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.access_wrap .access_detail .car_chui_box .car_chui_box_header{
    text-align: center;
    font-weight: 600;
    padding: 0.5rem 1.5rem;
    background: #fbbfb5;
    font-size: 1.1rem;
    font-family: "Zen Maru Gothic", sans-serif;
    border-radius: 100vh;
}

.access_wrap .access_detail .car_chui_box .car_chui_box_inner{
    padding: 1rem 0.2rem;
    background: #fff;
}

.access_wrap .access_detail .car_chui_box .car_chui_box_inner ul li{
    padding-left: 1rem;
    margin-bottom: 1rem;
    position: relative;
}

.access_wrap .access_detail .car_chui_box .car_chui_box_inner ul li::before{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.access_wrap .access_detail .car_chui_box .car_chui_box_inner ul li:last-child{
    margin-bottom: 0;
}

.gmap{}

.gmap iframe{
    width: 100%;
    height: 28.125rem;
}

.access_map_box_2{}

.access_box h2{
    padding: 1.3rem 2.75rem;
    font-size: 1.5rem;
    color: #fff;
    font-weight: 500;
    font-family: "Zen Maru Gothic", sans-serif;
    background: #666666;
    border-radius: 2.2rem;
    margin-bottom: 1.5rem;
}

.access_car_img{
    width: 60rem;
    margin: 0 auto 3rem auto;
}

.access_car_img p{
    margin-bottom: 2rem;
}

.access_car_img img{
    max-width: 100%;
    height: auto;
    border-radius: 1rem;
}

.access_route_detail{
    width: 60rem;
    margin: 0 auto 4rem auto;
}

.access_route_detail ul li{
    padding: 2rem 1.5rem;
    border-bottom: 1px solid #d9d9d9;
}

.access_route_detail ul li .access_route_ttl{
    padding-left: 3rem;
    font-size: 1.5rem;
    color: #222;
    font-weight: 600;
    font-family: "Zen Maru Gothic", sans-serif;
    margin-bottom: 1rem;
    position: relative;
}

.access_route_detail ul li .access_route_ttl::before{
    content:"";
    display: block;
    width: 2rem;
    height: 2rem;
    background-image: url(../shared/access/icon_access_car.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 1rem);
    left: 0;
}

.access_route_detail ul li .access_route_ttl.by_bus::before{
    background-image: url(../shared/access/icon_access_bus.png);
}

.access_route_detail ul li .access_route_ttl.by_jr::before{
    background-image: url(../shared/access/icon_access_jr.png);
}

.access_route_detail ul li dl{
    display: flex;
    justify-content: flex-start;
}

.access_route_detail ul li dl dt{
    width: 8rem;
    margin-right: 1rem;
}

.access_route_detail ul li dl dd{
    flex: 1;
}

.access_kokyokoutsuu_img_box{
    width: 60rem;
    margin: 0 auto 2rem auto;
}

.access_kokyokoutsuu_img_box p{
    margin-bottom: 2rem;
}

.access_kokyokoutsuu_wrap{
    display: flex;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.access_kokyokoutsuu_wrap .access_kokyokoutsuu_img{
    width: 29rem;
}

.access_kokyokoutsuu_img img{
    max-width: 100%;
    height: auto;
    border-radius: 1rem;
}

/*20260420追加*/
.access_way_box{
    width: 60rem;
    margin: 0 auto 2rem auto;
}

    .access_way_box > .box_header{
        display: flex;
        flex-direction: column;
        margin-bottom: 1rem;
    }

        .access_way_box > .box_header h3{
            margin-top: 0;
            color: #222;
            font-weight: 600;
            font-family: "Zen Maru Gothic", sans-serif;
            font-size: 1.5rem;
        }

    .access_way_box ul{
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
        counter-reset: access_no 0;
    }

    .access_way_box ul li{
        box-sizing: border-box;
        width: calc((100% - 2rem) / 2);
        counter-increment: access_no 1;
        background: #f5f5f5;
        border-radius: 1rem;
        padding: 1.25rem 1.5rem;
    }

        .access_way_box ul li dl dt{
            font-family: "Zen Maru Gothic", sans-serif;
            font-weight: 500;
            font-size: 1.2rem;
            margin-bottom: 0.2em;
            position: relative;
            padding-left: 1.3em;
        }

            .access_way_box ul li dl dt::before{
                content: counter(access_no);
                display: inline-flex;
                justify-content: center;
                align-items: center;
                font-size: 0.98rem;
                width: 1.25rem;
                height: 1.25rem;
                border-radius: 50%;
                position: absolute;
                top: 0.5em;
                left: 0;
                color: #fff;
                background: #044f9d;
            }

            .access_way_box ul li:nth-child(2) dl dt::before{
                background: #009e62;
            }

            .access_way_box ul li:nth-child(3) dl dt::before{
                background: #e90337;
            }

            .access_way_box ul li:nth-child(4) dl dt::before{
                background: #cc18bd;
            }

            .access_way_box ul li:nth-child(5) dl dt::before{
                background: #f07a1a;
            }

            .access_way_box ul li:nth-child(6) dl dt::before{
                background: #d41455;
            }

        .access_way_box ul li dl dd{
            width: 100%;
            aspect-ratio: 16 / 9;
        }

        .access_way_box ul li dl dd iframe{
            width: 100%;
            height: 100%;
        }

/*ipad*/
@media screen and (min-width:1px) and (max-width:1024px){
    .access_wrap .nav_box .nav_box_inner p{
        line-height: 1.6;
    }

    .page_h_list_inner{
        width: 75vw;
    }

    .page_h_list_inner::before{
        right: -9rem;
    }

    .page_h_list{
        padding-bottom: 3rem;
    }

    .access_wrap{
        width: auto;
        gap: 2rem;
    }

    .access_wrap .access_img{
        width: 44vw;
    }

    .access_wrap .car_access_time{
        width: calc(100% - 1rem);
        padding: 0.5rem 2rem 0.5rem 4rem;
        white-space: nowrap;
        left: 0.5rem;
    }

    .access_wrap .access_detail .car_chui_box{
        margin-bottom: 0;
    }

    .gmap iframe{
        height: 25.125rem;
    }

    .access_box h2{
        padding: 1.3rem 1.75rem;
    }

    .access_car_img{
        width: auto;
        margin: 0 1.75rem 1rem 1.75rem;
    }

    .access_route_detail{
        width: auto;
        margin: 0 1.75rem 4rem 1.75rem;
    }

    .access_kokyokoutsuu_img_box{
        width: auto;
        margin: 0 1.75rem 2rem 1.75rem;
    }

    .access_kokyokoutsuu_wrap{
        gap: 2rem;
    }

    .access_kokyokoutsuu_wrap .access_kokyokoutsuu_img{
        width: calc((100% - 2rem) / 2);
    }

    /*20260420追加*/
    .access_way_box{
        width: auto;
        margin: 0 1.75rem 2rem 1.75rem;
    }

}
/* ##########SP横向き########## */
@media screen and (min-width:1px) and (max-width:768px) {

}

/* ##########SP########## */
@media screen and (min-width:1px) and (max-width:479px) {
    .page_body .access_wrap .nav_box .nav_box_inner table th{
        font-weight: 600;
    }

    .page_h_list_inner{
        width: 70vw;
    }

    .page_h_list_inner ul{
        gap: 0.8rem;
    }

    .page_h_list_inner ul li{
        width: 100%;
    }

    .page_h_list_inner ul li a{
        padding: 0.8em 3rem 0.8em 1.5rem;
    }

    .page_h_list_inner ul li a::before{
        width: 2rem;
        height: 2rem;
        top: calc(50% - 1rem);
        right: 0.5rem;
    }

    .page_h_list_inner ul li a::after{
        top: calc(50% - 0.5rem);
        right: 1rem;
    }

    .page_h_list_inner::before{
        width: 6.4rem;
        height: 8.4rem;
        top: 1rem;
        right: -6.5rem;
    }

    .access_wrap{
        flex-direction: column;
        margin: 0 auto 2rem auto;
    }

    .access_wrap .access_img{
        width: auto;
    }

    .access_box h2{
        padding: 1rem;
        font-size: 1.3rem;
    }

    .access_car_img{
        margin: 0 1rem 1rem 1rem;
    }

    .access_car_img p{
        margin-bottom: 1.5rem;
    }

    .access_route_detail{
        margin: 0 1rem 3rem 1rem;
    }

    .access_route_detail ul li{
        padding: 1.1rem 0.8rem;
    }

    .access_route_detail ul li .access_route_ttl{
        font-size: 1.2rem;
        padding-left: 2.5rem;
        margin-bottom: 0.2em;
    }

    .access_route_detail ul li .access_route_ttl::before{
        width: 1.75rem;
        height: 1.75rem;
        top: calc(50% - 0.875rem);
    }

    .access_route_detail ul li dl{
        margin-bottom: 0.5rem;
        line-height: 1.5;
    }

    .access_route_detail ul li dl dt{
        width: 4rem;
        font-weight: 600;
    }

    .access_kokyokoutsuu_img_box{
        margin: 0 1rem 1rem 1rem;
    }

    .access_kokyokoutsuu_img_box p{
        margin-bottom: 1.5rem;
    }

    .access_kokyokoutsuu_wrap{
        gap: 1rem;
        margin-bottom: 1rem;
    }

    .access_kokyokoutsuu_wrap .access_kokyokoutsuu_img{
        width: calc((100% - 1rem) / 2);
    }

    .access_route_txt{
        line-height: 1.5;
    }

    /*20260420追加*/
    .access_way_box{
        margin: 0 1rem 1rem 1rem;
    }

    .access_way_box > .box_header h3{
        font-size: 1.2rem;
    }

    .access_way_box ul{
        flex-direction: column;
        gap: 1.5rem;
    }

    .access_way_box ul li{
        width: 100%;
        padding: 0.75rem;
    }

    .access_way_box ul li dl dt{
        font-size: 1.05rem;
        padding-left: 1.5em;
        line-height: 1.4;
        margin-bottom: 0.4em;
    }

    .access_way_box ul li dl dt::before{
        top: 0.1em;
    }

}


/* ##########印刷用########## */
@media print{

}