.main_bg{
    position: relative;
    width: 100%;
    height: 100vh;
    overflow-y: hidden;
    background: linear-gradient(#F4E1C9,#300D44);
}
.bg_img{
    background-attachment: fixed;
    width: 86.35vw;
    height: 86.98vw;
    background: url(../img/bg_item.png) center/cover no-repeat;
    margin:-5.94vw 0 0 -27.55vw;
}

main{
    width:100vw;
    position: absolute;
    top:0;
    left:0;
    overflow-y: scroll;
    overflow-x:hidden;
    height:100%;
    padding:6.5rem 0 0 0 ;
}

.inner_area{
    max-width:1630px;
    width:90%;
    margin:0 auto;
}

.page_header{
    mix-blend-mode: exclusion;
	isolation: isolate;
    transform: translateZ(0);
    color:#FFFFFF;
    text-align: center;
    padding:7.625rem 0;
}
.page_header h2{
    font-family: "Lato", sans-serif;
    font-weight: 900;
    font-size: 5.688rem;
}
.page_header h3{
    font-size: 1.25rem;
}


/*問い合わせフォーム*/
.contact_content{
    width:100vw;
    background-color: #F8F8F8;
    padding:7.5rem 0 18.75rem 0;
}
.contact_form{
    width:63%;
    margin:0 auto;
}

/*フォーム*/
.form{
    width:100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin:2.188rem 0 2.313rem 0;
}
.contact_form .form.textarea{
    align-items: flex-start;
}
.contact_form .form.textarea .form_ttl{
    margin-top:1.125rem;
}
.form .form_ttl{
    width:18%;
    font-size: 1.25rem;
    font-weight: 700;
    color:#D9C2B6;
    mix-blend-mode: exclusion;
}
.form p:not(.form_ttl) {
    width: calc((100% - 18% - 3%) - 2rem);
}
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    width: 100%;
    border:none;
    padding:1.063rem 1rem;
}

.submit_btn{
    width:247px;
    height:100%;
    margin:0 auto;
    position: relative;
    mix-blend-mode:exclusion;
	isolation: isolate;
    transform: translateZ(0);
}
.submit_btn i{
    color:#2E2436;
    position: absolute;
    top:23px;
    right:21px;
}

.submit_btn input.wpcf7-form-control.wpcf7-submit.has-spinner{
    width:100%;
    padding:1.375rem 0 0.938rem 0;
    background-color: #D9C2B6;
    border-radius: 999px;
    border:none;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
    transition: .3s;
	isolation: isolate;
    transform: translateZ(0);
	color:#2E2436;
}
.submit_btn input.wpcf7-form-control.wpcf7-submit.has-spinner:hover{
    transform: scale(1.1);
}
.wpcf7-spinner{
    display: none;
}


/*----------------------------------------------------------------
                            レスポンシブ
------------------------------------------------------------------*/
@media(max-width:1440px){
    .bg_img{
        width: 1200px;
        height: 1210px;
        margin: -0.94vw 0 0 -27.55vw;
    }
    .page_header{
        padding: 8.33vw 0;
    }

    /*フォーム*/
    .form .form_ttl{
        width:20%;
    }
    .form p:not(.form_ttl) {
        width: calc((100% - 20% - 3%) - 2rem);
    }
}



@media(max-width:1024px){
    .bg_img{
        width: 1000px;
        height: 1010px;
        margin: -1vw 0 0 -37.55vw;
    }


    /*フォーム*/
    .form .form_ttl {
        width: 25%;
    }
}



@media(max-width:768px){
    main{
        padding:80px 0 0 0;
    }
    .page_header{
        padding: 5.21vw 0;
    }
    .page_header h2{
        font-size: clamp(60px, 10.42vw, 80px);
    }
    .bg_img {
        width: 104.17vw;
        height: 105.47vw;
        margin: -4vw 0 0 -43.55vw;
    }


    /*form*/
    .form{
        flex-flow: column;
    }
    .contact_content{
        padding: 7.81vw 0 13.02vw 0;
    }
    .contact_form {
        width: clamp(400px, 62.5vw, 480px);
    }
    .contact_form .form{
        align-items: flex-start;
    }
    .contact_form .form.textarea .form_ttl{
        margin-top: 0;
    }
    .form .form_ttl {
        width: 100%;
    }
    .form p:not(.form_ttl) {
        width: calc((100% - 2rem));
        margin-top: 0.5rem;
    }
}


@media(max-width:425px){
    main{
        padding: 60px 0 0 0;
    }
    .page_header {
        padding: 2.857rem 0;
    }
    .page_header h2{
        font-size: 3.571rem;    
    }
    .bg_img {
        width: 450px;
        height: 460px;
        margin: 0vw 0 0 -200px;
    }
    .submit_btn{
        width: 100%;
    }

    /*フォーム*/
    .contact_content{
        padding: 3rem 0 6rem 0;
    }
    .contact_form {
        width: 90%;
    }
}