.contact-top-page,
.contact-confirm-page {



    .partner-title {
        display: inline-block;
        color: #ffffff;
        background-color: #5d92cd;
        border-radius: 10px 10px 0px 0px;
        font-weight: bold;
        padding: 1rem;
    }

    .content-partner,
    .content-caution {
        text-align: left;
    }


    main ul {
        padding-left: 20px;
        list-style-position: inside;
    }

    .partner-inner-content {
        padding: 20px;
        border: #5d92cd 2px solid;
        border-radius: 0 10px 10px;
    }


    .partner-sub-inner {
        display: flex;
        margin: 20px 20px 0;
    }

    .partner-sub-title {
        border-radius: 10px 0 0 10px;
        background-color: #b8decf;
        font-weight: bold;
        writing-mode: vertical-rl;
        padding: 10px;
        text-align: center;
    }

    .partner-sub-inner-contents {
        border: 2px solid #b8decf;
        border-radius: 0 10px 10px 0;
        padding: 10px 20px;
        width: 100%;
    }

    .partner-sub-inner-content {
        display: flex;
        line-height: 1.5em;
        padding: 10px 0;
    }

    .partner-sub-inner-content:not(:last-child) {
        border-bottom: 2px solid #b8decf;
    }

    .department {
        font-weight: bold;
        padding: 0 20px 0 0;
        min-width: 14em;
    }

    .things-to-check {
        padding: 10px 0 0;

    }

    .annotation {
        font-weight: bold;
    }

    .entry-flow {
        text-align: left;
    }

    .caution-title {
        font-weight: bold;
    }

    .things-to-check li,
    .entry-flow li,
    .content-caution li {
        list-style: disc;
    }


    /* 個人情報保護 ＝＝＝＝＝＝＝＝== */

    .personal-info-inner {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .personal-info {
        text-decoration: underline;
        text-underline-offset: 5px;
    }

    .personal-info-text {
        margin: 0 20px 0;
    }

    .personal-info-check {
        border: solid 1px var(--c-border);
        border-radius: 4px;
        padding: 10px 40px;
        display: flex;
        align-items: center;
        margin: 10px;
    }

    /* checkbox ＝＝＝＝＝＝＝＝== */

    .custom-checkbox {
        display: none;
    }

    /* checkbox-label ＝＝＝＝＝＝＝＝== */
    .custom-checkbox+label {
        position: relative;
        padding-left: 30px;
        cursor: pointer;
        display: inline-block;
        line-height: 20px;
    }

    .form-input-inner .personal-info-check label {
        width: 100%;
    }

    /* checkbox-box ＝＝＝＝＝＝＝＝== */
    .custom-checkbox+label::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 20px;
        height: 20px;
        border: 2px solid var(--c-border);
        border-radius: 4px;
        background-color: #fff;
        transition: all 0.3s;
    }

    /* checkbox-check-after ＝＝＝＝＝＝＝＝== */
    .custom-checkbox+label::after {
        content: '';
        position: absolute;
        left: 7px;
        top: 2px;
        width: 6px;
        height: 12px;
        border-right: 3px solid #fff;
        border-bottom: 3px solid #fff;
        transform: rotate(45deg) scale(0);
        transition: all 0.3s;
    }

    /* checkbox-check-before ＝＝＝＝＝＝＝＝== */
    .custom-checkbox:checked+label::before {
        background-color: #3498db;
        border-color: #3498db;
    }

    .custom-checkbox:checked+label::after {
        transform: rotate(45deg) scale(1);
    }


    .contactform_badge-required {
        color: var(--c-required);
        font-weight: bold;
        font-size: 20px;
        padding-left: 10px;
    }

    .contactform_input {
        background-color: #fff;
        border: solid 1px var(--c-border);

        margin: 10px 0;
        padding: 10px;
        border-radius: 4px;
        width: 100%;
    }

    .contactform_input-error {
        background-color: #FFC8C8;
        border: solid 1px var(--c-required);
    }

    .form-input-inner label {
        width: 25%;
        display: inline-flex;
        font-weight: bold;

        cursor: default;
    }

    .input-items {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 70%;

        text-align: left;
    }

    .caution-text {
        color: var(--c-required);
        margin-top: -8px;
    }

    .form-input-inner .custom-radio {
        width: auto;
        font-weight: initial;
    }

    .contactform_section {
        display: flex;
        align-items: baseline;
        margin: 10px 0 20px;
    }

    .input-group {
        display: flex;
        gap: 10px;
        width: 100%;
    }

    .input-group input {
        flex: 1;
    }

    /* radio-button ＝＝＝＝＝＝＝＝== */
    .custom-radio {
        align-items: center;
        margin: 10px;
    }

    .custom-radio input {
        display: none;
    }

    .radio-design {
        width: 20px;
        height: 20px;
        border: 2px solid var(--c-border);
        border-radius: 50%;
        margin-right: 10px;
        position: relative;
        box-sizing: border-box;
        transition: all 0.2s;
    }

    .custom-radio input:checked+.radio-design {
        border-color: #007bff;
    }

    .radio-design::before {
        content: '';
        width: 12px;
        height: 12px;
        background-color: #007bff;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(0);
        transition: all 0.2s;
    }

    .custom-radio input:checked+.radio-design::before {
        transform: translate(-50%, -50%) scale(1);
    }


    .content-submit {
        padding-bottom: 80px;
    }

    .content-submit button a {
        display: inline-block;
        width: 200px;
    }

    .content-submit button+button {
        margin-left: 20px;
    }

    .modification-btn {
        border-radius: 4px;
        background-color: var(--c-muted);
        color: #ffffffff;
        font-weight: bold;
        filter: drop-shadow(0px 6px 8px rgba(0, 0, 0, 0.3));
        padding: 10px 40px;
    }

    .complete-content {
        min-height: 50vh;
        margin-top: 5%;
    }

    .thanks-message {
        color: var(--c-primary);
        font-weight: 900;
        font-size: x-large;
        margin-bottom: 20px;
    }




    /*
================================================*/

    @media (min-width: 768px) {
        .pc-no-display {
            display: none;
        }
    }



    /* SP
================================================*/

    @media screen and (max-width: 768px) {
        .partner-sub-inner {
            flex-direction: column;
            writing-mode: initial;
        }

        .partner-sub-title {
            writing-mode: initial;
            border-radius: 10px 10px 0 0;
        }

        .partner-sub-inner-contents {
            border-radius: 0 0 10px 10px;
        }

        .partner-sub-inner-content {
            flex-direction: column;
        }

        .partner-sub-inner {
            margin: 20px 0 0;
        }

        .department {
            padding: 0 0 10px 0;
        }

        .personal-info-inner {
            flex-direction: column;
        }

        .form-input-inner label,
        .contactform_input {
            width: 100%;
        }

        .contactform_input {
            margin: 10px 0 20px;
        }

        .input-items {
            width: 100%;
        }

        .caution-text {
            margin-top: -18px;
        }

        .input-group {
            gap: 0px;
        }

        .input-group input {
            margin: 10px 0
        }

        .input-group input:last-child {
            margin: 0 0 20px;
        }

        .content-submit {
            padding: 0 0 40px;
        }

        .content-submit button a {
            width: 120px;
            padding: 10px;
        }
    }

}
