/* responsive */
.box_sp,
.box_tl {
    display: none;
}

.box_pc {
    display: block;
}

.slider_sp {
    display: none;
}

/*responsive TL */






@media screen and (min-width: 1065px) {
    /*#list_menu_sticky_header {
    display: block !important;
}
#list_menu_sticky_header {
    height: 60px !important;
}
#sticky_menu_footer {

}*/
}

/*@media screen and (max-width: 1400px) {
#list_bx07{
    width:100%;
    margin-left:0%;
}
    
}*/




@media screen and (max-width: 1700px) {
#index #header {
    height: calc(100vw * 1500 / 2800);
}
}
@media screen and (max-width: 1400px) {

    #header .inner,
    #index_main_slider .inner {
        width: 100%;
    }

    .inner {
        width: 100%;
        box-sizing: border-box;
        padding: 0 20px;
    }

    #header .inner {
        padding: 0;
    }

    #logo {

        right: 20px;
    }

    #header_menu {
        right: 250px;

    }

    #logo img {
        width: 150px;
    }

    #header_menu ul {}

    #header_menu ul li {}

    #index #header {
        height: 55vw;

    }
}

@media screen and (max-width: 1250px) {
    .bg01.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }

    .bg02.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }

    .bg03.under #header:before {
        width: 30vw;
        left: 0;
        transform: translateX(0);
    }

    .bg04.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }

    .bg05.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }

    .bg06.under #header:before {
        width: 25vw;
        left: 0;
        transform: translateX(0);
    }

    .bg07.under #header:before {
        width: 50vw;
        left: 0;
        transform: translateX(0);
    }

    .bg08.under #header:before {
        width: 25vw;
        left: 0;
        transform: translateX(0);
    }

    .bg09.under #header:before {
        width: 25vw;
        left: 0;
        transform: translateX(0);
    }

    .bg10.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }

    .bg11.under #header:before {
        width: 27vw;
        left: 5vw;
        transform: translateX(0);
    }

    .bg12.under #header:before {
        width: 38vw;
        left: 0;
        transform: translateX(0);
    }




    .list_bx02_list {
        display: flex;
        justify-content: center;
    }

    .list_bx02_list:nth-child(1) .list_bx02_img,
    .list_bx02_list:nth-child(2) .list_bx02_img,
    .list_bx02_list:nth-child(3) .list_bx02_img,
    .list_bx02_list:nth-child(4) .list_bx02_img,
    .list_bx02_list:nth-child(5) .list_bx02_img {

        width: 60%;
        max-width: 250px;

    }

    .footer_logo {
        padding-left: 0;
    }

    .f_btr {
        padding-right: 0;
    }

    .under #header:before {
        width: 35vw;
        height: calc(35vw * 405 / 655);
        left: 0;
        transform: translateX(0);

    }

    .uh1 {
        width: 40%;
        position: absolute;
        top: 270px;
        left: 60%;
        transform: translateX(-50%);
    }


}

@media screen and (max-width: 1150px) {

    .main_visual_txt {
        top: 60%;
    }



    .img_ct img {
        max-width: 100%;

    }



    #sticky_header ul li {
        margin: 0 1vw;
        text-align: center;
    }

    #sticky_header ul li a {

        font-size: 1.5vw;
        padding: 0 1vw;

    }



    .list_bx02_list:nth-child(1) .list_bx02_img,
    .list_bx02_list:nth-child(2) .list_bx02_img,
    .list_bx02_list:nth-child(3) .list_bx02_img,
    .list_bx02_list:nth-child(4) .list_bx02_img,
    .list_bx02_list:nth-child(5) .list_bx02_img {

        width: 40%;

    }

}

@media screen and (max-width: 1000px) {
    .list_bx01_list {
        margin-right: 20px;
    }

    .list_bx01_list:nth-child(3n+3) {
        margin-right: 0;

    }

    .list_bx01_title {
        font-size: 18px;
    }

    .list_bx02_list {
        margin-bottom: 90px;
    }


}

@media screen and (max-width: 960px) {
.main_visual_txt{
 /*    display: flex;
 justify-content: center; */
     top: 65%;
}
    h1#main_visual {
       background-size: 630px auto;
        font-size: 33px;

        /*     padding: 9vw 15vw;
                background-size: 100% auto; */

    }

    h1#main_visual .msmal {
        font-size: 20px;
    }

    .heightLine-01 {
        height: auto !important;
    }

    .list_bx04 {
        flex-wrap: wrap;

    }

    .list_bx04_list {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px;
    }

    .list_bx04_list:last-child {
        margin-bottom: 0;
    }

    .bmap {
        width: 50%;
        float: left;

    }

    .cp_info {
        padding: 10px 0 0 30px;
        width: 50%;
        float: left;

    }

    #index_box04:before,
    #index_box04:after {
        width: 100px;


    }

    #index_box04:before {
        right: 20px;
        transform: translateX(0);
    }

    /* .cp_info dt, .cp_info dd {
    font-size: 14px;
}
.cp_info {
    padding: 0;
}
.cp_info dt {
    padding-right: 5px;
    width: 50px;
} */
    #header_menu {
        right: 150px;

    }

    #logo img {
        width: 100px;
    }



    #index_box05:before {
        width: 60px;
        height: 200px;

        right: 0;
        transform: translateX(0);
    }

    #index_box05:after {
        width: 100px;
        height: 270px;

        bottom: -60px;

        left: 0;
        transform: translateX(0);
    }

    .box_lis05 {
        padding: 0 50px;
    }

    .dir_img img {
        width: 200px;
    }

    .ct_dir {
        padding: 0;

    }



    h2.s01 {
        font-size: 35px;
    }
    h1.ttl01{
    font-size: 38px;

    margin-bottom: 50px;
}

h1.ttl01:before {
    bottom: -25px;

}

    .txt_t01 {
        font-size: 18px;
        margin-bottom: 35px;
    }

    ol>li {
        font-size: 18px;
    }

    h3.su01 {
        font-size: 28px;
    }

    .datalist01 dt,
    .datalist01 dd {
        font-size: 18px;
    }

    .lmenu_sb li a {
        font-size: 18px;

    }


    @media screen and (min-width: 851px) {
        #header_menu {}
    }

    @media screen and (max-width: 850px) {
           .list_bx02_list:nth-child(1) .list_bx02_img,
    .list_bx02_list:nth-child(2) .list_bx02_img,
    .list_bx02_list:nth-child(3) .list_bx02_img,
    .list_bx02_list:nth-child(4) .list_bx02_img,
    .list_bx02_list:nth-child(5) .list_bx02_img {

        width:60%;

    }


        .list_gl_ct,
        .list_gl_ct:nth-child(4n+4) {
            width: calc((100% - 40px) / 3);
            margin-right: 20px;
            margin-bottom: 20px;
            background: #fff;
            cursor: pointer;
        }

        .list_gl_ct:nth-child(3n+3) {
            margin-right: 0;
        }


        #sticky_header ul li {
            margin: 0;
            text-align: center;
        }

        #sticky_header ul li a {

            font-size: 1.8vw;
            padding: 0 1vw;

        }


        .list_bx01_img:before {

            border-top: 50px solid #fff;
            border-right: 50px solid transparent;
        }

        .list_bx01_title {
            font-size: 16px;
        }

        .list_bx03_title {

            font-size: 15px;
            right: -17px;
            top: -20px;
            padding: 15px 0;
            line-height: 34px;
        }

        #content {
            width: calc(100% - 180px);
            float: left;
        }

    }

    @media screen and (max-width: 800px) {
        .footer_logo {
            width: 100%;
            float: none;
            text-align: center;
            margin-bottom: 30px;
        }

        .f_btr {
            float: none;
            display: block;

        }

        .footer_link {
            flex-wrap: wrap;
            flex-direction: column;
            float: none;
            width: 100%;

        }

        .footer_link {
            margin-bottom: 20px;
        }

        .footer_link li {
            width: 100%;
            border-bottom: 1px solid #3e3e3e;
        }

        .footer_link li:first-child {
            border-top: 1px solid #3e3e3e;
        }

        .footer_link li:after {
            display: none;
        }

        .footer_bt .inner {
            padding: 0;
        }

        .footer_link li a {
            padding: 0;
            display: block;
            font-size: 15px;
            padding: 10px 0 10px 30px;
            background: url(../images/icon_arrow05.png) 8px center no-repeat;
            background-size: 10px auto;


        }

        address {
            float: none;
            text-align: center;
        }

    }