.estimate.content{
    margin-top: 67px;
}
.rfq .sub-title {
    justify-content: center;
}
.rfq .main-title{
    text-align: center;
}
.rfq .title{
    margin-bottom: 27px;
}
.form-step h3{
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 27px;
}
.form-step .text{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.95;
    margin-bottom: 40px;
    text-align: center;
}
.step01_radio_wrapper{
    display: flex;
    justify-content: space-between;
    max-width: 838px;
    width: 100%;
    margin: 0 auto;
}
.form-step label{
    width: 31.7%;
    text-align: center;
}
.step01_radio-title{
    font-size: 24px;
    font-weight: 700;
    margin-top: 21px;
    text-align: center;
}
.rfq form{
    margin-top: 52px;
}

.form-step .seen-btn{
    background: #eaf8ff;
    border: unset;
}
.rfq {
    padding-bottom: 100px;
    padding-left: 20px;
    padding-right: 20px;
}

.step01_radio_wrapper label:has(input[type=radio]:checked) img{
    border: 2px solid #03a9f4;
    border-radius: 16px;
}
.step01_radio-title input{
    width: 0px;
}
.form-step .select_wrapper{
    text-align: center;
}
.form-step .select_wrapper select{
    background: #fff;
    border: 1px solid #b9b9b9;
    border-radius: 5px;
    font-size: 16px;
    padding: 12px 16px;
    width: 100%;
    width: 350px;
}
.btn-flex{
    display: flex;
    gap: 40px;
    justify-content: center; 
    margin-top: 52px;
}
.btn-flex .seen-btn{
    margin: 0;
}
.btn-back.seen-btn{
    background: #f5f5f5;
}
.btn-back.seen-btn::after{
    right: unset;
    left: 21px;
    transform: translateY(-50%) rotate(180deg);
}
.checkbox-item-title{
    position: relative;
    text-align: center;
    width: 100%;
    display: flex;
    justify-content: center;
}
.checkbox-item-title p{
    background: #fff;
    font-size: 24px;
    font-weight: 600;
    padding: 0 .25em;
    z-index: 2;
    position: relative;
    width: fit-content;
}
.checkbox-item-title::before{
    background: #03a9f4;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    top: 50%;
    width: 100%;
    z-index: 1;
}
.checkbox-item-content{
    display: flex;
    flex-wrap: wrap;
    gap: 20px 1.7%;
    margin-top: 24px;
}
.checkbox-item-content .seen-btn{
    border: 1px solid #b9b9b9;
    color: #b9b9b9;
    width: 32.2%;
    background: #fff;
    margin: 0;
}
.checkbox-item-content .seen-btn:hover{
    opacity: 1;
}
.checkbox-item-content .seen-btn::after{
    background: url(../img/estimate/icon_checkbox.png) 50% no-repeat;
    background-size: cover;
    right: unset;
    left: 21px;
    height: 13px;
    width: 18px;
}
.checkbox-item{
    margin-top: 40px;
}
.checkbox-item:first-child{
    margin-top: 0;
}
.checkbox-item-content .seen-btn input{
    width: 0;
}

.checkbox-item-content .seen-btn:has(input[type=checkbox]:checked) {
    background: #eaf8ff;
    border-color: #eaf8ff;
    color: #090a33;
}
.step06_radio_wrapper,
.step05_radio_wrapper{
    display: flex;
    gap: 6.6%;
    background: #f5f5f5;
    border-radius: 10px;
    padding: 40px 4.8%;
    width: 100%;
    justify-content: center;
}
.form-step .step05_radio_wrapper label{
    width: fit-content;
}
.step06_radio_wrapper.wrapper02{
    flex-wrap: wrap;
    justify-content: left; 
    gap: 16px 3.4%;
}
.step06_radio_wrapper label{
    width: fit-content;
    display: flex;
    gap: 10px;
}
.step06_radio_wrapper input[type="checkbox"]{
    border: 1px solid #b9b9b9;
    border-radius: 100%;
    width: 15px;
    appearance: none;
    height: 15px;
}
.step06_radio_wrapper  input[type="checkbox"] {
    appearance: none;     
    -webkit-appearance: none;
    width: 15px;
    height: 15px;
    border: 1px solid #b9b9b9;
    border-radius: 50%;  
    cursor: pointer;
    position: relative;
}

.step06_radio_wrapper  input[type="checkbox"]:checked::after {
    content: "";
    width: 8px;
    height: 8px;
    background: #03a9f4;  
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.step07 input,.step07  textarea,.step07  select {
    background: #fff;
    border: 1px solid #b9b9b9;
    border-radius: 5px;
    font-size: 16px;
    padding: 12px 16px;
    width: 100%;
}
.customer_info dt{
    margin-bottom: 8px;
    font-weight: 500;
}
.customer_info dl+dl{
    margin-top: 28px;
}
.step07.form-step .select_wrapper select{
    width: 100%;
}
.step07 input.postal_code_input{
    width: 279px;
}
.postal_code{
    display: flex;
}
.postal_code_btn{
    align-items: center;
    background: #03a9f4;
    border-radius: 25px;
    color: #fff;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    font-size: 16px;
    font-weight: 600;
    justify-content: center;
    margin-left: 13px;
    padding: 13px;
    width: fit-content;
}
#form-flow.step01 #union_40{
    fill: #03a9f4;
}
#form-flow.step01 #type{
    fill: #fff;
}


#form-flow.step02 #union_40{
    fill: #03a9f4;
}
#form-flow.step02 #type{
    fill: #fff;
}
#form-flow.step02 #union_41{
    fill: #03a9f4;
}
#form-flow.step02 #year-built{
    fill: #fff;
}


#form-flow.step03 #union_40{
    fill: #03a9f4;
}
#form-flow.step03 #type{
    fill: #fff;
}
#form-flow.step03 #union_41{
    fill: #03a9f4;
}
#form-flow.step03 #year-built{
    fill: #fff;
}
#form-flow.step03 #union_42{
    fill: #03a9f4;
}
#form-flow.step03 #area{
    fill: #fff;
}

#form-flow.step04 #union_40{
    fill: #03a9f4;
}
#form-flow.step04 #type{
    fill: #fff;
}
#form-flow.step04 #union_41{
    fill: #03a9f4;
}
#form-flow.step04 #year-built{
    fill: #fff;
}
#form-flow.step04 #union_42{
    fill: #03a9f4;
}
#form-flow.step04 #area{
    fill: #fff;
}
#form-flow.step04 #union_43{
    fill: #03a9f4;
}
#form-flow.step04 #budget{
    fill: #fff;
}

#form-flow.step05 #union_40{
    fill: #03a9f4;
}
#form-flow.step05 #type{
    fill: #fff;
}
#form-flow.step05 #union_41{
    fill: #03a9f4;
}
#form-flow.step05 #year-built{
    fill: #fff;
}
#form-flow.step05 #union_42{
    fill: #03a9f4;
}
#form-flow.step05 #area{
    fill: #fff;
}
#form-flow.step05 #union_43{
    fill: #03a9f4;
}
#form-flow.step05 #budget{
    fill: #fff;
}
#form-flow.step05 #union_44{
    fill: #03a9f4;
}
#form-flow.step05 #timing{
    fill: #fff;
}

#form-flow.step06 #union_40{
    fill: #03a9f4;
}
#form-flow.step06 #type{
    fill: #fff;
}
#form-flow.step06 #union_41{
    fill: #03a9f4;
}
#form-flow.step06 #year-built{
    fill: #fff;
}
#form-flow.step06 #union_42{
    fill: #03a9f4;
}
#form-flow.step06 #area{
    fill: #fff;
}
#form-flow.step06 #union_43{
    fill: #03a9f4;
}
#form-flow.step06 #budget{
    fill: #fff;
}
#form-flow.step06 #union_44{
    fill: #03a9f4;
}
#form-flow.step06 #timing{
    fill: #fff;
}
#form-flow.step06 #union_45{
    fill: #03a9f4;
}
#form-flow.step06 #preferences{
    fill: #fff;
}

#form-flow.step07 #union_40{
    fill: #03a9f4;
}
#form-flow.step07 #type{
    fill: #fff;
}
#form-flow.step07 #union_41{
    fill: #03a9f4;
}
#form-flow.step07 #year-built{
    fill: #fff;
}
#form-flow.step07 #union_42{
    fill: #03a9f4;
}
#form-flow.step07 #area{
    fill: #fff;
}
#form-flow.step07 #union_43{
    fill: #03a9f4;
}
#form-flow.step07 #budget{
    fill: #fff;
}
#form-flow.step07 #union_44{
    fill: #03a9f4;
}
#form-flow.step07 #timing{
    fill: #fff;
}
#form-flow.step07 #union_45{
    fill: #03a9f4;
}
#form-flow.step07 #preferences{
    fill: #fff;
}
#form-flow.step07 #union_46{
    fill: #03a9f4;
}
#form-flow.step07 #personal-info{
    fill: #fff;
}

input.seen-btn{
    width: 292px;
    border-radius: 35px;
    font-size: 18px;
    font-weight: 600;
}

.wpcf7-spinner{
    display: none !important;
}
.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 0em !important;
}

@media screen and (max-width: 767px) {
    .form-step h3 {
        font-size: 4.8vw;
        margin-bottom: 2.9333333333vw
    }
    .form-step .text {
        font-size: 3.7333333333vw;
        line-height: 1.4285714286;
        margin: 2.9333333333vw 0 5.3333333333vw;
        text-align: left;
    }
    .rfq form {
        margin-top: 7.4666666667vw;
    }
    p.step01_radio-title {
        font-size: 3.7333333333vw;
        margin-top: 1.0666666667vw;
    }
    .estimate.content {
        margin-top: 13.8666666667vw;
    }
    button.seen-btn.btn-next {
        margin-top: 8.5333333333vw;
    }
    .step01_radio_wrapper {
        gap: 2.4vw;
        margin-bottom: 8.5333333333vw;
    }
    .rfq {
        padding-bottom: 13.8666666667vw;
    }
    button.seen-btn.btn-next{
        margin-top: 0;
    }
    .btn_wrapper.btn-flex {
        gap: 3.2vw;
        margin-top: 8.5333333333vw;
    }
    .select_wrapper {
        width: 60.8vw;
        margin: 0 auto;
    }
    .form-step .select_wrapper select{
        width: 100%;
        border-radius: .8vw;
        font-size: 3.7333333333vw;
        padding: 3.7333333333vw 4.2666666667vw;
    }
    .breadcrumb {
        margin-bottom: 4.8vw;
    }
    .form-step h3 span{
        font-size: 3.7333333333vw;
        font-weight: 500;
    }
    .checkbox-item-title p {
        font-size: 3.7333333333vw;
    }
    .step03 .checkbox-item-content .seen-btn {
        width: 43.2vw;
    }
    .step05_radio_wrapper {
        flex-wrap: wrap;
        gap: 5.3333333333vw 18.6666666667vw;
        justify-content: left;
        border-radius: 2.6666666667vw;
        padding: 5.3333333333vw 8.5333333333vw;
    }
    .step05 input[type="radio"] {
        margin-right: 1.0666666667vw;
        vertical-align: -.5333333333vw;
        width: 4vw;
    }
    .form-step .step05_radio_wrapper label {
        min-width: 23.7333333333vw;
        justify-content: flex-start;
        display: flex;
    }
    .step06_radio_wrapper.wrapper02 {
        padding: 5.3333333333vw 8.5333333333vw;
        border-radius: 2.6666666667vw;
    }
    .step06_radio_wrapper input[type="checkbox"]{
        margin-right: 4px;
        vertical-align: -2px;
    }


    #form-flow.step01 #union_56{
        fill: #03a9f4;
    }

    #form-flow.step02 #union_57{
        fill: #03a9f4;
    }


    #form-flow.step03 #union_57{
        fill: #03a9f4;
    }
    #form-flow.step03 #union_58{
        fill: #03a9f4;
    }

    #form-flow.step04 #union_57{
        fill: #03a9f4;
    }
    #form-flow.step04 #union_58{
        fill: #03a9f4;
    }
    #form-flow.step04 #union_59{
        fill: #03a9f4;
    }


    #form-flow.step05 #union_57{
        fill: #03a9f4;
    }
    #form-flow.step05 #union_58{
        fill: #03a9f4;
    }
    #form-flow.step05 #union_59{
        fill: #03a9f4;
    }
    #form-flow.step05 #union_60{
        fill: #03a9f4;
    }


    #form-flow.step06 #union_57{
        fill: #03a9f4;
    }
    #form-flow.step06 #union_58{
        fill: #03a9f4;
    }
    #form-flow.step06 #union_59{
        fill: #03a9f4;
    }
    #form-flow.step06 #union_60{
        fill: #03a9f4;
    }
    #form-flow.step06 #union_61{
        fill: #03a9f4;
    }

    #form-flow.step07 #union_57{
        fill: #03a9f4;
    }
    #form-flow.step07 #union_58{
        fill: #03a9f4;
    }
    #form-flow.step07 #union_59{
        fill: #03a9f4;
    }
    #form-flow.step07 #union_60{
        fill: #03a9f4;
    }
    #form-flow.step07 #union_61{
        fill: #03a9f4;
    }
    #form-flow.step07 #union_62{
        fill: #03a9f4;
    }

    .step07.form-step h3{
        margin-bottom: 0;
    } 
    .customer_info dt {
        font-size: 3.7333333333vw;
        margin-bottom: 2.1333333333vw;
    }
    .customer_info dl+dl {
        margin-top: 3.2vw;
    }
    .step07 input.postal_code_input {
        width: 44.8vw;
    }
    .postal_code_btn {
        border-radius: 6.6666666667vw;
        font-size: 3.7333333333vw;
        margin-left: 1.6vw;
        padding: 4.2666666667vw 3.2vw;
    }
    .step07 input, .step07 textarea, .step07 select {
        border-radius: .8vw;
        font-size: 3.7333333333vw;
        padding: 3.7333333333vw 3.2vw;
    }
    .step07.form-step .select_wrapper {
        width: 100%;
    }
    .submit-btn{
        width: 60.8vw;
    }
    .step07 input.seen-btn{
        width: 100%;
        border-radius: 6.6666666667vw;
        font-size: 3.7333333333vw;
        height: 13.3333333333vw;
        padding: 0 5.3333333333vw;
    }
    .rfq {
        padding-left: 0px;
        padding-right: 0px;
    }

}