@charset "UTF-8";
/**
 *
 * page-contact.scss
 *
 */

input, button, textarea, select  {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    border-radius: 0;
    resize: none;
    outline: none;
    background: none;
}
select::-ms-expand {
    display: none;
}
.p-section {
    min-height: 100vh;
}
.c-flex__side {
    flex: 0 0 auto;
}


.c-form {
    width: 85%;
    @media screen and (max-width: 1023px) {
        width: 100%;
    }
    .c-form__ttl {
        font-family: var(--font-gothic);
        color: #005bab;
        font-size: 1.8rem;
        line-height: 1.4;
        font-weight: 900;
        margin-top: 2em;
        margin-bottom: .5em;
        &:first-child {
            margin-top: 0;
        }
    }
    .c-form__txt {
        font-family: var(--font-gothic);
        font-size: 1.8rem;
        line-height: 1.6;
        p {
            font-size: 1.8rem;
            line-height: 1.6;
            margin-top: .5em;
        }
    }
  .error {
      font-family: var(--font-gothic);
        color: #f00;
        font-size: 1.8rem;
        line-height: 1.6;
        margin-top: .5em;
    }
    *::placeholder {
        color: #ccc;
    }
    label {
        display: inline-block;
        margin: .2em 0;
    }
    input[type='text'],
    input[type='email'],
    input[type='tel'],
    textarea,
    select {
        font-family: var(--font-gothic);
        font-size: 1.8rem;
        font-weight: 600;
        padding: 0 1em;
        background: #fff;
        margin: .3em 0;
        @media screen and (max-width: 1023px) {
            padding: 0 .5em;
        }
    }
    textarea {
        line-height: 1.8em;
        padding: 1em;
        height: 10em;
        @media screen and (max-width: 1023px) {
            padding: .5em;
        }
    }
    input[type='text'],
    input[type='email'],
    input[type='tel'],
    select {
        line-height: 3em;
        height: 3em;
    }
    input[type='text'],
    input[type='email'],
    input[type='tel'],
    textarea {
        width: 100%;
    }
    select {
        background: #fff url("../img/common/select.svg") no-repeat right center / auto 70%;
        padding-right: 2.5em;
        width: 100%;
    }
    input[type='radio'],
    input[type='checkbox'] {
        display: block;
        width: 1px;
        height: 1px;
        overflow: hidden;
        visibility: hidden;
        & + span {
            display: inline-block;
            position: relative;
            padding-left: 2em;
            font-family: var(--font-gothic);
            color: #005bab;
            font-size: 1.8rem;
            line-height: 1.6;
            font-weight: 900;
        }
        & + span::before,
        & + span::after {
            content: '';
            display: block;
            position: absolute;
            left: 0;
            top: .2em;
            width: 1.4em;
            height: 1.4em;
            border-radius: 100%;
            background: #fff;
            margin-right: .3em;
        }
        & + span::after {
            width: .8em;
            height: .8em;
            margin: .3em 0 0 .3em;
            background: transparent;
            border: none;
        }
        &:checked + span::after {
            background: #005bab;
        }
    }
    input[type='checkbox'] {
        & + span::before {
            border-radius: 3px;
        }
        &:checked + span::after {
            width: 1.0em;
            height: .6em;
            margin: .2em 0 0 .2em;
            border-bottom: .25em solid #005bab;
            border-left: .25em solid #005bab;
            transform: rotate(-45deg);
            border-radius: 0;
            background: transparent;
        }
    }
    .c-form__privacy {
        margin: 5rem 0;
        .c-form__privacy_box {
            background: #fff;
            height: 23rem;
            padding: 3rem 5rem;
            margin-bottom: 3rem;
            @media screen and (max-width: 1023px) {
                padding: 2rem;
                margin-bottom: 2rem;
            }
        }
        .c-form__privacy_scroll {
            overflow-y: auto;
            height: 100%;
            padding: 1rem;
        }
        .c-form__privacy_txt {
            color: #005bab;
            font-size: 1.6rem;
            line-height: 1.8;
            font-weight: 600;
        }
        @media screen and (max-width: 1023px) {
            margin: 4rem 0;
        }
    }
}
.c-form__btns {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4rem;
    margin-top: 8rem;
    @media screen and (max-width: 1023px) {
        margin-top: 6rem;
        flex-direction: column;
        gap: 2rem;
    }
    .c-form__btn {
        position: relative;
        a, input, button {
            background: #005bab;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 30rem;
            height: 5rem;
            font-size: 2.2rem;
            line-height: 1.4;
            font-weight: 600;
            cursor: pointer;
            transition: opacity .3s ease;
            @media screen and (min-width: 1024px) {
                &:hover {
                    opacity: .6;
                }
            }
            @media screen and (max-width: 1023px) {
                font-size: 1.8rem;
            }
            &:disabled {
                background: #d9d9d9;
            }
        }
        &._back {
            a, input, button {
                background-color: #999;
            }
        }
    }
}
.c-thanks {
    text-align: center;
    margin-top: 10rem;
    .c-thanks__ttl {
        font-family: var(--font-gothic);
        color: #005bab;
        font-size: 2.4rem;
        line-height: 1.4;
        font-weight: 600;
        margin-bottom: 2em;
    }
    .c-thanks__txt {
        font-family: var(--font-gothic);
        font-size: 1.8rem;
        line-height: 2.0;
    }
}