.top_text {
    font-weight: 700;
    margin-bottom: 2.18em;
    @media (min-width:768px) {
        text-align: center;
    }
}
form {
    & div {
        .form_item {
            max-width: 83rem;
            margin: 0 auto;
            @media (min-width:768px) {
                display: flex;
                align-items: center;
                padding: 1em;
            }
        
            & dt {
                margin-bottom: 0.5em;
                @media (min-width:768px) {
                    font-weight: bold;
                    width: 25%;
                    margin-bottom: 0;
                }
            }
            & dd {
                @media (min-width:768px) {
                    width: 70%;
                }

                & input[type="text"],
                & input[type="date"],
                & input[type="tel"],
                & input[type="email"] {
                    font-size: inherit;
                    line-height: 2;
                    width: 100%;
                    border: 1px solid;
                }
                & textarea {
                    font-size: inherit;
                    width: 100%;
                    height: 10em;
                    border: 1px solid ;
                }
            }

            .error_message {
                color: #e50012;
            }
            + .form_item {
                margin-top: 2.5rem;
                @media (min-width:768px) {
                    margin-top: 0;
                }
            }
        }
        .privacy_box {
            margin-top: 4rem;

            & p {
                @media (min-width:768px) {
                    width: fit-content;
                    margin: 0 auto 0.5em;
                }
            }
        }
        .recaptcha {
            margin-top: 1em;

            & a {
                font-size: inherit;
            }
        }
        .submit_box {
            text-align: center;
            margin: 2em 0 4em;

            & p {
                width: fit-content;
                margin: 0 auto;
                position: relative;
            }
            .btn {
                min-width: auto;
                margin: 1.5rem;
                padding: 0;
                &::after {
                    display: none;
                }
                & button {
                    font-size: var(--fc-base);
                    padding: 0;
                    background: inherit;
                    border: 1px solid var(--main-blue);

                    & span {
                        display: block;
                        padding: 1em 2em;
                        width: 13rem;
                        cursor: pointer;
                    }
                }
            }
            .wpcf7-spinner {
                position: absolute;
                right: 0;
                top: 100%;
            }
        }
    }
    .confirm_area {
        display: none;

        .form_info_confirm {
            max-width: 83rem;
            margin: 0 auto 2em;
            @media (min-width:768px) {
                padding-left: 1em;
            }
        }
        .submit_box {
            .btn:nth-child(1) {
                &::before {
                    background: rgba(0,0,0,0.2);
                }
                .back_button {
                    background: #FFF;
                    border: 1px solid var(--fc-base);

                    & span {
                        color: var(--fc-base);
                    }
                }
            }
        }
    }
}

/*--------------------------------------------------------------
# 無料体験申し込み
--------------------------------------------------------------*/
#trial_form .form_area dl {
    max-width: 100rem;
    margin: 0 auto;
    padding: 4rem 2rem;
    background: var(--pale-blue);
}
