@charset "utf-8";
@media screen and (max-width:800px) { 
    
.only_pc{
    display: none;
    }
.only_sp{
    display: block;
    }
    
body{
    height: 100vh;
    }
    
/*====================================================
                  contact
====================================================*/
.contact .txt.content p {
    width: 85%;
    }

div#mailformbox {
    width: 85% !important;
    margin: 0 auto;
    padding-top: 2vw;
}
    
#mailformpro {
    margin-bottom: 15vw;
}    
    
.contact.tel .detail span.mail {
    font-size: 4.6vw;
}
    
.contact.tel .detail span.icon {
    letter-spacing: 0.3rem;
    padding-left: 0;
}
   
.contact.tel .wh_bg:nth-child(2) .content{
    margin-top: 0vw;
    padding: 0;
    }    
    
    
#contact .contact .tel .text {
    font-size: 5.87vw;
    letter-spacing: 0.3rem;
    padding-top: 0;
}

#contact .contact.tel h2 {
    margin-bottom: 0;
}    
    
    
#contact .contact .detail {
    height: 19vw;
    }    
    
#contact .content h4 {
    font-size: 4.8vw;
    letter-spacing: 0.3vw;
    line-height: 1.6;
}

#contact .txt img {
    width: 100%;
}
    
#contact .form_txt p {
    margin: 5vw auto ;
    font-size: 3.74vw;
    line-height: 1.9;
}
        
#contact .txt p {
    margin: 7vw auto;
    font-size: 4vw;
    text-align: left;
}
    
    
.form_txt h2 {
    font-size: 4.8vw;
    letter-spacing: 0.4vw;
    margin-bottom: 9vw;
}
    
.form_txt p {
    font-size: 3.74vw;
    line-height: 2.2;
    letter-spacing: 0.2vw;
    margin-bottom: 3vw;
    width: 100%;
    margin: 0 auto 7vw;
    text-align: justify;
}
    
.mailform .content {
    margin-top: 3.6vw;
    flex-direction: column;
}
    
div#mailformbox {
    width: 100%;
    margin: 0px auto 20px;
    padding-top: 0vw;
}
    
.mfp_rows select {
    width: 100%;
    min-width: 100%;
}
    
.mfp_rows input[type="text"], .mfp_rows input[type="email"], .mfp_rows select {
    margin: 0px;
    padding: 0 3vw;
    font-size: 4vw;
    line-height: 1.5em;
    text-align: left;
    height: 13vw;
    width: 100%;
    min-width: 100%;
    }

form#mailformpro dl dt {
    font-size: 4vw;
    }
    
form#mailformpro dl dt {
    width: 100%;
    padding: 1vw 0;
    line-height: 1.5;
}
form#mailformpro dl dt span {
    font-size: 3.2vw;
    }
    
form#mailformpro dl dt span {
    margin-left: 1.5vw;
}
    
.selectWrap::after {
    width: 2vw;
    height: 2vw;
    top: 5vw;
    right: 6vw;
    margin-top: 0;
    }

.mfp_rows textarea{
    font-size: 3.74vw;
    line-height: 1.5em;
    padding: 3vw;
    font-weight: 400;
    width: 100%;
    min-width: 100%;
    }
    
.policy {
    font-size: 4vw;
    width: 100%;
    letter-spacing: 0rem;
    text-align: center;
    margin: 13vw auto;
}
    
.form_btn {
    width: 78%;
    height: 16vw;
    margin: 5vw auto 5vw;
}
    
.form_btn button{
    font-size: 4.28vw;
    }
    
.form_btn button::before{
    content: url(../img/svg/arrow.svg);
    display: block;
    width: 30px;
    position: absolute;
    top: 18px;
    right: 25px;
}
    
.form_btn button::before {
    width: 4vw;
    top: 5vw;
    right: 4vw;
}
    
.contact.tel {
    margin-bottom: 0;
    padding: 0;
}   
    
.contact.tel .content {
    margin-top: 5vw;
}
    
.contact.tel .detail .tel {
    width: 100%;
}
    
.contact.tel h2 {
    font-size: 4.8vw;
    letter-spacing: 0.6vw;
    margin-bottom: -2vw;
}
    
.contact.tel h2:nth-child(2){
        margin-bottom: 0;
    }    
.contact.tel .detail span.icon:before {
    left: 6vw;
}
    
.contact.tel .wh_bg {
    height: auto;
    padding: 6vw 0;
}
    
.contact.tel .detail {
    margin-top: 6vw;
}    

    
.contact.tel .wh_bg:nth-child(2),.contact.tel .wh_bg:nth-child(2) h2{
    margin: 0;
}    
    
    
.contact.tel .detail span.mail {
    letter-spacing: 0.2rem;
}
    
    
#mfp_phase_confirm_inner {
    margin-top: 2vw;
    margin-bottom: 0;
}
    
table#mfp_confirm_table tr td, table#mfp_confirm_table tr th {
    font-size: 4vw;
    padding: 4vw 6vw;
    font-weight: normal;
}
    
#mfp_button_send::before {
    width: 9vw;
     top: 5vw;
    right: 4vw;
}
    
#mfp_button_send, #mfp_element_submit, #mfp_button_cancel {
    width: 78vw;
    height: 14.7vw;

}
    
.mfp_rows input[type="text"], .mfp_rows input[type="email"], .mfp_rows select,.mfp_rows textarea {
    width: 100% !important;
    min-width: 100% !important;
    }    
    
    
#contact .mailform .flex {
    align-items: flex-start;
    flex-direction: column;
}
    
#contact .mailform .flex label,.radio_wrap.row label{
    font-size: 4vw;
    margin-bottom: 6vw;
    }
    
#contact .mailform .flex label:last-child,.radio_wrap.row label:last-child{
        margin-bottom: 0;
    }
    
#contact .mailform .size .flex {
    flex-direction: row;
    align-items: center;
    font-size: 3.74vw;
}
    
    
#contact .mailform p.sub_text,#contact .mailform .file p:first-child {
    font-size: 3.74vw;
    margin-top: 1vw;
    }
#contact .border_line {
    margin: 8vw auto 1vw;
}
    
#contact .mailform .file input[type=file] {
    width: 100%;
    }
#contact input[type="text"].number {
    width: 40vw !important;
    min-width: 40vw !important;
    margin-left: 1vw;
}
    
#contact .mailform .add .flex {
    align-items: center;
    flex-direction: row;
    font-size: 4vw;
}

/*====================================================
                thanks
====================================================*/
#thanks {
    margin-bottom: 0;
}
    
#thanks .wrapp{
    padding-top: 30vw;
    }
#thanks .more {
    width: 65%;
}
    
#thanks .more a {
    width: 100%;
    text-align: center;
    margin-top: 0;
    padding-top: 3vw;
    padding-left: 0;
}
    
#thanks .more span::after {
    right: -19vw;
}
    
#thanks .content {
    width: 90%;
 }
    
#thanks .content p {
    margin: 0 auto 15vw;
}

}
