main::before {
    content: "";
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
}
#contact-nagisa main::before {
    background-color:rgba(61, 135, 191, 0.2);
}
#contact-ayaha main::before {
    background-color:#FBF9F1;
}
#contact main::before {
    background-color:rgba(147, 196, 148, .2);
}

section img {
    width: 100%;
    border-radius: 10px;
}

.gradation {
    background: transparent linear-gradient(99deg, #A18BBB 0%, #5E60A2 100%) 0% 0% no-repeat padding-box;
}
.grad_title {
    margin-bottom: 1.25em;
}

.sec_title span {
    display: block;
    font-size: 18px;
    letter-spacing: .1em;
    margin-bottom: .6em;
}
.sec_title + p {
    margin-top: 1.3em;
}


/* トップ
--------------------------------- */
.container {
    padding-top: 155px;
}
.concept_text {
    text-align: center;
    margin-top: 75px;
    margin-bottom: 30px;
}
.concept_img {
    width: 100%;
    max-width: 620px;
    margin: 0 auto 90px;
}

/* 私たちについて */
.about_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.about_wrap .img_box {
    width: 40%;
}
.about_wrap .text_box {
    width: 56%;
}
.about_title {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .1em;
}

.about_btn_wrap {
    display: flex;
    justify-content: space-between;
}
.about_btn_wrap a {
    width: 47%;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .1em;
    text-align: center;
    color: #fff;
    padding: .5%;
}
.about_btn_wrap a span {
    display: block;
    width: 100%;
    height: 100%;
    border: 2px solid #fff;
    padding: .56em;
    position: relative;
}
.about_btn_wrap a span::after {
    content: "";
    width: .91em;
    height: .91em;
    background: url(../../img/icon/arrow.svg) no-repeat center;
    position: absolute;
    top: 0;
    right: 1.3em;
    bottom: 0;
    margin: auto;
    transform: rotate(90deg);
}


/* 応募フォーム
--------------------------------- */
#apply .container {
    max-width: calc(800px + 12%);
}
#apply .grad_title {
    width: 100%;
    padding: 0.83em;
    margin-bottom: 0;
    text-align: center;
}
.wp-block-contact-form-7-contact-form-selector {
    padding: 50px 50px 20px;
}
.form_list {
    display: flex;
}
.form_list:not(.no_mb) {
    margin-bottom: 2.5em;
}
.form_label {
    font-weight: 700;
    width: 10.6em;
    margin-top: .25em;
}
.req {
    color: #DB617B;
}
.form_label .req {
    font-size: 75%;
    vertical-align: .35em;
    margin-left: .4em;
}
.form_label + p {
    width: calc(100% - 10.6em);
}
#contact .form_list input,
#contact .form_list textarea {
    width: 100%;
    border: 1px solid #3B995C;
    border-radius: 5px;
    background-color: #fff;
    padding: .25em .8em;
}
#contact-ayaha .form_list input,
#contact-ayaha .form_list textarea {
    width: 100%;
    border: 1px solid #FA742B;
    border-radius: 5px;
    background-color: #fff;
    padding: .25em .8em;
}
#contact-nagisa .form_list input,
#contact-nagisa .form_list textarea {
    width: 100%;
    border: 1px solid rgba(61, 135, 191, 1);
    border-radius: 5px;
    background-color: #fff;
    padding: .25em .8em;
}
.form_list textarea {
    height: 10em;
    min-height: 2.5em;
    resize: vertical;
}
.wpcf7-not-valid-tip {
    font-size: .875em;
}
.req_message {
    font-size: 75%;
    text-align: right;
    margin-top: .8em;
    margin-bottom: 30px;
}
.privacy_text,
.center_label {
    font-size: 14px;
    text-align: center;
}
.privacy_text a {
    text-decoration: underline;
    text-underline-offset: .35em;
}
.center_label {
    font-weight: 700;
    margin-top: .8em;
    margin-bottom: 30px;
    display: block;
}
.center_label [type="checkbox"] {
    width: 1em;
    height: 1em;
    vertical-align: -.1em;
    margin-right: .5em;
}
.btn_wrap input{
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    color: #fff;
    display: block;
    background-color:#3B995C;
    border-radius: 50vw;
    padding: .3em 1.4em .4em;
    margin: 0 auto;
}
.wpcf7 form.sent .wpcf7-response-output{
    border-color: #3B995C;
    background-color: #3B995C;
    text-align:center;
    color:white;
}
.wpcf7cp-cfm-edit-btn,
.wpcf7cp-cfm-submit-btn{
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    color: #fff;
    display: block;
    background-color:#3B995C;
    border-radius: 50vw;
    padding: .3em 1.4em .4em;
    transition:opacity 0.3s ease;
}
#contact-ayaha .btn_wrap input,
#contact-ayaha .wpcf7 form.sent .wpcf7-response-output,
#contact-ayaha .wpcf7cp-cfm-submit-btn{
    background-color: #FA742B;
}
#contact-ayaha .wpcf7cp-cfm-edit-btn{
    background-color: rgba(250, 114, 41, .5);
}
#contact-ayaha .wpcf7 form.sent .wpcf7-response-output{
    border-color: #FA742B;
}
#contact-nagisa .btn_wrap input,
#contact-nagisa .wpcf7 form.sent .wpcf7-response-output,
#contact-nagisa .wpcf7cp-cfm-edit-btn,
#contact-nagisa .wpcf7cp-cfm-submit-btn{
    background-color:rgba(61, 135, 191, 1);
}
#contact-nagisa .wpcf7cp-cfm-edit-btn{
    background-color:rgba(61, 135, 191, 0.5);
}
#contact-nagisa .wpcf7 form.sent .wpcf7-response-output{
    border-color:rgba(61, 135, 191, 1);
}
.wpcf7cp-cfm-edit-btn:hover,
.wpcf7cp-cfm-submit-btn:hover{
    opacity:.6;
}
.wpcf7cp-cfm-edit-btn{
    background-color:#80bc94;
}
.wpcf7cp-btns{
    display:flex;
    justify-content:center;
}
.wpcf7 .wpcf7-submit:disabled {
    opacity: .6;
}
#wpcf7cpcnf table{
    width:100%;
}
#wpcf7cpcnf th{
    width: 10em;
}
#wpcf7cpcnf td{
    width: calc(100% - 10em);
}
.form_list textarea{
    resize: none;
}

footer {
    margin-top: 100px;
}
footer .container {
    display: none;
}

@media (max-width: 767px) {
    .sec_title span {
        font-size: 14px;
    }
    .container {
        padding-top: 125px;
    }
    .wp-block-contact-form-7-contact-form-selector {
        padding: 20px 25px 15px;
    }
    .form_list:not(.no_mb) {
        margin-bottom: 1.5em;
    }
    .form_list {
        flex-direction: column;
    }
    .form_label,
    .form_label + p {
        width: 100%;
    }

    footer {
        margin-top: 60px;
    }
}
@media (max-width: 680px) {
    div#wpcf7cpcnf table {
        display: flex;
        flex-direction: column;
        gap: 1.5em;
    }
    #wpcf7cpcnf tr{
        display:flex;
        flex-wrap:wrap;
    }
    #wpcf7cpcnf th,
    #wpcf7cpcnf td{
        width:100%;
    }
    .wp-block-contact-form-7-contact-form-selector{
        padding:0px;
    }
}