@charset "utf-8";

/* スマホだけに適用するCSS */
@media screen and (max-width:479px) {
    html {
        font-size: 3.6vw;
    }

    body {
        width: auto;
        min-width: initial;
        min-width: auto;
        overflow-y: scroll;
    }

    #container {
        width: auto;
        min-width: initial;
        min-width: auto;
    }

    #container_inner {
        width: auto;
    }
    
    header > .box_inner{
        width: 100%;
        padding: 2vw;
        flex-direction: column;
    }

        header > .box_inner .site_title_addr{
            flex: auto;
            margin-right: 0;
            width: 100%;
            align-items: center;
            margin-bottom: 2vw;
        }

            header > .box_inner .site_title{
                width: 34%;
            }
    
            header > .box_inner .addr{
                box-sizing: border-box;
                width: 66%;
                padding-left: 3vw;
            }

            header > .box_inner .addr p{
                font-size: 0.8rem;
                line-height: 1.2;
            }

        header > .box_inner .ad_apply{
            width: 100%;
        }
    
            header > .box_inner .ad_apply .apply_btn{
                width: 100%;
            }

                header > .box_inner .ad_apply ul{
                    width: 100%;
                }

                    header > .box_inner .ad_apply ul li{
                        width: calc((100% - 2vw) / 2);
                        margin: 0 2vw 0 0;
                    }

                header > .box_inner .ad_apply ul li a{
                    width: 100%;
                    height: 9vw;
                    font-size: 1.05rem;
                }
    
                    header > .box_inner .ad_apply ul li a br{
                        display: none;
                    }
    
    .contents {
        padding-top: 26vw;
    }
    
        .main_visual_box{
            background-size: 150vw auto;
            background-position: center top;
            padding: 8vw 0 7vw;
        }
    
            .main_visual_box .box_inner{
                width: 100%;
            }
    
            .main_visual_box img{
                max-width: 100%;
                height: auto
            }
    
                .main_visual_box .box_inner .fig:nth-child(1){
                    width: 80vw;
                    margin-bottom: 3vw;
                }
    
                .main_visual_box .box_inner .fig:nth-child(2){
                    width: 76vw;
                }
    
                 .main_visual_box .box_inner .fig:nth-child(3){
                    width: 76vw;
                }

    section {
        margin: 0 auto 3vw;
    }
    
    section img{
        max-width: 100%;
        height: auto;
    }
    
    section .apply_btn{
        margin: 2rem auto 0;
    }
    
    section .apply_btn ul{
        align-items: center;
    }
    

    section .apply_btn li a {
        width: 80vw;
        height: 10vw;
        border-radius: 5vw;
        text-align: center;
        font-size: 1.2rem;
    }
    
        .outline_box .box_header .lbl_fig{
            width: 92vw;
            margin-bottom: 3vw;
         }
    
        .outline_box .box_inner {
            box-sizing: border-box;
            padding: 4vw;
        }
    
            .outline_box .tips{
                width: 100%;
            }
    
                .outline_box .tips dl{
                    width: auto;
                }
    
                    .outline_box .tips dd{
                        width: auto;
                        font-size: 0.86em;
                        padding-right: 14vw;
                    }
    
            .outline_box .box_inner .tips .fig {
                bottom: -6vw;
                right: -3vw;
                width: 16vw;
            }
    
        .reason_box .box_header {
            margin: 0 auto 1rem;
            display: flex;
            padding: 2rem 0 0 0;
        }
    
            .reason_box .box_header .fig{
                width: 20vw;
                top: 1.5rem;
                left: -3vw;
            }
    
            .reason_box .box_header .lbl_fig{
                margin-bottom: 0.6rem;
                padding-left: 19vw;
            }
    
            .reason_box .box_header .small_txt{
                padding-left: 19vw;
                font-size: 0.9em;
                line-height: 1.4;
                text-align: left;
            }
    
        .reason_box .box_inner ul li {
            margin-bottom: 1rem;
            padding: 4vw 4vw 2vw 4vw;
            border-radius: 2vw;
        }
    
            .reason_box .box_inner dd{
                font-size: 0.94em;
                text-align: left;
            }
    
            .reason_box .box_inner .reason2 dd{
                padding-left: 10vw;
            }
    
    .reason_box .box_inner ul li:nth-child(1) .fig:nth-child(2){
        top: auto;
        bottom: -2vw;
        right: -3vw;
        width: 14vw;
    }
        .reason_box .box_inner ul li .lbl_fig img,
        .reason_box .box_inner ul li.reason1 .lbl_fig img{
            max-width: auto;
            max-width: initial;
            height: 4.8vw;
            width: auto !important;
        }
    
        .reason_box .box_inner ul li.reason1 .lbl_fig{
            flex-direction: column;
        }
    
            .reason_box .box_inner ul li.reason1 .lbl_fig .lbl1,
            .reason_box .box_inner ul li.reason1 .lbl_fig .lbl2{
                width: auto;
            }
    
            .reason_box .box_inner ul li.reason1 .lbl_fig .lbl1{
                margin-bottom: 0.4em;
            }
    
        .reason_box .box_inner ul li:nth-child(2) .fig:nth-child(2){
                width: 18vw;
                top: auto;
                left: -4vw;
                bottom: -3vw;
            }
    
        .reason_box .box_inner li:nth-child(3) .txt {
            padding: 0 8vw 0 0;
        }
    
            .reason_box .box_inner li:nth-child(3) .small_txt{
                padding: 0 0.5em;
                font-size: 0.9em;
            }
    
            .reason_box .box_inner ul li:nth-child(3) .fig:nth-child(2) {
                width: 14vw;
                top: 12vw;
                right: -4vw;
            }
    
    .course_inner {
        padding: 2rem 4vw 1rem;
    }
    
        .course_box .box_header .fig, .course_child_box .box_header .fig{
            left: -2vw;
        }
    
            .course_box .box_header .lbl_fig{
                width: 54vw;
                margin-bottom: 0;
            }
    
    .course_box .box_inner .sec{
        margin: 0;
        flex-direction: column;
    }
    
    .course_box .box_inner .sec .sec_link{
        width: 100%;
    }
    
    .course_box .box_inner .sec .sec_link:nth-child(1){
        margin-bottom: 1rem;
    }
    
    .course_box .box_inner .sec .sec_link:nth-child(2){
        margin-bottom: 0.5rem;
    }
    
        .course_box .box_inner .sec .sec_link .sec_inner{
            width: 100%;
        }
    
        .course_box .box_inner .lbl_fig{
            height: 5vw;
            margin: 4vw 0 2vw !important;
        }
    
        .course_box .box_inner .big_sec .lbl_fig{
            height: 3.6vw;
            margin: 0 !important;
        }
    
        .course_box .box_inner .big_sec dl dt{
            margin: 0 auto 3vw
        }
    
            .course_box .box_inner .lbl_fig img,
            .course_box .box_inner .big_sec .lbl_fig img{
                max-width: auto;
                max-width: initial;
                width: auto !important;
                height: 100%;
                display: block;
            }
        
        .course_box .box_inner .sec_inner1{
            padding-bottom: 4vw;
        }
    
    
        .course_box .box_inner dl{
            width: 100%;
        }
    
        .course_box .box_inner .sec_inner1 dt{
            font-size: 2rem;
            margin-bottom: 0.2em;
        }
    
        .course_box .box_inner dd{}
    
            .course_box .box_inner .sec_inner1 dd p{
                font-size: 1.2rem;
                margin-bottom: 0.6em;
            }
    
            .course_box .box_inner .sec_inner1 .btn{
                display: flex;
                justify-content: center;
                align-items: center;
                width: 80%;
                height: 8vw;
                padding: 0;
                border-radius: 4vw;
                font-size: 4vw;
                margin: 0 auto;
            }
    
    .course_box .box_inner .sec_inner2 {
        margin: 1em 0 0 0;
        padding: 0 3vw 3vw;
        width: 100%;
    }
    
    .course_box .box_inner .sec_inner2 ul li dl dt, .course_box .box_inner .sec_inner2 li>p{
        font-size: 1.3rem;
    }
    
    .course_box .box_inner .sec_inner2 ul li dl dd p{
        font-size: 1rem;
    }
    
    .course_box .box_inner .big_sec > dl{
        margin-bottom: 2rem;
    }
    
    .course_box .box_inner .big_sec dl dd{
        margin: 0 auto;
        flex-direction: column;
        align-items: center;
        font-size: 1.2rem;
    }
    
        .course_box .box_inner .big_sec a {
            width: 100%;
            padding: 0.5rem 0;
        }
    
        .course_box .box_inner .big_sec a:nth-child(1){
            margin-bottom: 0.5rem;
        }
    
            .course_box .box_inner .big_sec dl dt{
                font-size: 1.2rem;
                margin-bottom: 0.6rem;
            }
    
            .course_box .box_inner .big_sec dl dd{
                font-size: 1rem;
            }
    
                .course_box .box_inner .big_sec .btn dl dt{
                    margin-bottom: 0.3rem;
                }
    
        .course_box .box_inner .big_sec .small_txt{
            font-size: 0.9rem;
            text-align: left;
        }
    
        .case_intro_box .box_header{
            margin-bottom: 1rem;
        }
    
            .case_intro_box .box_header .lbl_fig{
                margin: 0;
                width: 50%;
            }
    
            .case_intro_box .box_inner ul li{
                margin-bottom: 1rem;
            }
    
            .case_intro_box .box_inner ul li dl dt {
                padding: 0.3em 0;
                font-size: 1.1rem;
            }
    
            .case_intro_box .box_inner ul li dl dd{
                padding: 3vw;
                margin: 0;
            }
    
                .case_intro_box .box_inner ul li dl dd .case_fig{
                    padding: 0;
                    align-items: flex-start;
                }
    
                .case_intro_box .box_inner ul li dl dd .case_fig .fig, .case_intro_box .box_inner ul li:nth-child(2) dl dd .case_fig .fig{
                    box-sizing: border-box;
                    width: 25vw;
                    margin-right: 0;
                    padding-right: 2vw;
                }
    
                .case_intro_box .box_inner .case_sen > dl > dt{
                    font-size: 1rem;
                }
    
                .case_intro_box .box_inner .case_sen dl dd,
                .case_intro_box .box_inner ul li:nth-child(2) dl dd .case_fig .case_sen dl dd{
                    padding: 2vw;
                    margin: 0 0 0 0;
                }
    
                    .case_intro_box .box_inner .case_sen dl dd p,
                    .case_intro_box .box_inner li:nth-child(2) .case_sen dl dd p{
                        font-size: 0.9rem;
                    }

    
                .case_intro_box .box_inner ul li:nth-child(2) dl dd .case_fig .case_sen dl dd{
                    flex-direction: column;
                }
    
        .case_intro_box .box_inner .small_txt{
            font-size: 0.94rem;
            line-height: 1.4;
            text-align: left;
            margin-bottom: 1em;
        }
    
    .course_child_box{
        padding: 0;
    }
    
    .course_child_inner{
        box-sizing: border-box;
        padding: 2rem 4vw 1rem;
    }
    
    .course_child_box .box_header{
        margin-bottom: 0.5rem;
    }
    
    .course_child_box .box_header .fig{
        left: -6vw;
        width: 16vw;
    }
    
    .course_child_box .lbl_fig{
        width: 72vw;
    }
    
    .course_child_box .box_inner .sec_inner1{
        background-size: 200% auto;
        background-position: center top;
        padding: 0 0 4vw 0;
    }
    
        .course_child_box .box_inner .fig{
            height: 5vw;
            margin: 4vw 0 2vw !important;
        }
    
            .course_child_box .box_inner .fig img{
                max-width: auto;
                max-width: initial;
                width: auto !important;
                height: 100%;
                display: block;
            }
    
    .course_child_box .box_inner dl dt{
        font-size: 2rem;
        margin-bottom: 0.2em;
    }
    
    .course_child_box .box_inner .sec_inner1 .posi_fig{
        width: 25vw;
        top: 2vw;
        right: 2vw;
    }
    
    .course_child_box .box_inner .sec_inner1 dl{
        width: 100%;
    }
    
    .course_child_box .box_inner>.small_txt{
        font-size: 0.9rem;
        text-align: left;
        line-height: 1.4;
        margin-bottom: 1.5rem;
    }
    
    .course_child_box .box_inner dl dd p{
        font-size: 1.2rem;
        margin-bottom: 0.6em;
    }
    
    .course_child_box .box_inner .sec_inner1 .btn{
        display: flex;
        justify-content: center;
        align-items: center;
        width: 80%;
        height: 8vw;
        padding: 0;
        border-radius: 4vw;
        font-size: 4vw;
        margin: 0 auto;
    }
    
    .course_child_box .box_inner .sec_inner2{
        padding: 4vw;
    }
    
    .course_child_box .box_inner .sec_inner2 ul li dl dt,
    .course_child_box .box_inner .sec_inner2 li p{
        font-size: 1.2rem;
    }
    
    .course_child_box .box_inner .sec_inner2 ul li dl dd{
        font-size: 0.94rem;
    }
    
    .course_child_box .box_inner .sec_inner2 .small_txt{
        font-size: 0.84em;
    }
    
    .course_child_inner .case_intro_box .box_inner ul li>dl>dt{
        padding: 0.3em 0;
        font-size: 1.1rem;
    }
    
    .course_child_inner .case_intro_box .box_inner{
        padding: 0;
    }
    
    .course_child_inner .case_intro_box .box_inner .case_fig .fig,
    .course_child_inner .case_intro_box .box_inner li:nth-child(2) .case_fig .fig{
        width: 16vw;
        margin: 0;
    }
    
    .course_child_inner .case_intro_box .box_inner .case_fig .case_sen{
        width: calc(100% - 16vw);
    }
    
    .course_child_inner .case_intro_box .box_inner .case_fig .case_sen>dl>dd,
    .course_child_inner .case_intro_box .box_inner li:nth-child(2) .case_fig .case_sen>dl>dd{
        padding: 2vw;
        margin-bottom: 0
    }
    
    .voice_box{
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 1rem 0 1rem;
    }
    
    .voice_box .box_header{
        margin-bottom: 1rem;
    }
    
    .voice_box > .box_header .lbl_fig{
        width: 43vw;
    }
    
    .voice_box .box_inner ul{
        margin-bottom: 0;
    }
    
    .voice_box .box_inner ul li{
        margin-bottom: 0.9rem;
    }
    
    .voice_box .box_inner ul li:last-child{
        margin-bottom: 0;
    }
    
    .voice_box .box_inner .fig_sen{
        padding: 3vw;
        border-radius: 2vw;
        margin: 0;
    }
    
        .voice_box .box_inner .fig_sen .fig{
            width: 10vw;
        }
    
        .voice_box .box_inner .fig_sen dl{
            box-sizing: border-box;
            width: calc(100% - 10vw);
            padding-left: 1rem;
        }
    
    .voice_box .box_inner dl dt{
        margin-bottom: 0.5rem;
    }
    
        .voice_box .box_inner dl dt .lbl_fig{
            height: 4.4vw;
        }
    
        .voice_box .box_inner dl dt .lbl_fig img{
            max-width: auto;
            max-width: initial;
            width: auto !important;
            height: 100%;
            display: block;
        }
    

    
    .voice_box .box_inner dl dd{
        margin: 0;
    }
    
    .voice_box .box_inner dl dd p{
        font-size: 0.94rem;
    }
    
    footer .box_inner .lbl_fig{
        width: 50vw;
        margin-bottom: 1em;
    }
    
        footer .box_inner .lbl_fig img{
            max-width: 100%;
            height: auto;
        }
    
        footer .box_inner .ad_lbl{
            font-size: 0.9rem;
            margin-bottom: 1em;
            width: 100%;
            padding-right: 0.5em;
        }
    
            footer .box_inner .ad_lbl a{
                color: #fff;
                text-decoration: underline;
            }
    
        footer .box_inner .copyright{
            font-size: 0.8rem;
        }
    
/*ページトップ*/
.pagetop{
    right: 2vw;
    bottom: 2vw;
    width:12vw;
    height:12vw;
}

    .pagetop a:before{
        width:4vw;
        height:4vw;
    }


    
    /*改行のPC,SPでの表示切替*/
    br.pc,
    img.pc,
    span.pc {
        display: none;
    }

    br.sp,
    img.sp,
    span.sp {
        display: inline;
    }


}