@charset "utf-8"; /* ******************* *
* 회사소개
* ******************* */
#company { } 
#company .sec { width: 100%; height: 100vh; color: #fff } 
#company .sec .cinner { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 30px; height: 100% } 
#company .sec h2 { font-family: var(--font-SebangGothic); font-size: 2.5em; font-weight: bold; } 
#company .sec p { text-align: center; font-size: 1em; font-weight: 300; line-height: 1.7; } 
#company .sec p span { } 
#company .sec01 { background: url(../img/sub/company_sec01bg.png) no-repeat center center /cover } 
#company .sec02 { background: url(../img/sub/company_sec02bg.png) no-repeat center center /cover } 
#company .sec03 { background: url(../img/sub/company_sec03bg.png) no-repeat center center /cover } 
#company .sec04 { color: #000; height: auto; padding: 100px 0 } 
#company .sec04 ul { display: flex; gap: 40px; justify-content: flex-start } 
#company .sec04 ul li { width: calc(25% - 30px) } 
#company .sec04 ul li img { width: 100% } 
#company .sec04 ul li p { font-weight:500; margin-top:10px; } 

@media(max-width:1024px){
 #company .sec04 ul { gap: 20px } 
 #company .sec04 ul li { width: calc(25% - 10px) } 
 }

@media(max-width:768px){
 #company .sec h2 { text-align: center; } 
 #company .sec04 ul { gap: 20px; flex-wrap: wrap } 
 #company .sec04 ul li { width: calc(50% - 10px) } 
 }

@media(max-width:640px) { } 

/* ******************* *
* 추가서비스 - 대리구매
* ******************* */

.service { padding-top: 60px } 
.service .sec01 { padding: 60px 0 } 
.service .sec01 .title_wrap { } 
.service .sec01 .title_wrap .bg_box { background: var(--color-main); padding: 50px 0 150px; display: flex; align-items: center; justify-content: center; } 
.service .sec01 .title_wrap .bg_box h2 { color: #fff; font-family: var(--font-SebangGothic); display: flex; align-items: center; font-size: 2.5em; gap: 20px; } 
.service .sec01 .title_wrap .bg_box h2 img { } 
.service .sec01 .title_wrap .sub_tit { background: #fff; border-radius: 20px; text-align: center; padding: 65px; margin: 0 50px; margin-top: -100px; line-height: 1.5; } 
#purchase .sec01 .content_wrap { } 
#purchase .sec01 .content_wrap ul { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 100px; } 
#purchase .sec01 .content_wrap ul li { width: calc(33.33% - 70px); } 
#purchase .sec01 .content_wrap ul li a { } 
#purchase .sec01 .content_wrap ul li a .img_wrap { } 
#purchase .sec01 .content_wrap ul li a .img_wrap img { width: 100% } 
#purchase .sec01 .content_wrap ul li a p { font-family: 'SebangGothic'; font-size: 1.5em; font-weight: bold; text-align: center; margin-top: 10px; } 
@media(max-width:1199px){
 #purchase .sec01 .content_wrap ul { gap: 60px; } 
 #purchase .sec01 .content_wrap ul li { width: calc(33.33% - 40px); } 
 }

@media(max-width:1024px){
 #purchase .sec01 .content_wrap ul { gap: 40px; } 
 #purchase .sec01 .content_wrap ul li { width: calc(33.33% - 30px); } 
 }

@media(max-width:768px){
 .service { padding-top: 60px } 
 .service .sec01 { padding: 60px 0; } 
 .service .sec01 .title_wrap .bg_box h2 { font-size: 2em; } 
 .service .sec01 .title_wrap .bg_box h2 img { width: 20%; } 
 .service .sec01 .title_wrap .sub_tit { margin: 0 20px; margin-top: -120px; padding: 50px 20px; } 
 #purchase .sec01 .content_wrap ul li { width: calc(50% - 20px); } 
 }

@media(max-width:640px){
 .service .sec01 .title_wrap .sub_tit p span { display: inline } 
 .service .sec01 .title_wrap .bg_box h2 { font-size: 1.5em; justify-content: center; } 
 }


/* ******************* *
* 추가서비스 - 환전서비스
* ******************* */
#exchange { padding-top:0; padding-bottom:100px } 
#exchange .content_wrap { } 
#exchange .content_wrap .content_tit { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 10px; margin-bottom: 25px; } 
#exchange .content_wrap .content_tit h2 { font-family: 'SebangGothic'; font-weight: 400; font-size: 2.5em; display: flex; align-items: center; gap: 10px; } 
#exchange .content_wrap .content_tit h2 span { font-weight: 600; color: var(--color-main); font-size: 1.1em; } 
#exchange .content_wrap .content_tit p { font-size: 1.2em; } 
#exchange .content_wrap .table_wrap { display: flex; justify-content: space-between; margin: 0 100px; } 
#exchange .content_wrap .table_wrap table { width: calc(50% - 50px); border-radius: 20px 20px 0 0; overflow: hidden; } 
#exchange .content_wrap .table_wrap table thead { text-align: center; width: 100%; background: var(--color-main); color: #fff; } 
#exchange .content_wrap .table_wrap table thead th { text-align: center; width: 100%; padding: 20px; display: flex; align-items: center; justify-content: center; font-size: 1.2em; font-weight: 500; } 
#exchange .content_wrap .table_wrap table tbody { } 
#exchange .content_wrap .table_wrap table tbody tr { display: flex; align-items: center; border-bottom: 1px solid #d9d9d9; } 
#exchange .content_wrap .table_wrap table tbody tr td { width: 50%; display: flex; align-items: center; justify-content: center; padding: 10px 0; gap: 10px; } 
#exchange .content_wrap .table_wrap table tbody tr td img { } 
#exchange .content_wrap .table_wrap table tbody tr td p { font-weight: 500; } 
#exchange .content_wrap .table_wrap table tbody tr td p span { font-size: .8em; color: var(--color-main); margin-left: 5px; } 
#exchange .content_wrap .table_wrap table tbody tr td:last-child p span { color: #000; margin-left: 0 } 
#exchange .content_wrap .table_wrap table tbody tr td:last-child { border-left: 1px solid #d9d9d9 } 


@media(max-width:1399px) { } 

@media(max-width:1199px){
 #exchange .content_wrap .table_wrap { margin: 0 } 
 #exchange .content_wrap .table_wrap table { width: calc(50% - 20px) } 
 }

@media(max-width:1024px) { } 

@media(max-width:768px){
 #exchange .content_wrap .table_wrap { display: flex; flex-direction: column; gap: 50px } 
 #exchange .content_wrap .table_wrap table { width: 100% } 
 #exchange .content_wrap .content_tit { gap: 0; } 
 #exchange .content_wrap .content_tit h2 { font-size: 1.8em } 
 #exchange .content_wrap .content_tit p { font-size: 1em; } 
 }

@media(max-width:640px) { } 

/* ******************* *
* 마이페이지 
* ******************* */
#smb_my { padding-top: 60px; } 
.mypage { padding-top: 60px } 
.mypage .sec01 { padding: 60px 0; } 
.mypage-resv { margin-top: 40px; } 
.mypage-resv .tbl_wrap { width: 100%; overflow-x: auto; } 
.ws_table { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; font-size: .8em; color: #333 } 
.ws_table thead th { padding: 20px 10px; border-top: 1px solid var(--color-main); border-bottom: 1px solid #e5e5e5; font-weight: 600; text-align: center; color: #000 } 
.ws_table tbody td { padding: 20px 10px; border-bottom: 1px solid #e5e5e5; text-align: center; vertical-align: middle; line-height: 1.4; } 
.ws_table .date-range { display: flex; flex-direction: column; gap: 5px } 
.ws_table .actions a { color: var(--color-main); padding: 0 10px; font-weight: 500; position: relative; padding-bottom: 5px } 
.ws_table .actions a:hover:before { position: absolute; content: ''; left: 50%; transform: translateX(-50%); bottom: 0; width: 50%; height: 2px; background: var(--color-main); } 
.tbl_resv th:nth-child(1),
.tbl_resv td:nth-child(1) { width: 10%; } 
.tbl_resv th:nth-child(2),
.tbl_resv td:nth-child(2) { width: 15%; } 
.tbl_resv th:nth-child(3),
.tbl_resv td:nth-child(3) { width: 32%; } 
.tbl_resv th:nth-child(4),
.tbl_resv td:nth-child(4) { width: 10%; } 
.tbl_resv th:nth-child(5),
.tbl_resv td:nth-child(5) { width: 13%; } 
.tbl_resv th:nth-child(6),
.tbl_resv td:nth-child(6) { width: 10%; } 
.tbl_resv th:nth-child(7),
.tbl_resv td:nth-child(7) { width: 10%; } 
.tablebox_in_table { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; font-size: .8em; color: #333 } 
.tablebox_in_table thead { background: #f6f6f6; border-top: 1px solid #e5e5e5 } 
.tablebox_in_table thead th { padding: 15px 10px; border-bottom: 1px solid #e5e5e5; font-weight: 600; text-align: center; color: #000; border-right: 1px solid #e5e5e5; font-size: 16px; line-height: 1; } 
.tablebox_in_table tbody td { padding: 15px 10px; border-bottom: 1px solid #e5e5e5; text-align: center; vertical-align: middle; line-height: 1.4; border-right: 1px solid #e5e5e5; font-size: 16px; font-weight: 500; line-height: 1 } 
.tablebox_in_table thead th:last-child,
.tablebox_in_table tbody td:last-child { border-right: 0 } 

.tablebox_in_table th:nth-child(1),
.tablebox_in_table td:nth-child(1) { width: 25%; } 

.tablebox_in_table th:nth-child(2),
.tablebox_in_table td:nth-child(2) { width: 25%; } 

.tablebox_in_table th:nth-child(3),
.tablebox_in_table td:nth-child(3) { width: 25%; } 

.tablebox_in_table th:nth-child(4),
.tablebox_in_table td:nth-child(4) { width: 25%; } 

/* 가로형 테이블 공용 */
.table__box { display: flex; flex-direction: column; } 

.table__box>.tit { font-size: 1.25em; font-weight: 500; margin-bottom: 10px; } 

.table__box .table { display: flex; flex-direction: column; border-top: 1px solid var(--color-main); } 

.table__box .table .row { border-bottom: 1px solid #e5e5e5; display: flex; align-items: center; } 

.table__box .table .row .tit { font-size: 16px; padding: 25px 30px; min-width: 200px; margin-bottom: 0 } 

.table__box .table .row .val { padding: 20px; font-size: 16px; border-left: 1px solid #e5e5e5; } 


.opts { display: flex; justify-content: center; gap: 22px; flex-wrap: wrap; } 

.opt { display: inline-flex; align-items: center; gap: 10px; font-size: 16px; color: #333; cursor: pointer; user-select: none; } 

.opt input { appearance: none; width: 25px; height: 25px; border: 1px solid #d6d6d6; border-radius: 50%; position: relative; } 

.opt input:checked { border-color: var(--color-main); } 

.opt input:checked::after { content: ""; position: absolute; left: 50%; top: 50%; width: 13px; height: 13px; transform: translate(-50%, -50%); background: var(--color-main); border-radius: 50%; } 

.act { display: flex; justify-content: center; margin-top: 50px } 

.act .btn { min-width: 200px; height: 54px; border: 0; background: var(--color-main); color: #fff; font-size: .8em; font-weight: 700; border-radius: 2px; cursor: pointer; } 

.act .btn:hover { filter: brightness(0.96); } 

@media (max-width:768px){
 .opts { gap: 14px; } 

 .btn { width: 100%; min-width: 0; } 
 }


.rev_info_box { background: #fbfbfb; border: 1px solid #f2f2f2; margin-top: 30px; display: flex; flex-direction: column; align-items: center; padding: 40px 0; gap: 20px; } 

.rev_info_box .info_tit { font-size: .9em; font-weight: 500; } 

.rev_info_box .red_box { font-size: .9em; font-weight: 500; color: #fff; background: #ef4444; padding: 10px 60px; border-radius: 10px; } 

.rev_info_box p { text-align: center; font-size: .8em; line-height: 1.7; } 

.tit { font-weight: 700; font-size: 14px; margin-bottom: 12px; } 

#reservation .ws_table { width: 100%; overflow-x: auto; border-top: 1px solid #e9e9e9; } 

#reservation .ws_table table { width: 100%; min-width: 980px; border-collapse: collapse; table-layout: fixed; font-size: 12px; } 

#reservation .ws_table th,
#reservation .ws_table td { border-bottom: 1px solid #eee; padding: 20px 10px; text-align: center; vertical-align: middle; white-space: nowrap; border-right: 1px solid #eee; } 

#reservation .ws_table thead th { background: #fafafa; font-weight: 600; border-bottom: 1px solid #e5e5e5; } 

#reservation .ws_table tbody tr td:first-child { background: #fafafa; font-weight: 600 } 

#reservation .ws_table tbody tr td:last-child,
#reservation .ws_table thead th:last-child { border-right: 0 } 

#reservation .ws_table .color_txt { color: var(--color-main); font-weight: 500 } 

#reservation .ws_table tr.sum td { background: #fafafa; border-top: 1px solid #e5e5e5; } 

.reservation_table_wrap h2 { font-size: 1.25em; font-weight: 500; margin-bottom: 10px } 

#reservation .content_wrap { display: flex; flex-direction: column; gap: 100px; margin-top: 100px; } 

/* 상단 긴 표: 스크롤 래퍼 */
#reservation .ws_table_scroll { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; border-top: 1px solid #e9e9e9; background: #fff; } 

#reservation .ws_table_scroll .ws_table { width: 100%; min-width: 980px; /* 기본(데스크탑) 최소폭 */
 border-collapse: collapse; table-layout: fixed; font-size: 12px; color: #333; } 

@media (max-width:768px){
 .sub-page h2.tit { font-size: 2em } 

 .mypage { padding-top: 80px } 

 .mypage .sec01 { padding: 60px 0 } 

 #reservation .content_wrap { gap: 60px; margin-top: 60px; } 

 .table__box .table .row { flex-direction: column; } 

 .table__box .table .row .tit { width: 100%; background: #fafafa; padding: 15px; font-size: 14px; } 

 .table__box .table .row .val { width: 100%; border-left: 0; } 
 }

@media (max-width:500px) { } 


@media (max-width:768px){
 #confitmation .sec01 { padding: 50px 0; } 

 #confitmation .ws_table thead { display: none; } 

 #confitmation .ws_table,
 #confitmation .ws_table tbody,
 #confitmation .ws_table tr,
 #confitmation .ws_table td { display: block; width: 100%; } 

 #confitmation .ws_table { min-width: 0; border-top: 1px solid var(--color-main); } 

 #confitmation .ws_table tbody tr { border-bottom: 1px solid #e5e5e5; padding: 16px 0; } 

 #confitmation .ws_table tbody td { border: 0; padding: 5px 14px; text-align: left; white-space: normal; } 

 #confitmation .ws_table tbody td::before { content: attr(data-label); display: block; color: #111; margin-bottom: 6px; } 

 #confitmation .ws_table .date-range { flex-direction: row; gap: 10px; flex-wrap: wrap; } 

 #confitmation .actions { display: flex; gap: 10px; padding-top: 6px; } 

 #confitmation .actions a { padding: 10px 14px; border: 1px solid #e5e5e5; border-radius: 8px; line-height: 1; } 

 #confitmation .actions a:hover:before { display: none; } 
 }

@media (max-width:500px){
 #confitmation .ws_table tbody td { padding: 9px 12px; } 

 #confitmation .actions { flex-direction: column; } 

 #confitmation .actions a { width: 100%; text-align: center; } 
 }


/* ******************* *
* 예약 및 결제 
* ******************* */
.payment { padding-top: 100px } 

.payment .sec01 { padding: 100px 0; } 

.payment .payment_title { display: flex; flex-direction: column; align-items: center; gap: 60px; } 

.payment .payment_title h2 { font-family: 'SebangGothic'; font-size: 3em; } 

.payment .payment_title ul { display: flex; align-items: center; position: relative; width: 100%; justify-content: space-between; } 

.payment .payment_title ul:before { position: absolute; content: ''; width: 100%; height: 5px; background: var(--color-main); top: 25%; transform: translateY(-50%); } 

.payment .payment_title ul li { display: flex; flex-direction: column; align-items: center; gap: 20px; background: #fff; z-index: 2; width: 60px; } 

.payment .payment_title ul li span:nth-child(1) { color: var(--color-main); border: 5px solid #f4e9e1; border-radius: 50%; width: 50px; aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; font-size: .8em; font-weight: 600; } 

.payment .payment_title ul li span:nth-child(1) i { width: 40px; display: flex; align-items: center; justify-content: center; font-style: normal; aspect-ratio: 1 / 1; border: 2px solid var(--color-main); border-radius: 50%; } 

.payment .payment_title ul li span:nth-child(2) { } 

.payment .content_wrap { display: flex; flex-direction: column; gap: 100px; padding: 100px 0; } 

.resv_con_wrap { display: flex; align-items: center; gap: 50px; justify-content: flex-end; } 

#payment01 .box_wrap { } 

#payment01 .box_wrap .tit { font-size: 1.25em; font-weight: 400; } 

#payment01 .box_wrap .content_box_wrap { display: flex; align-items: center; justify-content: center; width: 100%; height: 400px; background: #fbfbfb; border: 1px solid #f0f0f0; border-radius: 10px; overflow-y: scroll; max-height: 250px; color: #bdbdbd; font-weight: 600; margin-bottom: 10px; } 


/* 인풋/셀렉트 공통 */
.table input[type="text"],
.table select { height: 36px; border: 1px solid #e5e5e5; border-radius: 2px; padding: 0 12px; font-size: 14px; outline: none; background: #fff; width: 100%; box-sizing: border-box; } 

.table input[type="text"]:focus,
.table select:focus { border-color: #cfcfcf; } 

.table .grid { width: 100%; display: grid; gap: 10px; align-items: center; } 

.table .grid.phone { grid-template-columns: 140px 1fr 1fr; } 

.table .grid.email { grid-template-columns: 1fr auto 1fr 160px; } 

.table .grid.email .at { color: #666; font-size: 14px; padding: 0 4px; line-height: 36px; } 


@media (max-width: 1399px) { } 

@media (max-width: 1199px) { } 

@media (max-width: 1024px) { } 

@media (max-width: 768px){
 .act .btn { font-size: 16px } 

 .payment .content_wrap { gap: 60px; padding: 60px 0; } 

 .table .row { flex-direction: column; } 

 .table .tit { width: 100%; border-right: 0; border-bottom: 1px solid #efefef; } 

 .table .grid.phone { grid-template-columns: 1fr 1fr 1fr; } 

 .table .grid.email { grid-template-columns: 1fr auto 1fr; } 

 .table .grid.email select { grid-column: 1 / -1; } 

 .payment .sec01 { padding: 60px 0 } 

 .payment .payment_title h2 { font-size: 2em; } 

 .payment .payment_title ul li { width: 30px; } 

 .payment .payment_title ul li span:nth-child(1) i { width: 30px; } 

 .payment .payment_title ul li span:nth-child(1) { width: 40px; } 
 }

/* ******************* *
* 쇼핑몰리스트 페이지 
* ******************* */

#sct.shop_inner { width: 92%; max-width: 1400px; margin: 0 auto; padding-top:60px; } 


/* ******************* *
* 상품 상세보기
* ******************* */
#itemView { padding: 70px 0 150px; position: relative; } 

#itemView .sit_admin { display: flex; justify-content: flex-end; gap: 10px; } 

#itemView .sit_admin a { display: block; min-width: 90px; height: auto; padding: 8px; background: #E04545; color: #fff; font-size: 14px; text-align: center; line-height: 1.0; } 

#itemView .sit_admin a:hover { color: #fff; background: #a32424; } 



/* ******************* *
* 여행 컨설팅 페이지
* ******************* */
.consulting { padding: 80px 0 120px; position:relative } 
.consulting .flex-box { display: flex!important; } 
.consulting .flex-box.column { flex-direction: column !important; } 
.consulting .color_txt { color: var(--color-main) } 
.consulting .sec01 { padding-top: 20px; } 
.consulting .step_tab { align-items: center; justify-content: center; gap: 50px; width: 92%; max-width: 1400px; margin: 0 auto; padding-bottom: 15px; } 
.consulting .step_tab li { padding: 5px 5px 5px 30px; width: 25%; color: #000; background: #fff; border: 1px solid var(--color-main); border-radius: 15px; position :relative; min-height:60px; display: flex; align-items: center; justify-content: flex-start;cursor: pointer; } 
.consulting .step_tab li:before { content: ''; position: absolute; right: -27px; top: 50%; width: 10px; height: 10px; border-top: 2px solid var(--color-main); border-right: 2px solid var(--color-main); transform: translateY(-50%) rotate(45deg);; } 
.consulting .step_tab li:last-child:before { display:none; } 
.consulting .step_tab li > .flex-box { gap:20px; align-items: center; } 
.consulting .step_tab li img { height:25px } 
.consulting .step_tab li span { color:var(--color-main); font-size: 16px; font-weight: 600; } 
.consulting .step_tab li h2 { font-weight: 500; font-size: 16px; } 
.consulting .step_tab li.active { color:#fff; background: var(--color-main) } 
.consulting .step_tab li.active img { filter: brightness(0) invert(1); } 
.consulting .step_tab li.active span { color:#fff } 
.consulting .step_tab li.active h2 { } 
#consulting01 .content_tit img { width:100px; } 
.consulting .content_tit h2 { font-family: 'SebangGothic'; font-size: 1.8em; font-weight: 300; text-align: center; } 
.consulting .content_tit h2 span { font-weight: 600; } 
#consulting01 .content_tit p { font-size:.8em } 
#consulting01 .content_tit p .line-br { display:inline } 
.consulting .submit_wrap { display: flex; justify-content: center; margin-top: 100px } 
.consulting .btn_submit { border: 1px solid var(--color-main); background: var(--color-main); color: #fff; cursor: pointer; border-radius: 3px; width: 200px; height: 55px; font-size: 1em; } 
#consulting01 .cont_top_wrap { } 
#consulting01 .content_tit { justify-content: center; text-align: center; gap:0 30px; margin-bottom:20px; align-items: center; } 
#consulting01 .content_tit h2 { margin-bottom:5px; } 
#consulting01 .cont_top_wrap .tit_list_wrap { } 
#consulting01 .cont_top_wrap .tit_list_wrap ul { gap: 20px; } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li { width: calc(25% - 10px); display: flex; flex-direction: row; gap: 20px; border: 1px solid #ededed; border-radius: 10px; text-align: center; box-shadow: 1px 1px 10px 2px #e7e7e7; padding: 20px 20px;    align-items: center; } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .img_wrap { width:50px } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt { text-align: left; } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt h3 { font-size: 18px; margin-bottom: 5px; font-weight: 600; } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt p { font-size: 14px; } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt p .line-br { display:inline } 
#consulting01 .cont_top_wrap .midle_txt { display: flex; align-items: center; padding: 15px 0; margin: 15px 0; gap: 20px; box-shadow: 1px 1px 10px 2px #e7e7e7; border-radius: 10px; font-size: .8em; justify-content: center; } 
 #consulting01 .cont_top_wrap .midle_txt img { width:20px } 
#consulting01 .cont_top_wrap .midle_txt .color_txt { font-weight: 700; } 
#consulting01 .cont_top_wrap .info_wrap { gap: 20px; } 

#consulting01 .cont_top_wrap .info_wrap > div { padding: 20px; border-radius: 10px; width:calc(50% - 10px); box-shadow: 1px 1px 10px 2px #e7e7e7; } 
#consulting01 .cont_top_wrap .info_wrap > div .title_wrap { align-items: center; gap: 20px; margin-bottom: 20px; } 
#consulting01 .cont_top_wrap .info_wrap > div .title_wrap h3 { font-size: 1em } 
#consulting01 .cont_top_wrap .info_wrap > div .title_wrap .img_wrap { width:50px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap > p { margin-top: 20px; font-size: 14px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .title_wrap p { font-size: 16px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list { gap: 20px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li { align-items: center; text-align: center; border: 1px solid #ededed; width: calc(25% - 10px); border-radius: 10px; font-size: 16px; padding: 10px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li .img_wrap { width: 50%; aspect-ratio: 1 / 1; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li .img_wrap img { width:100% } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li > span { display: block; width: 100%; background: #c86e20; color: #fff; border-radius: 30px; padding: 3px 0; margin-bottom: 10px; } 
#consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li p { font-size: 14px; } 

#consulting01 .cont_top_wrap .info_wrap .info_right_wrap { width:calc(50% - 10px) } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .title_wrap { gap:0; margin-bottom:10px } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list { gap: 20px; } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li { display: flex; align-items: center; gap: 20px; border-bottom: 1px solid #ddd; padding-bottom: 20px; } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li:last-child { border-bottom:0; padding-bottom:0 } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li > div:last-child { width:calc(100% - 50px) } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li h3 { font-size: 18px;; } 
#consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li p { font-size: 14px; margin-top: 5px; } 

#consulting02 .bg_box img { width:100% } 
#consulting02 .content_tit { justify-content: center; text-align: center; gap:0 30px; } 
#consulting02 .content_tit h2 { margin-bottom:5px; } 
#consulting02 .content_tit > img { width:100px } 
#consulting02 .content_tit p { line-height: 1.7; font-size: .8em; } 
#consulting02 .content_tit p .line-br { display:inline } 
#consulting02 .form_box_wrap { margin-top: 15px; border: 1px solid #d3d3d3; border-radius: 50px; padding: 30px 100px; } 
#consulting02 .form_box_wrap .row_box { border-bottom: 1px solid #d9d9d9; padding: 30px 0; gap:40px } 
#consulting02 .form_box_wrap .row_box:first-child { padding-top:0 } 
#consulting02 .form_box_wrap .row_box:last-child { border-bottom:0; padding-bottom:0 } 
#consulting02 .form_box_wrap .row_box .row_input_content { width:100%; padding-left:120px; position:relative } 
#consulting02 .form_box_wrap .row_box .row_title:before { position:absolute; content:''; width:80px; aspect-ratio: 1/1; background: url(../img/sub/ncons_icon01.png)no-repeat center center /cover; border-radius:50%; left:-120px; top:50%; transform: translateY(-50%); } 
#consulting02 .form_box_wrap .row_box:last-child .row_title:before { background:url(../img/sub/ncons_icon03.png); top:calc(50% + 25px) } 
#consulting02 .form_box_wrap .row_box .row_title { display: flex; flex-direction: column; gap: 5px; margin-bottom: 20px; position:relative } 
#consulting02 .form_box_wrap .row_box .row_title h3 { font-size: 18px; font-weight: 600; } 
#consulting02 .form_box_wrap .row_box .row_title h3 .required { background-image: none !important; color: #E64848; } 
#consulting02 .form_box_wrap .row_box .row_title p { color: #333; font-size: 16px;; } 
#consulting02 .form_box_wrap .row_box input::placeholder { color: #A6A6A6; font-size: 16px; } 
#consulting02 .form_box_wrap .row_box textarea { width: 100%; min-height: 120px; padding: 20px; border: 1px solid #dedede; font-size: .9em; font-family: 'Pretendard'; } 
#consulting02 .form_box_wrap .row_box textarea::placeholder { color: #B8B8B8; } 
#consulting02 .form_box_wrap .row_box .flex-box.column { gap: 10px; } 
#consulting02 .form_box_wrap .row_box .person-count-wrap { gap: 50px; } 
#consulting02 .form_box_wrap .row_box .person-count-box { display: flex; align-items: center; gap: 20px; } 
#consulting02 .form_box_wrap .row_box .person-count-box:first-child { border-right:1px solid #dedede; padding-right:50px } 
#consulting02 .form_box_wrap .row_box .person-count-box .count-btn { width: 30px; height: auto; aspect-ratio: 1 / 1; border: 1px solid #E9E9E9; border-radius: 50%; background: #fff; } 
#consulting02 .form_box_wrap .row_box .person-count-box .count-num { font-size: 1.1em; font-weight: bold; width: 80px; display: inline-block; text-align: center; } 
#consulting02 .form_box_wrap .row_box .file-upload-box { display: flex; align-items: stretch; gap: 10px; } 
#consulting02 .form_box_wrap .row_box .file-btn { width: 100px; border: none; background: #6E6E6E; color: #fff; font-size: .9em; } 
#consulting02 .form_box_wrap .row_box .file-list { margin-top: 10px; padding: 0; list-style: none; } 
#consulting02 .form_box_wrap .row_box .file-list li { display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 500px; margin-bottom: 5px; padding: 6px 10px; border: 1px solid #e5e5e5; background: #fafafa; font-size: .8em; } 
#consulting02 .form_box_wrap .row_box .file-list .file-remove { border: 0; background: #ff4d4f; color: #fff; font-size: .8em; padding: 3px 8px; cursor: pointer; } 
#consulting02 .form_box_wrap .row_box .file-list .not-image { margin-left: 6px; color: #ff4d4f; font-size: .8em; } 
#consulting02 .date-time-wrap { display: flex; gap: 20px; width: 100%; } 
#consulting02 .date-input-wrap { width:calc(50% - 10px); height:50px; position:relative; max-width:400px } 
#consulting02 .date-input-wrap::before { content: "calendar_month"; position:absolute; left:10px; top:50%; transform:translateY(-50%); width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--color-main); font-size:1em; z-index:2; font-family: 'Material Symbols Outlined'; font-weight: normal; font-style: normal; line-height: 1; font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; } 
#consulting02 .date-input-wrap::after { content: ""; position: absolute; right: 20px; top: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-60%) rotate(45deg); pointer-events: none; } 
#consulting02 .date-input { width:100%; height:100%; padding: 0 20px 0 50px; border: 1px solid #dcdcdc; border-radius: 10px; background: #fff; font-size: 16px; color: #222; outline: none; cursor: pointer; box-sizing: border-box; position:relative } 
#consulting02 .date-input::placeholder { color: #999; } 

#consulting02 .time-select-wrap { position: relative; width: calc(50% - 10px); max-width:400px } 
#consulting02 .time-select-wrap::before { content: "schedule"; position:absolute; left:10px; top:50%; transform:translateY(-50%); width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--color-main); font-size:1em; z-index:2; font-family:'Material Symbols Outlined'; font-weight:normal; font-style:normal; line-height:1; font-variation-settings:
 'FILL' 1,
 'wght' 400,
 'GRAD' 0,
 'opsz' 24; } 
#consulting02 .time-select-wrap::after { content: ""; position: absolute; right: 20px; top: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-60%) rotate(45deg); pointer-events: none; } 
#consulting02 .time-select { display: block; width: 100%; height: 50px; padding: 0 50px; border: 1px solid #dcdcdc; border-radius: 10px; background-color: #fff; font-size:16px; font-family: inherit; font-weight: 400; line-height: normal; color: #999; box-sizing: border-box; vertical-align: middle; outline: none; cursor: pointer; appearance: none; -webkit-appearance: none; -moz-appearance: none; } 
#consulting02 .time-select.selected { color: #000; } 
#consulting02 .time-select option { color: #000; } 
#consulting02 .time-select option[value=""] { color: #999; } 
#consulting02 .time-select::-ms-expand { display: none; } 
#consulting02 .flatpickr-calendar { font-family: inherit; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); border-radius: 12px; } 
.flatpickr-day.selected { background: var(--color-main) !important; background-color: var(--color-main) !important; border: 1px solid var(--color-main) !important; } 
.time-select-wrap::after { content: ""; position: absolute; right: 20px; top: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-60%) rotate(45deg); pointer-events: none; } 
.time-select-wrap::after { content: ""; position: absolute; right: 20px; top: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-60%) rotate(45deg); pointer-events: none; } 
.schedule-control { margin-bottom: 20px; display: flex; justify-content: flex-start; gap:10px; margin-top:20px; } 
.schedule-day-add-btn, .date_count_num { display: inline-flex; align-items: center; justify-content: center; min-width: 160px; height: 40px; border: 0; border-radius: 5px; background: #4d4d4d; color: #fff; font-size: 17px; font-weight: 500; cursor: pointer; } 
.schedule-add-btn { display: inline-flex; align-items: center; justify-content: center; width:150px; height: 40px; border: 0; border-radius: 5px; background: #4d4d4d; color: #fff; font-size: 17px; font-weight: 500; cursor: pointer; } 
.date_count_num { display:flex; gap:3px } 

.schedule-wrap { display: flex; flex-direction: column; gap: 24px; } 
.schedule-row { position: relative; padding-top: 100px; } 
.schedule-remove-btn { position: relative; width: 30px; aspect-ratio: 1/1; border: 0; border-radius: 5PX; background: #4D4D4D; color: #fff; cursor: pointer; margin-left: 20px } 
.schedule-row>.flex-box:first-of-type { display: flex; align-items: center; } 
.day-label { border-radius: 50px; background: #a8744f; color: #fff; font-weight: 600; font-size: 1.25em; font-family: 'SebangGothic'; width: 150px; height: 45px; display: flex; align-items: center; justify-content: center; } 
.timeline-area { position: relative; width: 100% } 
.timeline-header { position: absolute; bottom: 30px; } 
.timeline-track-wrap { height: 120px; width: 100% } 
.timeline-track { position: absolute; left: 0; bottom: 50%; height: 2px; background: #dcdcdc; } 
.time-label { position: absolute; top: 0; transform: translateX(-50%); color: #333; white-space: nowrap; } 
.tick { position: absolute; bottom: calc(50% - 13px); width: 2px; height: 25px; background: #cfcfcf; } 
.tick.half { bottom: calc(50% - 6px); height: 13px; background: #e5e5e5; } 
.event-marker { position: absolute; top: 0; width: 160px; transform: translateX(-50%); cursor: grab; user-select: none; } 
.event-marker:active { cursor: grabbing; } 
.event-label-box { position: absolute; left: 50%; bottom: -15px; transform: translateX(-50%); min-width: 120px; padding: 7px 10px; border: 1px solid #ddd; border-radius: 8px; background: #fff; text-align: center; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08); } 
.event-title { display: block; font-size: 15px; font-weight: 600; color: #222; line-height: 1.3; } 
.event-time { display: block; margin-top: 2px; font-size: 14px; color: #888; } 
.event-dot { position: absolute; left: 50%; width: 17px; bottom: -60px; transform: translate(-50%, -50%); } 
.option-box { display: flex; flex-wrap: wrap; gap: 20px; padding-left: 20px; } 
.check_box input[type="checkbox"] { appearance: none; -webkit-appearance: none; width: 16px; aspect-ratio: 1/1; border: 1px solid #ccc; border-radius: 4px; background: #fff; cursor: pointer; position: relative; } 
.check_box input[type="checkbox"]:checked { background: var(--color-main); border-color: var(--color-main); } 
.check_box input[type="checkbox"]:checked::after { content: ""; position: absolute; left: 5px; top: 2px; width: 5px; height: 10px; border: 2px solid #fff; border-top: 0; border-left: 0; transform: rotate(45deg); } 
.option-box .check_box { font-size: 17px; display: flex; gap: 5px; align-items: center; } 
.option-box .check_box:first-child { font-size: 20px; font-family: 'SebangGothic'; font-weight: bold; } 
.event-label-box .del { position: absolute; right: 10px; top: 10px; border: none; font-size: 12px; background: transparent; font-weight: bold; } 
.del::before,
.del::after { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 2px; background: var(--color-main); transform-origin: center; } 
.del::before { transform: translate(-50%, -50%) rotate(45deg); } 
.del::after { transform: translate(-50%, -50%) rotate(-45deg); } 
.schedule-mobile-table th:last-child,
.schedule-mobile-table td:last-child { width: 30px; min-width: 30px; text-align: center; position: relative } 
.schedule-mobile-table td:last-child .del { width: 26px; height: 26px; border: none; background: transparent; } 
.schedule-mobile-table-wrap { display: none; } 
.schedule-mobile-table { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; } 
.schedule-mobile-table thead { background: var(--color-main); } 
.schedule-mobile-table th,
.schedule-mobile-table td { border: 1px solid #ddd; padding: 8px; font-size: 13px; vertical-align: middle; text-align: center; } 
.schedule-mobile-table th { background: var(--color-main); font-weight: 600; color: #fff; } 
.schedule-mobile-table select,
.schedule-mobile-table input[type="text"] { width: 100%; height: 36px; border: 1px solid #dcdcdc; padding: 0 8px; font-size: 13px; background: #fff; } 
.time-select-wrap { display: flex; gap: 6px; } 
.time-select-wrap>div { position: relative; flex: 1 1 0; min-width: 0; } 
.time-select-wrap select { appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; } 
.time-select-wrap::-ms-expand { display: none; } 
.time-select-wrap>div::after { content: ""; position: absolute; right: 10px; top: 45%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-50%) rotate(45deg); pointer-events: none; } 






#consulting03 .content_sec02 { background: #F8F8F8; padding: 60px 70px; margin: 50px 0 80px; border-radius: 30px; } 
#consulting03 .content_sec02>.flex-box { justify-content: space-between; flex-wrap: wrap; gap: 30px 0 } 
#consulting03 .content_sec02>.flex-box>div { display: flex; align-items: center; gap: 30px; } 
#consulting03 .content_sec02>.flex-box>div h3 { font-size: 1.5em; font-family: 'SebangGothic'; } 
#consulting03 .content_sec02>.flex-box>div .check_box { margin-right: 15px; font-size: 17px; display: flex; align-items: center; gap: 5px; } 
#consulting03 .content_sec02>.flex-box>div .check_box input { width: 16px; aspect-ratio: 1 / 1; } 
#consulting03 .content_sec02>.flex-box>div .check_box label { } 
#consulting03 .content_sec02>.flex-box>div .select_box { display: flex; flex-direction: column; gap: 5px; width: 300px; max-width: 290px; margin-right: 20px; position: relative } 
#consulting03 .content_sec02>.flex-box>div .select_box label { font-size: 17px; font-weight: 600; } 
#consulting03 .content_sec02>.flex-box>div .select_box select { font-size: 15px; border: 1px solid #e5e5e5; width: 100%; max-width: 290px; height: 45px; padding: 0 50px 0 15px; position: relative } 
#consulting03 .content_sec02>.flex-box>div .select_box select option { } 
#consulting03 .content_sec02 .select_box select { appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; position: relative } 
#consulting03 .content_sec02 .select_box::-ms-expand { display: none; } 
#consulting03 .content_sec02 .select_box::after { content: ""; position: absolute; right: 20px; bottom: 15px; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translateY(-50%) rotate(45deg); pointer-events: none; } 
#consulting03 .content_wrap .cinner { padding-top:0 } 
.row_button_wrap { margin-top:30px } 



#consulting04 { padding-top:20px } 
#consulting04 .cinner { gap:20px; } 
#consulting04 .cinner > div { background: #fff; border-radius: 10px; box-shadow: 1px 2px 10px 2px #ddd; padding: 30px 20px; } 
#consulting04 .option-card-wrap { } 
#consulting04 .option-card-section { width:100%; } 
#consulting04 .option-card-section h3 { font-size:18px; font-weight:700; margin-bottom:18px; } 
#consulting04 .option-card-list { display:flex; gap:10px; flex-wrap:wrap; } 
#consulting04 .option-card { position:relative; width:calc(25% - 10px); min-height:136px; border:1px solid #eee; border-radius:8px; background:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; cursor:pointer; text-align:center; transition:.2s; padding:15px 5px } 
#consulting04 .option-card input { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); } 
#consulting04 .option-card .check-ico { display:none; position:absolute; right:-6px; top:-6px; width:18px; height:18px; border-radius:50%; background:var(--color-main); z-index:2; } 
#consulting04 .option-card .check-ico:before { content:''; position:absolute; left:6px; top:4px; width:5px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); } 
#consulting04 .option-card input:checked ~ .check-ico { display:block; } 
#consulting04 .option-card:has(input:checked) { border-color:var(--color-main); box-shadow:0 0 0 1px var(--color-main); } 
#consulting04 .option-card .thumb { width:92%; height:auto; display:flex; justify-content: center; } 
#consulting04 .option-card strong { font-size:14px; font-weight:600; line-height:1.35; color:#222; } 



/* ── DAY 옵션 지역 select ── */
.option-box .day_city_box { display: flex; align-items: center; } 
.option-box .day_city_box select { height: 34px; border: 1px solid #ddd; border-radius: 6px; padding: 0 28px 0 10px; font-size: 14px; background: #fff; appearance: none; -webkit-appearance: none; cursor: pointer; } 

/* ── 예상 견적 섹션 ── */
#consulting03 .content_sec_estimate { margin: 0 0 60px; } 
#consulting03 .content_sec_estimate h3 { font-size: 1.5em; font-family: 'SebangGothic'; margin: 0 0 16px; } 
.estimate_rows { display: flex; flex-direction: column; width: 100%; border: 1px solid #e8e8e8; border-radius: 14px; overflow: hidden; background: #fff; margin-top:10px } 
.estimate_row { display: flex; justify-content: space-between; align-items: center; padding: 15px 28px; border-bottom: 1px solid #f0f0f0; font-size: 15px; } 
.estimate_row:last-child { border-bottom: none; } 
.estimate_row .est_label { color: #555; font-weight: 500; } 
.estimate_row .est_label small { font-size: 12px; color: #aaa; margin-left: 5px; font-weight: 400; } 
.estimate_row .est_val { font-weight: 600; color: #333; } 
.estimate_row.total_row { background: var(--color-main); } 
.estimate_row.total_row .est_label { color: #fff; font-size: 1.05em; font-family: 'SebangGothic'; } 
.estimate_row.total_row .est_label small { color: rgba(255, 255, 255, .7); } 
.estimate_row.total_row .est_val { color: #fff; font-size: 1.25em; font-family: 'SebangGothic'; } 
.est_note { font-size: 12px; color: #bbb; margin-top: 10px; } 
#consulting03 .content_sec03 { margin-top:60px } 
#consulting03 .content_sec03 >.flex-box { gap: 100px; } 
#consulting03 .content_sec03 .map_wrap { width: 100%; max-width: 1400px; } 
#consulting03 .content_tit p { margin-bottom: 20px; } 
#consulting03 .content_sec03 .root_daum_roughmap .wrap_map { height: 100% !important } 
.root_daum_roughmap .wrap_btn_zoom,
.root_daum_roughmap .wrap_controllers,
.root_daum_roughmap .cont .section.lst { display: none !important } 


.consulting_fixed_wrap { height:auto; } 
.consulting_fixed_bar { position:fixed; left:50%; bottom:0; z-index:100; width:100%; transform:translateX(-50%); background:#fff; padding:10px 0; box-shadow: 2px 2px 10px 2px #f1f1f1; z-index: 99999 } 
/* .consulting_fixed_bar.is-stop { position:absolute; left:50%; bottom:20px; transform:translateX(-50%); box-shadow: none;; } */


/* .consulting_step.active { padding-bottom:50px; } */
.consulting_fixed_bar .fixed_info_list { display:flex; align-items:center; gap:14px; flex:1; } 
.consulting_fixed_bar .fixed_info_item { min-width:160px; height:72px; padding:0 20px; border:1px solid #e5e5e5; border-radius:12px; display:flex; align-items:center; gap:12px; background:#fff; } 
.consulting_fixed_bar .fixed_info_item .ico { font-size:1.2em; color:#c7641c; } 
.consulting_fixed_bar .fixed_info_item strong { display:block; font-size:15px; font-weight:700; } 
.consulting_fixed_bar .fixed_info_item p { font-size:.7em; color:#333; line-height:1.35; margin:0; } 
.consulting_fixed_bar .fixed_btn_wrap { display:flex; align-items:center; gap:12px; } 
.consulting_fixed_bar .fixed_btn_wrap button { width:150px; height:62px; border-radius:10px; font-size:.9em; font-weight:700; cursor:pointer; } 
.consulting_fixed_bar .fixed_btn_wrap .mobile_step_summary,
.consulting_fixed_bar .fixed_btn_wrap .mobile_info_open { display:none } 
.consulting_fixed_bar .prev_btn { background:#fff; border:1px solid #ddd; color:#222; } 
.consulting_fixed_bar .next_btn { background:linear-gradient(135deg,#d8731f,#b95610); border:0; color:#fff; } 
.consulting_fixed_bar .submit_btn { display:none; background:var(--color-main); border:0; color:#fff; } 
.consulting_fixed_bar.is-last .next_btn { display:none; } 
.consulting_fixed_bar.is-last .submit_btn { display:block; } 




.popup_modal_wrap { display:none; z-index: 9999999; position: fixed; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0,0,0,.6); } 
.popup_modal_wrap .flex-box { display:flex; } 
.popup_modal_wrap .flex-box.column { flex-direction: column; } 
.popup_modal_wrap .inner { width: 92%; max-width: 800px; height:90vh; max-height:100vh; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); background: #fff; border-radius: 20px; padding: 50px; box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, .1); } 
.popup_modal_wrap .modal_content_wrap { height: 100%; display: flex; flex-direction: column; gap: 20px; justify-content: flex-start; } 
.popup_modal_wrap .img_wrap { height: 60%; } 
.popup_modal_wrap .img_wrap .swiper { height:100% } 
.popup_modal_wrap .img_wrap img { width:auto; height:100% } 
.popup_modal_wrap .content_txt { justify-content: space-between; height:40%; overflow: auto; gap:20px } 
.popup_modal_wrap .content_txt > .flex-box { gap:5px 25px; font-size: .8em; width:50% } 
.popup_modal_wrap .select_tit { font-weight: 600; margin-bottom:5px } 
.popup_modal_wrap .select_box_wrap { gap: 10px; margin-bottom:5px } 
.popup_modal_wrap .select_box_wrap .select_box { display: flex; align-items: center; gap: 10px; position:relative } 
.popup_modal_wrap .select_box_wrap .select_box select { width: 80px; height: 35px; border-radius: 5px; border: 1px solid #E5E5E5; padding-left: 15px; position: relative; } 

.popup_modal_wrap .map_wrap { max-width:300px; width:50%; height:auto; aspect-ratio: 1/.7; overflow: hidden; } 
.popup_modal_wrap .map_wrap .root_daum_roughmap_landing { height:100%; width:auto } 
.popup_modal_wrap .root_daum_roughmap .wrap_map { height: 100%; } 
.popup_modal_wrap .content_txt > .flex-box li { position:relative; padding-left:10px } 
.popup_modal_wrap .content_txt > .flex-box li:before { position:absolute; left:0; top:50%; width:5px; transform: translateY(-50%); aspect-ratio: 1/1; border-radius: 50%; background: var(--color-main); content:'';; } 
.popup_modal_wrap .content_txt > .flex-box li:first-child { padding-left:0; font-size: 1.3em; margin-bottom:10px; } 
.popup_modal_wrap .content_txt > .flex-box li:first-child:before { display:none } 
.popup_modal_wrap .content_txt .popup_prod_price { display:flex; align-items: flex-end; } 
.popup_modal_wrap .content_txt .popup_prod_price .price { font-size: 1.3em; margin-left:10px; margin-right:3px; font-weight: 600; } 
.popup_modal_wrap .select_box select { appearance:none; -webkit-appearance:none; -moz-appearance:none; cursor:pointer; } 
.popup_modal_wrap .select_box::-ms-expand { display:none; } 
.popup_modal_wrap .select_box::after { content:""; position:absolute; right:35px; top:43%; width:8px; height:8px; border-right:1px solid #555; border-bottom:1px solid #555; transform:translateY(-50%) rotate(45deg); pointer-events:none; } 
.popup_modal_wrap .modal_close { position: absolute; right: calc(50% - 470px); top: 50px; cursor: pointer; background: #fff; border-radius: 50%; width: 50px; aspect-ratio: 1 / 1; height: auto; box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, .15); } 
.popup_modal_wrap .modal_close::before,
.popup_modal_wrap .modal_close::after { content:""; position:absolute; left:50%; top:50%; width:20px; height:2px; background:#000; transform-origin:center; } 
.popup_modal_wrap .modal_close::before { transform:translate(-50%,-50%) rotate(45deg); } 
.popup_modal_wrap .modal_close::after { transform:translate(-50%,-50%) rotate(-45deg); } 
.popup_modal_wrap .swiper-button-next, .popup_modal_wrap .swiper-button-prev { color: #000; background: #fff; width: 50px; aspect-ratio: 1 / 1; height: auto; border-radius: 50%; box-shadow: 2px 2px 20px rgba(0, 0, 0, .3); padding:15px } 
.popup_modal_wrap button { background: #414141; color: #fff; width: 200px; height: 45px; font-size: 16px; border: none; border-radius: 5px; } 
.popup_modal_wrap .submit_wrap { position: absolute; left: 50%; transform: translateX(-50%); bottom: 10px; width: 100%; justify-content: space-between; padding: 0 50px; align-items: center; } 
.popup_modal_wrap .submit_wrap > .flex-box { gap:10px; align-items: center; } 
.mocolse { display:none } 


.popup_modal_wrap.readonly-mode .submit_wrap { display:flex; } 
.popup_modal_wrap.readonly-mode .select_box_wrap { display:none; } 
.popup_modal_wrap.readonly-mode .modal-save-btn { display:none; } 
.popup_modal_wrap.readonly-mode .readonly-time { display:inline-flex; align-items:center; font-size:20px; font-weight:600; color:#222; margin-bottom:5px } 



.timeline-header-mobile { display: none; } 
.schedule_add_modal_wrap { display:none; position:fixed; inset:0; background:rgba(0,0,0,.6); z-index:99999; overflow-y:auto; padding:40px 20px; } 
.schedule_add_modal_wrap .inner { max-width:1000px; width:100%; margin:0 auto; background:#fff; border-radius:20px; position:relative; padding:40px; height:90vh } 
.schedule_add_modal_wrap .travel-item-btn.is-selected,
.schedule_add_modal_wrap .prod_box.is-selected { outline:2px solid #111; outline-offset:-2px; } 

.schedule_add_modal_wrap .flex-box { display:flex } 
.schedule_add_modal_wrap .modal_content_wrap { display: flex; flex-direction: column; height: 100%; overflow: hidden } 
.schedule_add_modal_wrap .flex-box.column { flex-direction: column; } 
.schedule_add_modal_wrap .filter_wrap { gap:10px; flex-wrap:wrap } 
.schedule_add_modal_wrap .travel_list_wrap { width:100%; padding-bottom:30px } 
.schedule_add_modal_wrap .search_wrap { position:relative; height:50px; padding:0 50px 0 20px; border-radius:50px; border:1px solid #ddd; font-size: 18px; width:90%; margin:0 auto } 
.schedule_add_modal_wrap .search_wrap input { width:100%; height:100%; border-radius:50px; border:none; font-size: .9em; } 
.schedule_add_modal_wrap .search_wrap input:target,
.schedule_add_modal_wrap .search_wrap input:focus { border:none!important; outline: none; } 
.schedule_add_modal_wrap .search_wrap input::placeholder { color:#C7C7C7; } 
.schedule_add_modal_wrap .search_btn { position:absolute; right:15px; top:50%; transform:translateY(-50%); border:0; background:none; cursor:pointer; } 
.schedule_add_modal_wrap .modal_content_sec04 { overflow: auto; } 
.schedule_add_modal_wrap .filter_box select { appearance:none; -webkit-appearance:none; -moz-appearance:none; cursor:pointer; outline: none; } 
.schedule_add_modal_wrap .filter_box::-ms-expand { display:none; } 
.schedule_add_modal_wrap .filter_box::after { content:""; position:absolute; right:15px; top:43%; width:10px; height:10px; border-right:2px solid #555; border-bottom:2px solid #555; transform:translateY(-50%) rotate(45deg); pointer-events:none; } 
.schedule_add_modal_wrap .select_box { display: flex; align-items: center; gap: 10px; position:relative; font-size: .9em; } 
.schedule_add_modal_wrap .select_box select { width: 150px; height: 50px; border-radius: 30px; border: 1px solid #E5E5E5; padding-left: 15px; position: relative; } 

.schedule_add_modal_wrap .content_sec04 .prod_list_wrap { flex-wrap: wrap; gap:20px 10px; display:flex } 
.schedule_add_modal_wrap .content_sec04 .prod_box { gap: 10px; width: calc(100% / 4 - 10px); cursor:pointer; outline:none } 
.schedule_add_modal_wrap .content_sec04 .prod_box .prod_img_wrap { width:100%; aspect-ratio:3/2; overflow: hidden; } 
.schedule_add_modal_wrap .content_sec04 .prod_box .prod_img_wrap img { width:100%; } 
.schedule_add_modal_wrap .content_sec04 .prod_box .prod_name { text-align:center; font-size:18px } 
.schedule_add_modal_wrap .content_sec04 .paging { margin-top: 50px; display: flex; align-items: center; justify-content: center; } 
.schedule_add_modal_wrap .content_sec04 .paging .num { width: 40px; aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; } 
.schedule_add_modal_wrap .content_sec04 .paging .num.on { background: var(--color-main); border-radius: 50%; } 
.schedule_add_modal_wrap .content_sec04 .paging .num.on a { color:#fff } 
.schedule_add_modal_wrap .content_sec04 .paging .prev,
.schedule_add_modal_wrap .content_sec04 .paging .next { position:relative; width: 40px; aspect-ratio: 1 / 1; } 
.schedule_add_modal_wrap .content_sec04 .paging .prev::after { content: ""; position: absolute; top: 50%; left: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translate(-50%, -50%) rotate(135deg); pointer-events: none; } 
.schedule_add_modal_wrap .content_sec04 .paging .next::after { content: ""; position: absolute; top: 50%; left: 50%; width: 10px; height: 10px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: translate(-50%, -50%) rotate(315deg); pointer-events: none; } 

.schedule_add_modal_wrap .modal_close { position: absolute; right: calc(50% - 580px); top: 40px; cursor: pointer; background: #fff; border-radius: 50%; width: 50px; aspect-ratio: 1 / 1; height: auto; box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, .15); } 
.schedule_add_modal_wrap .modal_close::before,
.schedule_add_modal_wrap .modal_close::after { content:""; position:absolute; left:50%; top:50%; width:20px; height:2px; background:#000; transform-origin:center; } 
.schedule_add_modal_wrap .modal_close::before { transform:translate(-50%,-50%) rotate(45deg); } 
.schedule_add_modal_wrap .modal_close::after { transform:translate(-50%,-50%) rotate(-45deg); } 



.schedule_add_modal_wrap .travel_table ul { display:flex;; background:#b47a4f; color:#fff; font-size: 18px; display:flex; align-items: center; margin-top:20px; border-radius: 20px; } 
.schedule_add_modal_wrap .travel_table ul li { position:relative; list-style:none; padding: 15px; font-weight: 400; width: calc(100% / 3); text-align: center; cursor: pointer; } 
.schedule_add_modal_wrap .travel_table .travel_btn { display: flex; align-items: center; justify-content: center; border: none; background: transparent; cursor: pointer; border-radius: 10px; font-size: 16px; color: #fff; width: 100%; } 
.schedule_add_modal_wrap .travel_table .travel_dropdown { position:absolute; left:0; top:calc(100% + 10px); min-width:200px; padding:10px 0; background:#fff; border:1px solid #e5e5e5; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.08); opacity:0; visibility:hidden; transform:translateY(10px); transition:.3s; z-index:10; width:100% } 
.schedule_add_modal_wrap .travel_table .travel_dropdown a { display:block; padding:12px 20px; font-size:15px; color:#222; } 
.schedule_add_modal_wrap .travel_table .travel_dropdown a:hover { background:#f8f8f8; } 
.schedule_add_modal_wrap .travel_table ul li:hover .travel_dropdown { opacity:1; visibility:visible; transform:translateY(0); } 



.pc-header { display: block; } 
.timeline-header-mobile { display: none; } 



@media (min-width:769px) and (max-width:1400px){
 .schedule-row > .flex-box:first-of-type { display: flex; align-items: center; width: 100%; } 
 .day-left-wrap { flex: 0 0 100px; width: 100px; } 
 .day-label { width: 100px; font-size: 1em; } 
 .timeline-area { flex: 1 1 auto; width: auto; min-width: 0; max-width: 100%; overflow: visible; } 
 .timeline-track-wrap,
 .timeline-header,
 .timeline-track { width: 100% !important; max-width: 100%; } 
 .schedule-remove-btn { flex: 0 0 30px; margin-left: 0; } 
 .event-marker { width: 130px; } 
 .event-label-box { min-width: 100px; max-width: 120px; padding: 7px 22px 7px 8px; } 
 .event-title { font-size: 14px; } 
 .event-time { font-size: 12px; } 
 }

@media(max-width:1399px){
 #consulting02 .form_box_wrap { padding: 50px; } 
 #consulting03 .content_sec02 > .flex-box > div .select_box { width: 50%; } 
 #consulting03 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list { gap:10px } 
 .schedule_add_modal_wrap .modal_close { right: 40px; top: 50px; z-index: 10; box-shadow: none; background: transparent; } 
 .schedule_add_modal_wrap .modal_close::before,
 .schedule_add_modal_wrap .modal_close::after { width: 30px; height: 3px; } 
 .popup_modal_wrap .inner { padding: 30px 50px 70px; } 
 .popup_modal_wrap .img_wrap .swiper-slide { display: flex; align-items: center; justify-content: center; } 
 .popup_modal_wrap .img_wrap .swiper-slide img { height: 100%; width: auto; } 
 }

/* 1199 */
@media(max-width:1199px){
 #consulting03 .content_sec03 > .flex-box { gap: 50px; } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul { gap:10px } 
 .consulting .step_tab li { padding-left:20px } 
 .consulting .step_tab li h2 { font-size: .9em; } 
 #consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt h3,
 #consulting01 .cont_top_wrap .info_wrap > div .title_wrap h3 { font-size: 1em; } 
 #consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt p,
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .title_wrap p { font-size: .8em; } 
 #consulting01 .cont_top_wrap .midle_txt { font-size: .8em; padding:10px } 
 #consulting01 .cont_top_wrap .midle_txt img { width:25px } 
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li p,
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li > span,
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap > p { font-size: 14px; } 
 .consulting .step_tab li > .flex-box { gap:10px } 

 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li p { font-size: 12px; } 
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list { gap:10px } 
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li { width:calc(25% - 5px) } 
 #consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li p { font-size: 14px; margin-top:5px; } 
 #consulting04 .cinner .option-card-wrap { flex-wrap:wrap; gap:20px 0 } 
 #consulting04 .cinner .option-card-wrap > div { width:50% } 
 #consulting04 .cinner .option-card-wrap > div:last-child { width:100% } 
 }

/* 1024 */
@media(max-width:1024px){
 .consulting_fixed_bar .fixed_info_list { width:calc(100% - 260px); overflow-x: auto; } 
 .consulting_fixed_bar .fixed_btn_wrap { min-width:260px; } 
 .consulting_fixed_bar .fixed_btn_wrap button { width:120px; height:56px; font-size:16px; } 

 .consulting .step_tab { gap:30px } 
 .consulting .step_tab li:before { right:-20px } 
 .consulting .step_tab li span { font-size: 14px; } 
 #consulting01 .content_tit img { height:100px } 
 #consulting01 .content_tit { margin-bottom:30px } 
 .consulting .content_tit h2 { font-size:2em; } 

 #consulting01 .cont_top_wrap .tit_list_wrap ul,
 #consulting01 .cont_top_wrap .info_wrap { flex-wrap:wrap; } 
 #consulting01 .cont_top_wrap .tit_list_wrap ul li { width:calc(50% - 10px) } 
 #consulting01 .cont_top_wrap .info_wrap > div,
 #consulting01 .cont_top_wrap .info_wrap .info_right_wrap { width:100% } 
 .schedule-row { padding: 0; } 
 .schedule-row > .flex-box:first-of-type { flex-direction: column; gap: 60px; } 
 .timeline-area { min-width: 100%; } 
 .schedule-remove-btn { position: absolute; right: 20px; top: 20px; } 
 .event-dot { bottom: -70px; } 
 .consulting .content_wrap .content_tit img { width: 180px; } 
 #consulting01 .link_wrap { margin-top: 80px; } 
 #consulting02 .form_box_wrap { padding:50px 30px } 
 #consulting02 .form_box_wrap .row_box:first-child { padding-top: 0; } 
 #consulting02 .form_box_wrap .row_box input,
 #consulting02 .form_box_wrap .row_box .file-list li { max-width: 100%; } 

 #consulting03 .content_sec02 { padding: 30px 50px; } 
 #consulting03 .content_sec02 > .flex-box > div h3 { width: 100px; } 
 #consulting03 .cont_top_wrap .info_wrap > div { padding:20px 10px } 
 #consulting03 .sec01 { padding-top:0; } 
 }
@media(max-width:768px){
 .consulting { padding:80px 0 } 
.consulting { padding-bottom:170px; } 
.consulting .step_tab { gap:5px; padding-bottom:10px } 
.consulting .sec01 { padding-top:20px } 
.consulting .step_tab li { padding:10px; justify-content: center; } 
.consulting .step_tab li h2 { display:none } 
.consulting .content_tit { flex-direction: column; align-items: center; } 
.consulting .step_tab li > .flex-box { flex-direction: column; align-items: center; text-align: center; gap:5px } 
.consulting .step_tab li:before { display:none } 
#consulting01 .cont_top_wrap .tit_list_wrap ul { gap:15px } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li { gap:10px; width:calc(50% - 7.5px); padding:15px } 
#consulting01 .cont_top_wrap .tit_list_wrap ul li .img_wrap { width:60px } 
 #consulting01 .cont_top_wrap .tit_list_wrap ul li .list_txt p .line-br { display:inline } 
 #consulting02 .form_box_wrap { margin-top:20px; padding:30px 20px } 
 #consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li h3 {font-size: 16px;;}
 #consulting01 .cont_top_wrap .info_wrap .info_right_wrap .info_right_list li p {font-size: 13px;}
.consulting_fixed_bar { display:block; } 
.consulting_fixed_bar .flex-box { flex-direction: column; } 
/* .consulting_fixed_bar .fixed_info_list { display:flex; overflow-x:auto; gap:10px; margin-bottom:12px; min-width:0; } 
.consulting_fixed_bar .fixed_info_item { min-width:150px; height:64px; padding:0 14px; } */
.consulting_fixed_bar .fixed_btn_wrap { display:flex; width:100%; } 
.consulting_fixed_bar .fixed_btn_wrap button { flex:1; width:auto; } 
.consulting_fixed_bar .fixed_btn_wrap .mobile_step_summary,
.consulting_fixed_bar .fixed_btn_wrap .mobile_info_open { display:block; width:100% } 

 .consulting .content_wrap .content_tit img { width: 130px; } 
 .consulting .content_tit h2 { font-size: 1.8em; } 
 .consulting .submit_wrap { margin-top: 50px; } 
 #consulting01 .link_wrap { margin-top: 30px; gap: 10px; } 
 #consulting01 .link_wrap a { padding: 50px 0; } 
 
#consulting02 .form_box_wrap .row_box .row_input_content { padding-left:0 } 
 #consulting02 .form_box_wrap .row_box .row_title:before { left:0 } 
 #consulting02 .form_box_wrap .row_box .row_title,
 #consulting02 .form_box_wrap .row_box:last-child .row_input_content { padding-left:100px } 
 #consulting02 .date-time-wrap { flex-direction: column; gap:5px; } 
 #consulting02 .date-input-wrap,
 #consulting02 .time-select-wrap { width:100%; max-width:none; height:50px } 
 #consulting02 .time-select { height:100% } 
 #consulting02 .form_box_wrap .row_box { padding:20px 0 } 
 #consulting02 .form_box_wrap .row_box:last-child .row_title { padding-left:0; } 
 #consulting02 .form_box_wrap .row_box:last-child .row_title:before { left:-100px } 

 #consulting02 .form_box_wrap .row_box .person-count-wrap { flex-direction: column; gap:10px } 
 #consulting02 .form_box_wrap .row_box .person-count-box > span.label { width:80px } 
 #consulting02 .form_box_wrap .row_box .person-count-box > div { width: 100%; border: 1px solid #ddd; border-radius: 10px; height: 50px; display: flex; align-items: center; justify-content: space-between; } 
 #consulting02 .form_box_wrap .row_box .person-count-box .count-btn { border:none; border-radius: 0; background: transparent; width:auto; height:100%; font-size: 1.5em; } 
#consulting02 .form_box_wrap .row_box .person-count-box:first-child { padding-right:0; border-right: 0; } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul { flex-direction: column; } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul li { flex-direction: row; width: 100%; text-align: left; padding: 20px; } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul li .list_txt p span { display:inline } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul li .img_wrap { width:60px } 
 #consulting03 .cont_top_wrap .tit_list_wrap ul li .list_txt h3 { font-size: 1.15em; } 
 #consulting03 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list { flex-wrap:wrap } 
 #consulting03 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li { width:calc(50% - 5px) } 
 #consulting03 .cont_top_wrap .midle_txt { padding: 20px 30px; margin: 20px 0; gap: 20px; background: #fbf9f7; font-size: .9em; border-radius: 10px; } 
 #consulting03 .cont_top_wrap .info_wrap { flex-direction: column; } 
 #consulting03 .cont_top_wrap .info_wrap > div { width:100%; padding:20px } 
 .popup_modal_wrap.readonly-mode .modal_close.mocolse { width:100% } 
 #consulting03 .cont_top_wrap .info_wrap .info_right_wrap { width:100% } 
 #consulting03 .content_sec02>.flex-box>div { width:100% } 
 
 #consulting03 .content_sec02 { padding: 30px; } 

 #consulting03 .content_sec02 > .flex-box > div h3 { width: 80px; } 
 #consulting03 .content_sec02 > .flex-box > div > .flex-box { flex-wrap: wrap; gap: 20px 10px; width: calc(100% - 80px); } 
 #consulting03 .content_sec02 > .flex-box > div .select_box { width: 100%; max-width: 100%; } 
 #consulting03 .content_sec02 > .flex-box > div .select_box select { max-width: 100% !important; } 
 #consulting03 .content_sec03 > .flex-box { flex-direction: column; gap: 0; } 
 /* #consulting03 .content_sec03 .map_wrap,
 #consulting03 .content_sec03 .travel_list_wrap { width: 100%; aspect-ratio: 1 / 1.3; } */
 #consulting03 .content_sec04 .prod_list_wrap { gap: 50px 30px; } 
 #consulting03 .content_sec04 .prod_box { width: calc(50% - 15px); } 
 #consulting03 .content_sec_estimate h3 { font-size: 1.2em; } 
 .estimate_row { padding: 12px 16px; font-size: 14px; } 
 .schedule-row > .flex-box:first-of-type { align-items: flex-start; gap: 20px; } 
 .day-left-wrap { width: 100%; } 
 .timeline-area { position: relative; width: 90%; min-width: auto; } 
 .pc-header { display: none; } 
 .timeline-header { display: none !important; } 
 .timeline-header-mobile { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 260px; z-index: 2; pointer-events: none; } 
 .timeline-header-top,
 .timeline-header-bottom { position: absolute; left: 0; width: 100%; height: 40px; } 
 .timeline-header-top { top:115px; } 
 .timeline-header-bottom { top: 170px; } 
 .tick.bottom { top: 195px; } 
.tick.half.bottom { top: 200px; } 


 .timeline-track-wrap { position: relative; width: 100% !important; height: 340px; overflow: visible; } 
 .timeline-track { bottom: 133px; } 
 .timeline-track-wrap::before { content: ""; position: absolute; left: 0; top: 95px; width: 100%; height: 2px; background: #dcdcdc; } 
 .timeline-track-wrap::after { content: ""; position: absolute; right: -55px; top: 95px; width: 56px; height: 112px; border: 2px solid #dcdcdc; border-left:none; border-radius: 0 50px 50px 0; box-sizing: border-box; } 
 .tick { bottom: auto; top: 83px; height: 24px; } 
 .tick.half { bottom: auto; top: 89px; height: 12px; } 
 .time-label { top: 0; font-size: 12px; transform: translateX(-50%); white-space: nowrap; } 
 .event-marker { position: absolute; width: 120px; transform: translateX(-50%); } 
 .event-marker.top { top: 12px; bottom: auto; } 
 .event-marker.bottom { top: 230px; bottom: auto; } 
 .event-marker.top .event-label-box,
 .event-marker.bottom .event-label-box { left: 50%; top: 5px; bottom: auto; transform: translateX(-50%); } 
 .event-marker.top .event-dot { left: 50%; top: 63px; bottom: auto; transform: translateX(-50%); } 
 .event-marker.bottom .event-dot { left: 50%; top: -22px; bottom: auto; transform: translateX(-50%) rotate(180deg); } 
 .event-label-box { min-width: 100px; max-width: 120px; padding: 8px 22px 8px 10px; } 
 .event-title { font-size: 14px; -webkit-line-clamp: 2; } 
 .event-time { font-size: 12px; } 
 .schedule_add_modal_wrap .content_sec04 .prod_box { width: calc(50% - 10px); } 
 .popup_modal_wrap .modal_close.mocolse { display: flex; justify-content: center; align-items: center; position: relative; right: unset; top: unset; width: 50%; height: 40px; border: none; border-radius: 5px; background: #414141; color: #fff; font-size: 16px; box-shadow:none } 
 .popup_modal_wrap .modal_close.mocolse::before,
 .popup_modal_wrap .modal_close.mocolse::after { display: none; } 
 .pcclose { display: none; } 
 .popup_modal_wrap .submit_wrap { position: relative; left: unset; bottom: unset; transform: none; padding: 0; flex-direction: column; gap: 10px; margin-top: 30px; } 
 .popup_modal_wrap .inner { padding: 30px; overflow: auto; } 
 .row_button_wrap { margin-top:0; flex-wrap:wrap; gap:10px; } 
 .schedule_add_modal_wrap .select_box { width:calc(50% - 5px); } 
 .schedule_add_modal_wrap .select_box select,
 .schedule_add_modal_wrap .search_wrap { width:100%; max-width:100% } 
 .popup_modal_wrap button { width: 50%; height: 40px; font-size: 15px; } 
 .popup_modal_wrap .submit_wrap > .flex-box { width:100% } 
.popup_modal_wrap .map_wrap { width:100% } 
.schedule_add_modal_wrap .modal_close { top:40px; right:20px } 
.schedule_add_modal_wrap .modal_close::before, .schedule_add_modal_wrap .modal_close::after { width:20px; } 
 #consulting04 .cinner .option-card-wrap > div { width:100% } 
 }


@media(max-width:768px){
 .consulting_fixed_bar { position:fixed; left:0; bottom:0; z-index:99999; width:100%; padding:10px 14px 12px; background:#fff; box-shadow:0 -4px 18px rgba(0,0,0,.08); transform: none; } 
.consulting_fixed_bar .cinner { width:100%; padding:0; flex-direction:column; gap:10px; } 
.consulting_fixed_bar .fixed_info_list { position:fixed; left:0; bottom:0; z-index:100001; width:100%; max-height:72vh; overflow-y:auto; display:flex; flex-direction:column; gap:8px; padding:60px 20px 40px; background:#fff; border-radius:22px 22px 0 0; box-shadow:0 -8px 30px rgba(0,0,0,.16); transform:translateY(110%); opacity:0; pointer-events:none; transition:.3s ease; } 
.consulting_fixed_bar .fixed_info_list.is-open { transform:translateY(0); opacity:1; pointer-events:auto; } 
.consulting_fixed_bar .fixed_info_list:before { content:'선택 정보 상세'; position:absolute; left:18px; top:18px; font-size:17px; font-weight:700; color:#111; } 
.consulting_fixed_bar .fixed_info_list:after { content:'×'; position:absolute; right:18px; top:14px; width:32px; height:32px; border-radius:50%; background:#f5f5f5; display:flex; align-items:center; justify-content:center; font-size:20px; color:#111; } 
.consulting_fixed_bar .fixed_info_item { width:100%; min-width:0; height:auto; min-height:42px; padding:12px; border:1px solid #e8e8e8; border-radius:12px; display:flex!important; align-items:center; background:#fafafa; } 
.consulting_fixed_bar .fixed_info_item > div { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; } 
.consulting_fixed_bar .fixed_info_item strong { margin:0; font-size:15px; color:#777; white-space:nowrap; } 
.consulting_fixed_bar .fixed_info_item p { margin:0; font-size:16px; font-weight:700; color:#222; text-align:right; } 

.consulting_fixed_bar .fixed_btn_wrap { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:8px; } 
.consulting_fixed_bar .mobile_step_summary_origin { grid-column:1 / 2; grid-row:1; height:50px; width:100% } 
.consulting_fixed_bar .mobile_step_summary { width:100%; height:100%; padding:8px 12px; border:1px solid #ddd; border-radius:12px; background:#fff; text-align:left; } 
.consulting_fixed_bar .mobile_info_open { grid-column:2 / 3; grid-row:1; height:50px; padding:8px 12px; border:1px solid #ddd; border-radius:12px; background:#fff; text-align:left; } 
.consulting_fixed_bar .mobile_info_open span,
.consulting_fixed_bar .mobile_step_summary span { display:block; font-size:14px; font-weight:500; color:#888; line-height:1.1; } 
.consulting_fixed_bar .mobile_info_open strong,
.consulting_fixed_bar .mobile_step_summary strong { display:block; margin-top:2px; font-size:15px; font-weight:600; color:#111; line-height:1.2; } 

.consulting_fixed_bar .fixed_btn_wrap .prev_btn { grid-column:1 / 2; grid-row:2; width:100%; height:50px; border-radius:12px; font-size:16px; font-weight:700; background:#fff; color:#111; border:1px solid #ddd; } 
.consulting_fixed_bar .fixed_btn_wrap .next_btn,
.consulting_fixed_bar .fixed_btn_wrap .submit_btn { grid-column:2 / 3; grid-row:2; width:100%; height:50px; border-radius:12px; font-size:16px; font-weight:700; background:var(--color-main); color:#fff; border:1px solid var(--color-main); } 
.consulting_fixed_bar.is-last .fixed_btn_wrap .next_btn { display:none; } 
.consulting_fixed_bar:not(.is-last) .fixed_btn_wrap .submit_btn { display:none; } 
 }

/* 640 */
@media(max-width:640px){
 #consulting02 .form_box_wrap { padding: 50px 30px; } 
 #consulting02 .form_box_wrap .row_box { padding: 30px 0; } 
 #consulting03 .content_tit p { margin-bottom: 10px; } 
 #consulting03 .content_tit p .line-br { display: inline; } 
 #consulting03 .content_sec02 > .flex-box > div { flex-direction: column; align-items: flex-start; gap: 10px; } 
 #consulting03 .content_sec02 > .flex-box > div > .flex-box { width: 100%; } 
 .schedule-row > .flex-box:first-child { align-items: flex-start; gap: 10px; } 
 .schedule-row .day-label { flex: 0 0 auto; } 
 .popup_modal_wrap .content_txt { flex-direction: column; align-items: center; gap: 20px; height:auto; } 
 .popup_modal_wrap .content_txt > .flex-box { flex-direction: column; justify-content: flex-start; width: 100%; gap: 10px; } 
 .popup_modal_wrap .inner { padding: 50px 30px; } 
 .popup_modal_wrap .modal_close { right: 30px; } 
 #consulting03 .content_sec03 .search_wrap { margin: 0; } 
 .schedule-remove-btn { right: 0; top:10px } 
 .day-label { font-size: 1em; height:40px } 
 }

/* 500 */
@media(max-width:500px){
 .consulting { padding-bottom:130px } 
 .consulting .content_wrap .content_tit img { width: 100px; } 
 #consulting01 .link_wrap a { font-size: 1.2em; } 
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list { flex-wrap :wrap } 
 #consulting01 .cont_top_wrap .info_wrap .info_left_wrap .info_left_list li { width:calc(50% - 5px) } 
 #consulting02 .form_box_wrap .row_box .row_title h3 { font-size: 18px; } 
 #consulting02 .form_box_wrap .row_box .row_title p { font-size: 14px; } 
 #consulting02 .form_box_wrap .row_box .row_title p span { display:inline } 
 /* #consulting02 .form_box_wrap .row_box input,
 #consulting02 .time-select { height: 40px; } */
 .schedule_add_modal_wrap .travel_table ul { position:relative; } 
 .schedule_add_modal_wrap .travel_table ul li { position:unset } 
 #consulting02 .form_box_wrap .row_box .row_title,
 #consulting02 .form_box_wrap .row_box:last-child .row_input_content { padding-left:80px; } 
 #consulting02 .form_box_wrap .row_box .row_title:before { width:60px } 
 #consulting02 .form_box_wrap .row_box:last-child .row_title:before { left:-80px } 
 #consulting02 .form_box_wrap { padding:30px 20px } 
 #consulting02 .form_box_wrap .row_box .person-count-box:first-child { border-right:0; padding-right:0 } 
 .schedule-mobile-table td { position: relative; } 
 .schedule-mobile-table td button { background: transparent; border: none; } 
 .schedule_add_modal_wrap .select_box,
 .schedule_add_modal_wrap .select_box select { width:100%; height:40px } 
 .schedule_add_modal_wrap .content_sec04 .prod_box { width:100% } 
 .schedule_add_modal_wrap .search_wrap { height:40px; } 
 .schedule_add_modal_wrap .modal_close { right:20px; top:37px } 
 .schedule_add_modal_wrap .inner { padding:40px 20px } 
 .schedule-day-add-btn, .date_count_num,
 .schedule-add-btn { font-size: 15px; min-width:auto; width:auto; padding:0 15px; } 
 .timeline-track-wrap::after { right: -24px; width: 23px; border-radius: 0 20px 20px 0; top: 83px; height: 89px; } 
 .timeline-header-mobile { height:260px } 
 .timeline-header-top { top:103px } 
 .timeline-header-bottom { top:139px } 
 .event-marker.top { top:0; } 
 .tick.half.bottom { top:165px } 
 .tick.bottom { top:160px } 
 .event-marker.bottom { top:196px; } 
 .timeline-track { bottom:108px; } 
 .timeline-track-wrap { height:280px; } 
 .timeline-track-wrap::before { top:83px; } 
 .tick { top:72px } 
 .tick.half { top:78px } 
 .schedule-control { flex-wrap:wrap; gap:5px } 
 #consulting02 .content_tit ,
 #consulting03 .content_tit { flex-direction: column; align-items: center; } 
 #consulting03 .content_tit { margin-bottom:30px } 
 #consulting04 .option-card { width:calc(50% - 5px) } 
 .consulting_fixed_bar .mobile_step_summary_origin { display:none } 
 .consulting_fixed_bar .mobile_info_open { grid-column: 1 / 3; } 
.consulting_fixed_bar.is-step1 .next_btn { grid-column: 1 / 3; } 
 .consulting_fixed_bar .mobile_step_summary { padding: 0; border: none; display: flex; align-items: center; background: transparent; justify-content: space-between; } 
 .consulting_fixed_bar .mobile_step_summary span { font-weight: 600; color:var(--color-main); } 
 .consulting_fixed_bar .fixed_btn_wrap .mobile_info_open:before { position:absolute; right:12px; top:50%; transform: translateY(-50%); content:'보기'; color:#999; font-size: 14px; font-weight: 500; } 
 .consulting_fixed_bar .fixed_btn_wrap .mobile_info_open:before { pointer-events:none; } 
 .consulting_fixed_bar .fixed_btn_wrap .mobile_info_open { position:relative; z-index:2; } 
 #consulting01 .cont_top_wrap .tit_list_wrap ul li {width:100%}
 #consulting01 .cont_top_wrap .tit_list_wrap ul li .img_wrap {width:40px}
 }



#sod_frm_pay .coupon_wrap h2 { font-size:24px; font-weight:700; color:#111; line-height:1.3; margin-bottom:20px; } 
#sod_frm_pay .coupon_wrap .input_wrap.select_box { display:flex; align-items:center; gap:15px; flex-wrap:wrap; } 
#sod_frm_pay .coupon_wrap .input_wrap.select_box select { flex:1; min-width:240px; height:56px; padding:0 55px 0 18px; border:1px solid #DCDCDC; border-radius:10px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 18px center; font-size:16px; font-weight:500; color:#111; appearance:none; -webkit-appearance:none; -moz-appearance:none; cursor:pointer; transition:all .25s ease; } 
#sod_frm_pay .coupon_wrap .input_wrap.select_box select:focus { border-color:#111; outline:none; box-shadow:0 0 0 4px rgba(0,0,0,.06); } 
#sod_frm_pay .coupon_wrap .input_wrap.select_box select option { color:#111; } 
#sod_frm_pay .input_wrap { height:auto; margin-bottom: 20px; } 
.od_cp_price_wrap { width: 100%; display: flex; justify-content: flex-end; gap: 5px; align-items: center; } 
 .od_cp_price_wrap > span { margin-right:10px; font-size: .9em; } 
 .expected_price_wrap { background: var(--color-main); color: #fff; padding: 15px 10px; text-align: right; border-radius: 0; margin: 20px 0 30px;; display: flex; align-items: baseline; justify-content: flex-end; gap: 5px; border-radius: 10px; } 
 .expected_price_wrap > span { font-size: .9em; } 
 .expected_price_wrap #od_expected_price { font-size: 1.2em; } 
 .btn_confirm { margin-top:30px } 

@media all and (max-width:500px){
 .expected_price_wrap { text-align: center; justify-content: center; align-items: center; } 
 }