:root{
  --main-color: #003cdc;
}
a { color: #333;	text-decoration: none; }
.container { width: 1200px; margin: 0 auto; position: relative; }
.notScroll {overflow: hidden; width: 100%; height: 100vh; touch-action: none;}

/* Select box 스타일 초기화 */ 
select {
	padding: 0 10px 0 4px;
	background: #fff url('arrow.png') no-repeat 100% 50% !important;
	border-radius: 0px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
  color: inherit;
  font-family: inherit;
}

select option { 
	color: #000;
}

/* IE 에서 Select box 화살표 제거 */ 
select::-ms-expand { display: none; }

/* IE10 이상에서 input box 에 추가된 지우기 버튼 제거 */
input::-ms-clear { display: none; }

/* placeholder 초기화 */
input::-webkit-input-placeholder {
  color: #aaa;
  font-style: normal;
  font-weight:100;
}
input:-ms-input-placeholder {
  color: #aaa;
  font-style: normal;
  font-weight:100;
}
textarea::-webkit-input-placeholder {
  color: #aaa;
  font-style: normal;
  font-weight:100;
}
textarea:-ms-input-placeholder {
  color: #aaa;
  font-style: normal;
  font-weight:100;
}
input::placeholder { font-weight: 400; color:#aaa; }

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	transition: background-color 5000s ease-in-out 0s;
	-webkit-transition: background-color 9999s ease-out;
  -webkit-box-shadow: 0 0 0px 1000px none inset !important;
}



/* common */
#wrap {padding-top: 90px;}
#wrap > .container { display: flex; }
.inner { padding: 0 40px;}
main { flex-shrink: 0; width: 600px; position: relative; overflow: hidden;}
.form-area { flex: 1; min-width: 0;}

.color { color: var(--main-color);}

section {padding: 40px 0;}
section .sc-title { margin-bottom: 30px;}
section .sc-title .sub-title { font-size: 22px; font-weight: 500; text-align: center; line-height: 1.2; margin-bottom: 20px;}
section .sc-title .title { font-size: 30px; text-align: center; line-height: 1.2; font-weight: 700;}

/* section sc1 */
section.sc1 { background-color: #f0f8ff;}
section.sc1 .sc-title .sub-title { color: #999;}
section.sc1 .sc-con .con-topBox p { font-size: 22px; font-weight: 700; text-align: center;}
section.sc1 .sc-con .con-textBox { background-color: #fff; border-radius: 20px; padding: 40px 40px; display: flex; flex-direction: column; gap: 20px; margin-top: 30px;}
section.sc1 .sc-con .con-textBox .text_item { display: flex; align-items: center;  gap: 8px;}
section.sc1 .sc-con .con-textBox .text_item i { width: 30px;}
section.sc1 .sc-con .con-textBox .text_item p { font-size: 17px; font-weight: 500; color: #999; line-height: 1.4;}
section.sc1 .con-cardBox { margin-top: 40px; overflow: hidden; height: 200px;}
section.sc1 .con-cardBox .card_item { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; border-radius: 20px;  aspect-ratio: 1/1; padding: 20px; width: 100%; box-sizing: border-box; }
/* section.sc1 .con-cardBox .card_item:first-child { border-radius: 0 20px 20px 0; align-items: flex-start; box-sizing: border-box;}
section.sc1 .con-cardBox .card_item:last-child { border-radius: 20px 0 0 20px; align-items: flex-end;} */
section.sc1 .con-cardBox .card_item.item1 { background-color: #BDBDBD;}
section.sc1 .con-cardBox .card_item.item2 { background-color: #79c4f7;}
section.sc1 .con-cardBox .card_item.item3 { background-color: #f9ce55;}
section.sc1 .con-cardBox .card_item h5 { border-radius: 100px; color: #fff; font-size: 18px; font-weight: 500;  padding: 8px 20px;}
section.sc1 .con-cardBox .card_item.item1 h5 { background-color: #939393;}
section.sc1 .con-cardBox .card_item.item2 h5 { background-color: #1c9de5;}
section.sc1 .con-cardBox .card_item.item3 h5 { background-color: #ea9a1b;}

/* section sc2*/
section.sc2 { background-color: var(--main-color);}
section.sc2 .sc-title {color: #fff;}
section.sc2 .sc-con { display: flex; flex-direction: column; align-items: center;}
section.sc2 .sc-con .con-topBox { margin-bottom: 30px;}
section.sc2 .sc-con .con-topBox button { border-radius: 100px; border: 1px solid #fff; padding: 10px 20px; display: inline-block; color: #fff; }
section.sc2 .sc-con .con-listBox { display: flex; flex-direction: column; gap: 20px; width: 100%;}
section.sc2 .sc-con .con-listBox .list_item { background-color: #f0f8ff; border-radius: 20px; padding: 30px 40px; display: flex; align-items: center; justify-content: space-between; gap: 20px;}
section.sc2 .sc-con .con-listBox .list_item .text_box { flex: 1; min-width: 0;}
section.sc2 .sc-con .con-listBox .list_item .text_box span { background-color: var(--main-color); color: #fff; display: inline-block; padding: 8px 16px; border-radius: 100px; margin-bottom: 10px;}
section.sc2 .sc-con .con-listBox .list_item .text_box h3 { font-size: 20px; font-weight: 700; line-height: 1.3;}
section.sc2 .sc-con .con-listBox .list_item .text_box p { margin-top: 10px; font-size: 18px; color: #999; font-weight: 400;}
section.sc2 .sc-con .con-listBox .list_item .img_box { flex-shrink: 0; width: 70px;}
section.sc2 .sc-con .con-listBox .list_item .img_box img { width: 100%;}



/* section sc3 */
section.sc3 { background-color: #f0f8ff;}
section.sc3 .sc-title .sub-title { color: #999;}
section.sc3 .sc-con .con-quizBox { background-color: #fff; border-radius: 20px; padding: 40px 40px; display: flex; flex-direction: column; align-items: center; margin-top: 30px;}
section.sc3 .sc-con .con-quizBox .title {  display: flex; align-items: center; color: #999; font-size: 18px; font-weight: 500; gap: 4px; margin-bottom: 30px;}
section.sc3 .sc-con .con-quizBox .question { font-size: 22px; font-weight: 600; line-height: 1.3; text-align: center; word-break: keep-all; margin-bottom: 30px;}
section.sc3 .sc-con .con-quizBox .ox_choice { display: flex; align-items: center; justify-content: center; gap: 20px; }
section.sc3 .sc-con .con-quizBox .ox_choice button { width: 160px; padding: 40px 20px; border-radius: 20px; background-color: #f9f9f9; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;}
section.sc3 .sc-con .con-quizBox .ox_choice button img{ width: 30px; aspect-ratio: 1/1;}
section.sc3 .sc-con .con-quizBox .ox_choice button p { font-size: 18px; font-weight: 600;}
section.sc3 .sc-con .con-quizBox .ox_choice button.ox_choice-o p { color: #003cdc;}
section.sc3 .sc-con .con-quizBox .ox_choice button.ox_choice-x p,
section.sc3 .sc-con .con-quizBox .question .wong { color: #ff0000;}
section.sc3 .sc-con .con-quizBox .hint_box { margin-top: 20px; display: flex; align-items: center; gap: 8px;}
section.sc3 .sc-con .con-quizBox .hint_box span { background-color: var(--main-color); color: #fff; padding: 6px; border-radius: 5px; font-size: 14px;}
section.sc3 .sc-con .con-quizBox .hint_box p { font-size: 18px; font-weight: 500; color: #666;}
section.sc3 .sc-con .quiz_result { background-color: #f9f9f9; display: flex; flex-direction: column; padding: 20px 40px; border-radius: 20px;}
section.sc3 .sc-con .quiz_result .result_item { padding: 20px 10px; border-bottom: 1px solid #ddd;}
section.sc3 .sc-con .quiz_result .result_item:first-child { padding-bottom: 20px; }
section.sc3 .sc-con .quiz_result .result_item:last-child { padding-top: 20px; border-bottom: none;}
section.sc3 .sc-con .quiz_result .result_item .text_box { display: flex; align-items: center; gap: 4px; margin-bottom: 8px;}
section.sc3 .sc-con .quiz_result .result_item .text_box i { width: 30px; }
section.sc3 .sc-con .quiz_result .result_item .text_box h5 { font-size: 18px;}
section.sc3 .sc-con .quiz_result .result_item p { font-size: 18px; color: #666; line-height: 1.4;}


/* form-area */
.form-area { min-height: 100vh; position: relative; background-color: #fff; overflow: visible;}
.form-area .form_container { height: calc(100dvh - 90px); position: sticky; top: 90px; left: 0; padding: 40px 0; box-sizing: border-box;}
.form-area form { display: flex; flex-direction: column; height: 100%;}
.form-area .title_box { flex-shrink: 0;}
.form-area .title_box h2 { font-size: 30px; font-weight: 700; line-height: 1.3;}
.form-area .title_box p { font-size: 20px; color: #999; margin-top: 16px;}
.form-area .form_list { margin-top: 30px; display: flex; flex-direction: column; gap: 30px; flex: 1; min-height: 0; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none;}
.form-area .form_list:-webkit-scrollbar { display: none;}
.form-area .form_item { display: flex; flex-direction: column; gap: 8px;}
.form-area .form_item .form_title { font-size: 20px; color: #666;}
.form-area .form_item input,
.form-area .form_item .sex_cover label {width: 100%; border: 1px solid #ccc; font-size: 18px; padding: 0 20px; height: 65px; box-sizing: border-box; display: block; outline: none; display: flex; align-items: center; justify-content: center;}
.form-area .form_item .sex_cover { display: flex; align-items: center; justify-content: space-between; gap: 10px;}
.form-area .form_item .sex_cover input { display: none;}
.form-area .form_item .sex_cover label { text-align: center; cursor:pointer; color: #666;}
.form-area .form_item .sex_cover input:checked + label { color: var(--main-color); border: 1px solid var(--main-color);}
.form-area .confirm_wrap { margin-top: 40px; display: flex; align-items: center; gap: 10px;}
.form-area .confirm_wrap button { flex: 1; min-width: 0; font-size: 24px; font-weight: 500; text-align: center; display: flex; align-items: center; justify-content: center; height: 65px;}
.form-area .confirm_wrap button.btn_submit { color: #fff; background-color: var(--main-color);}



#bohum_send_price { background: #4881ff;}


/* 공통 모달 디자인 */
  .modal_wrap { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); z-index: 99; display: none; }
  .modal_inner { position: fixed; left: 50%; top: calc(50% + 45px); transform: translate(-50%, -50%); width: 560px; max-width: 100%; height: 560px; background: #fff; overflow-x: hidden; padding: 30px 20px; box-sizing: border-box; display: flex; flex-direction: column; }
  .modal_inner .modal_header { display: flex; align-items: center; justify-content: space-between; padding: 0 0 20px; flex-shrink: 0; }
  .modal_inner .modal_header img { width: 60px; }
  .modal_inner .modal_header h3 { font-size: 24px; font-weight: 700; letter-spacing: -2px; }
  .modal_txt { flex: 1; min-height: 0; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; padding-bottom: 40px;}
  .modal_txt::-webkit-scrollbar { display: none; }
  .modal_inner .close_wrap { padding-top: 20px; flex-shrink: 0; position: relative; }
  .modal_inner .close_wrap::before { content: ""; position: absolute; bottom: 100%; left: 0; width: 100%; height: 60px; background: linear-gradient(to bottom, transparent, #fff); pointer-events: none; }
  .modal_close { width: 100%; background: var(--main-color); text-align: center; color: #fff; padding: 15px 0; font-size: 18px; border-radius: 10px; border: none; cursor: pointer; }