/*-------------------- pc --------------------*/
/*---------- base > width:1440px ----------*/
:root{
    --satei_font_base:"IBM Plex Sans JP", sans-serif;
    --satei_font_en:"Jost", sans-serif;
    --satei_font_mincho:"Shippori Mincho B1", serif;
    --satei_color_text:#32373E;
    --satei_color_text_light:#6B6F75;
    --satei_color_text_dark:#20242a;
    --satei_color_red:#C50018;
    --satei_color_white:#ffffff;
    --satei_color_black:#000000;
    --satei_color_bg:#F0F1F4;
    --satei_color_bg_light:#f7f7f7;
    --satei_color_line:#CCCFD1;
    --satei_color_border:#c5cbd1;
    --satei_color_maker_border:#d9dde1;
}



.first_area{
    padding: 0px 20px;

    .first_wrap{
        max-width: 1120px;
        margin: 0px auto;

        .satei_ttl_lead{
            max-width: 800px;
            font-family: var(--satei_font_base);
            margin: 0px auto;

            .satei_ttl_lead_text{
                font-size: 16px;
                line-height: 28px;
                margin-bottom: 24px;
            }
            .satei_ttl_lead_note{
                font-size: 14px;
                line-height: 20px;
                color: var(--satei_color_text_light);
            }
        }
    }
}

.l_satei_methods_area{
    padding: 57px 20px 0;
    font-family: var(--satei_font_base);

    .l_satei_methods_wrap{
        max-width: 1120px;
        margin: 0px auto;
    }

    .p_satei_method_card_list{
        margin-top: 48px;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
        margin-bottom: 124px;
    }

    .p_satei_method_card{
        min-height: 168px;
        /* padding: 37px 100px 32px; */
        padding: 37px 50px 32px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_border);
        border-radius: 4px;
        box-sizing: border-box;
    }

    .p_satei_method_card_title{
        margin: 0px 0px 17px;
        color: var(--satei_color_red);
        font-family: var(--satei_font_base);
        font-size: 20px;
        font-weight: 600;
        line-height: 30px;
        text-align: center;
    }

    .p_satei_method_card_text{
        /* max-width: 350px; */
        max-width: 100%;
        text-align: center;
        margin: 0px auto;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 500;
        line-height: 28px;
    }

    .p_satei_step_list{
        display: flex;
        justify-content: center;
        gap: 62px;
        margin: 0px;
        padding: 0px;
        list-style: none;
    }

    /* task191: a centred flex column, not a text-align:center block. The label is
       wider than the circle on purpose (see .p_satei_step_text) and text-align
       does not centre an inline box that overflows its line box — Chrome pins it
       to the left edge and lets it spill right only. Cross-axis centring spills
       both sides evenly, so the label's centre lands on the circle's centre.
       The item keeps the circle's width, so the ::after arrows do not move.
       Inherited by both breakpoint blocks below — do not re-declare there. */
    .p_satei_step_item{
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 96px;
        text-align: center;

        &:not(:last-child)::after{
            content: "";
            position: absolute;
            top: 36px;
            right: -37px;
            width: 14px;
            height: 28px;
            background: url("/assets/images/satei/method-step-arrow.png") center / contain no-repeat;
        }

        &.is_current{
            .p_satei_step_number{
                border: 2px solid var(--satei_color_red);
                color: var(--satei_color_red);
            }

            .p_satei_step_text{
                color: var(--satei_color_red);
            }
        }
    }

    .p_satei_step_number{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 96px;
        height: 96px;
        margin: 0px auto 12px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_line);
        border-radius: 50%;
        color: var(--satei_color_text);
        font-family: var(--satei_font_en);
        font-size: 32px;
        font-weight: 600;
        box-sizing: border-box;
    }

    /* task80: honour the explicit <br> and nothing else — the item is capped at
       the circle's 96px, so「ハウスメーカーの」used to break mid-word. nowrap is
       what stops that; removing it brings the mid-word break back.
       task80 assumed text-align:center would then centre the overhang. Measured
       false (task191): the label sat +15.7px right of the circle at 1440. The
       item is a centred flex column now — that is what makes the spill even. */
    .p_satei_step_text{
        display: inline-block;
        white-space: nowrap;
        color: var(--satei_color_text_dark);
        font-size: 16px;
        font-weight: 600;
        line-height: 24px;
    }
}

.l_satei_maker_area{
    padding: 56px 20px 0;
    font-family: var(--satei_font_base);

    .l_satei_maker_wrap{
        max-width: 1120px;
        margin: 0px auto;
    }

    .p_satei_maker_lead{
        margin: 48px auto 40px;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 500;
        line-height: 24px;
        text-align: center;
        max-width: 800px;
    }

    .p_satei_maker_list{
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 20px 18px;
    }

    .p_satei_maker_item{
        display: block;
        cursor: pointer;
    }

    .p_satei_maker_radio{
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        border: 0px;
    }

    .p_satei_maker_panel{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 70px;
        padding: 5px 0px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_maker_border);
        border-radius: 60px;
        overflow: hidden;
        box-sizing: border-box;
        transition: border-color 0.2s, box-shadow 0.2s;

        &:hover{
            border-color:var(--satei_color_red);
            opacity:0.7;
        }
        img{
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }

    /* .p_satei_maker_radio:checked + .p_satei_maker_panel{
        border-color: var(--satei_color_red);
        box-shadow: 0 0 0 1px var(--satei_color_red);
    }

    .p_satei_maker_radio:focus-visible + .p_satei_maker_panel{
        outline: 2px solid var(--satei_color_red);
        outline-offset: 3px;
    } */
}
.l_satei_methods_area_02{
    padding-top: 0;
}
.l_satei_input_area{
    padding: 56px 20px 0;
    font-family: var(--satei_font_base);

    .l_satei_input_wrap{
        max-width: 1120px;
        margin: 0px auto;
    }

    .p_satei_input_form{
        color: var(--satei_color_text);
    }

    .p_satei_form_head{
        padding-bottom: 43px;
        border-bottom: 1px solid var(--satei_color_line);
    }

    .p_satei_form_section_title{
        padding: 32px 0px;
        border-top: 1px solid var(--satei_color_line);
        border-bottom: 1px solid var(--satei_color_line);
        text-align: center;

        h2{
            margin: 0px;
            color: var(--satei_color_text);
            font-size: 24px;
            font-weight: 600;
            line-height: 36px;
        }
    }

    .p_satei_selected_maker{
        margin-top: 45px;
        text-align: center;
    }

    .p_satei_selected_maker_label{
        margin: 0px;
        font-size: 18px;
        font-weight: 600;
        line-height: 27px;
    }
    
    .p_satei_selected_maker_name{
        margin: 0px;
        font-size: 16px;
        font-weight: 500;
        line-height: 23px;
    }

    .p_satei_selected_maker_logo{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 218px;
        height: 84px;
        margin: 26px auto 21px;
        padding: 8px 10px;
        background: var(--satei_color_white);
        box-sizing: border-box;
        border-radius: 4px;

        img{
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }

    .p_satei_form_block{
        padding: 45px 0px 0px;
    }

    .p_satei_form_block_address{
        padding: 48px 0px 0px;

        .p_satei_field{
            max-width: none;
        }
    }

    .p_satei_field{
        max-width: 360px;
    }

    .p_satei_field_label{
        display: flex;
        align-items: center;
        margin: 0px 0px 16px;
        margin-bottom: 29px;
        font-size: 18px;
        line-height: 27px;
        font-weight: 600;
    }

    .p_satei_field_label{
        small{
            margin-left: 12px;
            color: var(--satei_color_text_light);
            font-size: 14px;
            font-weight: 600;
        }
    }

    .p_satei_required{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 48px;
        height: 24px;
        margin-right: 12px;
        padding: 2px 6px;
        color: var(--satei_color_white);
        background: var(--satei_color_red);
        border-radius: 10px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1;
        box-sizing: border-box;
    }

    .p_satei_address_fields{
        width: 360px;
    }

    .p_satei_input,
    .p_satei_select,
    .p_satei_textarea{
        width: 100%;
        min-height: 48px;
        padding: 0px 16px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_border);
        border-radius: 4px;
        color: var(--satei_color_text);
        font-family: var(--satei_font_base);
        font-size: 16px;
        font-weight: 500;
        box-sizing: border-box;
    }

    .p_satei_input::placeholder,
    .p_satei_textarea::placeholder{
        color: #a9adb2;
    }

    .p_satei_zip_row{
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 16px;
        font-size: 14px;
        font-weight: 500;
    }

    .p_satei_input_zip_1{
        width: 93px;
    }
    .p_satei_input_zip_2{
        width: 124px;
    }

    .p_satei_select_wrap{
        position: relative;
        margin-bottom: 21px;

        &::after{
            content: "";
            position: absolute;
            top: 50%;
            right: 6px;
            width: 20px;
            height: 20px;
            background: url("/assets/images/satei/select-arrow-red.png") center / contain no-repeat;
            transform: translateY(-50%);
            pointer-events: none;
        }
    }

    .p_satei_select{
        appearance: none;
    }

    .p_satei_input_address{
        margin-bottom: 21px;
    }

    .p_satei_address_fields{
        .p_satei_input_address:last-child{
            margin-bottom: 0px;
        }
    }

    .p_satei_address_label{
        display: block;
        margin: 0px 0px 7px;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 600;
        line-height: 24px;
    }

    .p_satei_option_button{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 28px;
        width: 375px;
        min-height: 64px;
        margin: 64px auto 0px;
        padding: 0px 36px 0px 36px;
        text-align: center;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_line);
        border-radius: 49px;
        color: var(--satei_color_text);
        font-family: var(--satei_font_base);
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        position: relative;
        transition: 0.3s;

        &:hover{
            opacity: 0.7;
        }
        img{
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            width: 32px;
            height: 32px;
        }
    }

    .p_satei_optional_area{
        display: block;
        margin-top: 64px;

        &[hidden]{
            display: none;
        }

        .p_satei_optional_block:nth-last-of-type(-n+3){
            padding-bottom: 0px;
            border-bottom: 0px;
        }
    }

    .p_satei_optional_block{
        padding: 45px 0px;
        border-bottom: 1px solid var(--satei_color_line);

        .p_satei_field{
            max-width: none;
        }

        .p_satei_field_label{
            margin-bottom: 26px;
        }

        .p_satei_choice{
            font-size: 16px;
            line-height: 24px;

            input{
                width: 24px;
                height: 24px;
            }
        }
        .p_satei_radio_grid {
            display: grid;
            gap: 28px 20px;
            max-width: unset;
        }
        .p_satei_price_row {
            align-items: flex-end;

            span{
                font-size: 16px;
                line-height: 24px;
            }
        }

        &:first-child{
        border-top: 1px solid var(--satei_color_line);
        }
    }

    .p_satei_optional_title{
        margin-top: 124px;
    }

    .p_satei_radio_grid{
        display: grid;
        gap: 24px 80px;
        max-width: 920px;
    }

    .p_satei_radio_grid_3{
        grid-template-columns: repeat(3, 1fr);
    }

    .p_satei_radio_grid_2{
        grid-template-columns: repeat(2, 1fr);
    }

    .p_satei_choice,
    .p_satei_check{
        display: inline-flex;
        align-items: flex-start;
        gap: 8px;
        color: var(--satei_color_text);
        font-size: 16px;
        line-height: 24px;
        font-weight: 500;
        cursor: pointer;

        input{
            width: 18px;
            height: 18px;
            margin: 0px;
            accent-color: var(--satei_color_red);
        }
        
        span{
            margin-top: 4px;
        }
    }

    .p_satei_choice{
        input[type="radio"]{
            appearance: none;
            flex: 0 0 auto;
            display: inline-grid;
            place-content: center;
            background: var(--satei_color_white);
            border: 1px solid var(--satei_color_border);
            border-radius: 50%;
            cursor: pointer;

            &::before{
                content: "";
                width: 14px;
                height: 14px;
                background: var(--satei_color_red);
                border-radius: 50%;
                transform: scale(0);
            }

            &:checked::before{
                transform: scale(1);
            }
        }
    }

    .p_satei_check{
        input[type="checkbox"]{
            appearance: none;
            flex: 0 0 auto;
            display: inline-grid;
            place-content: center;
            background: var(--satei_color_white);
            border: 1px solid var(--satei_color_border);
            border-radius: 3px;
            cursor: pointer;

            &::before{
                content: "";
                width: 10px;
                height: 6px;
                border-left: 2px solid var(--satei_color_white);
                border-bottom: 2px solid var(--satei_color_white);
                transform: rotate(-45deg) scale(0);
            }

            &:checked{
                background: var(--satei_color_red);
                border-color: var(--satei_color_red);
            }

            &:checked::before{
                transform: rotate(-45deg) scale(1);
            }
        }
    }

    .p_satei_price_row{
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 13px;
        font-weight: 600;
    }

    .p_satei_contact_method_block,
    .p_satei_contact_time_block{

        .p_satei_check{
            gap: 16px;

            input{
                width: 24px;
                height: 24px;
            }
        }

        .p_satei_contact_check_grid{
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 28px 20px;
        }
    }

    .p_satei_input_price,
    .p_satei_input_medium{
        max-width: 320px;
    }

    .p_satei_form_section_title_contact{
        margin-top: 34px;
    }

    .p_satei_contact_block{
        padding: 48px 0px 48px;
        border-bottom: 1px solid var(--satei_color_line);

        .p_satei_field{
            max-width: none;
        }

        .p_satei_field_label{
            margin-bottom: 30px;

            small{
                color: var(--satei_color_text_light);
                font-size: 14px;
                font-weight: 600;
                margin-left: 12px;
            }
        }

        .p_satei_input_medium{
            width: 320px;
            max-width: none;
        }
    }

    .p_satei_contact_address_block{
        padding-bottom: 0px;
        border-bottom: 0px;

        .p_satei_check{
            margin-bottom: 28px;
            font-size: 16px;
            line-height: 24px;
            font-weight: 500;

            input{
                width: 24px;
                height: 24px;
            }
        }

        .p_satei_address_fields{
            width: 320px;
        }

        .p_satei_input_zip_1{
            width: 82px;
        }

        .p_satei_input_zip_2{
            width: 110px;
        }
    }

    .p_satei_notice_box{
        margin-top: 28px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_line);
        border-radius: 4px;
        overflow: hidden;
    }

    .p_satei_notice_head{
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 48px;
        padding: 0px 14px 0px 22px;
        background: var(--satei_color_text);
        border: 0px;
        color: var(--satei_color_white);
        font-family: var(--satei_font_base);
        font-size: 16px;
        font-weight: 600;
        text-align: left;
        cursor: pointer;
        transition: 0.3s;

        &:hover{
            opacity: 0.7;
        }
        img{
            width: 24px;
            height: 24px;
        }
    }

    .p_satei_notice_body{
        padding: 29px 80px 32px;

        &[hidden]{
            display: none;
        }

        .p_satei_notice_body_title{
            display: flex;
            align-items: center;
            gap: 12px;
            margin: 0px;
            padding: 0px 0px 12px;
            border-bottom: 1px solid var(--satei_color_line);
            color: var(--satei_color_text);
            font-size: 16px;
            line-height: 24px;
            font-weight: 600;

            &::before{
                content: "";
                flex: 0 0 auto;
                width: 8px;
                height: 8px;
                background: var(--satei_color_red);
                border-radius: 50%;
            }
        }

        dl{
            display: grid;
            grid-template-columns: 120px 1fr;
            gap: 20px;
            margin: 0px;
            padding: 32px 0px 24px;
            border-bottom: 1px solid var(--satei_color_line);
        }

        dt{
            color: var(--satei_color_red);
            font-size: 16px;
            line-height: 24px;
            font-weight: 600;
        }

        dd{
            margin: 0px;
            color: var(--satei_color_text);
            font-size: 16px;
            font-weight: 500;
            line-height: 24px;
        }

        a{
            display: inline-flex;
            align-items: center;
            margin-top: 13px;
            color: #006ad4;
            font-size: 16px;
            line-height: 24px;
            text-decoration: underline;
            transition: 0.3s;

            &:hover{
                opacity: 0.7;
            }
            img{
                width: 22px;
                height: 16px;
            }
        }
    }

    .p_satei_assessment_list{
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .p_satei_assessment_card{
        display: flex;
        gap: 12px;
        padding: 16px 16px 8px;
        background: var(--satei_color_white);
        border: 1px solid var(--satei_color_border);
        cursor: pointer;
        box-sizing: border-box;
        border-radius: 4px;

        input{
            width: 24px;
            height: 24px;
            margin: 0;
            accent-color: var(--satei_color_red);
        }

        input[type="radio"]{
            appearance: none;
            flex: 0 0 auto;
            display: inline-grid;
            place-content: center;
            background: var(--satei_color_white);
            border: 1px solid var(--satei_color_border);
            border-radius: 50%;
            cursor: pointer;

            &::before{
                content: "";
                width: 12px;
                height: 12px;
                background: var(--satei_color_red);
                border-radius: 50%;
                transform: scale(0);
            }

            &:checked::before{
                transform: scale(1);
            }
        }

        span{
            color: var(--satei_color_text);
            font-size: 16px;
            font-weight: 500;
            line-height: 24px;
        }

        strong{
            display: block;
            margin-bottom: 8px;
            margin-top: 4px;
            color: var(--satei_color_text);
            font-size: 16px;
            font-weight: 600;
        }
    }

    .p_satei_textarea{
        display: block;
        min-height: 105px;
        padding: 14px;
        resize: vertical;
    }

    .p_satei_textarea_small{
        margin-top: 22px;
    }

    .p_satei_check_grid{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 28px 20px;
    }

    .p_satei_form_title{
        margin-top: 124px;
    }

    .p_satei_remarks_block{
        .p_satei_field_label{
            margin-bottom: 27px;
            font-size: 16px;
            line-height: 27px;
            font-weight: 500;
        }
    }

    .p_satei_survey_block{
        padding: 48px 0px 0px;

        .p_satei_check_grid{
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 24px 20px;
        }

        .p_satei_check{
            align-items: flex-start;
            gap: 16px;
            font-size: 16px;
            line-height: 24px;
            font-weight: 500;

            input{
                width: 24px;
                height: 24px;
            }
        }

        .p_satei_textarea_small{
            min-height: 120px;
            margin-top: 20px;
            font-size: 16px;
        }
    }

    .p_satei_privacy{
        max-width: 800px;
        margin: 124px auto 0px;
        text-align: center;

        p{
            margin: 0px 0px 21px;
            color: var(--satei_color_text);
            font-size: 16px;
            font-weight: 500;
            line-height: 28px;
            text-align: left;
        }

        a{
            display: flex;
            margin-bottom: 27px;
            color: #006ad4;
            font-size: 16px;
            font-weight: 500;
            line-height: 24px;
            text-decoration: underline;
            align-items: center;
            justify-content: center;
            transition: 0.3s;

            &:hover{
                opacity: 0.7;
            }
            img{
                width: 22px;
                height: 16px;
            }
        }

        .p_satei_privacy_check{
            justify-content: center;
            gap: 16px;
            font-size: 16px;
            line-height: 24px;
            display: block;

            span{
                margin-left: 12px;
                font-weight: 500;
            }

            input{
                width: 24px;
                height: 24px;
            }
        }
    }

    .p_satei_submit_wrap{
        margin-top: 47px;
        text-align: center;
    }

    .p_satei_submit_button{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 374px;
        min-height: 64px;
        padding: 22px 35px 18px 35px;
        background: var(--satei_color_red);
        border: 2px solid var(--satei_color_white);
        border-radius: 36px;
        color: var(--satei_color_white);
        font-family: var(--satei_font_base);
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        box-sizing: border-box;
        position: relative;
        transition: 0.3s;

        &:hover{
            opacity: 0.7;
        }
        img{
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            width: 24px;
            height: 24px;
        }
    }
}

.l_satei_confirm_area{
    .p_satei_confirm_form{
        max-width: 1000px;
        margin: 0px auto;
    }

    .p_satei_confirm_alert{
        max-width: 800px;
        margin: 0px auto 64px;
        padding: 24px 24px 16px;
        background: var(--satei_color_white);
        border: 2px solid var(--satei_color_red);
        box-sizing: border-box;
        border-radius: 4px;

        p{
            margin: 0px;
            color: var(--satei_color_red);
            font-size: 16px;
            font-weight: 600;
            line-height: 24px;
        }
    }

    .p_satei_confirm_title{
        margin-top: 116px;
        margin-bottom: 0px;
    }

    .p_satei_confirm_item{
        margin: 0px;
        padding: 45px 0px 43px;
        border-bottom: 1px solid var(--satei_color_line);

        &:last-child{
            padding-bottom: 0px;
            border-bottom: 0px;
        }

        dt{
            margin: 0px 0px 23px;
            color: var(--satei_color_text);
            font-size: 18px;
            font-weight: 600;
            line-height: 27px;
        }

        dd{
            margin: 0px;
            color: var(--satei_color_text);
            font-size: 16px;
            font-weight: 500;
            line-height: 20px;

            .p_satei_confirm_item_note{
                margin-top: 8px;
                font-size: 14px;
                color: var(--satei_color_text_light);
            }
        }
    }

    .p_satei_confirm_item_maker{
        dd{
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 21px;
        }

        .p_satei_confirm_maker_logo{
        }
    }

    .p_satei_confirm_maker_logo{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 176px;
        height: 64px;
        padding: 8px 10px;
        background: var(--satei_color_white);
        border-radius: 4px;
        box-sizing: border-box;

        img{
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }

    .p_satei_confirm_submit_wrap{
        margin-top: 56px;
    }

    .p_satei_confirm_back{
        display: block;
        width: fit-content;
        margin: 29px auto 0px;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 600;
        line-height: 24px;
        text-decoration: underline;
        transition: 0.3s;

        &:hover{
            opacity: 0.7;
        }
    }
}

.l_satei_complete_area{
    padding: 56px 16px 0px;
    font-family: var(--satei_font_base);

    .l_satei_input_wrap{
        max-width: 1120px;
        margin: 0px auto;
    }

    .p_satei_confirm_form{
        display: none;
    }

    .p_satei_complete_title{
        margin: 0px 0px 64px;
    }

    .p_satei_complete_message{
        max-width: 800px;
        margin: 0px auto;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 500;
        line-height: 28px;

        .p_satei_complete_lead{
            margin-bottom: 54px;
            font-size: 20px;
            line-height: 30px;
        }
    }

    .p_satei_complete_back{
        display: block;
        width: fit-content;
        margin: 63px auto 0px;
        color: var(--satei_color_text);
        font-size: 16px;
        font-weight: 600;
        line-height: 24px;
        text-decoration: underline;
        transition: 0.3s;

        &:hover{
            opacity: 0.7;
        }
    }
}




/*-------------------- pc-spの間 --------------------*/
/*---------- base > width:1440px ----------*/
@media(max-width:1439px) and (min-width:769px){
    .first_area{
        padding: 0 1.389vw;
    
        .first_wrap{
            /* max-width: 77.778vw; */
            margin: 0 auto;
    
            .satei_ttl_lead{
                /* max-width: 55.556vw; */
                font-family: var(--satei_font_base);
                margin: 0 auto;
    
                .satei_ttl_lead_text{
                    font-size: 1.111vw;
                    line-height: 1.944vw;
                    margin-bottom: 1.667vw;
                }
                .satei_ttl_lead_note{
                    font-size: 0.972vw;
                    line-height: 1.389vw;
                    color: var(--satei_color_text_light);
                }
            }
        }
    }
    
    .l_satei_methods_area{
        padding: 3.958vw 1.389vw 0;
        font-family: var(--satei_font_base);
    
        .l_satei_methods_wrap{
            /* max-width: 77.778vw; */
            margin: 0 auto;
        }
    
        .p_satei_method_card_list{
            margin-top: 3.333vw;
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 1.389vw;
            margin-bottom: 8.611vw;
        }
    
        .p_satei_method_card{
            min-height: 11.667vw;
            padding: 2.569vw 6.944vw 2.222vw;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_border);
            border-radius: 0.278vw;
            box-sizing: border-box;
        }
    
        .p_satei_method_card_title{
            margin: 0 0 1.181vw;
            color: var(--satei_color_red);
            font-family: var(--satei_font_base);
            font-size: 1.389vw;
            font-weight: 600;
            line-height: 2.083vw;
            text-align: center;
        }
    
        .p_satei_method_card_text{
            /* max-width: 24.306vw; */
            margin: 0 auto;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 500;
            line-height: 1.944vw;
        }
    
        .p_satei_step_list{
            display: flex;
            justify-content: center;
            gap: 4.306vw;
            margin: 0;
            padding: 0;
            list-style: none;
        }
    
        .p_satei_step_item{
            position: relative;
            /* task191: was commented out, so the item fell back to the base 96px
               and ended up sized by its label — steps came out unevenly spaced
               and the arrows sat ~5px off the mid-point between two circles.
               The item must track the circle at every breakpoint. */
            max-width: 6.667vw;
            text-align: center;
    
            &:not(:last-child)::after{
                content: "";
                position: absolute;
                top: 2.5vw;
                right: -2.569vw;
                width: 0.972vw;
                height: 1.944vw;
                background: url("/assets/images/satei/method-step-arrow.png") center / contain no-repeat;
            }
    
            &.is_current{
                .p_satei_step_number{
                    border: 0.139vw solid var(--satei_color_red);
                    color: var(--satei_color_red);
                }
    
                .p_satei_step_text{
                    color: var(--satei_color_red);
                }
            }
        }
    
        .p_satei_step_number{
            display: flex;
            align-items: center;
            justify-content: center;
            width: 6.667vw;
            height: 6.667vw;
            margin: 0 auto 0.833vw;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_line);
            border-radius: 50%;
            color: var(--satei_color_text);
            font-family: var(--satei_font_en);
            font-size: 2.222vw;
            font-weight: 600;
            box-sizing: border-box;
        }
    
        .p_satei_step_text{
            display: inline-block;
            white-space: nowrap;
            color: var(--satei_color_text_dark);
            font-size: 1.111vw;
            font-weight: 600;
            line-height: 1.667vw;
        }
    }
    
    .l_satei_maker_area{
        padding: 3.889vw 1.389vw 0;
        font-family: var(--satei_font_base);
    
        .l_satei_maker_wrap{
            /* max-width: 77.778vw; */
            margin: 0 auto;
        }
    
        .p_satei_maker_lead{
            margin: 3.333vw auto 2.778vw;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 500;
            line-height: 1.667vw;
            text-align: center;
            /* max-width: 55.556vw; */
        }
    
        .p_satei_maker_list{
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 1.389vw 1.25vw;
        }
    
        .p_satei_maker_item{
            display: block;
            cursor: pointer;
        }
    
        .p_satei_maker_radio{
            position: absolute;
            width: 0.069vw;
            height: 0.069vw;
            margin: -0.069vw;
            padding: 0;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            border: 0;
        }
    
        .p_satei_maker_panel{
            display: flex;
            align-items: center;
            justify-content: center;
            height: 4.861vw;
            padding: 0.347vw 0;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_maker_border);
            border-radius: 4.167vw;
            overflow: hidden;
            box-sizing: border-box;
            transition: border-color 0.2s, box-shadow 0.2s;
    
            &:hover{
                border-color:var(--satei_color_red);
                opacity:0.7;
            }
            img{
                width: 100%;
                height: 100%;
                object-fit: contain;
            }
        }
    
        /* .p_satei_maker_radio:checked + .p_satei_maker_panel{
            border-color: var(--satei_color_red);
            box-shadow: 0 0 0 0.069vw var(--satei_color_red);
        }
    
        .p_satei_maker_radio:focus-visible + .p_satei_maker_panel{
            outline: 0.139vw solid var(--satei_color_red);
            outline-offset: 0.208vw;
        } */
    }
    .l_satei_methods_area_02{
        padding-top: 0;
    }
    .l_satei_input_area{
        padding: 3.889vw 1.389vw 0;
        font-family: var(--satei_font_base);
    
        .l_satei_input_wrap{
            /* max-width: 77.778vw; */
            margin: 0 auto;
        }
    
        .p_satei_input_form{
            color: var(--satei_color_text);
        }
    
        .p_satei_form_head{
            padding-bottom: 2.986vw;
            border-bottom: 0.069vw solid var(--satei_color_line);
        }
    
        .p_satei_form_section_title{
            padding: 2.222vw 0;
            border-top: 0.069vw solid var(--satei_color_line);
            border-bottom: 0.069vw solid var(--satei_color_line);
            text-align: center;
    
            h2{
                margin: 0;
                color: var(--satei_color_text);
                font-size: 1.667vw;
                font-weight: 600;
                line-height: 2.5vw;
            }
        }
    
        .p_satei_selected_maker{
            margin-top: 3.125vw;
            text-align: center;
        }
    
        .p_satei_selected_maker_label{
            margin: 0;
            font-size: 1.25vw;
            font-weight: 600;
            line-height: 1.875vw;
        }
        
        .p_satei_selected_maker_name{
            margin: 0;
            font-size: 1.111vw;
            font-weight: 500;
            line-height: 1.597vw;
        }
    
        .p_satei_selected_maker_logo{
            display: flex;
            align-items: center;
            justify-content: center;
            width: 15.139vw;
            height: 5.833vw;
            margin: 1.806vw auto 1.458vw;
            padding: 0.556vw 0.694vw;
            background: var(--satei_color_white);
            box-sizing: border-box;
            border-radius: 0.278vw;
    
            img{
                width: 100%;
                height: 100%;
                object-fit: contain;
            }
        }
    
        .p_satei_form_block{
            padding: 3.125vw 0 0;
        }
    
        .p_satei_form_block_address{
            padding: 3.333vw 0 0;
    
            .p_satei_field{
                /* max-width: none; */
            }
        }
    
        .p_satei_field{
            /* max-width: 25vw; */
        }
    
        .p_satei_field_label{
            display: flex;
            align-items: center;
            margin: 0 0 1.111vw;
            margin-bottom: 2.014vw;
            font-size: 1.25vw;
            line-height: 1.875vw;
            font-weight: 600;
        }
    
        .p_satei_field_label{
            small{
                margin-left: 0.833vw;
                color: var(--satei_color_text_light);
                font-size: 0.972vw;
                font-weight: 600;
            }
        }
    
        .p_satei_required{
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 3.333vw;
            height: 1.667vw;
            margin-right: 0.833vw;
            padding: 0.139vw 0.417vw;
            color: var(--satei_color_white);
            background: var(--satei_color_red);
            border-radius: 0.694vw;
            font-size: 0.972vw;
            font-weight: 500;
            line-height: 1;
            box-sizing: border-box;
        }
    
        .p_satei_address_fields{
            width: 25vw;
        }
    
        .p_satei_input,
        .p_satei_select,
        .p_satei_textarea{
            width: 100%;
            min-height: 3.333vw;
            padding: 0 1.111vw;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_border);
            border-radius: 0.278vw;
            color: var(--satei_color_text);
            font-family: var(--satei_font_base);
            font-size: 1.111vw;
            font-weight: 500;
            box-sizing: border-box;
        }
    
        .p_satei_input::placeholder,
        .p_satei_textarea::placeholder{
            color: #a9adb2;
        }
    
        .p_satei_zip_row{
            display: flex;
            align-items: center;
            gap: 0.556vw;
            margin-bottom: 1.111vw;
            font-size: 0.972vw;
            font-weight: 500;
        }
    
        .p_satei_input_zip_1{
            width: 6.458vw;
        }
        .p_satei_input_zip_2{
            width: 8.611vw;
        }
    
        .p_satei_select_wrap{
            position: relative;
            margin-bottom: 1.458vw;
    
            &::after{
                content: "";
                position: absolute;
                top: 50%;
                right: 0.417vw;
                width: 1.389vw;
                height: 1.389vw;
                background: url("/assets/images/satei/select-arrow-red.png") center / contain no-repeat;
                transform: translateY(-50%);
                pointer-events: none;
            }
        }
    
        .p_satei_select{
            appearance: none;
        }
    
        .p_satei_input_address{
            margin-bottom: 1.458vw;
        }
    
        .p_satei_address_fields{
            .p_satei_input_address:last-child{
                margin-bottom: 0;
            }
        }
    
        .p_satei_address_label{
            display: block;
            margin: 0 0 0.486vw;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 600;
            line-height: 1.667vw;
        }
    
        .p_satei_option_button{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 1.944vw;
            width: 26.042vw;
            min-height: 4.444vw;
            margin: 4.444vw auto 0;
            padding: 0 2.5vw 0 2.5vw;
            text-align: center;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_line);
            border-radius: 3.403vw;
            color: var(--satei_color_text);
            font-family: var(--satei_font_base);
            font-size: 1.111vw;
            font-weight: 600;
            cursor: pointer;
            position: relative;
            transition: 0.3s;
    
            &:hover{
                opacity: 0.7;
            }
            img{
                position: absolute;
                right: 1.389vw;
                top: 50%;
                transform: translateY(-50%);
                width: 2.222vw;
                height: 2.222vw;
            }
        }
    
        .p_satei_optional_area{
            display: block;
            margin-top: 4.444vw;
    
            &[hidden]{
                display: none;
            }
    
            .p_satei_optional_block:nth-last-of-type(-n+3){
                padding-bottom: 0;
                border-bottom: 0;
            }
        }
    
        .p_satei_optional_block{
            padding: 3.125vw 0;
            border-bottom: 0.069vw solid var(--satei_color_line);
    
            .p_satei_field{
                /* max-width: none; */
            }
    
            .p_satei_field_label{
                margin-bottom: 1.806vw;
            }
    
            .p_satei_choice{
                font-size: 1.111vw;
                line-height: 1.667vw;
    
                input{
                    width: 1.667vw;
                    height: 1.667vw;
                }
            }
            .p_satei_radio_grid {
                display: grid;
                gap: 1.944vw 1.389vw;
                /* max-width: unset; */
            }
            .p_satei_price_row {
                align-items: flex-end;
    
                span{
                    font-size: 1.111vw;
                    line-height: 1.667vw;
                }
            }
    
            &:first-child{
            border-top: 0.069vw solid var(--satei_color_line);
            }
        }
    
        .p_satei_optional_title{
            margin-top: 8.611vw;
        }
    
        .p_satei_radio_grid{
            display: grid;
            gap: 1.667vw 5.556vw;
            /* max-width: 63.889vw; */
        }
    
        .p_satei_radio_grid_3{
            grid-template-columns: repeat(3, 1fr);
        }
    
        .p_satei_radio_grid_2{
            grid-template-columns: repeat(2, 1fr);
        }
    
        .p_satei_choice,
        .p_satei_check{
            display: inline-flex;
            align-items: flex-start;
            gap: 0.556vw;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            line-height: 1.667vw;
            font-weight: 500;
            cursor: pointer;
    
            input{
                width: 1.25vw;
                height: 1.25vw;
                margin: 0;
                accent-color: var(--satei_color_red);
            }
            
            span{
                margin-top: 0.278vw;
            }
        }
    
        .p_satei_choice{
            input[type="radio"]{
                appearance: none;
                flex: 0 0 auto;
                display: inline-grid;
                place-content: center;
                background: var(--satei_color_white);
                border: 0.069vw solid var(--satei_color_border);
                border-radius: 50%;
                cursor: pointer;
    
                &::before{
                    content: "";
                    width: 0.972vw;
                    height: 0.972vw;
                    background: var(--satei_color_red);
                    border-radius: 50%;
                    transform: scale(0);
                }
    
                &:checked::before{
                    transform: scale(1);
                }
            }
        }
    
        .p_satei_check{
            input[type="checkbox"]{
                appearance: none;
                flex: 0 0 auto;
                display: inline-grid;
                place-content: center;
                background: var(--satei_color_white);
                border: 0.069vw solid var(--satei_color_border);
                border-radius: 0.208vw;
                cursor: pointer;
    
                &::before{
                    content: "";
                    width: 0.694vw;
                    height: 0.417vw;
                    border-left: 0.139vw solid var(--satei_color_white);
                    border-bottom: 0.139vw solid var(--satei_color_white);
                    transform: rotate(-45deg) scale(0);
                }
    
                &:checked{
                    background: var(--satei_color_red);
                    border-color: var(--satei_color_red);
                }
    
                &:checked::before{
                    transform: rotate(-45deg) scale(1);
                }
            }
        }
    
        .p_satei_price_row{
            display: flex;
            align-items: center;
            gap: 0.556vw;
            font-size: 0.903vw;
            font-weight: 600;
        }
    
        .p_satei_contact_method_block,
        .p_satei_contact_time_block{
    
            .p_satei_check{
                gap: 1.111vw;
    
                input{
                    width: 1.667vw;
                    height: 1.667vw;
                }
            }
    
            .p_satei_contact_check_grid{
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 1.944vw 1.389vw;
            }
        }
    
        .p_satei_input_price,
        .p_satei_input_medium{
            /* max-width: 22.222vw; */
        }
    
        .p_satei_form_section_title_contact{
            margin-top: 2.361vw;
        }
    
        .p_satei_contact_block{
            padding: 3.333vw 0 3.333vw;
            border-bottom: 0.069vw solid var(--satei_color_line);
    
            .p_satei_field{
                /* max-width: none; */
            }
    
            .p_satei_field_label{
                margin-bottom: 2.083vw;
    
                small{
                    color: var(--satei_color_text_light);
                    font-size: 0.972vw;
                    font-weight: 600;
                    margin-left: 0.833vw;
                }
            }
    
            .p_satei_input_medium{
                width: 22.222vw;
                /* max-width: none; */
            }
        }
    
        .p_satei_contact_address_block{
            padding-bottom: 0;
            border-bottom: 0;
    
            .p_satei_check{
                margin-bottom: 1.944vw;
                font-size: 1.111vw;
                line-height: 1.667vw;
                font-weight: 500;
    
                input{
                    width: 1.667vw;
                    height: 1.667vw;
                }
            }
    
            .p_satei_address_fields{
                width: 22.222vw;
            }
    
            .p_satei_input_zip_1{
                width: 5.694vw;
            }
    
            .p_satei_input_zip_2{
                width: 7.639vw;
            }
        }
    
        .p_satei_notice_box{
            margin-top: 1.944vw;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_line);
            border-radius: 0.278vw;
            overflow: hidden;
        }
    
        .p_satei_notice_head{
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            min-height: 3.333vw;
            padding: 0 0.972vw 0 1.528vw;
            background: var(--satei_color_text);
            border: 0;
            color: var(--satei_color_white);
            font-family: var(--satei_font_base);
            font-size: 1.111vw;
            font-weight: 600;
            text-align: left;
            cursor: pointer;
            transition: 0.3s;
    
            &:hover{
                opacity: 0.7;
            }
            img{
                width: 1.667vw;
                height: 1.667vw;
            }
        }
    
        .p_satei_notice_body{
            padding: 2.014vw 5.556vw 2.222vw;
    
            &[hidden]{
                display: none;
            }
    
            .p_satei_notice_body_title{
                display: flex;
                align-items: center;
                gap: 0.833vw;
                margin: 0;
                padding: 0 0 0.833vw;
                border-bottom: 0.069vw solid var(--satei_color_line);
                color: var(--satei_color_text);
                font-size: 1.111vw;
                line-height: 1.667vw;
                font-weight: 600;
    
                &::before{
                    content: "";
                    flex: 0 0 auto;
                    width: 0.556vw;
                    height: 0.556vw;
                    background: var(--satei_color_red);
                    border-radius: 50%;
                }
            }
    
            dl{
                display: grid;
                grid-template-columns: 8.333vw 1fr;
                gap: 1.389vw;
                margin: 0;
                padding: 2.222vw 0 1.667vw;
                border-bottom: 0.069vw solid var(--satei_color_line);
            }
    
            dt{
                color: var(--satei_color_red);
                font-size: 1.111vw;
                line-height: 1.667vw;
                font-weight: 600;
            }
    
            dd{
                margin: 0;
                color: var(--satei_color_text);
                font-size: 1.111vw;
                font-weight: 500;
                line-height: 1.667vw;
            }
    
            a{
                display: inline-flex;
                align-items: center;
                margin-top: 0.903vw;
                color: #006ad4;
                font-size: 1.111vw;
                line-height: 1.667vw;
                text-decoration: underline;
                transition: 0.3s;
    
                &:hover{
                    opacity: 0.7;
                }
                img{
                    width: 1.528vw;
                    height: 1.111vw;
                }
            }
        }
    
        .p_satei_assessment_list{
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 1.389vw;
        }
    
        .p_satei_assessment_card{
            display: flex;
            gap: 0.833vw;
            padding: 1.111vw 1.111vw 0.556vw;
            background: var(--satei_color_white);
            border: 0.069vw solid var(--satei_color_border);
            cursor: pointer;
            box-sizing: border-box;
            border-radius: 0.278vw;
    
            input{
                width: 1.667vw;
                height: 1.667vw;
                margin: 0;
                accent-color: var(--satei_color_red);
            }
    
            input[type="radio"]{
                appearance: none;
                flex: 0 0 auto;
                display: inline-grid;
                place-content: center;
                background: var(--satei_color_white);
                border: 0.069vw solid var(--satei_color_border);
                border-radius: 50%;
                cursor: pointer;
    
                &::before{
                    content: "";
                    width: 0.833vw;
                    height: 0.833vw;
                    background: var(--satei_color_red);
                    border-radius: 50%;
                    transform: scale(0);
                }
    
                &:checked::before{
                    transform: scale(1);
                }
            }
    
            span{
                color: var(--satei_color_text);
                font-size: 1.111vw;
                font-weight: 500;
                line-height: 1.667vw;
            }
    
            strong{
                display: block;
                margin-bottom: 0.556vw;
                margin-top: 0.278vw;
                color: var(--satei_color_text);
                font-size: 1.111vw;
                font-weight: 600;
            }
        }
    
        .p_satei_textarea{
            display: block;
            min-height: 7.292vw;
            padding: 0.972vw;
            resize: vertical;
        }
    
        .p_satei_textarea_small{
            margin-top: 1.528vw;
        }
    
        .p_satei_check_grid{
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 1.944vw 1.389vw;
        }
    
        .p_satei_form_title{
            margin-top: 8.611vw;
        }
    
        .p_satei_remarks_block{
            .p_satei_field_label{
                margin-bottom: 1.875vw;
                font-size: 1.111vw;
                line-height: 1.875vw;
                font-weight: 500;
            }
        }
    
        .p_satei_survey_block{
            padding: 3.333vw 0 0;
    
            .p_satei_check_grid{
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 1.667vw 1.389vw;
            }
    
            .p_satei_check{
                align-items: flex-start;
                gap: 1.111vw;
                font-size: 1.111vw;
                line-height: 1.667vw;
                font-weight: 500;
    
                input{
                    width: 1.667vw;
                    height: 1.667vw;
                }
            }
    
            .p_satei_textarea_small{
                min-height: 8.333vw;
                margin-top: 1.389vw;
                font-size: 1.111vw;
            }
        }
    
        .p_satei_privacy{
            /* max-width: 55.556vw; */
            margin: 8.611vw auto 0;
            text-align: center;
    
            p{
                margin: 0 0 1.458vw;
                color: var(--satei_color_text);
                font-size: 1.111vw;
                font-weight: 500;
                line-height: 1.944vw;
                text-align: left;
            }
    
            a{
                display: flex;
                margin-bottom: 1.875vw;
                color: #006ad4;
                font-size: 1.111vw;
                font-weight: 500;
                line-height: 1.667vw;
                text-decoration: underline;
                align-items: center;
                justify-content: center;
                transition: 0.3s;
    
                &:hover{
                    opacity: 0.7;
                }
                img{
                    width: 1.528vw;
                    height: 1.111vw;
                }
            }
    
            .p_satei_privacy_check{
                justify-content: center;
                gap: 1.111vw;
                font-size: 1.111vw;
                line-height: 1.667vw;
                display: block;
    
                span{
                    margin-left: 0.833vw;
                    font-weight: 500;
                }
    
                input{
                    width: 1.667vw;
                    height: 1.667vw;
                }
            }
        }
    
        .p_satei_submit_wrap{
            margin-top: 3.264vw;
            text-align: center;
        }
    
        .p_satei_submit_button{
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 25.972vw;
            min-height: 4.444vw;
            padding: 1.528vw 2.431vw 1.25vw 2.431vw;
            background: var(--satei_color_red);
            border: 0.139vw solid var(--satei_color_white);
            border-radius: 2.5vw;
            color: var(--satei_color_white);
            font-family: var(--satei_font_base);
            font-size: 1.111vw;
            font-weight: 600;
            cursor: pointer;
            box-sizing: border-box;
            position: relative;
            transition: 0.3s;
    
            &:hover{
                opacity: 0.7;
            }
            img{
                position: absolute;
                right: 1.389vw;
                top: 50%;
                transform: translateY(-50%);
                width: 1.667vw;
                height: 1.667vw;
            }
        }
    }
    
    .l_satei_confirm_area{
        .p_satei_confirm_form{
            /* max-width: 69.444vw; */
            margin: 0 auto;
        }
    
        .p_satei_confirm_alert{
            /* max-width: 55.556vw; */
            margin: 0 auto 4.444vw;
            padding: 1.667vw 1.667vw 1.111vw;
            background: var(--satei_color_white);
            border: 0.139vw solid var(--satei_color_red);
            box-sizing: border-box;
            border-radius: 0.278vw;
    
            p{
                margin: 0;
                color: var(--satei_color_red);
                font-size: 1.111vw;
                font-weight: 600;
                line-height: 1.667vw;
            }
        }
    
        .p_satei_confirm_title{
            margin-top: 8.056vw;
            margin-bottom: 0;
        }
    
        .p_satei_confirm_item{
            margin: 0;
            padding: 3.125vw 0 2.986vw;
            border-bottom: 0.069vw solid var(--satei_color_line);
    
            &:last-child{
                padding-bottom: 0;
                border-bottom: 0;
            }
    
            dt{
                margin: 0 0 1.597vw;
                color: var(--satei_color_text);
                font-size: 1.25vw;
                font-weight: 600;
                line-height: 1.875vw;
            }
    
            dd{
                margin: 0;
                color: var(--satei_color_text);
                font-size: 1.111vw;
                font-weight: 500;
                line-height: 1.389vw;
    
                .p_satei_confirm_item_note{
                    margin-top: 0.556vw;
                    font-size: 0.972vw;
                    color: var(--satei_color_text_light);
                }
            }
        }
    
        .p_satei_confirm_item_maker{
            dd{
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                gap: 1.458vw;
            }
    
            .p_satei_confirm_maker_logo{
            }
        }
    
        .p_satei_confirm_maker_logo{
            display: flex;
            align-items: center;
            justify-content: center;
            width: 12.222vw;
            height: 4.444vw;
            padding: 0.556vw 0.694vw;
            background: var(--satei_color_white);
            border-radius: 0.278vw;
            box-sizing: border-box;
    
            img{
                width: 100%;
                height: 100%;
                object-fit: contain;
            }
        }
    
        .p_satei_confirm_submit_wrap{
            margin-top: 3.889vw;
        }
    
        .p_satei_confirm_back{
            display: block;
            width: fit-content;
            margin: 2.014vw auto 0;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 600;
            line-height: 1.667vw;
            text-decoration: underline;
            transition: 0.3s;
    
            &:hover{
                opacity: 0.7;
            }
        }
    }
    
    .l_satei_complete_area{
        padding: 3.889vw 1.111vw 0;
        font-family: var(--satei_font_base);
    
        .l_satei_input_wrap{
            /* max-width: 77.778vw; */
            margin: 0 auto;
        }
    
        .p_satei_confirm_form{
            display: none;
        }
    
        .p_satei_complete_title{
            margin: 0 0 4.444vw;
        }
    
        .p_satei_complete_message{
            /* max-width: 55.556vw; */
            margin: 0 auto;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 500;
            line-height: 1.944vw;
    
            .p_satei_complete_lead{
                margin-bottom: 3.75vw;
                font-size: 1.389vw;
                line-height: 2.083vw;
            }
        }
    
        .p_satei_complete_back{
            display: block;
            width: fit-content;
            margin: 4.375vw auto 0;
            color: var(--satei_color_text);
            font-size: 1.111vw;
            font-weight: 600;
            line-height: 1.667vw;
            text-decoration: underline;
            transition: 0.3s;
    
            &:hover{
                opacity: 0.7;
            }
        }
    }
}





/*-------------------- sp --------------------*/
/*---------- デザインベースはwidth:375px ----------*/
@media(max-width:768px){
    .first_area{
        padding: 0 4.267vw;

        .first_wrap{
    
            .satei_ttl_lead{
                font-size: 3.733vw;
                line-height: 6.4vw;
                margin-bottom: 2.4vw;

                .satei_ttl_lead_text{
                    font-size: 3.733vw;
                    line-height: 6.4vw;
                    margin-bottom: 4.533vw;
                }
                .satei_ttl_lead_note{
                    font-size: 3.2vw;
                    line-height: 4.8vw;
                }
            }
        }
    }

    .l_satei_methods_area{
        padding: 0 4.267vw 0;
        margin-top: 12.8vw;

        .p_satei_method_card_list{
            grid-template-columns: 1fr;
            gap: 4.267vw;
            margin-top: 8.533vw;
            margin-bottom: 17.067vw;
        }

        .p_satei_method_card{
            min-height: auto;
            padding: 6.4vw 4.267vw 4.267vw;
        }

        .p_satei_method_card_title{
            margin-bottom: 1.867vw;
            font-size: 4.8vw;
        }

        .p_satei_method_card_text{
            font-size: 3.733vw;
            line-height: 6.4vw;
            max-width: unset;
            text-align: left;
        }

        .p_satei_step_list{
            gap: 6.667vw;
        }

        .p_satei_step_item{
            max-width: 17.867vw;
            position: relative;
        }

        .p_satei_step_item:not(:last-child)::after{
            top: 6.4vw;
            right: -5.067vw;
            width: 2.667vw;
            height: 5.333vw;
        }

        .p_satei_step_number{
            width: 17.867vw;
            height: 17.867vw;
            margin-bottom: 1.6vw;
            font-size: 6.4vw;
        }

        /* task80: nowrap (base rule) needs the longest label —「ハウスメーカーの」,
           8 chars — to overhang the 17.867vw circle by less than half the
           6.667vw gap, or neighbouring labels touch. 2.933vw is the largest
           size that clears it. */
        .p_satei_step_text{
            font-size: 2.933vw;
            line-height: 4.533vw;
        }
    }

    .l_satei_maker_area{
        padding: 12vw 4.267vw 0;

        .p_satei_maker_lead{
            margin: 8.533vw 0 6.667vw;
            font-size: 3.733vw;
            line-height: 6.4vw;
            text-align: left;
        }

        .p_satei_maker_list{
            grid-template-columns: repeat(2, 1fr);
            gap: 4.267vw 2.933vw;
        }

        .p_satei_maker_panel{
            height: 15.467vw;
            padding: 1.6vw 2.667vw;
        }
    }

    .l_satei_input_area{
        padding: 11.733vw 4.267vw 0;

        .p_satei_form_head{
            padding-bottom: 7.467vw;
        }

        .p_satei_form_section_title{
            padding: 4.8vw 0 6.933vw;

            h2{
                font-size: 6.4vw;
                line-height: 9.6vw;
            }
        }

        .p_satei_selected_maker{
            margin-top: 8.533vw;
        }

        .p_satei_selected_maker_label{
            font-size: 4.267vw;
            line-height: 6.4vw;
        }
        .p_satei_selected_maker_name{
            font-size: 3.733vw;
            line-height: 5.333vw;
        }

        .p_satei_selected_maker_logo{
            width: 44.267vw;
            height: 14.4vw;
            margin: 4.267vw auto 3.467vw;
        }

        .p_satei_form_block{
            padding: 8vw 0 6.4vw;
        }

        .p_satei_form_block_address{
            padding: 8vw 0 0;

            .p_satei_field_label{
                margin-bottom: 4.8vw;
                font-size: 4.267vw;
                line-height: 6.4vw;
            }
        }

        .p_satei_field{
            max-width: none;
        }

        .p_satei_field_label{
            font-size: 3.467vw;
            line-height: 5.333vw;
        }

        .p_satei_required{
            min-width: 10.667vw;
            height: 5.333vw;
            margin-right: 2.133vw;
            border-radius: 4.267vw;
            font-size: 3.2vw;
        }

        .p_satei_address_fields{
            width: 100%;

            .p_satei_input_address:last-child{
                margin-bottom: 0;
            }
        }

        .p_satei_input,
        .p_satei_select,
        .p_satei_textarea{
            min-height: 12.8vw;
            font-size: 3.733vw;
        }

        .p_satei_zip_row{
            flex-wrap: wrap;
            gap: 2.133vw;
            margin-bottom: 4.267vw;
            font-size: 3.733vw;
        }

        .p_satei_input_zip{
            width: calc((100% - 12.8vw) / 2);
        }

        .p_satei_select_wrap{
            margin-bottom: 4.533vw;
        }

        .p_satei_address_label{
            margin-bottom: 1.067vw;
            font-size: 3.733vw;
            line-height: 5.333vw;
        }

        .p_satei_input_address{
            margin-bottom: 6.4vw;
        }

        .p_satei_option_button{
            width: 74.667vw;
            max-width: 100%;
            min-height: 12.8vw;
            margin-top: 12.8vw;
            padding-left: 9.067vw;
            font-size: 3.733vw;

            img {
                position: absolute;
                right: 2.667vw;
                top: 50%;
                transform: translateY(-50%);
                width: 6.4vw;
                height: 6.4vw;
            }
        }

        .p_satei_optional_block{
            padding: 8.533vw 0 8vw;

            .p_satei_field_label{
                margin-bottom: 5.067vw;
                font-size: 4.267vw;
                line-height: 6.4vw;
            }

            .p_satei_radio_grid {
                display: grid;
                gap: 5.867vw 8.533vw;
                max-width: unset;
                grid-template-columns: 1fr 1fr;
            }
        }

        .p_satei_assessment_block{


        }

        .p_satei_optional_title{
            margin-top: 19.2vw;
        }

        .p_satei_radio_grid,
        .p_satei_radio_grid_2,
        .p_satei_radio_grid_3{
            grid-template-columns: 1fr;
            gap: 4.267vw;
        }

        .p_satei_optional_block .p_satei_price_row{
            align-items: flex-end;
            gap: 1.067vw;

            .p_satei_input_price{
                flex: 1 1 auto;
                font-size: 3.733vw;
                line-height: 4.267vw;
            }

            span {
                font-size: 3.733vw;
                line-height: 4.267vw;
            }
        }

        .p_satei_contact_method_block,
        .p_satei_contact_time_block{

            .p_satei_check{
                gap: 3.733vw;
            }
        }

        .p_satei_contact_check_grid{
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 5.867vw 8.533vw;
        }

        .p_satei_input_price,
        .p_satei_input_medium{
            max-width: 82.933vw;
        }

        .p_satei_form_section_title_contact{
            margin-top: 6.4vw;
        }

        .p_satei_optional_area {
            margin-top: 12.8vw;
        }

        .p_satei_contact_block{
            padding: 5.867vw 0 6.4vw;

            .p_satei_field_label{
                margin-bottom: 4.8vw;
                font-size: 4.267vw;
                line-height: 6.4vw;

                small{
                    display: inline;
                    margin-left: 1.067vw;
                    font-size: 3.467vw;
                    line-height: 5.333vw;
                }
            }

            .p_satei_input_medium{
                width: 100%;
            }
        }

        .p_satei_form_title_above_1{
            padding-top: 8vw;
        }

        .p_satei_contact_address_block{
            padding-bottom: 0;
            border-bottom: 0;

            .p_satei_check{
                margin-bottom: 7.467vw;
                font-size: 4.267vw;
                line-height: 6.4vw;

                input{
                    width: 6.4vw;
                    height: 6.4vw;
                    flex: 0 0 auto;
                }
            }

            .p_satei_address_fields{
                width: 100%;
            }

            .p_satei_zip_row{
                flex-wrap: nowrap;
            }
        }

        .p_satei_notice_box{
            margin-top: 4.533vw;
        }
        .p_satei_notice_head{
            font-size: 3.733vw;
            line-height: 5.333vw;
        }

        .p_satei_notice_body{
            padding: 5.6vw 4.267vw 6.4vw;

            .p_satei_notice_body_title{
                gap: 2.133vw;
                padding-bottom: 3.2vw;
                font-size: 3.733vw;
                line-height: 5.333vw;
            }

            dt {
                font-size: 3.733vw;
                line-height: 5.333vw;
            }

            dl{
                grid-template-columns: 1fr;
                gap: 3.2vw;
                padding: 5.6vw 0 4.8vw;
            }
            dd {
                font-size: 3.733vw;
                line-height: 5.333vw;
            }
            a {
                margin-top: 2.4vw;
                font-size: 3.733vw;
                line-height: 5.333vw;
                display: block;

                img {
                    width: 5.333vw;
                    height: 3.733vw;
                    margin-bottom: 1.333vw;
                }
            }
        }

        .p_satei_assessment_list{
            grid-template-columns: 1fr;
            gap: 4.267vw;
        }

        .p_satei_assessment_card{
            padding: 4.267vw 4.267vw 2.4vw;
            gap: 1.867vw;
            border: 0;

            strong {
                margin-bottom: 1.6vw;
                font-size: 3.733vw;
            }
            span {
                font-size: 3.733vw;
                line-height: 5.333vw;
            }
        }

        .p_satei_check_grid{
            grid-template-columns: 1fr;
            gap: 3.733vw;
        }

        .p_satei_survey_title{
            margin-top: 12.8vw;
        }

        .p_satei_survey_block{
            padding-top: 8vw;
            padding-bottom: 0;

            .p_satei_field_label{
                align-items: flex-start;
                margin-bottom: 5.333vw;
                font-size: 4.267vw;
                line-height: 6.4vw;

                small{
                    display: block;
                    margin: 0.533vw 0 0;
                    font-size: 3.2vw;
                    line-height: 4.8vw;
                }
            }

            .p_satei_check_grid{
                grid-template-columns: 1fr;
                gap: 5.867vw;
            }

            .p_satei_check{
                gap: 2.133vw;
                font-size: 3.733vw;
                line-height: 5.333vw;

                input{
                    width: 6.4vw;
                    height: 6.4vw;
                }
            }

            .p_satei_textarea_small{
                min-height: 25.6vw;
                margin-top: 2.667vw;
                font-size: 3.733vw;
                line-height: 5.333vw;    
            }
        }

        .p_satei_textarea{
            min-height: 51.2vw;
        }

        .p_satei_privacy{
            max-width: none;
            margin-top: 19.2vw;

            p{
                margin-bottom: 3.733vw;
                font-size: 3.733vw;
                line-height: 6.4vw;
            }

            a{
                margin-bottom: 5.333vw;
                font-size: 3.733vw;
                line-height: 5.333vw;
            }

            .p_satei_privacy_check{
                justify-content: flex-start;
                gap: 2.133vw;
                font-size: 3.733vw;
                line-height: 5.333vw;

                input{
                    width: 6.4vw;
                    height: 6.4vw;
                }
            }
        }

        .p_satei_submit_wrap{
            margin-top: 8.533vw;
        }

        .p_satei_submit_button{
            min-width: 74.667vw;
            min-height: 12.8vw;
            padding: 0 8vw 0 8vw;
            font-size: 3.733vw;

            img{
                width: 6.4vw;
                height: 6.4vw;
                right: 3.2vw;
            }
        }

        .p_satei_form_title {
            margin-top: 19.2vw;
        }

        .p_satei_remarks_block{
            padding-bottom: 0;

            .p_satei_field_label{
                margin-bottom: 4.533vw;
                font-size: 3.733vw;
                line-height: 6.4vw;
            }
        }
    }

    .l_satei_confirm_area{
        padding-top: 12.8vw;

        .p_satei_confirm_alert{
            margin-bottom: 11.2vw;
            padding: 5.333vw 3.733vw 3.467vw;

            p{
                font-size: 3.733vw;
                line-height: 5.333vw;
            }
        }

        .p_satei_confirm_title{
            margin-top: 17.333vw;
            margin-bottom: 0;
        }

        .p_satei_confirm_item{
            padding: 7.733vw 0;

            dt{
                margin-bottom: 4.267vw;
                font-size: 4.267vw;
                line-height: 6.4vw;
            }

            dd{
                font-size: 3.733vw;
                line-height: 5.333vw;

                .p_satei_confirm_item_note{
                    font-size: 3.2vw;
                    line-height: 4.8vw;
                }
            }
        }

        .p_satei_confirm_item_maker {
            dd {
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                gap: 3.467vw;
                margin-top: 5.067vw;
            }
        }

        .p_satei_confirm_maker_logo{
            width: 38.4vw;
            height: 14.4vw;
        }

        .p_satei_confirm_submit_wrap{
            margin-top: 18.133vw;
        }

        .p_satei_confirm_back{
            margin-top: 5.6vw;
            font-size: 3.733vw;
            line-height: 5.333vw;
        }
    }

    .l_satei_complete_area{
        padding: 11.733vw 4.267vw 0;

        .p_satei_complete_title{
            margin-bottom: 12.8vw;
        }

        .p_satei_complete_message{
            max-width: none;
            font-size: 3.733vw;
            line-height: 6.4vw;

            .p_satei_complete_lead{
                margin-bottom: 10.4vw;
                font-size: 4.8vw;
                line-height: 7.467vw;
            }
        }

        .p_satei_complete_back{
            margin-top: 10.133vw;
            font-size: 3.733vw;
            line-height: 5.333vw;
        }
    }
}


/* 26/07/21 修正 */
.l_satei_input_area {
    .p_satei_optional_area_260721 {
        margin-top: 121px;

        .p_satei_optional_area_note{

            p{
                display: flex;
                align-items: center;
                margin: 0px 0px 16px;
                margin-bottom: 42px;
                font-size: 18px;
                line-height: 27px;
                font-weight: 600;
            }
        }

        > .p_satei_optional_area_note + .p_satei_optional_block {
        border-top: 1px solid var(--satei_color_line);
        }
    }
}

@media (max-width: 1439px) and (min-width: 769px) {
    .l_satei_input_area {
        .p_satei_optional_area_260721 {
            margin-top: 8.403vw;

            .p_satei_optional_area_note{

                p{
                    display: flex;
                    align-items: center;
                    margin: 0px 0px 1.111vw;
                    margin-bottom: 2.917vw;
                    font-size: 1.25vw;
                    line-height: 1.875vw;
                    font-weight: 600;
                }
            }

            > .p_satei_optional_area_note + .p_satei_optional_block {
            border-top: 0.069vw solid var(--satei_color_line);
            }
        }
    }
}

@media (max-width: 768px) {
    .l_satei_input_area {
        .p_satei_optional_area_260721 {
            margin-top: 19.2vw;

            .p_satei_optional_area_note{

                p{
                    margin-bottom: 6.4vw;
                    font-size: 4.267vw;
                    line-height: 6.4vw;
                }
            }

        }
    }
}

/* task79 p48: address fields mirrored from the property address are read-only. */
.p_satei_address_fields.is_disabled{
    opacity: 0.5;
}
.p_satei_address_fields input:disabled,
.p_satei_address_fields select:disabled{
    background-color: #f0f1f2;
    color: #6b6f75;
    cursor: not-allowed;
}
