@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{}
    
        header > .box_header,
        .small_header header > .box_header{
            height: 16vw;
            padding: 0 20vw 0 3vw;
            align-items: center;
        }
    
            header > .box_header > .site_title,
            .small_header header > .box_header > .site_title{
                width: 50vw;
            }
    
            header > .box_header > .ku_logo_fns{
                padding-bottom: 0;
                align-items: center;
            }
    
                header > .box_header > .ku_logo_fns .ku_logo,
                .small_header header > .box_header > .ku_logo_fns .ku_logo{
                    margin-bottom: 0;
                    width: 18vw;
                }
    
                header > .box_header > .ku_logo_fns .fns{
                    display: none;
                }
    
        header > .box_inner {
            display: none;
        }
    
    
    .contents{
        padding-top: 16vw;
        padding-bottom: 3rem;
    }

    footer{}
    
        footer > .box_header{
            padding: 5vw 10vw 2vw 10vw;
        }
    
            .related_bns_box ul{
                flex-wrap: wrap;
            }

                .related_bns_box ul li {
                    width: calc((100% - 3vw) / 2);
                    margin-right: 3vw;
                    margin-bottom: 3vw;
                }

                .related_bns_box ul li:nth-child(even) {
                    margin-right: 0;
                }

    footer > .box_inner{
        padding: 8vw 0 4vw;
        justify-content: center;
    }
    
        .f_contact_info dl{
            display: flex;
            flex-direction: column;
            align-items: center;
        }
    
            .f_contact_info dl dt{
                width: 60vw;
            }
    
            .f_contact_info dl dd{
                flex-direction: row;
                font-size: 0.92rem;
            }
    
                .f_contact_info dl dd .lbl_zip{
                    margin-right: 0.5em;
                }

        .f_nav1 {
            display: none;
        }
    
    footer > .box_footer{
        justify-content: center;
        padding-bottom: 4vw;
    }
    
        .f_nav2{
            display: none;
        }
    
        footer > .box_footer .copyright{
            font-size: 0.8rem;
        }

    
    .nav_oc{
        display: block;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10;
        width: 16vw;
        height: 16vw;
        transition: .3s all ease;
    }
    
        .menu-trigger{
            width: 100%;
            height: 100%;
            padding: 0;
            border: none;
            background: rgba(255,255,255,0);
            cursor: pointer;
            outline: none;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            transition: .3s all ease;
        }
    
            .menu-trigger .lines {
                position: relative;
                display: block;
                width: 1.6rem;
                height: 1.5rem;
                transition: .3s all ease;
            }

                .menu-trigger .lines span {
                    display: inline-block;
                    transition: all .4s;
                    box-sizing: border-box;
                    background-color: #333;
                    position: absolute;
                    width: 1.6rem;
                    left: 0;
                    height: 2px;
                }
    
                .menu-trigger.active .lines span {}

                    .menu-trigger .lines span:nth-of-type(1) {
                        top: 0;
                    }

                    .menu-trigger .lines span:nth-of-type(2) {
                        top: calc(50% - 1px);
                    }
                    .menu-trigger .lines span:nth-of-type(3) {
                        bottom: 0;
                    }

                    .menu-trigger.active .lines span:nth-of-type(1) {
                        transform: translateY(0.75rem) rotate(-315deg);
                    }

                    .menu-trigger.active .lines span:nth-of-type(2) {
                        opacity: 0;
                    }

                    .menu-trigger.active .lines span:nth-of-type(3) {
                        transform: translateY(-0.6rem) rotate(315deg);
                    }
    
    .side_nav{
        box-sizing: border-box;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        opacity: 0;
        width: 100%;
        height: 100%;
        transition: .3s all ease;
        background: rgba(255,255,255,0);
        display: block;
        padding-top: 18vw;
    }

    .side_nav.active{
        z-index: 9;
        opacity: 1;
        background: rgba(255,255,255,1);
    }
    
    .sn_site_search_wrapper{
        padding: 0 8vw;
        margin-bottom: 2rem;
    }
    
    .sn_site_search_wrapper .site_search{
        margin-right: 0;
    }
    
    .sn_site_search_wrapper .site_search form{
        width: 100%;
    }
    
    .sn_site_search_wrapper .site_search .input_submit_box{
        width: 100%;
    }
    
    .sn_site_search_wrapper .site_search .input_submit_box .input_box{
        width: calc(100% - 2.5rem)
    }
    
    .side_nav .side_global_nav1{
        padding: 0 8vw;
        margin-bottom: 2rem;
    }
    
        .side_nav .side_global_nav1 > ul,
        .side_nav .side_global_nav2 > ul{
            transition: .5s all ease;
            transition-delay: .5s;
            opacity: 0;
            transform: translateX(-1rem);
        }
    
        .side_nav.active .side_global_nav1 > ul,
        .side_nav.active .side_global_nav2 > ul{
            opacity: 1;
            transform: translateX(0);
        }
    
            .side_nav .side_global_nav1 > ul > li{
                width: 100%;
                margin-bottom: 0.5rem;
            }
    
                .side_nav .side_global_nav1 > ul > li > a{
                    padding: 1rem;
                    background: #fff;
                    display: block;
                    color: #333;
                    text-decoration: none;
                    font-weight: 500;
                    overflow: hidden;
                    position: relative;
                    border: 1px solid #7a745a;
                    text-align: center;
                    font-size: 1.05rem;
                }
    
                .side_nav .side_global_nav1 > ul > li > a:hover{
                    box-shadow: 3px 3px 0 0 rgba(0,0,0,0.1);
                }
    
    .side_nav .side_global_nav2{
        padding: 0 8vw;
    }
    
        .side_nav .side_global_nav2 ul{
        }
    
            .side_nav .side_global_nav2 ul li{
                padding-left: 0.75em;
                position: relative;
                margin-bottom: 1rem;
            }
    
                .side_nav .side_global_nav2 ul li:before{
                    display: inline-block;
                    font-family: FontAwesome;
                    content:"\f105";
                    color: #7a745a;
                    position: absolute;
                    top: 0;
                    left: 0;
                }
    
            .side_nav .side_global_nav2 ul li:last-child{
                margin-bottom: 0;
            }
    
                .side_nav .side_global_nav2 ul li a{
                    color: #333;
                    text-decoration: none;
                }
    
                .side_nav .side_global_nav2 ul li a:hover{
                    text-decoration: underline;
                }

    /*ページトップ*/
    .pagetop{
        width:16vw;
        height:16vw;
        bottom:22vw;
        right:4vw;
    }
    
        .pagetop a{
            border-width: 0.75rem;
        }

    /*改行のPC,SPでの表示切替*/
    br.pc,
    img.pc,
    span.pc{
        display:none;
    }

    br.sp,
    img.sp,
    span.sp{
        display:inline;
    }
    
    .tel_no{
        display: none;
    }
}
