@charset "utf-8";
@import url("reset.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
/*--京base.css--*/
html {
    font-size: 16px;
}

body {
    width: 100%;
    height: 100%;
    color: #222;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #fff;
    line-height: 1.0;
}

.selected_bg_black .contents {
    color: #fff;
    background-color: #000;
}


img{
    vertical-align:bottom;
}

#container{
    width: 100%;
    min-width: 1100px;
    position: relative;
}

/*----------header----------*/
header{
    box-sizing: border-box;
    width: 100%;
    position:fixed;
    z-index: 3;
    top: 0;
    left: 0;
    background: rgba(255,255,255,0.99);
    transition: .5s all ease;
}

.for_translate_google header{
    top: 56px;
}

    /*small_header時の一括transition*/
    header > .box_header,
    header > .box_header .logo_site_title,
    header > .box_header .logo_site_title a .logo,
    header > .box_header .logo_site_title a .site_title,
    header > .box_header .h_nav ul li,
    header > .box_header .h_nav ul li a,
    header > .box_header .h_nav ul li a .fig,
    header > .box_header .h_nav ul li a .lbl{
        transition: .3s all ease;
    }

    header > .box_header{
        height: 100px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 0 0 1.1rem;
    }

        header > .box_header .logo_site_title_lang{
            display: flex;
            align-items: center;
        }

            header > .box_header .logo_site_title{
                margin-right: 2.6rem;
            }

                header > .box_header .logo_site_title img{
                    max-width: 100%;
                    height: auto;
                }

                header > .box_header .logo_site_title a{
                    display: flex;
                    align-items: center;
                    transition: .5s all ease;
                }

                header > .box_header .logo_site_title a:hover{
                    opacity: 0.8;
                }

                    header > .box_header .logo_site_title a .logo{
                        display: block;
                        width: 78px;
                        margin-right: 1.1rem;
                    }

                    header > .box_header .logo_site_title a .site_title{
                        display: block;
                        width: 350px;
                    }

            header > .box_header .lang_changer{}

            header > .box_header .lang_changer.foreign{
                margin-left: 1rem;
                margin-right: 1rem;
            }

                header > .box_header .lang_changer a{
                    display: flex;
                    align-items: center;
                    height: 15px;
                    padding-left: 20px;
                    background-image: url("../shared/icon_lang.png");
                    background-position: left center;
                    background-repeat: no-repeat;
                    background-size: 15px 15px;
                    font-size: 0.84rem;
                    color: #29275e;
                    text-decoration: none;
                    position: relative;
                    white-space: nowrap;
                }

                    header > .box_header .lang_changer a:before{
                        content: "";
                        display: block;
                        width: 100%;
                        height: 0;
                        border-bottom: 1px solid #29275e;
                        position: absolute;
                        left: 0;
                        bottom: -0.3rem;
                        transition: .3s all ease;
                        opacity: 0;
                    }

                    header > .box_header .lang_changer a:hover:before{
                        opacity: 0.9;
                    }

        header > .box_header .ud_fns_h_nav{
            display: flex;
        }

            header > .box_header .ud_fns{
                display: flex;
                align-items: center;
                margin-right: 2rem;
            }

            header > .box_header .ud_fns dl{
                display: flex;
                align-items: center;
            }

                header > .box_header .ud_fns dl dt{
                    white-space: nowrap;
                    margin-right: 0.5em;
                    font-size: 0.92rem;
                }

                header > .box_header .ud_fns dl dd{}

                    header > .box_header .ud_fns dl dd ul{
                        display: flex;
                    }

                        header > .box_header .ud_fns dl dd ul li{
                            margin-right: 0.3em;
                        }

                        header > .box_header .ud_fns dl dd ul li:last-child{
                            margin-right: 0;
                        }

                            header > .box_header .ud_fns dl dd ul li button{
                                font-family: 'Noto Sans JP', sans-serif;
                                border: 1px solid rgba(0,0,0,0.3);
                                font-size: 0.9rem;
                                cursor: pointer;
                                padding: 0.2em 0.7em 0.3em;
                                background: #fff;
                                color: #222;
                                border-radius: 3px;
                                transition: .3s all ease;
                                white-space: nowrap;
                            }

                            header > .box_header .ud_fns dl dd ul li button:hover{
                                background: #fff1b2;
                                border: 1px solid rgba(0,0,0,0.8);
                            }

                            header > .box_header .ud_fns dl dd ul li button.fs_regular,
                            header > .box_header .ud_fns dl dd ul li button.bg_regular{
                                background: rgba(41,39,94,1);
                                color: #fff;
                            }

                            .selected_fs_large header > .box_header .ud_fns dl dd ul li button.fs_regular,
                            .selected_bg_black header > .box_header .ud_fns dl dd ul li button.bg_regular{
                                background: #fff;
                                color: #222;
                            }

                            .selected_fs_large header > .box_header .ud_fns dl dd ul li button.fs_large,
                            .selected_bg_black header > .box_header .ud_fns dl dd ul li button.bg_black{
                                background: rgba(41,39,94,1);
                                color: #fff;
                            }


            header > .box_header .ud_fns .fontsize_changer{
                margin-right: 1.5rem;
            }

        header > .box_header .h_nav{}

            header > .box_header .h_nav ul{
                display: flex;
            }

                header > .box_header .h_nav ul li{
                    width: 90px;
                    height: 90px;
                    margin-right: 5px;
                }

                    header > .box_header .h_nav ul li a,
                    header > .box_header .h_nav ul li .btn_search{
                        box-sizing: border-box;
                        display: flex;
                        flex-direction: column;
                        align-items: center;
                        justify-content: flex-end;
                        width: 100%;
                        height: 100%;
                        color: #29275e;
                        text-decoration: none;
                        text-align: center;
                        padding-bottom: 1rem;
                        transition: .5s all ease;
                        cursor: pointer;
                    }

                    header > .box_header .h_nav ul li a:hover,
                    header > .box_header .h_nav ul li .btn_search:hover{
                        filter: brightness(105%);
                        box-shadow: 0 0 2px 3px rgba(0,0,0,0.1) inset;
                    }

                        header > .box_header .h_nav ul li.hn_sougouannai a{
                            background: #fff1b2;
                        }

                        header > .box_header .h_nav ul li.hn_shisetsu a{
                            background: #cdeafa;
                        }

                        header > .box_header .h_nav ul li.hn_access a{
                            background: #ffdce2;
                        }

                        header > .box_header .h_nav ul li.hn_search .btn_search{
                            background: #ccebd9;
                        }

                        header > .box_header .h_nav ul li a .fig,
                        header > .box_header .h_nav ul li .btn_search .fig{
                            width: 25px;
                            margin-bottom: 0.4rem;
                        }

                            header > .box_header .h_nav ul li a .fig img,
                            header > .box_header .h_nav ul li .btn_search .fig img{
                                max-width: 100%;
                                height: auto;
                            }

                        header > .box_header .h_nav ul li a .lbl,
                        header > .box_header .h_nav ul li .btn_search .lbl{
                            font-size: 0.85rem;
                            line-height: 1.25;
                        }

    header > .box_inner{
        background: #29275e;
    }

        header > .box_inner .global_nav{
            display: flex;
            justify-content: center;
        }

            header > .box_inner .global_nav > ul{
                display: flex;
                justify-content: center;
                align-items: center;
                height: 50px;
                position: relative;
            }

                header > .box_inner .global_nav > ul > li{
                    height: 100%;
                    /*position: relative;*/
                }

                    header > .box_inner .global_nav > ul > li{
                    }

                    header > .box_inner .global_nav > ul > li:last-child:after{
                        content: none;
                    }

                    header > .box_inner .global_nav > ul > li > .nav_wrap{
                        position: relative;
                        display: block;
                        height: 100%;
                    }

                        header > .box_inner .global_nav > ul > li > .nav_wrap:before{
                            content: "";
                            display: block;
                            width: 0;
                            height: 0;
                            border-style: solid;
                            border-width: 0 10px 12px 10px;
                            border-color: transparent transparent #29275e transparent;
                            position: absolute;
                            left: calc(50% - 15px);
                            opacity: 0;
                            bottom: 0;
                            transition: .3s all ease;
                        }

                        header > .box_inner .global_nav > ul > li:hover > .nav_wrap:before{
                            opacity: 1;
                            bottom: -12px;
                        }
                        
                        /*gn_home,gn_educationでは何もしない*/
                        header > .box_inner .global_nav > ul > li.gn_home > .nav_wrap:before,
                        header > .box_inner .global_nav > ul > li.gn_education > .nav_wrap:before{
                            content: none;
                        }

                        header > .box_inner .global_nav > ul > li > .nav_wrap:after{
                            content: "";
                            display: block;
                            width: 0;
                            position: absolute;
                            height: 20px;
                            top: 15px;
                            right: 0;
                            border-right: 1px solid #9494b0;
                        }

                        header > .box_inner .global_nav > ul > li:last-child > .nav_wrap:after{
                            border-right: none;
                        }

                    header > .box_inner .global_nav > ul > li > .nav_wrap > a{
                        display: flex;
                        align-items: center;
                        height: 100%;
                        padding: 0 1.4rem;
                        position: relative;
                        transition: .5s all ease;
                        color: #fff;
                        text-decoration: none;
                        font-size: 1.14rem;
                    }

                    header > .box_inner .global_nav > ul > li > .nav_wrap > a:hover{
                        background: rgba(0,0,0,0.2);
                    }

                        header > .box_inner .global_nav > ul > li > .nav_wrap > a:before{
                            /*
                            content: "";
                            display: block;
                            width: 0;
                            height: 0;
                            border-style: solid;
                            border-width: 8px 8px 0 8px;
                            border-color: #fdd000 transparent transparent transparent;
                            position: absolute;
                            top: 0;
                            left: calc(50% - 8px);
                            opacity: 0;
                            transition: .3s all ease;
                            */
                        }

                        header > .box_inner .global_nav > ul > li > .nav_wrap > a:hover:before{
                            opacity: 1;
                        }

                        header > .box_inner .global_nav > ul > li > .nav_wrap > a:after{
                            content: "";
                            display: block;
                            width: calc(100% - 1.4rem);
                            position: absolute;
                            left: 0.7rem;
                            bottom: 5px;
                            border-bottom: 2px solid rgba(253,208,0,1);
                            opacity: 0;
                        }

                        header > .box_inner .global_nav > ul > li.active > .nav_wrap > a:after{
                            opacity: 1;
                        }

                        header > .box_inner .global_nav > ul > li > .nav_wrap > a > img{
                            height: 20px;
                            width: auto;
                        }
                            
                            /*ドロップダウンメニュー*/
                            header > .box_inner .global_nav > ul > li > .gn_sub_nav_wrapper{
                                box-sizing: border-box;
                                position: absolute;
                                top: 100%;
                                left: 0;
                                width: 100%;
                                height: 0;
                                overflow: hidden;
                                opacity: 0;
                                transform: translateY(-1rem);
                                transition: .3s all ease;
                            }

                            header > .box_inner .global_nav > ul > li:hover > .gn_sub_nav_wrapper{
                                height: auto;
                                transform: translateY(0);
                                opacity: 1;
                            }

                                .gn_sub_nav{
                                    background: #fff;
                                    border-top: 5px solid #29275e;
                                    margin: 12px 10px 10px 10px;
                                    box-shadow: 0 0 8px 1px rgba(0,0,0,0.3);
                                }

                                .gn_sub_nav > .box_header{
                                    background: #29275e;
                                    box-shadow: 0 -3px 3px -3px rgba(0,0,0,0.5) inset;
                                }

                                    .gn_sub_nav .nav_title{
                                        display: flex;
                                        position: relative;
                                    }

                                        .gn_sub_nav .nav_title a{
                                            display: block;
                                            font-size: 1.2rem;
                                            color: #333;
                                            background: #fff;
                                            text-decoration: none;
                                            font-weight: bold;
                                            padding: 0.6em 0.8em 0.7em 3rem;
                                            position: relative;
                                        }

                                        .gn_sub_nav .nav_title a:before{
                                            content: "";
                                            display: inline-block;
                                            height: 1.5rem;
                                            width: 0;
                                            border-left: 10px solid #29275e;
                                            border-right: 6px solid #fdd000;
                                            position: absolute;
                                            top: 0.6rem;
                                            left: 0.5rem;
                                            transform: skewX(-28deg);
                                            transform-origin: left bottom;
                                        }

                                        .gn_sub_nav .nav_title a:after{
                                            content: "";
                                            display: block;
                                            width: 30px;
                                            height: 100%;
                                            position: absolute;
                                            top: 0;
                                            right: -30px;
                                            transform: skewX(28deg);
                                            transform-origin: left bottom;
                                            background: #fff;
                                        }

                               .gn_sub_nav > .box_inner{
                                    padding: 1.2rem 1.2rem 0.5rem 1.2rem;
                                    background: rgba(41,39,94,0.9);
                                }

                                    .gn_sub_nav > .box_inner > ul{
                                        line-height: 1.4;
                                        font-size: 0.96rem;
                                    }

                                    .gn_sub_nav > .box_inner > ul a{
                                        color: #fff;
                                        text-decoration: none;
                                    }

                                    .gn_sub_nav > .box_inner > ul .has_children{
                                        color: #fff;
                                    }

                                    .gn_sub_nav > .box_inner > ul a:hover{
                                        text-decoration: underline;
                                    }

                                        .gn_sub_nav > .box_inner > ul > li{
                                            margin-bottom: 0.5em;
                                        }

                                            .gn_sub_nav > .box_inner > ul > li > a,
                                            .gn_sub_nav > .box_inner > ul > li > .has_children{
                                                display: block;
                                                font-weight: bold;
                                                border-bottom: 1px dotted rgba(255,255,255,0.9);
                                                padding: 0 0 0.5em 1em;
                                                position: relative;
                                            }

                                                .gn_sub_nav > .box_inner > ul > li > a:before,
                                                .gn_sub_nav > .box_inner > ul > li > .has_children:before{
                                                    font-family: FontAwesome;
                                                    content:"\f0da";
                                                    display: inline-block;
                                                    line-height: 1;
                                                    position: absolute;
                                                    top: 0.3em;
                                                    left: 0;
                                                    font-weight: normal;
                                                    color: rgba(255,255,255,0.7);
                                                }

                                            .gn_sub_nav > .box_inner > ul > li > ul{
                                                display: flex;
                                                flex-wrap: wrap;
                                                padding: 0.6em 0.5em 0.5em 0.5em;
                                            }

                                                .gn_sub_nav > .box_inner > ul > li > ul > li{
                                                    box-sizing: border-box;
                                                    width: calc((100% - 1em) / 2);
                                                    margin-right: 1em;
                                                    margin-bottom: 0.4em;
                                                    font-size: 0.9em;
                                                    padding-left: 1em;
                                                    position: relative;
                                                    line-height: 1.3;
                                                }

                                                .gn_sub_nav > .box_inner > ul > li > ul > li:nth-child(even){
                                                    margin-right: 0;
                                                }

                                                .gn_sub_nav > .box_inner > ul > li > ul > li.full{
                                                    width: 100%;
                                                }

                                                /*各種統計下は非表示*/
                                                .gn_sub_nav > .box_inner > ul > li > ul > li.full ul{
                                                    display: none;
                                                }

                                                    .gn_sub_nav > .box_inner > ul > li > ul > li:before{
                                                        font-family: FontAwesome;
                                                        content:"\f105";
                                                        color: rgba(255,255,255,0.7);
                                                        display: inline-block;
                                                        height: 1;
                                                        position: absolute;
                                                        top: 0.1em;
                                                        left: 0;
                                                    }

                                                    .gn_sub_nav > .box_inner > ul > li > ul > li > ul{
                                                        display: flex;
                                                        flex-wrap: wrap;
                                                        padding: 0.5em 0.5em 0 0.5em;
                                                    }

                                                        .gn_sub_nav > .box_inner > ul > li > ul > li > ul li{
                                                            box-sizing: border-box;
                                                            width: calc((100% - 1em) / 2);
                                                            margin-bottom: 0.5em;
                                                            margin-right: 1em;
                                                            position: relative;
                                                            padding-left: 1em;
                                                        }

                                                        .gn_sub_nav > .box_inner > ul > li > ul > li > ul li:nth-child(even){
                                                            margin-right: 0;
                                                        }

                                                            .gn_sub_nav > .box_inner > ul > li > ul > li > ul li:before{
                                                                content: "・";
                                                                display: inline-block;
                                                                height: 1;
                                                                color: rgba(255,255,255,0.7);
                                                                position: absolute;
                                                                top: 0;
                                                                left: 0;
                                                            }



.small_header header{
    box-shadow: 0 5px 5px -5px rgba(0,0,0,0.3);
}

    .small_header header > .box_header {
        height: 70px;
    }

        .small_header header > .box_header .logo_site_title {
            margin-right: calc(2.6rem * 0.8);
        }

        .small_header header > .box_header .logo_site_title a .logo{
            width: calc(78px * 0.8);
            margin-right: calc(1.1rem * 0.8);
        }

        .small_header header > .box_header .logo_site_title a .site_title{
            width: calc(350px * 0.8);
        }

    .small_header header > .box_header .h_nav ul li{
        height: 64px;
    }

        .small_header header > .box_header .h_nav ul li a,
        .small_header header > .box_header .h_nav ul li .btn_search{
            padding-bottom: 0.5rem;
        }

        .small_header header > .box_header .h_nav ul li a .fig,
        .small_header header > .box_header .h_nav ul li .btn_search .fig{
            margin-bottom: 0.3rem;
            width: 20px;
        }

        .small_header header > .box_header .h_nav ul li a .lbl,
        .small_header header > .box_header .h_nav ul li .btn_search .lbl{
            font-size: 0.8rem;
        }

/*色反転*/
.selected_bg_black header{
    background: #000;
}

    .selected_bg_black header > .box_header{
        filter: invert(100%) grayscale(100%);
    }

    .selected_bg_black header > .box_inner{
        filter:  grayscale(100%);
    }

.h_search_box{
    position: absolute;
    bottom: 0;
    right: 6px;
    z-index: -1;
    height: 60px;
    opacity: 0;
    transition: .3s all ease;
}

.h_search_box.active{
    bottom: -70px;
    z-index: 2;
    opacity: 1;
}


    .h_search_box .box_inner{
        display: flex;
        align-items: center;
        height: 60px;
        padding: 0 1rem;
        background: #fff;
        border-radius: 5px;
        box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
    }

        .h_search_box .box_inner .search_input{
            box-sizing: border-box;
            height: 32px;
            border: 1px solid #aaa;
            margin-right: 0.2rem;
        }

            .h_search_box .box_inner .search_input input[type="text"]{
                box-sizing: border-box;
                padding: 0.2em;
                border: none;
                width: 274px;
                height: 100%;
                font-size: 1.05rem;
            }

        .h_search_box .box_inner .search_submit{
            height: 32px;
        }

            .h_search_box .box_inner .search_submit input[type="submit"]{
                height: 100%;
                width: 60px;
                background: #29275e;
                color: #fff;
                border: none;
                border-radius: 3px;
                font-size: 1rem;
                cursor: pointer;
                transition: .3s all ease;
            }

            .h_search_box .box_inner .search_submit input[type="submit"]:hover{
                filter: brightness(120%);
            }


/*----------contents----------*/
.contents{
    position:relative;
    top:0;
    left:0;
    z-index:0;
    padding-top: 150px;
}

/*-----footer-----*/
footer{
    position:relative;
    z-index:0;
    padding-top: 3rem;
}

.selected_bg_black footer{
    background: #000;
}

    footer > .box_header{
        margin-bottom: 2rem;
        display: flex;
        align-items: center;
        flex-direction: column;
    }

        .selected_bg_black footer > .box_header{
            filter: invert(100%) grayscale(100%);
            color: #000;
        }

            footer > .box_header .f_site_title{
                width: 318px;
                margin-bottom: 1em;
            }

                footer > .box_header .f_site_title a{
                    display: block;
                    transition: .5s all ease;
                }

                footer > .box_header .f_site_title a:hover{
                    opacity: 0.8;
                }

                    footer > .box_header .f_site_title a img{
                        max-width: 100%;
                        height: auto;
                    }

            footer > .box_header .addr_tel{
                line-height: 1.4;
                display: flex;
                justify-content: center;
                font-size: 0.9rem;
            }

            .selected_fs_large footer > .box_header .addr_tel{
                font-size: 1.1rem;
            }

                footer > .box_header .addr_tel .text_addr{
                    margin-right: 1em;
                }

                footer > .box_header .addr_tel a{
                    color: #003d84;
                }

    footer > .box_inner{
        display: flex;
        justify-content: center;
        border-bottom: 1px solid #ebebeb;
        padding-bottom: 1rem;
    }

    .selected_bg_black footer > .box_inner{
        filter: invert(100%) grayscale(100%);
        color: #000;
    }

        footer > .box_inner .google_map_box{
            margin-right: 30px;
        }

            footer > .box_inner .google_map_box > .box_inner{
                width: 500px;
                height: 280px;
            }

                footer > .box_inner .google_map_box > .box_inner iframe{
                    width: 100%;
                    height: 100%;
                }

        footer > .box_inner .time_info_box{
            width: 480px;
        }

            footer > .box_inner .time_info_box a{
                color: #003d84;
            }

            footer > .box_inner .time_info_box a:hover{
                color: #0e6c52;
            }

            footer > .box_inner .time_info_box > dl{}

                footer > .box_inner .time_info_box > dl > dt{
                    background: #2a275e;
                    color: #fff;
                    font-size: 1.1rem;
                    padding: 0.4em 0;
                    display: flex;
                    justify-content: center;
                }

                    footer > .box_inner .time_info_box > dl > dt .lbl2{
                        margin-left: 0.5em;
                        font-size: 0.8em;
                    }

                .selected_fs_large footer > .box_inner .time_info_box > dl > dt{
                    font-size: 1.2rem;
                }

                    footer > .box_inner .time_info_box > dl > dt .lbl1{
                        font-weight: bold;
                    }

                footer > .box_inner .time_info_box > dl > dd{
                    padding: 1rem 0.8rem;
                    line-height: 1.4;
                    font-size: 0.94rem;
                }

                    footer > .box_inner .time_info_box .biz_hour_detail{}

                        footer > .box_inner .time_info_box .biz_hour_detail dl{
                            display: flex;
                            margin-bottom: 0.5em;
                        }

                            footer > .box_inner .time_info_box .biz_hour_detail dl dt{
                                background: #fdd000;
                                height: 24px;
                                border-radius: 12px;
                                color: #29275e;
                                font-weight: bold;
                                width: 7rem;
                                font-size: 0.9rem;
                                display: flex;
                                justify-content: center;
                                align-items: center;
                            }

                            .selected_fs_large footer > .box_inner .time_info_box .biz_hour_detail dl dt{
                                font-size: 1.05rem;
                            }

                            footer > .box_inner .time_info_box .biz_hour_detail dl dd{
                                box-sizing: border-box;
                                width: calc(100% - 7rem);
                                padding: 0 0 0 1rem;
                            }

                            .selected_fs_large footer > .box_inner .time_info_box .biz_hour_detail dl dd{
                                font-size: 1.05rem;
                            }

                                footer > .box_inner .time_info_box .biz_hour_detail dl dd .lbl_change{
                                    color: #cc0028;
                                    margin-left: 0.9em;
                                }

                        footer > .box_inner .time_info_box .notes{
                            margin-top: 0.9em;
                            font-size: 0.94em;
                        }

                        .selected_fs_large footer > .box_inner .time_info_box .notes{
                            font-size: 1rem;
                        }

                            footer > .box_inner .time_info_box .notes li{
                                margin-bottom: 0.3em;
                                position: relative;
                                padding-left: 1.2em;
                            }

                            footer > .box_inner .time_info_box .notes li:last-child{
                                margin-bottom: 0;
                            }

                                footer > .box_inner .time_info_box .notes li:before{
                                    content: "◎";
                                    position: absolute;
                                    top: 0;
                                    left: 0;
                                }

                                footer > .box_inner .time_info_box .notes li em{
                                    text-decoration: underline;
                                }

    footer > .box_footer{
        width: 980px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 2.2rem 0;
    }

    .selected_bg_black footer > .box_footer{
        filter: invert(100%) grayscale(100%);
    }


        footer > .box_footer .f_nav{
            display: flex;
            align-items: center;
            font-size: 0.86rem;
        }

            footer > .box_footer .f_nav .btn_private{
                margin-right: 1.4rem;
                padding-right: 1.4rem;
                border-right: 1px solid #e5e5e5;
            }

                footer > .box_footer .f_nav .btn_private a{
                    display: flex;
                    align-items: center;
                    height: 20px;
                    background-image: url("../shared/icon_private.png");
                    background-size: contain;
                    background-position: left center;
                    background-repeat: no-repeat;
                    color: #29275e;
                    text-decoration: none;
                    padding-left: 28px;
                }

            footer > .box_footer .f_nav ul{
                display: flex;
            }

                footer > .box_footer .f_nav ul li{
                    margin-right: 1.6rem;
                }

                footer > .box_footer .f_nav ul li:last-child{
                    margin-right: 0;
                }

                    footer > .box_footer .f_nav ul li a{
                        color: #333;
                        text-decoration: none;
                    }

                    footer > .box_footer .f_nav ul li a:hover{
                        text-decoration: underline;
                    }

        footer > .box_footer .copyright{
            font-size: 0.8rem;
            color: #7d7d7d;
        }

.nav_oc,
.side_nav{
    display: none;
}

    
/*ページトップ*/
.pagetop{
    width:80px;
    height:80px;
    position:fixed;
    bottom:90px;
    right:60px;
    z-index:10;
    transform:translateY(100px);
    transition:.3s all ease;
    opacity:0;
}

.selected_bg_black .pagetop{
    filter: invert(100%) grayscale(100%);
}

.pagetop.show{
    transform:translateY(0);
    opacity:1;
}

    .pagetop a{
        box-sizing: border-box;
        display:flex;
        justify-content: center;
        align-items: center;
        transition:.5s all ease;
        width:100%;
        height:100%;
        border-radius: 50%;
        text-decoration:none;
        background: rgba(42,39,94,0.8);
        color: #fff;
    }
    
    .pagetop a:hover{
        transform:translateY(-5px);
        background: rgba(42,39,94,1);
    }

        .pagetop a:before{
            font-family: FontAwesome;
            content:"\f106";
            display: inline-block;
            font-size: 2rem;
        }




/*ヘッダ固定によるアンカーずれ対応*/
*[id^="anc_"]{
    padding-top: 210px;
    margin-top:-210px;
}


/*改行のPC,SPでの表示切替*/
br.pc,
img.pc,
span.pc{
    display:inline;
}

br.sp,
img.sp,
span.sp{
    display:none;
}

.ta_center{
    text-align:center;
}

.ta_left{
    text-align:left;
}

.ta_right{
    text-align:right;
}

/*1200px以下*/
@media screen and (min-width:1px) and (max-width:1200px){}

/*ipad*/
@media screen and (min-width:1px) and (max-width:1024px){}

/* ##########印刷用########## */
@media print{
    header{
        position:relative;
    }
    
    .pagetop{
        display: none;
    }
    
    .grecaptcha-badge{
        display: none !important;
    }
}