@charset "UTF-8";

#contact .maincontents02 {
    max-width: calc(888px + 4vw);
    margin: 0 auto;
}

#contact .page_ttl_img {

    border-bottom: 1px solid var(--gray02);
    margin-bottom: 10px;
}

#contact .intro-p {
    text-align: justify;
}

#contact .main-intro {
    margin-bottom: 20px;
}

.intro-note {
    border: 1px solid var(--gray02);
    padding: 30px;
}

.intro-note span {
    font-weight: 700;
}

@media screen and (max-width:767px) {

    .intro-note {
        padding: 15px;
    }

}


/***********************:contactform****************************/
form .form-group:first-child {
    border-top: 1px solid var(--gray02);
}

form .form-group {
    color: var(--black);
    font-weight: 700;
    font-size: 1.6rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    margin-bottom: 0;
    border-bottom: 1px solid var(--gray02);
    align-items: center;
    justify-content: space-between;
}

form .form-group02 {
    color: var(--black);
    font-weight: 700;
    font-size: 1.6rem;
    padding-top: 3.2rem;
    padding-bottom: 3.2rem;
    margin-bottom: 0;
    border-bottom: 1px solid var(--gray02);
    align-items: center;
    justify-content: space-between;
}

form .border-bold {
    border-bottom: 1px solid var(--gray02);
}

.row {
    display: flex;
    flex-wrap: wrap;
}

.label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

form .form-group input[type="text"],
form .form-group input[type="email"],
form .form-group02 textarea {
    font-size: 1.6rem;
    height: auto;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border-radius: 0;
}


.form-control {
    display: block;
    width: 100%;
    padding: 15px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #eee;
    background-clip: padding-box;
    border: 1px solid #eee;
    border-radius: 0.25rem;
}

form .form-group.align_start {
    align-items: flex-start;
    margin-bottom: 5rem;
}

form .form-group02.align_start {
    align-items: flex-start;
    margin-bottom: 4.8rem;
}

.form-group.check {
    border-bottom: none;
    background-color: var(--white);
    padding: 30px;
}

form .form-group.btn_line01 {
    border-bottom: none;
    margin: 0 auto;
    text-align: center;
}

form .form-group.btn_line01 {

    padding-top: 48px;
    padding-bottom: 48px;
}

form .form-group02.check,
form .form-group02.btn_line01 {
    border-bottom: none;
}

form .form-group input[type="text"],
form .form-group input[type="email"],
    {
    font-size: 1.6rem;
    height: auto;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border-radius: 0;
}

form .form-group02 textarea {
    font-size: 1.6rem;
    height: 18.8rem;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border-radius: 0;
}

form .note {
    display: block;
    font-size: 1.3rem;
    font-weight: 400;
    margin-top: 12px;
}

.input-area {
    width: 100%;
}

.labe_required {
    color: var(--red);
}


.form-check-inline {
    display: inline-flex;
    align-items: center;
    padding-left: 0;
    margin-right: 4.75rem;
}

.form-check {
    position: relative;
}

.type_option {
    font-weight: 400;
}

.radio01 {
    accent-color: #0866ff;
    inline-size: 2.2rem;
    block-size: 2.2rem;
    margin: 0 .8rem 0 5px;
}

.d-inline-block {
    display: inline-block !important;
}

.attention {
    font-size: 1.6rem;
    font-weight: 500;
    margin-bottom: 10px;
}

.checkbox {
    cursor: pointer;
}

.checkbox input[type="checkbox"] {
    margin-bottom: 5px;
}

.checkbox input[type="checkbox"] + .checkbox-icon::before {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    border: 1px solid var(--black);
    background-color: #fff;
}

.checkbox input[type="checkbox"] + .checkbox-icon {
    padding-left: 25px;
    position: relative;
}

.checkbox input[type="checkbox"]:checked + .checkbox-icon::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 10px;
    width: 5px;
    height: 11px;
    transform: rotate(40deg);
    border-bottom: 2px solid #00125e;
    border-right: 2px solid #00125e;
}

.attention_link {
    font-weight: 400;
}

.link_under {
    text-decoration: underline !important;
    color: var(--black);
}

.form-group.check .labe_required {
    font-weight: 400;
}

.form-group .btn01 {
    margin: 0 auto;
    text-align: center;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer;
}

.notes {
    white-space: nowrap;
}

@media (min-width: 768px) {
    .input-item {
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .input-area {
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }


    #contact form .form-check {
        margin-right: 4rem;
    }

}

@media screen and (max-width:767px) {

    .input-item,
    .input-area {
        padding: 0;
    }

    .form-check-inline {
        margin-right: 1.75rem
    }

    .form-group > label {
        margin-bottom: 5px;
    }

    form .form-group02 {
        padding-top: 13px;
        padding-bottom: 15px;
    }

    form .form-group02.align_start {
        align-items: flex-start;
        margin-bottom: 35px;
    }

    form .note {
        margin-bottom: 8px;
    }

    .type_option {
        margin-bottom: -8px;
    }

    .form-group.check {
        padding: 15px;
    }


    .checkbox input[type="checkbox"] + .checkbox-icon::before {

        top: 4.5px;

    }

    .checkbox input[type="checkbox"]:checked + .checkbox-icon::after {

        top: 2.5px;
        13px;

    }

    .radio01 {
        inline-size: 1.8rem;
        block-size: 1.8rem;
        margin: 3px .8rem 0 5px
    }


    .notes {
        margin-bottom: 5px;
        white-space: normal;
    }

    form .form-group.btn_line01 {
        padding-top: 35px;
        padding-bottom: 35px;
    }
}
