ul,li,ol {list-style: none;}
body {
  --max_width: 728px;
  --padding: 80px 50px 130px;
  --estimate_c_key: #0095F8;
  --c_white: #fff;
  --c_black: #222;
  --c_grey1: #444;
  --c_grey2: #E4E4E4;
  --c_grey3: #F6F8FA;
  --c_error: #ff5b5b;
  letter-spacing: 0;
}
.hidden_pc {display: none;}
.hidden_mo {display: block;}

/*  common  */
.form_wrapper {
  --gap: 130px;
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  max-width: var(--max_width);
  padding: var(--padding);
  margin: 0 auto;
}
.estimate .header {
  --gap: 4px; 
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}
.estimate ._qfinal {
  --gap: 12px;
}
.estimate h2 {
  font-size: 34px;
  font-weight: 500;
  color: var(--c_black);
  letter-spacing: -1px;
}
.estimate h3 {   
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--c_grey1);
}
.estimate h3 b {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  color: var(--estimate_c_key);
}
.estimate dl {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 8px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--estimate_c_key);
  background: var(--c_grey3);
  border-radius: 8px;
  padding: 10px 16px 10px 10px;
  margin-top: 11px;
  opacity: 0;
  transform: translateY(8%);
  transition: .3s transform .2s ease-in-out, .4s opacity .2s ease-in;
}
.estimate dl::before {
  content: '';
  position: absolute;
  top: -11px;
  left: 14px;
  display: block;
  width: 15px;
  height: 11px;
  mask-image: url("data:image/svg+xml,%3Csvg width='15' height='11' viewBox='0 0 15 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.15079 0.414964C1.50212 -0.141042 0.5 0.319866 0.5 1.17422L0.499999 11L14.5 11L2.15079 0.414964Z' fill='%23F6F8FA'/%3E%3C/svg%3E%0A");
  mask-size: contain;
  background: var(--c_grey3);
}
.estimate .__ani dl {
  opacity: 1;
  transform: translateY(0%);
}
.estimate dt {
  display: block;
}
.estimate dd b {
  display: block;
  font-weight: 700;
}
.estimate dd strong:not(:last-child) {
  padding-right: 5px;
}
.estimate strong {
  font-weight: 700;
}
._qfinal h3 {
  font-size: 34px;
}
._qfinal p {
  display: block;
  font-size: 16px;
  font-weight: 400;
  color: #aaa;
}
.estimate_copy {    
  position: relative;
  width: 100%;
}


/*  default_reset  */
.estimate .wpforms-field-container {    
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 42px; 
}
.estimate .wpforms-field-layout-columns {
  gap: 24px;
}
.estimate .wpforms-container .wpforms-form .wpforms-field-label,
.estimate div.wpforms-container-full .wpforms-form .wpforms-field-label {
  margin: 0 !important;
}
.estimate .wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field {
  display: flex;
  flex-direction: column;
  padding: 0;
}
.estimate div.wpforms-container-full .wpforms-form label.wpforms-error, .estimate div.wpforms-container-full .wpforms-form em.wpforms-error {
  margin-top: 0;
}
.estimate div.wpforms-container-full:not(:empty) {
  margin: 0;
}
div.wpforms-container-full input[type=text],
div.wpforms-container-full input[type=email] {
  padding: 0 !important;
}
.wpforms-container .wpforms-field-label, .wp-core-ui div.wpforms-container .wpforms-field-label {
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  color: var(--c_grey1) !important;
  margin: 0 !important;
}
.required-check-box {
  top: auto;
}
.step_final .wpforms-field.agree_privacy.required-check-box, .step_final .wpforms-field.agree_privacy {
  position: absolute !important;
  bottom: 0;    
  width: 100%;
  z-index: -1;
}
.step_final div.your-headcount, .step_final div.your-location, 
.step_final div.your-important, .step_final div.your-expect,
.step_final div.your-headcount label.wpforms-field-label, .step_final div.your-location label.wpforms-field-label 
.step_final div.your-important label.wpforms-field-label, .step_final div.your-expect label.wpforms-field-label {
  position: absolute !important;
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden;
  z-index: -9999;
  pointer-events: none;
}
.step_final div.your-headcount > input, .step_final div.your-location > input, 
.step_final div.your-important > input, .step_final div.your-expect > input {
  pointer-events: none;
}
.estimate_copy .checkboxes input[type=checkbox] {  
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  font-size: 0;
  visibility: hidden;
}
.checkboxes .choice-1 > .wpforms-field-label-inline {
  display: flex !important;
  font-size: 16px !important;
}


/* ._estimate  */
.bt-grp {
  display: flex;
  gap: 10px;
  width: 100%;
  margin-top: auto;
}
.bt-grp .bt-base {
  width: 50%;
  height: 52px;
  font-size: 18px;
  font-weight: 600;
  color: #777;
  background-color: #F1F4F8;
  border: none;
  border-radius: 8px;
}
.inner_visual .bt-grp {
  margin-top: 40px;
}
.inner_visual .bt-grp > button::after {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_46_1072' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_46_1072)'%3E%3Cmask id='mask1_46_1072' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='4' y='4' width='16' height='16'%3E%3Crect x='4' y='4' width='16' height='16' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask1_46_1072)'%3E%3Cpath d='M13.65 11.9993L8.74999 7.09935C8.58333 6.93268 8.50277 6.73546 8.50833 6.50768C8.51388 6.2799 8.59999 6.08268 8.76666 5.91602C8.93333 5.74935 9.13055 5.66602 9.35833 5.66602C9.5861 5.66602 9.78333 5.74935 9.94999 5.91602L15.0667 11.0493C15.2 11.1827 15.3 11.3327 15.3667 11.4993C15.4333 11.666 15.4667 11.8327 15.4667 11.9993C15.4667 12.166 15.4333 12.3327 15.3667 12.4993C15.3 12.666 15.2 12.816 15.0667 12.9493L9.93333 18.0827C9.76666 18.2494 9.57221 18.3299 9.34999 18.3244C9.12777 18.3188 8.93333 18.2327 8.76666 18.066C8.59999 17.8994 8.51666 17.7021 8.51666 17.4743C8.51666 17.2466 8.59999 17.0494 8.76666 16.8827L13.65 11.9993Z' fill='white'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}
.estimate .inner_box {
  --gap: 40px;
  max-width: 920px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--gap);
  margin: 0 auto;
}
.estimate_content .inner_box {
  --gap: 40px;
}
.estimate_content._01 .inner_box {
  --gap: 32px;
}
.estimate_content._03 .inner_box {
  --gap: 75px;
}
.step_start {
  background-color: #F1F4F8;
}
.step_start .inner_visual {
  --gap: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap);
  max-width: var(--max_width);
  padding: 69px 50px;
  margin: 0 auto;
}
.step_start .conts_box { 
  max-width: 194px;
  width: 100%;
  height: 100%;
  line-height: 0;
  margin-right: -118px;
}
.txt_box span {
  position: relative;
  display: block;
  width: fit-content;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--c_white);
  background: var(--estimate_c_key);
  padding: 0 8px;
  border-radius: 8px;
  margin-bottom: 18px;
  animation: .6s bounceY .2s ease-in-out infinite alternate;
}
.txt_box span::after {
  content: '';
  position: absolute;
  bottom: -9px;
  left: calc(50% - 7px);
  display: block;
  width: 14px;
  height: 10px;
  mask-image: url("data:image/svg+xml,%3Csvg width='14' height='10' viewBox='0 0 14 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.81923 8.82967C7.42113 9.39838 6.57887 9.39839 6.18077 8.82967L-7.94466e-08 -2.70245e-07L14 9.53674e-07L7.81923 8.82967Z' fill='%230095F8'/%3E%3C/svg%3E%0A");
  mask-size: contain;
  mask-repeat: no-repeat;
  background: var(--estimate_c_key);
}
.step .header {
  position: relative;
}
.step .header > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

ul.checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
li.depth-1 {
  --c_choice : #aaa;
  --bg_choice : #fff;
  --c_border: #e4e4e4;
  --box_gap: 8px * (3 - 1);
  text-align: center;
  position: relative;
  width: calc((100% - var(--box_gap)) / 3);
  font-size: 16px;
  line-height: 1.7;
  color: var(--c_choice);
  background: var(--bg_choice);
  border-radius: 8px;
  box-shadow: 0 0 0 1px var(--c_border);
}
li.depth-1.selected {
  --c_choice : #fff;
  --bg_choice : #0095F8;
  --c_border: #0095F8;
}
li.depth-1 > label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 8px;    
  cursor: pointer;
}
.step._02 li.depth-1 {
  --box_gap: 8px * (4 - 1);
  width: calc((100% - var(--box_gap)) / 4);
}

.wpforms-field {
  box-shadow: 0 1px 0 0px rgba(34, 34, 34, .2);
}
.wpforms-field.wpforms-field-number {
  display: flex;
  align-items: center;
}
.wpforms-has-error {
  box-shadow: 0 1px 0 0 var(--c_error);
}
.estimate_copy em.wpforms-error {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  font-size: 12px;
  line-height: 170%;
  font-weight: 400;
  color: var(--c_error);
}
.estimate_copy .checkboxes.wpforms-has-error {
  box-shadow: none;
}
.estimate .wpforms-field input {
  width: 100%;
  padding: 0;
  border: none;
  border-radius: 8px;
}
.wpforms-field-checkbox 
.your-headcount {
  display: flex;
  align-items: center;
  padding: 0;
}
.your-headcount::after {
  content: '명';
  display: inline-block;
  font-size: 16px;
  color: #222;
}
.estimate .wpforms-submit {
  width: 100%;
  height: 56px;
  border-radius: 8px;
  margin-top: 60px !important;
}
.step_final p small {
  padding-top: 0;
}
.step_final input.wpforms-field-required {
  border-radius: 0 !important;
}
.estimate .step_final .lead_agree_form {
  margin-top: 24px !important;
}

/*  복제된 필드들 스타일  */
.estimate_copy .wpforms-field-label {
  display: none;
}
.estimate_content._03 .estimate_copy {
  max-width: 588px;
  height: 60px;
  margin: 0 auto;
}
.ui-slider {
  width: 100%;
}
.estimate_content._03 .wpforms-field {
  position: relative;
  box-shadow: none;
}
.estimate_content._03 .ui-widget.ui-widget-content {
  height: 2px;
  background: var(--c_grey2);
  border: none;
  z-index: 1;
  touch-action: pan-x;
}
.estimate_content._03 .slider-value-display {
  position: absolute;
  top: -43px;
  display: flex;
  align-items: center;
  width: fit-content;
  height: 24px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c_white);
  background: var(--estimate_c_key);
  padding: 0 8px;
  border-radius: 8px;
}
.estimate_content._03 .slider-value-display.is_start {
  left: -12px !important;
}
.estimate_content._03 .slider-value-display::after {
  content: '';
  position: absolute;
  left: calc(50% - 4px);    
  bottom: -4px;
  display: block;
  width: 8px;
  height: 6px;
  background: var(--estimate_c_key);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
.estimate_content._03 .slider-value-display.is_start::after {
  left: calc(50% - 27px);
}
.estimate_content._03 .slider-bullets {
  position: absolute;
  top: 0;
  width: 100%;
  height: 2px;
  margin: 0;
}
.estimate_content._03 .slider-bullet {
  text-align: center;
  width: 8px;
  height: 8px;
  background: var(--c_grey2);
  border-radius: 50%;
}
.estimate_content._03 .slider-bullet::before {
  content: '';
  position: absolute;
  left: calc(50% - 1px);
  bottom: -12px;
  display: inline-block;
  width: 1px;
  height: 8px;
  background: var(--c_grey2);
}
.estimate_content._03 .slider-bullet:first-child:before,
.estimate_content._03 .slider-bullet:nth-child(4):before,
.estimate_content._03 .slider-bullet:nth-child(7):before,
.estimate_content._03 .slider-bullet:nth-child(8):before {
  width: 2px;
}
.estimate_content._03 .slider-bullet:first-child:after,
.estimate_content._03 .slider-bullet:nth-child(4):after,
.estimate_content._03 .slider-bullet:nth-child(7):after,
.estimate_content._03 .slider-bullet:nth-child(8):after {
  content: "\0031\AC1C\C6D4\0020\C774\D558";
  position: absolute;
  top: 24px;
  left: 50%;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color: #aaa;
  transform: translateX(-50%);
}
.estimate_content._03 .slider-bullet:nth-child(4):after {
  content: "\0033\AC1C\C6D4";
}
.estimate_content._03 .slider-bullet:nth-child(7):after {
  content: "\0036\AC1C\C6D4\20\C774\C0C1";
}
.estimate_content._03 .slider-bullet:nth-child(8):after {
  content: "\0031\0032\AC1C\C6D4\20\C774\C0C1";
}
.estimate_content._03 .ui-slider-horizontal .ui-slider-handle {  
  pointer-events: auto;
  touch-action: auto;
  position: relative;
  top: -13px;
  display: block;
  width: 24px;
  height: 24px;
  background: var(--c_white);
  border: 1px solid #777;
  border-radius: 50%;
  margin-left: -12px;
  outline: none !important;
}
.estimate_content._03 .ui-slider-handle.ui-state-active,
.estimate_content._03 .ui-slider-handle.ui-state-focus,
.estimate_content._03 .ui-slider-handle.ui-state-hover {
  border: 2px solid var(--estimate_c_key) !important;
}
.estimate_content._03 .ui-slider-range {
  background-color: var(--estimate_c_key);
  height: 2px;
  top: 0;
}

/* Chrome, Safari, Edge, Opera 숫자필드 화살표 지우기 */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0;
}


/*  leave_popup   */
#leave_popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.60);
  backdrop-filter: blur(1.5px);
  z-index: 999;
  opacity: 1;
  pointer-events: auto;
}
#leave_popup.exit_hidden {
  opacity: 0;
  pointer-events: none;
}
#leave_popup h3 {
  font-size: 26px;
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 10px;
}
#leave_popup p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}
.popup_conts {    
  text-align: center;
  position: absolute;
  top: calc(50% - 153px);
  left: calc(50% - 140px);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 280px;
  background: var(--c_white);
  border-radius: 12px;
  padding: 32px 16px 8px;
}
#leave_popup .popup_close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: block;
  width: 20px;
  height: 20px;
  border: none;
  mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_863_25850' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_863_25850)'%3E%3Cpath d='M16.9996 3L2.99976 17' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M2.99996 3L16.9998 17' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E%0A");  mask-size: 100%;
  mask-size: contain;
  background: var(--c_black);
}
#leave_popup .popup_btn {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  margin-top: 20px;
}
#leave_popup .popup_btn > button {
  height: 48px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.7;
  color: #aaa;
  padding: 0 36px;
  border: none;
  border-radius: 8px;
  background: none;
}
#leave_popup .popup_btn > button:first-child {
  color: var(--c_white);
  background: var(--estimate_c_key);
}
.scroll-lock {
  overflow: hidden;
  height: 100%;
}

@keyframes bounceY {
  0% {transform: translateY(-8%);}
  100% {transform: translateY(0%);}
}


@media all and (max-width: 960px) {
  .hidden_pc {display: block;}
  .hidden_mo {display: none;}
  body {
    --max_width: 500px;
    --padding: 60px 20px 100px;
  }

  /*  common    */
  .form_wrapper {
    --gap: 80px;
  }
  .estimate {
    overflow: hidden;
  }
  .estimate h2 {
    font-size: 24px;
  }
  .estimate h3 {
    font-size: 18px;
    align-items: flex-start;
    gap: 11px;
    line-height: 1.7;
  }
  .estimate dd strong:not(:last-child) {
    padding-right: 0;
  }
  ._qfinal h3 {
    font-size: 22px;
  }
  .estimate h3 b {
    font-size: 14px;
    line-height: 2;
  }
  ._qfinal p {
    font-size: 14px;
  }
  .txt_box {
    z-index: 1;
  }

  .step_start .inner_visual {
    --gap: 16px;
    text-align: center;
    position: relative;    
    flex-direction: column;
    align-items: center;
    min-height: 100%;
    padding: 23px 0 16px;
  }
  .step_start .conts_box {
    width: 134px;
    height: 100%;
    margin: 0 auto;
  }
  .txt_box span {
    font-size: 14px;
    margin: 0 auto 8px;
  }
  .txt_box span::after {
    bottom: -5px;
    left: calc(50% - 4px);
    width: 8px;
    height: 6px;
  }


  /*  defalut_reset   */
  .wpforms-field-checkbox .choice-1 > .wpforms-field-label-inline {
    font-size: 14px !important;
  }
  .estimate .wpforms-field-container {
    gap: 32px; 
  }
  .estimate .wpforms-field-layout-columns {
    gap: 32px;
  }
  .estimate .step_final .lead_agree_form {
    margin-top: 16px !important;
  }
  div.wpforms-container-full .wpforms-form .wpforms-field {
    padding: 0 !important;
  }
  .estimate .wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field {
    gap: 8px;
    padding: 0 !important;
  }
  div.wpforms-container-full .wpforms-form .wpforms-field-label {
    font-size: 16px !important;
  }
  .wpforms-container .agree_privacy .wpforms-field-label.wpforms-label-hide {
    font-size: 0 !important;
  }


  /*  estimate  */
  .estimate_content .inner_box {
    --gap: 32px;
  }
  .estimate_content._01 .inner_box {
    --gap: 24px;
  }
  .estimate_content._03 .inner_box {
    --gap: 61px;
  }
  .estimate .header {
    --gap: 0px;
    width: 100%;
  }
  .estimate dl {
    gap: 6px;
    padding: 12px 10px;
    margin-top: 11px;
  }
  .estimate dl::before {
    top: -10px;
    width: 14px;
    height: 12px;
  }
  li.depth-1,
  .step._02 li.depth-1 {        
    --box_gap: 8px * (2 - 1);
    width: calc((100% - var(--box_gap)) / 2);
    font-size: 14px;
  }
  li.depth-1 > label {
    padding: 6px;
  }
  .estimate_content._03 .estimate_copy {
    max-width: none;
    padding: 0 16px;
  }
  .estimate_content._03 .slider-value-display {
    top: -40px;
    height: 21px;
    font-size: 12px;
    line-height: 1.4;
    padding: 0 7px;
  }
  .estimate_content._03 .slider-value-display.is_start {
    left: -9px !important;
  }
  .estimate_content._03 .slider-bullet {
    width: 6px;
    height: 6px;
  }
  .step_final p small {
    padding-top: 0;
  }
  .estimate .wpforms-submit {
    margin-top: 80px !important;
  }
}