/* responsive */
.box_sp,
.sp420,
.sp320{display: none;}
.box_pc{display: block;}

@media screen and (min-width: 1920px){
    header{left: calc(50% - 960px)}
}
@media screen and (min-width: 751px)  and (max-width: 1370px){
header,
header.active{padding: 15px}

.box_package .box_combine dl.ic1 dt .icon{top: 0;left: -20px;width: 100px}
.box_package .box_combine dl.ic3 dt .icon{top: 30px;right: -15px;width: 120px;}
}

@media screen and (min-width: 751px) {
.btn a:hover::before{bottom: 0;left: 0;}
header .head_link .btn a:hover{background: #ef7726;}
#btn_top:hover{opacity: 0.7;}

}

@media screen and (max-width: 750px) {
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    input,
    button,
    textarea,
    select,
    p,
    blockquote,
    th,
    td,
    pre,
    address,
    li,
    dt,
    dd{font-size: 14px;}



    #wrapper,
    #header,
    #main,
    #footer,
    .inner {width: 100% !important;min-width: inherit !important;}
    .inner {box-sizing: border-box;padding: 0 15px;}
    .box_sp{display: block;}
    .box_pc {display: none;}
    /*---*/

    #wrapper{padding-top: 60px}
    /*==========================================================================*/
    /*                               ALL                                        */
    /*==========================================================================*/
    header,
    header.active{padding: 5px 15px;background: rgba(255, 255, 255, 0.9);align-items: center;height: 50px;position: absolute;}
    header #logo{width: 220px}
    header .head_link{position: fixed;bottom: -80px;left: 0;width: 100%;padding: 0;opacity: 0;transition: all ease 0.3s;}
    header .head_link.active{bottom: 0;opacity: 1;}

    header .head_link .btn{width: 50%;border-right: 1px solid #fff;margin: 0}
    header .head_link .btn:last-child{border-right: none;}
    header .head_link .btn a{font-size: 14px;width: 100%;height: 40px;border-radius: 0;line-height: 1.4em;}
    header .head_link .btn a::after{right: 4px;}

    #gnavi{display: none;}
    
    .title{padding: 0;}
    .title h3{font-size: 22px;padding: 0;margin-bottom: 10px;}
    .title p{font-size: 16px;letter-spacing: 0}
    
    .btn,
    .btn:last-child{margin: 0 10px 20px}
    .btn a{width: 290px;height: 50px;font-size: 16px;}
    .btn a::after{width: 10px;height: 19px;top: calc(50% - 8px);right: 15px}

    #btn_top{bottom: 60px;width: 40px;right: 15px;}
    
    .box_btn{margin: 15px 0 0}
    .box_contact,
    .box_contact_ft{padding: 40px 0}
    /*==========================================================================*/
    /*                               MAIN                                       */
    /*==========================================================================*/
    /* BOX CETIFI  */
    .box_certifi{padding: 20px 0}
    .box_certifi ul{}
    .box_certifi ul li{margin-right: 5px}
    
    /* BOX CHECKLIST */
    .box_checklist_bg{padding: 40px 0 30px;margin-bottom: 60px}
    .box_checklist .box_checklist_ct::before{top: 0;left: 0}
    .box_checklist .box_checklist_ct ul{margin: 15px 0 0 100px}
    .box_checklist .box_checklist_ct ul li{font-size: 16px;line-height: 1.5em;margin-bottom: 10px;padding-bottom: 5px}
    .box_checklist .box_checklist_ct ul li::before{width: 20px;height: 18px;top: 6px;left: -30px;}
    .box_checklist .center{padding: 0 15px}

    /* BOX PACKAGE */
    .box_package{padding: 15px 0 50px}
    .box_package .box_combine{margin-top: 50px;flex-wrap: wrap}
    .box_package .box_combine dl{width: 100%;margin: 0 0 80px}
    .box_package .box_combine dl::before{width: 40px;height: 40px;top: calc(100% - 5px);right: calc(50% - 20px);}
    .box_package .box_combine dt p{font-size: 22px;}
    .box_package .box_combine dt .label{font-size: 16px;width: 140px;height: 60px;top: -30px;left: calc(50% - 70px)}
    .box_package .box_combine dd{padding: 20px 15px;min-height: inherit;font-size: 16px;top: -20px;}
    .box_package .box_combine dl.ic1 dt .icon{width: 100px;top: -25px;left: calc(50vw - 180px)}
    .box_package .box_combine dl.ic2 dt .icon{right: calc(50vw - 170px);width: 120px}
    .box_package .box_combine dl.ic3 dt .icon{right: 15px;width: 120px;top: inherit;bottom: -60px}
    .box_package .box_combine dl.ic3 dd{padding-bottom: 35px}
    .box_package .box_combine dl.ic3 dd::before{width: 70px;height: 96px;bottom: 80px;right: calc(50% - 190px)}
    .box_package .box_combine dl.ic3{margin-bottom: 30px}

    .box_package .btn_bnn{width: 100%;height: auto;padding: 15px;font-size: 20px;flex-wrap: wrap;}
    .box_package .box_packlist{padding: 30px 15px;margin-top: 30px}
    .box_package .box_packlist p{width: 100%;margin: 0 auto;font-size: 18px;border-radius: 10px}
    .box_package .box_packlist p::before{border-radius: 10px;}
    .box_package .box_packlist ul{margin-top: 20px}
    .box_package .box_packlist ul li,
    .box_package .box_packlist ul li:nth-child(3n + 3){font-size: 13px;width: 50%;margin: 0;padding-left: 10px}
    .box_package .box_packlist ul li::before{top: 7px;left: 0}
    .box_package .box_packlist ul li.clone{display: none;}
    .box_package .box_packlist ul li.box_sp{position: absolute;bottom: 15px;right: 15vw;width: auto;}
    .box_package .box_packlist ul li.box_sp::before,
    .box_package .box_packlist ul li span.box_pc{display: none;}

    .box_package .box_packlist_line{height: 305px}
    .box_package .box_packlist_bg{width: 131vw;left: -140px}
    .box_package .box_packlist_bg2{width: 130vw;left: -130px}

    /* BOX SERVICE  */
    .box_service{padding: 50px 0 20px}
    .box_service .center:last-child{margin-bottom: 0}
    .box_service .title{margin-bottom: 30px}
    .box_service .box_service_item{padding: 30px 15px;margin-bottom: 30px;border-radius: 30px}
    .box_service .service_ttl{padding: 0}
    .box_service .service_ttl p{padding: 95px 10px 0;font-size: 22px;}
    .box_service .service_content{margin-top: 0;padding: 0;flex-wrap: wrap;}
    .box_service .service_content .service_txt{}
    .box_service .service_content .service_txt p{font-size: 14px}
    .box_service .service_content .service_txt .list_label{width: 100%;margin-top: 0;justify-content: space-between;}
    .box_service .service_content .service_txt .list_label li{margin: 0 0 15px;font-size: 16px;width: 140px;height: 60px}
    .box_service .service_content .service_txt .box_sp{width: 200px;margin: 0 auto 1.5em;}
    .box_service .service_content .service_img{display: none;}
    
    .box_service .service_merit{margin: 30px auto 0;padding: 0}
    .box_service .service_merit .big{margin-bottom: 15px;}
    .box_service .service_merit_list{flex-wrap: wrap}
    .box_service .service_merit_list dl{width: 100%;margin-bottom: 30px;}
    .box_service .service_merit_list dt{width: 100%;font-size: 16px;height: auto;margin: 0 auto 15px;background: none;border:none;justify-content: flex-start;}
    .box_service .service_merit_list dt::before,
    .box_service .service_merit_list dt::after{display: none;}
    .box_service .service_merit_list dd{padding: 0}

    .box_service .service_percent{margin-bottom: 30px;flex-wrap: wrap;justify-content: center;}
    .box_service .service_percent_l{width: 100%;margin: 0 0 30px}
    .box_service .service_percent_r{padding: 0;}
    
    .box_service .box_service_video_ct{margin: 15px auto;flex-wrap: wrap;justify-content: center;padding: 0}
    .box_service .box_service_video_txt{padding: 0}
    .box_service .box_service_video_l{width: 100%}
    .box_service .box_service_video_r{width: 100%;margin: 15px auto 0;text-align: center;}

    .box_service .box_service_ytb{}
    .box_service .box_service_ytb .service_ttl p{padding: 95px 20px 0}
    .box_service .box_service_ytb_ct{padding: 0;margin-top: 15px;flex-wrap: wrap;}
    .box_service .box_service_ytb_txt.mb70{margin-bottom: 30px}
    .box_service .box_service_ytb_txt p{font-size: 14px}
    
    .box_service .box_service_ytb_img{position: relative;top: inherit;right: inherit;width: 200px;text-align: center;margin: 0 auto 30px}
    
    .box_service .box_service_ytb_table{}
    .box_service .box_service_ytb_table p{width: 48%;}

    .box_service .icon_x{width: 52px;margin: 0 auto 30px;padding: 0}
    
    .box_service .big,
    .box_service .service_content .service_txt .big,
    .box_service .box_service_video_l .big,
    .box_service .box_service_ytb_txt .big{font-size: 20px}

    /* BOX INTRO */
    .box_intro{padding: 50px 0}
    .box_intro .title{margin-bottom: 30px;}
    .box_intro .box_intro_item{padding: 30px 15px;border-width: 4px;border-radius: 30px;margin-bottom: 30px}
    .box_intro .box_intro_item.mb70{margin-bottom: 30px}
    .box_intro .box_intro_txt{margin: 0;flex-wrap: wrap;justify-content: center;}
    .box_intro .box_intro_txt .intro_logo{width: 250px;margin: 0;height: 120px;border-radius: 15px;border-width: 2px;padding: 0 15px}
    .box_intro .box_intro_txt .intro_txt{width: 100%;}
    .box_intro .box_intro_txt .intro_txt .big{font-size: 20px}
    .box_intro .box_intro_txt .intro_txt .md{font-size: 16px;}
    .box_intro .box_intro_video{width: 100%;height: calc((100vw - 60px) * 47 / 84);margin-top: 15px;}
    .box_intro .box_intro_item.list_intro{padding: 30px 15px 0;margin-bottom: 0;border-radius: 40px}    
    .box_intro .box_intro_item ul{flex-wrap: wrap;margin-top: 0;align-items: flex-start;justify-content: space-between;}
    .box_intro .box_intro_item ul li{width: 48%;margin: 0}
    .box_intro .box_intro_item ul li .img{height: calc((100vw - 80px) * 5.3 / 16)}
    .box_intro .box_intro_item ul li .name{font-size: 18px}
    .box_intro .box_intro_item ul li .area{font-size: 16px;}
    
    /* BOX PRICE */
    .box_price{padding: 50px 0}
    .box_price .box_price_bg{padding: 30px;margin-top: 30px;border-radius: 15px}
    .box_price .box_price_bg .right{font-size: 14px;text-align: left;}
    .box_price .box_price_list{flex-wrap: wrap;justify-content: space-between;align-items: flex-end;margin-bottom: 20px}
    .box_price .box_price_list dl{width: 48%;margin: 0 0 30px}
    .box_price .box_price_list dt{height: 50px;font-size: 16px;}
    .box_price .box_price_list dt::before{bottom: -18px;transition: all ease 0.3s}
    .box_price .box_price_list dt.active::before{bottom: -11px}
    .box_price .box_price_list dl.pink dt{font-size: 22px;letter-spacing: 0;height: auto;padding: 15px 0}
    .box_price .box_price_list dd{font-size: 14px;}
    .box_price .box_price_list dd .txt{padding: 15px 0 15px 5px}
    .box_price .box_price_list dd .txt ul li{font-size: 14px}
    .box_price .box_price_list dl .price{height: 100px;padding-bottom: 0}
    .box_price .box_price_list dd .price .big{font-size: 22px;}
    .box_price .box_price_list dd .price span{font-size: 36px;}

    /*==========================================================================*/
    /*                               FOOTER                                     */
    /*==========================================================================*/
    footer{padding: 30px 0 60px}
    footer .inner{flex-wrap: wrap}
    footer .foot_info{width: 100%;text-align: center;}
    footer .foot_info .logo_foot{margin-bottom: 10px}
    footer address{text-align: center;margin:30px auto 0;width: 100%;}



    /* CONTACT FORM */
    table.mailform tr th{border-bottom: none;border-color: #004ea2}

}

@media screen and (max-width: 670px) {
    .box_package .box_packlist_line{height: 320px}
    .box_package .box_packlist_bg{width: 137vw;}
    .box_package .box_packlist_bg2{width: 136vw;}

}

@media screen and (max-width: 570px) {
    .pc560{display: none;}
    .box_service .service_content .service_txt .list_label li{width: 48%}

    .box_price .box_price_list dl{width: 100%;}
    .box_price .box_price_list dd .txt{min-height: inherit;}
    .box_price .box_price_list dl:last-child{margin-bottom: 10px}

    .box_intro .box_intro_item ul li{width: 100%;}
    .box_intro .box_intro_item ul li .img{height: calc((100vw - 60px) * 27 / 40)}

    .box_package .box_packlist_bg{width: 143vw;}
    .box_package .box_packlist_bg2{width: 142vw;}
}

@media screen and (max-width: 480px) {
    .title{margin-bottom: 15px}
    .title h3{background-image: linear-gradient(0deg, #fff000 10%, rgba(255,255,255,0) 12%, rgba(255,255,255,0) 43%, #fff000 50%, #FFF001 50%, rgba(255,255,255,0) 56%, rgba(255,255,255,0) 100%);background-size: 1px 75px;background-position: 0% 100%;display: inline}
    .title p{margin-top: 10px}
    .title_sp h3{background: none;position: relative;z-index: 1;}
    .title_sp h3::before{width: 100%;height: 12px;background: #fff000;position: absolute;bottom: 0;left: 0;content: '';z-index: -1;}

    .box_service .box_service_ytb_table{flex-wrap: wrap}
    .box_service .box_service_ytb_table p{width: 100%;}

    .box_package .box_packlist_bg{width: 149vw;}
    .box_package .box_packlist_bg2{width: 148vw;}
}

@media screen and (max-width: 420px) {
    .sp420{display: block;}
    header,
    header.active{height: 60px;padding: 10px 15px}
    header .head_link .btn a{height: 50px}

    .box_package .box_combine dl.ic3 dt .icon{bottom: -80px}
    .box_package .box_combine dl.ic3 dd::before{bottom: 110px}
    .box_price .box_price_bg{padding: 15px}

}

@media screen and (max-width: 380px) {
    .btn{padding: 0;width: 100%;box-sizing: border-box}
    .box_checklist .box_checklist_ct ul li{font-size: 15px;}

    .box_package .box_packlist_bg{width: 159vw}
    .box_package .box_packlist_bg2{width: 157vw}

    .box_checklist .box_checklist_ct::before{width: 40px;height: 98px}
    .box_checklist .box_checklist_ct ul{margin-left: 80px}
    

    .title p{font-size: 14px}

}

@media screen and (max-width: 360px) {
    .box_package .box_packlist_bg{}
    .box_package .box_packlist_bg2{}



}

@media screen and (max-width: 320px) {
    .sp320{display: block;}
    .title p{font-size: 13px}
    header .head_link .btn a{font-size: 13px}

    .box_package .box_packlist_bg{width: 198vw;left: -180px}
    .box_package .box_packlist_bg2{width: 198vw;left: -180px}
}