@charset "utf-8";
/*--京base_sp.css--*/

/* ##########SP########## */
@media screen and (min-width:1px) and (max-width:479px) {
    
    html{
        font-size: 3.6vw;
        min-width: auto;
    }

    body {
        min-width:initial;
        min-width:auto;
        overflow-y: scroll;
    }

    #container{
        min-width:initial;
        min-width:auto;
    }
    
    header > .box_inner,
    .small_header header > .box_inner{
        height: 19vw;
    }

        header > .box_inner > .logo_site_title a .logo,
        .small_header header > .box_inner > .logo_site_title a .logo{
            margin-bottom: 0.4rem;
        }

        header > .box_inner > .logo_site_title a .site_title{
            padding-left: 0.8rem;
        }

            header > .box_inner > .logo_site_title a .site_title .lbl1{
                font-size: 0.9rem;
            }

            header > .box_inner > .logo_site_title a .site_title .lbl2{
                font-size: 1rem;
            }
    
    
    header > .box_inner .navs{
        display: none;
    }

    
    .contents{
        padding-top: 19vw;
        padding-bottom: 1rem;
    }

    footer > .box_inner{
        padding-bottom: 12vw;
    }

    footer > .box_inner .f_nav_box{
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

        footer > .box_inner .f_nav_box > .box_header{
            align-items: center;
            justify-content: space-between;
            margin-bottom: 1.5rem;
        }

            footer > .box_inner .f_nav_box > .box_header > .logo_site_title{
                
            }

            footer > .box_inner .f_nav_box > .box_header > .logo_site_title a{
                align-items: center;
            }

                footer > .box_inner .f_nav_box > .box_header > .logo_site_title a .logo{
                    width: 45vw;
                    margin-bottom: 0.4rem;
                }

                    footer > .box_inner .f_nav_box > .box_header > .logo_site_title a .site_title{
                        padding-left: 0;
                    }

                    footer > .box_inner .f_nav_box > .box_header > .logo_site_title a .site_title .lbl1{
                        font-size: 0.9rem;
                    }

                    footer > .box_inner .f_nav_box > .box_header > .logo_site_title a .site_title .lbl2{
                        font-size: 1.1rem;
                    }

            footer > .box_inner .f_nav_box > .box_header .sns_links ul li{
                margin-right: 0.25rem;
            }

                footer > .box_inner .f_nav_box > .box_header .sns_links ul li a{
                    width: 2.5rem;
                    height: 2.5rem;
                }

                    footer > .box_inner .f_nav_box > .box_header .sns_links ul li a .fig{
                        width: 1.5rem;
                    }

        
        footer > .box_inner .f_nav_box > .box_inner{
            padding: 0;
            flex-wrap: wrap;
        }

            footer > .box_inner .f_nav_box > .box_inner > ul{
                width: calc((100% - 1rem) / 2);
                margin-right: 1rem;
                margin-bottom: 1rem;
            }

            footer > .box_inner .f_nav_box > .box_inner > ul:nth-child(even){
                margin-right: 0;
            }

            footer > .box_inner .f_nav_box > .box_inner > ul > li ul{
                padding-top: 0.5em;
            }

    footer > .box_inner .f_contact_box{
        min-width: auto;
        min-width: initial;
        padding: 2rem 6vw;
    }

        footer > .box_inner .f_contact_box > .box_inner .contact_tel{
            border: none;
            padding: 0;
        }

        footer > .box_inner .f_contact_box > .box_inner .contact_tel dl{
            flex-direction: column;
            align-items: center;
        }

            footer > .box_inner .f_contact_box > .box_inner .contact_tel dl dt{
                margin-right: 0;
            }

                footer > .box_inner .f_contact_box > .box_inner .contact_tel dl dd{
                    width: 75%;
                }

                footer > .box_inner .f_contact_box > .box_inner .contact_tel dl dd .lbl{
                    width: 100%;
                }

    /*-----fixed_btn_side-----*/
    .fixed_btn_side{
        top: auto;
        right: auto;
        left: 0;
        bottom: 0;
        width: 100%;
        background: #333;
    }

        .fixed_btn_side ul{
            display: flex;
            justify-content: center;
            width: 100%;
        }

            .fixed_btn_side ul li{
                margin: 0;
                position: relative;
            }

                .fixed_btn_side ul li:after{
                    content: "";
                    display: block;
                    width: 0;
                    height: 1.5rem;
                    position: absolute;
                    top: 1.2rem;
                    right: 0;
                    border-right: 1px solid rgba(255,255,255,0.5);
                }

                .fixed_btn_side ul li:last-child:after{
                    border-right: none;
                }

                .fixed_btn_side ul li a {
                    width: auto;
                    padding: 0;
                    border-radius: 0;
                    transform: translateX(0);
                    display: flex;
                    align-items: center;
                    height: 14vw;
                    padding: 0 1rem;
                }

                .fixed_btn_side ul li.ext_link a{
                    padding-bottom: 0;
                    padding-right: 2.25rem;
                    background-position: right 1rem center;
                }

    /*fixed_bn_d_staff*/
    .fixed_bn_d_staff{
        left: 1.5rem;
        bottom: 18vw;
    }
    
    .nav_oc {
        display: block;
        width: 13vw;
        height: 13vw;
        top: 3vw;
        right: 3vw;
    }
    

    /*ページトップ*/
    .pagetop{
        width:16vw;
        height:16vw;
        bottom:18vw;
        right:4vw;
    }
    
    .side_nav{
        display: block;
        padding-top: 0;
    }
    
        .side_nav .side_goto_home{
            box-sizing: border-box;
            display: flex;
            align-items: center;
            height: 19vw;
            padding: 0 3.5vw;
        }

            .side_nav .side_goto_home a{
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                transition: .3s all ease;
                color: #111;
                text-decoration: none;
            }

                .side_nav .side_goto_home a img{
                    max-width: 100%;
                    height: auto;
                }

                .side_nav .side_goto_home a .logo{
                    width: 15.625rem;
                    margin-bottom: 0.4rem;
                }

                .side_nav .side_goto_home a .site_title{
                    display: flex;
                    align-items: center;
                    padding-left: 0.8rem;
                }

                    .side_nav .side_goto_home a .site_title .lbl1 {
                        font-size: 0.9rem;
                        margin-right: 0.3em;
                        font-weight: 500;
                    }

                    .side_nav .side_goto_home a .site_title .lbl2 {
                        font-size: 1rem;
                        font-weight: 800;
                    }
    
    
        .side_nav .side_global_nav{
            padding: 6vw;
        }
    
        .side_nav .side_global_nav > ul{}
    
            .side_nav .side_global_nav > ul > li{
                width: 100%;
                margin-right: 0;
                border-bottom: 1px solid #eee;
                position: relative;
            }

            .side_nav .side_global_nav > ul > li:first-child{
                border-top: 1px solid #eee;
            }

                .side_nav .side_global_nav > ul > li > .oc{
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    width: 12vw;
                    height: 12vw;
                    background: rgba(0,128,103,0.1);
                    position: absolute;
                    top: 0.28em;
                    right: 0;
                    z-index: 2;
                }

                .side_nav .side_global_nav > ul > li > .oc::before{
                    font-family: FontAwesome;
                    content:"\f078";
                    line-height: 1;
                    display: inline-block;
                    color: rgba(0,128,103,0.7);
                    transition: .5s all ease;
                }

                .side_nav .side_global_nav > ul > li > .oc.close::before{
                    transform: rotate(180deg);
                }
    
                .side_nav .side_global_nav > ul > li > a{
                    padding: 1em 0.5em;
                    position: relative;
                    z-index: 1;
                }
    
                    .side_nav .side_global_nav > ul > li > a:before{
                        content: none;
                    }

                    .side_nav .side_global_nav > ul > li .child_nav{
                        display: none;
                        padding-bottom: 0.5em;
                    }

                    .side_nav .side_global_nav > ul > li .child_nav > ul{
                        line-height: 1.4;
                        display: flex;
                        flex-wrap: wrap;
                    }

                        .side_nav .side_global_nav > ul > li .child_nav > ul > li{
                            margin: 0 1em 0.3em 0;
                            width: calc((100% - 1em) / 2);
                        }

                        .side_nav .side_global_nav > ul > li .child_nav > ul > li:nth-child(2n){
                            margin-right: 0;
                        }

                            .side_nav .side_global_nav > ul > li .child_nav > ul > li > a{
                                text-decoration: none;
                                color: #333;
                                padding: 0.5em;
                                font-size: 0.9em;
                            }

                    .side_nav .side_global_nav > ul > li .child_nav > ul ul{
                        display: none;
                    }
   

    .side_nav .side_global_nav2{
        margin-top: 1.5rem;
        padding: 0 7vw;
        line-height: 1.2;
    }
    
        .side_nav .side_global_nav2 ul{
            justify-content: flex-start;
            flex-wrap: wrap;
            font-size: 0.94rem;
        }
    
            .side_nav .side_global_nav2 ul li{
                margin: 0 1rem 0.5em 0;
                width: calc((100% - 1rem) / 2);
            }

            .side_nav .side_global_nav2 ul li:nth-child(2n){
                margin-right: 0;
            }            
    
    
    /*改行のPC,SPでの表示切替*/
    br.pc,
    img.pc,
    span.pc{
        display:none;
    }

    br.sp,
    img.sp,
    span.sp{
        display:inline;
    }
    
    .tel_no{
        display: none;
    }
}
