@media screen and (min-width: 751px) {
   
}

@media screen and (min-width: 751px) and (max-width: 1500px) {

}

/* screen-min:750px */
@media screen and (max-width: 750px) {
    img {
        max-width: 100%;
        height: auto;
    }
    .spmb30{
        margin-bottom: 30px;
    }

    #wrapper,
    #header,
    #main,
    #footer,
    #footer_menu,
    .inner {
        width: 100% !important;
        box-sizing: border-box;
        min-width: unset !important
    }

    .pc {
        display: none !important
    }
    

    /*=====================================================
                          C U S T O M
    ======================================================*/

    /*============ CONTENT ============*/
    .under #main{
        padding-bottom: 150px;
    }

    .under h2{
        font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
        padding: 40px 15px;
        padding-right: 30vw !important;
        padding-bottom: 180px;
        background: url(../images/h2_bg_sp.png) no-repeat  right -6vw bottom;
    }
    .under h2 span.ja{
        display: block;
        color: #666666;
        font-size: 24px;
        font-weight: 400;  
        padding: 0 0 15px 0;
    }
    .under h2 span.en{
        display: block;
        color: #ff9800;
        font-size: 14px;  
        font-weight: bold;
        letter-spacing: 0.01em;  
        padding: 0 15px 30px 15px;
    }
    


    .under .page_left{
        display: none;
    }

    .under #dirPathBlock{
        padding: 10px 0;
    }

    .under #dirPathBlock li{
        text-align: left;
        padding-left: 0;
		margin: 0 0px 1em;
		font-size: 14px;
    }

    .under .page_right2{
        width: 100%;
        float: unset;
        box-sizing: border-box;
    }
    .under .page_right2 h4{
        font-size: 4vw;
        padding-left: 0;
    }
    .under .page_right2 p{
        margin-left: 0;
        margin-right: 0;
    }
    .under .cautions_box{
        width: 100%;
        margin: 0 auto 30px;
        box-sizing: border-box;
    }
    .under .aftercare_01-ttl{
        margin-left: 0  !important;
        margin-right: 0 !important;
        padding: 0 0 0;
    }

    .under table.union{
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .under table.union tr,
    .under table.union td,
    .under table.union th{
        display: block;
        width: 100%;
        font-size: 14px;
        box-sizing: border-box;
    }
    
    .under table.union td,
    .under table.union th{
        border-bottom: none;
    }
    .under table.union tr:last-child{
        margin-bottom: 20px !important;
        border-bottom: 1px solid #CCCCCC;
    }

    .under#condition table.union tr{
        max-width: 202px;
        margin: 0 auto ;
        border-bottom: 1px solid #CCCCCC;
    }

    .under#mirai14000 table.union tr{
        max-width: 202px;
        margin: 0 auto;
    }

    .under#purpose table.union tr{
        max-width: 325px;
        margin: 0 auto;
    }

    .under table.union-anc-sp{
        margin-bottom: 20px;
    }
    .under .union-anc-sp tbody{
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .under table.union-anc-sp tr:last-child,
    .under table.union-anc-sp tr{
        margin-bottom: 0 !important;
        margin: 0 0 !important;
    }
    .under table.union-anc-sp tr:last-child td{
        border-left: none;
    }
    .under table.union-anc-sp tr{
        border-bottom: 1px solid #CCCCCC;
    }

    .under .text_r{
        width: 100%;
        float: unset;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .under .image_r{
        float: unset;
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
    }
    
    .under .comment_box{
        width: 100%;
        float: unset;
        box-sizing: border-box;
        margin: 0 auto 30px;
    }

    .under .name,
    .under dt{
        font-size: 14px;
    }

    .under .faq_box{
        margin-left: 0;
        margin-right: 0;
    }

    .under .bnr_img{
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto 30px;
    }
    .under th[align="center"] {
        text-align: center;
    }


    .under .page_bot{
        width: 100%;
        float: unset;
        margin-top: 15px;
        padding-top: 30px;
        border-top: 5px solid #ffa500;
    }
    .under .page_bot ul{
        width: 100%;
        max-width: 240px;
        margin: 0 auto;
    }
    .under .page_bot li {
        margin-bottom: 20px;
    }
    .top_left{
        width: 100%;
        float: unset;
        margin: 0 auto;
    }

    .under .sitemap{
        margin: 0 0 30px;
    }

    #main #copyright {
        text-align: center;
    }

    table.mailform {
        margin: 0;
        width: 100%;
        table-layout: fixed;
        padding: 0;
    }

    table.mailform tr{
        display: flex;
        flex-direction: column;
        border-left: solid  2px #CCCCCC;
        border-right: solid 2px #CCCCCC;
    }
    table.mailform tr:first-child th{
        border-top: solid 2px #CCCCCC;
    }

    table.mailform tr:last-child{
        border-bottom: solid 2px #CCCCCC;
    }
    table.mailform tr th{
        border-bottom: none;
    }

	table.mailform tr td,
    table.mailform tr th {
        width: 100%!important;
        display: block;
        box-sizing: border-box;
        font-size: 20px;
        padding: 15px;
        border-left: 0;
        border-right: 0;
        border-bottom: 0;
    }
	table.mailform tr td{
        padding: 10px 12px !important;
    }

    table.mailform tr input, 
    table.mailform tr select, 
    table.mailform tr textarea {
        width: 100%!important;
        box-sizing: border-box;
        font-size: 14px;
    }
    table.mailform #en1240790938{
        width: 100%;
        max-width: 300px !important;
    }
    table.mailform .postcode{
        width: 180px !important;
        padding: 0 5px;
        margin-top: 5px;
    }



}

/* screen-max:640px */
@media screen and (max-width: 640px) {
    .under #main{
        padding-top: 116px;
        padding-bottom: calc(12vw + 60px);
    }
    .under h2{
        padding-right: 3vw !important;
        padding: 50px 15px;
        padding-bottom: 27vw;
        background-size: 111% auto;
        text-shadow:
    0 0 4px rgba(255,255,255,0.9),
    0 0 12px rgba(255,255,255,0.6),
    0 0 24px rgba(255,255,255,0.4);
    }

    .under.fmail .button {
        display: flex;
        gap: 5px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .under.fmail .button form.fmail_cancel,
    .under.fmail .button form.fmail_submit{
        width: 180px;
        float: unset;
        text-align: center !important;
    }

    .mirai-img-group li {
        width: calc(100% / 2 - 10px);
    }


}

/* screen-max:460px */
@media screen and (max-width: 460px) {
    #header h1{
        font-size: 10px;
    }
    
}

/* screen-max: 360px */
@media screen and (max-width: 360px) {}