@charset "utf-8";
/*--京home.css--*/
/* ##########PC########## */
header > .box_inner{
    align-items: center;
    justify-content: space-between;
    padding-right: 8rem;
}

.contents{
    padding-top: 0;
    padding-bottom: 0;
}

/*mainvisual*/
.mainvisual{
    box-sizing: border-box;
    background-image: url(../shared/fig_mv1.png);
    background-repeat: no-repeat;
    background-size: auto 67.5rem;
    background-position: center center;
    width: 100%;
    /*aspect-ratio: 288 / 162;*/
    height: 50rem;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 5.5rem;
    position: relative;
}

    .mainvisual::before,
    .mainvisual::after{
        content: "";
        display: block;
        width: 100%;
        height: 30rem;
        position: absolute;
        left: 0;
        z-index: 1;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .mainvisual::before{
        bottom: -9.5rem;
        background-image: url(../shared/fig_mv2.png);
        background-position: left calc(50% - 44.5rem) center;
    }

    .mainvisual::after{
        bottom: -9.5rem;
        background-image: url(../shared/fig_mv3.png);
        background-position: right calc(50% - 39.5rem) center;
    }

    .mainvisual > .box_inner{
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 4rem;
        position: relative;
        z-index: 2;
    }

        .mainvisual > .box_inner .mv_lbls{
        }

            .mainvisual > .box_inner .mv_lbls1{
                margin-bottom: 2.5rem;
            }

                .mainvisual > .box_inner .mv_lbls1 p{
                    display: flex;
                    flex-direction: column;
                    align-items: flex-start;
                }

                    .mainvisual > .box_inner .mv_lbls1 p img{
                        height: 100%;
                        width: auto;
                    }

                    .mainvisual > .box_inner .mv_lbls1 p .lbl1{
                        height: 3rem;
                        margin-bottom: 3rem;
                    }

                    .mainvisual > .box_inner .mv_lbls1 p .lbl2,
                    .mainvisual > .box_inner .mv_lbls1 p .lbl3{
                        height: 5.25rem;
                        margin-bottom: 1rem;
                    }

                    .mainvisual > .box_inner .mv_lbls1 p .lbl4{
                        height: 4.75rem;
                    }

            .mainvisual > .box_inner .mv_lbls2{}

                .mainvisual > .box_inner .mv_lbls2 p.pc{
                    display: flex;
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 1em;
                }

                    .mainvisual > .box_inner .mv_lbls2 p.pc .lbl{
                        background: rgba(255, 255, 255, 0.99);
                        color: #12208b;
                        padding: 0.2em 0.2em 0.1em 0.2em;
                        font-weight: 500;
                        font-size: 1.1em;
                    }

                .mainvisual > .box_inner .mv_lbls2 p.sp{
                    display: none;
                }

        .mainvisual > .box_inner .mv_fig{
            width: 17rem;
            margin-top: 6rem;
        }

            .mainvisual > .box_inner .mv_fig img{
                max-width: 100%;
                height: auto;
            }

/*information_box*/
.information_box{
    background-image:
        url(../shared/bg_box_common.png),
        url(../shared/bg_information.png);
    background-repeat:
        no-repeat,
        no-repeat;
    background-position:
        center center,
        center bottom;
    background-size:
        cover,
        100% auto;
    padding-bottom: 9rem;
    /*margin-top: -5rem;*/
    position: relative;
}

    .information_box > .box_header{
        margin-bottom: 2.5rem;
    }

        .information_box > .box_header .msg_change{
            display: flex;
            flex-direction: column;
            align-items: center;
            margin-bottom: 3em;
        }

            .information_box > .box_header .msg_change p{
                color: #d7147d;
            }

            .information_box > .box_header .msg_change p .c1{
                color: #0f228b;
            }

            .information_box > .box_header .msg_change p .c2{
                color: #029ece;
            }

                .information_box > .box_header .msg_change p.lbl1{
                    font-weight: 700;
                    font-size: 2.75rem;
                }

                .information_box > .box_header .msg_change p.lbl2{
                    font-weight: 700;
                    font-size: 1.5rem;
                    margin-top: 0.8em;
                }

        .information_box > .box_header .topics_slider_box{
        }

            .information_box > .box_header .topics_slider_box > .box_inner{
                width: 37rem;
                margin: 0 auto;
            }

                .information_box > .box_header .slide_obj{
                    width: 36rem;
                    padding: 0.5rem;
                }

                    .information_box > .box_header .slide_obj a{
                        display: block;
                        transition: .3s all ease;
                    }

                    .information_box > .box_header .slide_obj a:hover{
                        box-shadow: 0 0 0 1px #0f228b;
                    }

                        .information_box > .box_header .slide_obj a .fig{
                            display: block;
                            overflow: hidden;
                            border-radius: 0.5rem;
                        }

                        .information_box > .box_header .slide_obj a img{
                            max-width: 100%;
                            height: auto;
                        }

                .information_box > .box_header .topics_slider_box > .box_inner .slick-dotted.slick-slider{
                    margin-bottom: 5em;
                }

                .information_box > .box_header .topics_slider_box > .box_inner .slick-dots{
                    bottom: -2em;
                }

                .information_box > .box_header .topics_slider_box > .box_inner .slick-dots li button:before{
                    color: #0f228b;
                    font-size: 0.625rem;
                }


    .information_box > .box_inner{}

        .home_nav_h{
            margin-bottom: 4.375rem;
            display: flex;
            justify-content: center;
        }

            .home_nav_h ul{
                display: flex;
                justify-content: center;
                gap: 0.75rem;
                width: 64rem;
            }

                .home_nav_h ul li{
                    flex: 1;
                }

                    .home_nav_h ul li a{
                        display: flex;
                        flex-direction: column;
                        align-items: center;
                        text-decoration: none;
                        position: relative;
                        padding: 1em 0;
                        border-radius: 0.5rem;
                        transition: .3s all ease;
                    }

                    .home_nav_h ul li a:hover{
                        background: #fff;
                        transform: translateY(-0.5em);
                        box-shadow: 0 2px 5px -1px rgba(0,0,0,0.1);
                    }

                    .home_nav_h ul li a .icon{
                        width: 6rem;
                        margin-bottom: 1.1em;
                    }

                        .home_nav_h ul li a .icon img{
                            max-width: 100%;
                            height: auto;
                        }

                    .home_nav_h ul li a .lbl{
                        font-weight: 600;
                        font-size: 1.2em;
                        color: #0f208a;
                        margin-bottom: 0.5em;
                    }

                    .home_nav_h ul li a::after{
                        content: "";
                        display: block;
                        width: 5rem;
                        border-bottom: 0.25rem solid #0f208a;
                    }



        .home_nav_m{
            display: flex;
            justify-content: center;
            margin-bottom: 4.375rem;
        }

            .home_nav_m ul{
                width: 64rem;
                display: flex;
                flex-wrap: wrap;
                gap: 1rem 1.5rem;
            }

                .home_nav_m ul li{
                    width: calc((100% - 3rem) / 3);
                }

                    .home_nav_m ul li a{
                        box-sizing: border-box;
                        display: flex;
                        align-items: center;
                        gap: 0.75rem;
                        border: 2px solid #0d228d;
                        box-shadow: 0.25rem 0.25rem 0 0 #0d228d;
                        height: 5rem;
                        padding: 0 2em 0 1em;
                        border-radius: 0.5rem;
                        background: #fff;
                        text-decoration: none;
                        position: relative;
                        transition: .3s all ease;
                    }

                        .home_nav_m ul li a .icon{
                            width: 2.25rem;
                            position: relative;
                            transition: .3s all ease;
                        }

                            .home_nav_m ul li a .icon img{
                                max-width: 100%;
                                height: auto;
                            }

                        .home_nav_m ul li a .lbl{
                            font-weight: 600;
                            font-size: 1.05em;
                            color: #0f208a;
                            padding-top: 0.3em;
                            line-height: 1.3;
                            position: relative;
                            flex: 1;
                            transition: .3s all ease;
                        }

                        .home_nav_m ul li a::after{
                            content: "";
                            width: 1rem;
                            aspect-ratio: 1 /1;
                            background-image: url(../shared/icon/icon_arrow_blue.png);
                            background-repeat: no-repeat;
                            background-size: contain;
                            position: absolute;
                            top: calc(50% - 0.5rem);
                            right: 0.75em;
                            transition: .3s all ease;
                        }

                    .home_nav_m ul li a:hover{
                        background:#0d228d;
                        box-shadow: 0.25rem 0.25rem 0 0 #fff;
                    }

                        .home_nav_m ul li a:hover .icon{
                            filter: brightness(0) invert(1);
                        }

                        .home_nav_m ul li a:hover .lbl{
                            color: #fff;
                        }

                        .home_nav_m ul li a:hover::after{
                            filter: brightness(0) invert(1);
                        }

        .home_nav_target{}

            .home_nav_target ul{
                display: flex;
                justify-content: center;
                gap: 1rem;
            }

                .home_nav_target ul li{}

                    .home_nav_target ul li a{
                        box-sizing: border-box;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        width: 15rem;
                        height: 3.75rem;
                        color: #0f208a;
                        border: 2px solid #0f208a;
                        border-radius: 100vh;
                        background: #fff;
                        text-decoration: none;
                        font-weight: 600;
                        padding-top: 0.25em;
                        box-shadow: 0.125rem 0.125rem 0 0 #0d228d;
                        transition: .3s all ease;
                    }

                    .home_nav_target ul li a:hover{
                        background: #0f208a;
                        color: #fff;
                        box-shadow: 0.125rem 0.125rem 0 0 #fff;
                    }

/*home_bns_box*/
.home_bns_box{
    background: #f5f5f5;
    padding: 2.5rem 0;
    margin: 0.5rem 0;
    display: flex;
    justify-content: center;
}

    .home_bns_box ul{
        display: flex;
        flex-wrap: wrap;
        width: 68.5rem;
        gap: 1.5rem;
    }

        .home_bns_box ul li{}

            .home_bns_box ul li a{
                display: flex;
                gap: 0.75em;
                flex-direction: column;
                color: #111;
                text-decoration: none;
                font-size: 0.9em;
            }

                .home_bns_box ul li a .fig{
                    width: 16rem;
                    transition: .3s all ease;
                }

                    .home_bns_box ul li a .fig img{
                        max-width: 100%;
                        height: auto;
                        transition: .3s all ease;
                    }

                .home_bns_box ul li a:hover .fig{
                    box-shadow: 0 0 0 1px #0f208a;
                }

                    .home_bns_box ul li a:hover .fig img{
                        filter: brightness(1.1);
                    }

/*small_header*/
.small_header header > .box_inner {
    background: rgba(255,255,255,0);
    box-shadow: none;
    height: 7rem;
    padding: 1rem 8rem 1rem 1rem;
}


@media screen and (min-width:1px) and (max-width:1400px) {

}

@media screen and (min-width:1px) and (max-width:1280px) {

}


@media screen and (min-width:1px) and (max-width:1200px) {

}

/*ipad*/
@media screen and (min-width:1px) and (max-width:1024px){
    .mainvisual{
        height: 75vw;
        background-size: auto 110%;
        padding-bottom: 3rem;
        margin-bottom: 2.5rem;
    }

        .mainvisual::before{
            bottom: -8rem;
            background-position: left -40vw center;
        }

        .mainvisual::after{
            bottom: -8rem;
            background-position: right -45vw center;
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl1{
            height: 2.5rem;
            margin-bottom: 2rem;
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl2,
        .mainvisual > .box_inner .mv_lbls1 p .lbl3{
            height: calc(2.5rem / 96 * 168);
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl4{
            height: calc(2.5rem / 96 * 152);
        }


    .information_box{
        margin-top: 3rem;
    }

    .information_box > .box_header .topics_slider_box > .box_inner{
        width: calc(50vw + 1rem);
    }

        .information_box > .box_header .msg_change p.lbl1{
            font-size: 2.25rem;
        }

        .information_box > .box_header .topics_slider_box > .box_inner .slide_obj{
            width: 50vw;
        }

        .information_box > .box_header .topics_slider_box > .box_inner .slick-dotted.slick-slider{
            margin-bottom: 3em;
        }

    .home_nav_h ul{
        box-sizing: border-box;
        width: 100%;
        padding-left: 5vw;
        padding-right: 5vw;
    }

    .home_nav_m ul{
        box-sizing: border-box;
        width: 100%;
        padding-left: 5vw;
        padding-right: 5vw;
    }

    .home_bns_box{
        padding-left: 5vw;
        padding-right: 5vw;
    }

    .home_bns_box ul{
        width: auto;
    }

        .home_bns_box ul li{
            width: calc((100% - 4.5rem) / 4);
        }

        .home_bns_box ul li a .fig{
            width: auto;
        }



}

/* ##########SP横向き########## */
@media screen and (min-width:1px) and (max-width:768px) {


}

/* ##########SP########## */
@media screen and (min-width:1px) and (max-width:575px) {
    /*small_header*/
    .small_header header > .box_inner {
        height: 6rem;
        padding: 0.75rem 8rem 0.75rem 0.75rem;
    }

    .mainvisual{
        height: auto;
        aspect-ratio: 1 / 1.2;
        padding-top: 0;
        padding-bottom: 2rem;
        margin-bottom: 1rem;
    }

        .mainvisual::before,
        .mainvisual::after{
            height: 60vw;
        }

        .mainvisual::before{
            bottom: -2rem;
            background-position: left -50vw center;
        }

        .mainvisual::after{
            bottom: -2rem;
            background-position: right -55vw center;
        }

        .mainvisual > .box_inner{
            padding-right: 5.5rem;
        }

        .mainvisual > .box_inner .mv_lbls1{
            margin-bottom: 2rem;
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl1{
            height: 1.5rem;
            margin-bottom: 1rem;
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl2,
        .mainvisual > .box_inner .mv_lbls1 p .lbl3{
            height: calc(1.5rem / 96 * 168);
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl2{
            margin-bottom: 0.5rem;
        }

        .mainvisual > .box_inner .mv_lbls1 p .lbl4 {
            height: 1.9rem;
        }

        .mainvisual > .box_inner .mv_lbls2 p.pc{
            display: none;
        }

        .mainvisual > .box_inner .mv_lbls2 p.sp{
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 0.5em;
            font-size: 0.8em;
        }

            .mainvisual > .box_inner .mv_lbls2 p.sp .lbl{
                background: rgba(255, 255, 255, 0.99);
                color: #12208b;
                padding: 0.2em 0.2em 0.1em 0.2em;
                font-weight: 500;
            }

        .mainvisual > .box_inner .mv_fig{
            position: absolute;
            bottom: 8vw;
            right: -6vw;
            width: 27vw;
        }

    .information_box{
        margin-top: 0;
        z-index: 1;
    }

    .information_box > .box_header .msg_change{
        margin-bottom: 2em;
    }

        .information_box > .box_header .msg_change p.lbl1{
            font-size: 1.6rem;
            line-height: 1.5;
            text-align: center;
        }

        .information_box > .box_header .msg_change p.lbl2{
            font-size: 1.1rem;
        }


    .information_box > .box_header .msg_change p{
        font-size: 1.2em;
    }

    .information_box > .box_header .topics_slider_box > .box_inner{
        width: 90vw;
    }

    .information_box > .box_header .topics_slider_box > .box_inner .slick-dotted.slick-slider{
        margin-bottom: 3em;
    }

    .information_box > .box_header .topics_slider_box > .box_inner .slide_obj{
        width: 90vw;
    }

    .information_box > .box_header .topics_slider_box > .box_inner .slick-next,
    .information_box > .box_header .topics_slider_box > .box_inner .slick-prev {
        width: 1.75rem;
    }

    .information_box > .box_header .topics_slider_box > .box_inner .slick-prev{
        left: -4vw;
    }

    .information_box > .box_header .topics_slider_box > .box_inner .slick-next{
        right: -4vw;
    }



    .information_box > .box_header{
        margin-bottom: 1.5rem;
    }

    .information_box > .box_header h2::before{
        font-size: 2.5em;
    }

    .home_nav_h{
        margin-bottom: 2rem;
    }

    .home_nav_h ul{
        justify-content: center;
        flex-wrap: wrap;
        gap: 0;
    }

        .home_nav_h ul li{
            flex: initial;
            width: calc(100% / 3);
        }

            .home_nav_h ul li a .icon{
                width: 4rem;
            }

            .home_nav_h ul li a .lbl{
                font-size: 1em;
            }

    .home_nav_m{
        margin-bottom: 2rem;
    }

    .home_nav_m ul{
        gap: 0.75rem
    }

        .home_nav_m ul li{
            width: calc((100% - 0.75rem) / 2);
        }

        .home_nav_m ul li a{
            padding: 0 1.5em 0 0.75em;
            height: 3.5rem;
            box-shadow: 0.125rem 0.125rem 0 0 #0d228d;
        }

        .home_nav_m ul li a .icon{
            width: 1.8rem;
        }

        .home_nav_m ul li a .lbl{
            font-size: 0.9em;
        }

        .home_nav_m ul li a::after{
            right: 0.5em
        }

    .home_nav_target ul{
        gap: 0.75rem;
        flex-wrap: wrap;
        padding-left: 5vw;
        padding-right: 5vw;
    }

        .home_nav_target ul li:nth-child(1){
            width: 100%;
        }

        .home_nav_target ul li:nth-child(2),
        .home_nav_target ul li:nth-child(3){
            width: calc((100% - 0.75rem) / 2);
        }


        .home_nav_target ul li a{
            width: auto;
            font-size: 0.9em;
            height: 2.5rem;
            padding-right: 0.5em;
            padding-left: 0.5em;
        }

    .home_bns_box ul{
        gap: 1em;
    }

    .home_bns_box ul li{
        width: calc((100% - 1em) / 2);
    }
    
}


/* ##########印刷用########## */
@media print{


}