.step_form {width: 100%; height: auto; margin-top: 60px;}
.step_form .step_gauge_bar {width: 100%; height: auto;}
.step_form .step_gauge_bar .d-flex {display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px;}
.step_form .step_gauge_bar .step_tit {font-size: 13px; font-weight: bold; line-height: 1; color: var(--pr);}

.step_form .step_gauge_bar .step_current_num {font-size: 12px; font-weight: 400; line-height: 1; color: var(--gray_64);}

.step_form .step_gauge_bar .gauge_bar {position: relative; width: 100%; height: 6px; margin-bottom: 28px;}
.step_form .step_gauge_bar .gauge_bar .bar {width: 100%; height: 100%; border-radius: 100px; background: var(--pr2); overflow: hidden;}
.step_form .step_gauge_bar .gauge_bar span {position: absolute; top: 0; left: 0; display: block; width: 33%; height: 100%; background: var(--pr); border-radius: 100px; transition: all .5s;}


.step_form .form_item {display: none; width: 100%; height: auto; padding: 36px 32px; box-sizing: border-box; border: 1px solid var(--pr2); border-radius: 24px; background: var(--wt);}
.step_form .form_item.open {animation: form_item .5s linear alternate both; display: block;}
@keyframes form_item {
  0% {transform: translateY(30px); opacity: 0;}
  100% {transform: translateY(0); opacity: 1;}
}
.step_form .form_item.center {text-align: center;}
.step_form .form_item .form_tit {display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 33px;}
.step_form .form_item .form_tit .left {}
.step_form .form_item .form_tit .left .tit {margin-bottom: 8px; font-size: 24px; font-weight: 900; line-height: 1; color: var(--black_0f);}
.step_form .form_item .form_tit .left .sub {font-size: 13px; font-weight: 400; line-height: 1; color: var(--gray_64);}

.step_form .form_item .form_tit_box {display: inline-block; padding: 12px 16px; box-sizing: border-box; border-radius: 15px 15px 15px 0; background: var(--pr_ef); border: 1px solid var(--gray_bf); font-size: 13px; font-weight: 600; line-height: 1.5; color: var(--pr);}

/* choice */
.step_form .form_item .choice {display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px;}
.step_form .form_item .choice p {font-size: 13px; font-weight: 400; line-height: 1; color: var(--gray_64);}
.step_form .form_item .choice p span {font-weight: bold;}
.step_form .form_item .choice .choice_txt {display: flex; align-items: center; justify-content: center; gap: 6px; width: 142px; height: 24px; border-radius: 100px; background: #eef2ff; font-size: 13px; font-weight: 400; line-height: 1; color: var(--gray_64);}
.step_form .form_item .choice .choice_txt span {font-weight: bold; color: var(--pr);}

/* ckd_box */
.ckd_box {display: flex; align-items: center; flex-wrap: wrap; gap: 12px 0; margin: 0 -6px;}
.ckd_box input {display: none;}
.ckd_box label {position: relative; width: calc(100% / 2); height: 91px; padding: 0 6px; box-sizing: border-box; transition: all .3s;}
.ckd_box label:hover {transform: translateY(-5px);}
.ckd_box label:hover .box {position: relative; background: #F8FBFF; border-color: #C8D9FF;}
.ckd_box label .box {position: relative; display: flex; align-items: flex-start; gap: 12px; width: 100%; height: 100%; padding: 24px; border: 1.5px solid var(--pr2); border-radius: 14px; box-sizing: border-box; background: var(--wt);}
.ckd_box label .box figure {width: 20px; height: auto;}
.ckd_box label .txt-box {}
.ckd_box label .txt-box .tit {margin-bottom: 8px; font-size: 17px; font-weight: bold; line-height: 1; color: var(--black_0f);}
.ckd_box label .txt-box .sub {font-size: 11px; font-weight: 500; color: var(--pr);}
.ckd_box input:checked + label .box {border-color: var(--pr); background: var(--pr_ef);}
.ckd_box input:checked + label:after {position: absolute; top: 15px; right: 22px; content: ''; display: block; width: 22px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_on.png) no-repeat 50% 50%; background-size: cover;}
.ckd_box input:checked + label {animation: hoverL .3s linear alternate both;}
@keyframes hoverL {
  0% {transform: scale(0.9);}
  30% {transform: scale(0.8);}
  100% {transform: scale(1);}
}

/* input-box */
.input-box {width: 100%; height: auto; margin-bottom: 16px;}
.input-box:last-of-type {margin-bottom: 0;}
.input-box .tit {margin-bottom: 8px; font-size: 15px; font-weight: 600; line-height: 1.5; color: var(--gray_64);}
.input-box .inputs {position: relative; width: 100%; height: 56px; padding: 0 48px 0 16px; box-sizing: border-box; border-radius: 12px; box-shadow: 0 0 3px 0 rgba(37, 99, 235, 0.08); border: solid 1.5px var(--pr2); background-color: #fff;}
.input-box .inputs.focus {border-color: var(--pr);}
.input-box .inputs input:not([type="checkbox"]) {width: 100%; height: 100%; outline: none; font-size: 17px; font-weight: 400; line-height: 1.5; color: var(--black_1e);}
.input-box .inputs input::placeholder {color: var(--gray_8a);}
.input-box .inputs .del_btn {display: none; position: absolute; top: 50%; right: 16px; transform: translateY(-50%); width: 24px; height: auto;}
.input-box .inputs .del_btn img {width: 100%; height: auto;}

.input-box select {width: 100%; height: 56px; padding: 0 48px 0 16px; box-sizing: border-box; border-radius: 12px; border: solid 1.5px var(--pr2); background: url(./../img/select_icon.png)no-repeat calc(100% - 16px) 50%; background-size: 24px; background-color: #fff; appearance: none; font-size: 17px; font-weight: 400; line-height: 1.5; color: #8a949e;}
.input-box .d-flex {display: flex; align-items: center; gap: 24px;}
.input-box .d-flex2 {flex-wrap: wrap; gap: 16px 0; margin: 0 -12px;}
.input-box .d-flex .d-block {width: calc(100% / 2); padding: 0 12px; box-sizing: border-box;}

.input-box2 .d-flex {display: flex; align-items: center; gap: 24px;}
.input-box .ckd_box2 {display: flex; align-items: center; gap: 8px;}
.input-box .ckd_box2 input {display: none;}
.input-box .input_item {width: 100%;}
.input-box .ckd_box2 label {display: flex; align-items: center; justify-content: center; gap: 4px; width: 100%; height: 56px; border: 1.5px solid var(--pr2); border-radius: 12px; background: var(--wt); font-size: 17px; font-weight: 400; line-height: 1.5; color: var(--black_1e);}
.input-box .ckd_box2 label::before {content: ''; display: block; width: 20px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_off2.png)no-repeat 50% 50%; background-size: cover;}

.input-box .ckd_box2 input:checked + label {border-color: var(--pr); background: var(--pr_ef); color: var(--pr);}
.input-box .ckd_box2 input:checked + label:before {content: ''; display: block; width: 20px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_on2.png)no-repeat 50% 50%; background-size: cover;}

/* radio_box */
.input-box .radio_box {display: flex; align-items: center; margin: 0 -8px; width: 100%; height: auto;}
.input-box .radio_box input {display: none;}
.input-box .radio_box label {position: relative; width: calc(100% / 3); height: auto; padding: 0 8px; box-sizing: border-box;}
.input-box .radio_box label .rd {position: absolute; top: -10px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; width: 98px; height: 20px; border-radius: 60px; background: var(--yellow); font-size: 13px; font-weight: 400; line-height: 20px; color: var(--wt);}
.input-box .radio_box label .expert_box {display: flex; align-items: center; justify-content: center; flex-flow: column; gap: 8px; width: 100%; height: 142px; border-radius: 12px; border: solid 1.5px #e2e8f0; transition: all .3s;}
.input-box .radio_box label .expert_box:hover {background: var(--wt_f8);}
.input-box .radio_box label .num {display: flex; align-items: center; gap: 8px; font-size: 42px; font-weight: 900; line-height: 1.5; color: var(--black_0f);}
.input-box .radio_box label .num span {font-size: 17px; font-weight: 400; line-height: 1.5; color: var(--gray_8a);}
.input-box .radio_box label .txt {font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--gray_8a);}
.input-box .radio_box input:checked + label .expert_box {border-radius: 12px; border: solid 1.5px #2563eb; background: var(--pr_ef);}
.input-box .radio_box input:checked + label .expert_box .num {color: var(--pr);}

/* submit_btns */
.submit_btns {display: flex; align-items: center; gap: 12px; margin-top: 37px;}
.submit_btns button:disabled {background: var(--pr2); color: var(--gray_64); box-shadow: none;}
.submit_btns .next_btn {position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 50px; border-radius: 12px; box-shadow: 0 4px 16px 0 rgba(37, 99, 235, 0.25); font-size: 15px; font-weight: bold; line-height: 1; color: var(--wt); box-sizing: border-box; z-index: 1; overflow: hidden;}
.submit_btns .next_btn.on {color: var(--wt); transition: all .5s;}
.submit_btns .next_btn.on:before {animation: bg_box .3s linear alternate both; position: absolute; top: 0; left: 0; content: ''; display: block; width: 100%; height: 100%; background: var(--pr); z-index: -1;}
@keyframes bg_box {
  0% {width: 0%;}
  100% {width: 100%;}
}
.submit_btns .prev_btn {display: flex; align-items: center; justify-content: center; min-width: 120px; width: 120px; height: 50px; border-radius: 12px; border: solid 1px #e2e8f0; box-sizing: border-box; font-size: 15px; font-weight: bold; line-height: 1; color: var(--gray_64);}

/* description */
.description {width: 100%; height: auto; padding: 24px; box-sizing: border-box; border-radius: 12px; background: var(--pr_ef);}
.description .tit {margin-bottom: 16px; font-size: 20px; font-weight: bold; line-height: 1; color: var(--black_0f);}
.description .txt {font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--gray_64);}
.description .txt span {font-weight: bold; color: var(--black_0f);}

/* agee_ckd_area */
.agee_ckd_area {width: 100%; height: auto; padding-top: 16px; margin-top: 16px; border-top: 1px solid var(--pr2);}
.agee_ckd_area .tit {margin-bottom: 8px; font-size: 15px; font-weight: bold; line-height: 1.5; color: var(--black_0f);}

.agee_ckd_area .agee_ckd {display: flex; flex-flow: column; width: 100%; height: auto; padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid var(--pr2);}
.agee_ckd_area .agee_ckd input {display: none;}
.agee_ckd_area .agee_ckd label {display: flex; align-items: center; justify-content: space-between; width: 100%; height: 48px; border-bottom: 1px solid var(--pr2);}
.agee_ckd_area .agee_ckd label span:before {content: ''; display: block; width: 24px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_off3.png)no-repeat 50% 50%; background-size: cover;}
.agee_ckd_area .agee_ckd label span {display: flex; align-items: center; gap: 12px; font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--black_0f);}
.agee_ckd_area .agee_ckd label .agee_btn {font-size: 15px; font-weight: 600; line-height: 1.5; color: var(--pr);}

.agee_ckd_area .agee_ckd input:checked + label span:before {content: ''; display: block; width: 24px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_on3.png)no-repeat 50% 50%; background-size: cover;}

.agee_ckd_area .all_ckd {width: 100%; height: auto; padding: 16px; box-sizing: border-box; background: var(--wt_f4); border-radius: 12px;}
.agee_ckd_area .all_ckd input {display: none;}
.agee_ckd_area .all_ckd label {display: flex; align-items: center; gap: 16px; font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--black_0f);}
.agee_ckd_area .all_ckd label:before {content: ''; display: block; min-width: 24px; width: 24px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_off3.png)no-repeat 50% 50%; background-size: cover;}
.agee_ckd_area .all_ckd input:checked + label:before {content: ''; display: block; width: 24px; height: auto; aspect-ratio: 1/1; background: url(./../img/ckd_on3.png)no-repeat 50% 50%; background-size: cover;}

/* last_txt-box */
.last_txt-box {display: flex; flex-flow: column; align-items: center; justify-content: center; gap: 24px; margin-top: 24px;}
.last_txt-box .img-box {width: 50px; height: auto;}
.last_txt-box .img-box2 {width: 60px;}
.last_txt-box .img-box img {animation: jello-horizontal 0.9s both; width: 100%; height: auto;}
@keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

.last_txt-box .tit {text-align: center; font-size: 24px; font-weight: 900; line-height: 1.5; color: var(--black_0f);}
.last_txt-box .tit2 {font-size: 28px;}
.last_txt-box .sub {font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--gray_64);}
.last_txt-box .sub2 {font-size: 17px;}
.last_txt-box .sub span {color: var(--pr); font-weight: bold;}
.talk_btn {display: flex; align-items: center; justify-content: center; gap: 16px; width: 100%; height: 56px; margin-top: 60px; border-radius: 12px; background: var(--yellow2); box-shadow: 0 4px 16px 0 rgba(254, 229, 0, 0.32); font-size: 17px; font-weight: bold; line-height: 1.5; color: rgba(0, 0, 0, 0.85);}
.talk_btn img {width: 16px; height: auto;}

/* dl-box */
.dl-box {width: 100%; height: auto; padding: 24px; margin-top: 32px; box-sizing: border-box; border-radius: 12px; background: var(--pr_ef);}
.dl-box dl {display: flex; align-items: center; justify-content: space-between; width: 100%; height: 55px; border-bottom: solid 1px rgba(191, 207, 254, 0.45);}
.dl-box dl dt {font-size: 15px; font-weight: 400; line-height: 1.5; color: var(--gray_64);}
.dl-box dl dd {font-size: 15px; font-weight: bold; line-height: 1; color: var(--black_0f);}