@charset "utf-8";

@font-face {font-family: 'KCC-Sonkeechung'; src: url('../../fonts/KCC-Sonkeechung.woff2') format('woff2'), url('../../fonts/KCC-Sonkeechung.woff') format('woff'); font-weight: 400; font-style: normal; font-display: swap;}
@font-face {font-family: 'KoPubBatang_Pro'; src: url('../fonts/KoPubWorldBatang-Light.ttf') format('truetype'); font-weight: 300; font-style: normal;}
@font-face {font-family: 'KoPubBatang_Pro'; src: url('../fonts/KoPubWorldBatang-Medium.ttf') format('truetype'); font-weight: 500; font-style: normal;}
@font-face {font-family: 'KoPubBatang_Pro'; src: url('../fonts/KoPubWorldBatang-Bold.ttf') format('truetype'); font-weight: 700; font-style: normal;}

/* 폰트설정 */
/* @import url("../../fonts/Noto_Sans_KR/Noto_Sans_KR.css");
@import url("../../fonts/NotoSansCJK/NotoSansCJK.css"); */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;200;300;400;500;600;700;800;900&display=swap'); /* font-family: 'Noto Sans KR', sans-serif; */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap'); /* font-family: 'Montserrat', sans-serif; */
/* @import url("../../fonts/Roboto_KR/Roboto_KR.css"); */

/* CSS reset */
html, body, div , span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary, time, mark, audio, video {margin: 0; padding: 0; border: 0; font-size: 100%;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block; overflow: hidden;}
ol, ul {list-style: none;}
table {border-collapse: collapse; border-spacing: 0;}
address {font-style: normal;}
a {color: #1c1c1c; text-decoration: none;}
img {border: 0; vertical-align: middle;}
button, label {font-family: 'Noto Sans KR', sans-serif; cursor: pointer;}
button {border: none; outline: none;}
input {font-family: 'Noto Sans KR', sans-serif;}

body {color: #1c1c1c; font-family: 'Noto Sans KR', sans-serif; font-size: clamp(0.875rem, 1.11vw, 1rem); font-weight: 400; /*max-width: 1920px;*/ margin: 0 auto;
    font-variant-ligatures: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-stretch: normal; word-break: keep-all;}
.hidden {display: block; position: absolute; left: -1000%; width: 1px; height: 1px; overflow: hidden; color: #fff;}
/* body 스크롤 막기 [S] */
.not_scroll{
    position: fixed;
    overflow: hidden;
    width: 100%;
    height: 100%
}
.not_scroll section {
    position: relative;
    top: 0;
}
/* body 스크롤 막기 [E] */



/* common */
.wrap {width: 100%; margin:0 auto; position: relative;}
.wrap::before {content: ''; display: block; clear: both;}
.header_inner_bottom h1 {
    width: 237px;
}
.logo {
    display: inline-block;
    width: 100%;
    height: auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    text-indent: -999px;
    overflow: hidden;
}
.logo img {width: 100% !important; display: block;}
.logo img {width: 100% !important; display: block;}

/* appointment */
.appointment input[type="checkbox"] {appearance: none; position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;}
.appointment input[type="checkbox"] + label {display: inline-flex; align-items: center; gap: 6px; cursor: pointer; white-space: nowrap; vertical-align: middle;}
.appointment input[class="agree"] + label::before {content:''; display: block; flex-shrink: 0; width: 20px; height: 20px; background: #fff; border-radius: 4px;}
.appointment input[class="agree"]:checked + label::before {background-color: #214079;
    background-image: url(../images/btn_check_wht.png); background-repeat: no-repeat; background-size: 14px 10px; background-position: center;}

.appointment {width: 100%; box-sizing: border-box; position: fixed; bottom: 0; left: 0; z-index: 999;
    background: #20306ede; backdrop-filter: blur(20px); transition: all .2s; display: flex; align-items: stretch;}
.appointment.off {display: none;}

.appt-title {width: 20%; flex-shrink: 0; background: #ffffff;
    display: flex; align-items: center; justify-content: center; gap: 14px; padding: 14px 20px;
    clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 100%, 0 100%); box-sizing: border-box;}
.appt-title__icon {flex-shrink: 0; display: flex; align-items: center;}
.appt-title__text {color: #161718; font-size: clamp(0.9rem, 1.18vw, 1.0625rem); font-weight: 700; letter-spacing: -0.5px; white-space: nowrap; margin: 0;}

.appointment .inner {flex: 1; display: flex; align-items: center; padding: 12px 3% 12px 4%; box-sizing: border-box;}
.appointment .inner form {display: flex; align-items: center; width: 100%;}
.appointment .inner form .tab_ver {width: 100%; display: flex; align-items: center; gap: 12px;}
.appointment .inner form h3 {display: none;}
.appointment .inner form ul {display: flex; align-items: center;}
.appointment .inner form ul.input_box {width: 55%; gap: 8px;}
.appointment .inner form ul.input_box li:nth-child(1) {width: 30%;}
.appointment .inner form ul.input_box li:nth-child(2) {width: 22%;}
.appointment .inner form ul.input_box li:nth-child(3) {width: 48%;}
.appointment .inner form ul.input_box li input,
.appointment .inner form ul.input_box li select {width: 100%; background: #fff; border: none; border-radius: 4px; padding: 12px; outline: none;
    font-size: clamp(0.875rem, 1.11vw, 1rem); line-height: 22px; letter-spacing: -1px; color: #161718; vertical-align: middle; box-sizing: border-box; height: 46px;}
.appointment .inner form ul.input_box li input::placeholder {color: #777C81;}
.appointment .inner form ul.input_box li select {cursor: pointer; appearance: none; -webkit-appearance: none; padding-right: 28px; color: #777C81;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23777C81' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 10px center;}
.appointment .inner form ul.input_box li select.has-value {color: #161718;}
.appointment .inner form ul.agree_box {width: 45%; justify-content: flex-end; gap: 15px;}
.appointment .inner form ul.agree_box li:first-child {display: flex; align-items: center; white-space: nowrap;}
.appointment .inner form ul.agree_box li:nth-child(2) {display: block; white-space: nowrap; width: auto;}
.appointment .inner form ul.agree_box label {font-size: clamp(0.75rem, 0.97vw, 0.875rem); line-height: 1.2em; letter-spacing: -0.5px; color: #fff; white-space: nowrap;}
.appointment .inner form ul.agree_box label span {display: inline; padding: 0; vertical-align: middle;}
.appointment .inner form ul.agree_box label a {color: #fff; text-decoration: underline; font-size: inherit;}
.appointment .inner form ul.agree_box button {width: 186px; height: 60px; background: url(../images/btn_submit.gif) center no-repeat; background-size: cover; font-size: 0; flex-shrink: 0;}
.appointment .inner form label span {display: inline-block; vertical-align: top;}
.appointment .inner .close_btn {display: none;}

/* privacy consent dropdown */
.privacy_dropdown {display: none !important; position: static !important; width: 100% !important; max-width: 100% !important; max-height: 260px; overflow-y: auto; background: #fff; border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.15); padding: 16px; margin: 8px 0 0; box-sizing: border-box; text-align: left; float: none !important;}
.privacy_dropdown.on {display: block !important;}
.privacy_dropdown p {color: #333; font-size: 0.8125rem; line-height: 1.6; margin: 0 0 10px;}
.privacy_dropdown ol {margin: 0 0 10px; padding-left: 1.1em;}
.privacy_dropdown ol li {color: #333; font-size: 0.8125rem; line-height: 1.6; margin-bottom: 4px; white-space: normal;}
.privacy_dropdown__notice {color: #666; font-size: 0.75rem; margin-bottom: 0 !important;}

/* custom select dropdown */
.appointment .hidden-select {display: none;}
.appointment .custom-select {position: relative; width: 100%; height: 46px; box-sizing: border-box;}
.appointment .custom-select__btn {width: 100%; max-width: 222px; height: 100%; background: #fff; border: none; border-radius: 4px; padding: 12px 28px 12px 12px; font-size: clamp(0.875rem, 1.11vw, 1rem); line-height: 22px; letter-spacing: -1px; color: #777C81; cursor: pointer; text-align: left; box-sizing: border-box; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23777C81' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 10px center;}
.appointment .custom-select__btn.has-value {color: #161718;}
.appointment .custom-select__opts {display: block !important; list-style: none; margin: 0; padding: 4px 0; position: absolute; bottom: calc(100% + 4px); left: 0; right: 0; background: #fff; border-radius: 4px; box-shadow: 0 -4px 16px rgba(0,0,0,0.15); z-index: 200; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.2s ease, visibility 0s linear 0.2s;}
.appointment .custom-select.open .custom-select__opts {max-width: 222px; opacity: 1; visibility: visible; pointer-events: auto; transition: opacity 0.2s ease, visibility 0s linear 0s;}
.appointment .custom-select__opts li {padding: 10px 12px; cursor: pointer; font-size: 1.1rem; color: #161718; letter-spacing: -1px; white-space: nowrap;}
.appointment .custom-select__opts li:hover {color: #092fa1;}

/* counsel success popup */
#counsel_popup_overlay {display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 10000;}
#counsel_popup_overlay.on {display: block;}
#counsel_popup {display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 90%; max-width: 420px; background: #fff; border-radius: 20px; z-index: 10001;
    padding: 48px 40px 40px; box-sizing: border-box; text-align: center; position: fixed;}
#counsel_popup.on {display: block;}
.counsel-popup__icon {width: 64px; height: 64px; background: #214079; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; margin: 0 auto 24px;}
.counsel-popup__title {font-size: 20px; font-weight: 700; color: #161718; margin: 0 0 8px; letter-spacing: -0.5px;}
.counsel-popup__desc {font-size: 15px; color: #777C81 !important; margin: 0 0 32px; letter-spacing: -0.5px; line-height: 1.6;}
.counsel-popup__btn {display: block; width: 100%; height: 52px; background: #214079; color: #fff; border: none;
    border-radius: 10px; font-size: 16px; font-weight: 700; cursor: pointer; letter-spacing: -0.5px;
    font-family: Pretendard, 'Noto Sans KR', sans-serif;}
.counsel-popup__btn:hover {background: #1E2B4B;}
.counsel-popup__close {position: absolute; top: 14px; right: 18px; background: none; border: none;
    font-size: 28px; line-height: 1; color: #AAADB0; cursor: pointer; padding: 0;}

/*상단 특정 서브메뉴 */
.new-badge { display: inline-block; font-size: clamp(0.625rem, 0.83vw, 0.75rem); font-weight: bold; vertical-align: middle; position: relative; top: -2px; background-color: #d93333; color: #fff; width: 20px; height: 20px; line-height: 20px; text-align: center; border-radius: 50%; padding: 0; }

/* header common area */
#headerAreaPc {position: relative;}	
#headerAreaTablet {display: none; position: relative;}	
#headerAreaMobile {display: none; position: relative;}	
#headerAreaPc .header_inner {width: 100%; background: #ffffffbd; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid #E2E2E2; position: fixed; left: 0; transform: none; top: 0; z-index: 100; transition: all .2s;}	
#headerAreaPc .header_inner.block {backdrop-filter: blur(0);}	
#headerAreaPc .header_inner .header_inner_top {background: #214079; width: 100%; padding: 5.5px 16.66%; box-sizing: border-box; font-size: clamp(0.625rem, 0.83vw, 0.75rem); overflow: hidden;}
#headerAreaPc .header_inner .header_inner_top > div {float: left;}	
#headerAreaPc .header_inner .header_inner_top > div > a {padding: 0;}	
#headerAreaPc .header_inner .header_inner_top > ul {float: right;}	
#headerAreaPc .header_inner .header_inner_top > ul li {float: left; position: relative;}
#headerAreaPc .header_inner .header_inner_top > ul li:last-of-type:before {content: ''; display: block; width: 1px; height: 10px; background: #FFFFFF; position: absolute; left: 0; top: 3px ;}
#headerAreaPc .header_inner .header_inner_top a {color: #fff; display: block; padding: 0 8px;}	
    
#headerAreaPc .header_inner .header_inner_bottom {width: 100%; height: 72px; padding: 0 10%; box-sizing: border-box; display: flex; align-items: center; justify-content: space-between;}							
#headerAreaPc .header_inner .header_inner_bottom #gnb {position: relative; width: 40%;}		
.depth_first {display: flex; width: 100%; justify-content: center;}
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first::before {content: ''; display: block; clear: both;}		
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 {position: relative; flex: 1; text-align: center; align-self: stretch; display: flex; align-items: center; justify-content: center;}
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3:hover > a {font-weight: 700; border-bottom: 4px solid #214079;}
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a {width: 100%; display: block; padding: 21px 0; border-bottom: 4px solid rgba(0,0,0,0); 
    transform: skew(-0.1deg); font-weight: 500; font-size: clamp(1rem, 1.25vw, 1.125rem); color: #161718; position: relative; transition: all .2s;}	
@media (hover:hover) {
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a:hover {font-weight: 700; color: #1d2c58;}
}
/* #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a::before {content: ''; display: block; width: 4px; height: 4px; border-radius: 2px; background: #161718;
    position: absolute; top: 50%; transform: translateY(-50%); left: -16px;}
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3:first-of-type a::before {display: none;}	 */	
#headerAreaPc > ul.dropdown_menu {width: 100%; background: #ffffffbd; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); position: fixed; top: 72px; left: 0; z-index: 99; display: none; pointer-events: none; border-bottom: 1px solid #E2E2E2;}
#headerAreaPc > ul.dropdown_menu.on {display: block; height: 251px;}
#headerAreaPc > ul.dropdown_menu .dropdown_inner {position: absolute; top: 0; height: 100%; pointer-events: none;}
/* onetopdental 방식: 각 h3 내부 서브메뉴 */
#headerAreaPc .depth_first h3 .depth2-list {
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    display: none;
    list-style: none;
    padding: 20px 0 30px;
    margin: 0;
    z-index: 101;
    box-sizing: border-box;
}
#headerAreaPc .depth_first:hover .depth2-list {
    display: block;
}
#headerAreaPc .depth_first h3 .depth2-list li a {
    display: block;
    color: #161718;
    font-weight: 500;
    font-size: clamp(0.875rem, 1.18vw, 1.0625rem);
    padding: 9px 0;
    text-align: center;
    transform: skew(-0.1deg);
    transition: color .2s;
}
#headerAreaPc .depth_first h3 .depth2-list li a:hover {
    color: #214079;
}
#headerAreaPc > ul.dropdown_menu li {padding: 40px 24px; text-align: center; position: relative; transition: all .2s; width: 25%;}
#headerAreaPc > ul.dropdown_menu li.on {background: #F8F8F8;}
#headerAreaPc > ul.dropdown_menu li::before {content: ''; display: block; width: 1px; height: 75%; 
    background: #E2E2E2; position: absolute; left: 0; top: 88px;}
#headerAreaPc > ul.dropdown_menu li:last-child::after {content: ''; display: block; width: 1px; height: 75%; 
    background: #E2E2E2; position: absolute; right: 0; top: 88px;}
#headerAreaPc > ul.dropdown_menu li h3 {font-size: clamp(1rem, 1.25vw, 1.125rem); margin-bottom: 14px;}
#headerAreaPc > ul.dropdown_menu li a {display: block; color: #161718; font-weight: 500;
    font-size: clamp(0.875rem, 1.18vw, 1.0625rem); padding: 9px 0; transform: skew(-0.1deg); transition: all .2s;}
 #headerAreaPc > ul.dropdown_menu li a.on {color: #214079;}
/* #headerAreaPc > ul.dropdown_menu li.on a:first-of-type {color: #214079;} */
@media (hover:hover) {
    #headerAreaPc > ul.dropdown_menu li:hover {background: #F8F8F8;}
    #headerAreaPc > ul.dropdown_menu li a:hover {color: #214079;}
}
#headerAreaPc .header_inner .header_inner_bottom .right_menu {display: flex; align-items: center; gap: 6px; min-width: 237px; justify-content: flex-end;}

/* 지점 선택 [S] */
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch {position: relative;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a {display: inline-block; padding: 0 16px; min-width: 130px; box-sizing: border-box;
    border-radius: 190px; border: 1px solid #A4D0FF; background: #F0F7FF; vertical-align: middle; text-align: center; white-space: nowrap;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a.on > span::after {transform: rotate(180deg);}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a > span {display: inline-block; position: relative; vertical-align: middle;
    font-size: clamp(0.875rem, 1.18vw, 1.0625rem); letter-spacing: -1px; line-height: 38px; height: 38px; color: #214079; transform: skew(-0.1deg);}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a > span::after {content: ''; display: inline-block; width: 10px; height: 6px;
    background: url(../images/arrow_down_blue.png) center no-repeat; background-size: contain; vertical-align: 4px; margin-left: 12px; transition: all .1s;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches {width: 100%; box-sizing: border-box;
    position: absolute; top: 42px; left: 50%; transform: translateX(-50%); z-index: 999;
    border-radius: 10px; border: 1px solid #A4D0FF; background: #F0F7FF; padding: 8px 4px; display: none;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches li {background: #F0F7FF; border-radius: 8px;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches li:hover {background: #D6EAFF;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches li a {display: block; padding: 6.5px 0; text-align: center; white-space: nowrap;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches li a span {display: inline-block; font-size: clamp(0.875rem, 1.18vw, 1.0625rem); line-height: normal; letter-spacing: -1px; color: #214079;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > .branches li.on a span {border-bottom: 1px solid #214079;}
/* 지점 선택 [E] */

/* 라미네이트 이동 버튼 */
.btn_laminate {display: inline-block; color: #fff; background: #35B4B7 !important; border: none !important; padding: 0 16px; white-space: nowrap;
    font-size: clamp(0.875rem, 1.18vw, 1.0625rem); letter-spacing: -1px; line-height: 38px; height: 38px; vertical-align: middle; border-radius: 190px;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation {position: relative;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation img {/* width: 20px; */ height: 20px;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation span {font-family: 'Montserrat', sans-serif; font-weight: 500; 
    font-size: clamp(0.875rem, 1.11vw, 1rem); line-height: normal; letter-spacing: -1px; color: #161718;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a {display: inline-block; padding: 0 16px; height: 38px; line-height: 38px;
    border-radius: 200px; border: 1px solid #DFE0E2; background: #FAFAFA; vertical-align: middle; white-space: nowrap;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a > img {padding-right: 10px; vertical-align: sub;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a > span {display: inline-block; position: relative; vertical-align: initial; transform: skew(-0.1deg);}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a > span::before {content: ''; display: block; width: 1px; height: 100%; background: #D8D8D8;
    position: absolute; top: 0; left: -12px; display: none;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a > span::after {content: ''; display: inline-block; width: 10px; height: 6px;
    background: url(../images/arrow_down_bk.png) center no-repeat; background-size: contain; vertical-align: 3px; margin-left: 9px; transition: all .1s;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a.on > span::after {transform: rotate(180deg);}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu {width: 100%; box-sizing: border-box;
    position: absolute; top: 42px; left: 50%; transform: translateX(-50%); z-index: 999;
    border-radius: 10px; border: 1px solid #DFE0E2; background: #FAFAFA; padding: 8px 4px; display: none;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu li {background: #FAFAFA; border-radius: 8px;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu li:hover {background: #DFE0E2;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu li a {display: block; padding: 8px 0; text-align: center; color: #161718; white-space: nowrap;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu li a img {padding-right: 10px;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .dropdown_menu li.on a span {border-bottom: 1px solid #161718;}
#headerAreaPc .header_inner .header_inner_bottom .right_menu .menu_open {float: right; display: block; width: 48px; height: 48px;}

/* header site map */
.site_map {width: 100%; height: calc(100vh - 102px); background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(25px); 
    position: fixed; top: 100px; left: 0; z-index: 99; overflow-y: scroll; display: none;}
.site_map ul {padding: 34px 16.66% 68px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 32px;}
.site_map ul a {display: block; transition: all .2s;}
@media (hover:hover) {
    .site_map ul a:hover {color: #214079;}
    .site_map ul dt a:hover {border-color: #214079;}
}
.site_map ul li dl dt {margin-bottom: 16px;}
.site_map ul li dl dt a {font-weight: 500; font-size: clamp(0.875rem, 1.18vw, 1.0625rem); letter-spacing: -0.01em; border: 1px solid rgba(12, 130, 254, 0.15);
    border-radius: 4px; padding: 18px 10%;}
.site_map ul li dl dt a.on {color: #214079; border-color: #214079;}
.site_map ul li dl dd {margin-bottom: 8px;}
.site_map ul li dl dd a {font-weight: 500; font-size: clamp(0.75rem, 0.97vw, 0.875rem); border: 1px solid rgba(12, 130, 254, 0.15); border-radius: 4px;
    padding: 16px 10%;}
.site_map ul li dl dd a.on {color: #214079;}

	

/* footer common area */
.footer_logo {display: block; margin-bottom: 32px; width: 180px; height: 46px;}
.footer_logo {width: 280px; height: auto;}

#footerArea { color: #fff;}
#footerAreaMobile {display: none;}
.footer_inner {width: 100%; padding: 60px 16.66% 150px; box-sizing: border-box;}
.footer_top {display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 40px; margin-bottom: 46px;}
.footer_top > div {box-sizing: border-box;}
.footer_top .footer_title {font-weight: 700; font-size: clamp(1.125rem, 1.67vw, 1.5rem); letter-spacing: -1px; margin-bottom: 20px; text-align: center;}
.footer_top .footer_address .btn_tel a {font-family: 'Montserrat', sans-serif; font-size: clamp(2rem, 3.75vw, 3.375rem); line-height: 1em; font-weight: 700; color: #fff;}
.footer_top .footer_address .implant_label {display: inline-block; color: #001E3D; font-size: clamp(1.0625rem, 1.53vw, 1.375rem); font-weight: 500; letter-spacing: -1px;
    border-radius: 6px; background: #FFDA19; height: 36px; line-height: 36px; padding: 0 8.5px; margin-top: 16px;}
.footer_top .footer_address .sns {margin-top: 40px; font-size: clamp(1.125rem, 1.67vw, 1.5rem);}
.footer_top .footer_address .sns .footer_title {margin-bottom: 24px; text-align: left;}
.footer_top .footer_address .sns .footer_title i {font-style: normal; font-family: 'Montserrat', sans-serif; font-weight: 600;}
.footer_top .footer_address .sns ul {display: flex; gap: 10px;}
.footer_top .footer_address .sns ul li {width: 17%;}
.footer_top .footer_address .sns ul li a {display: block; width: 100%; padding-top: calc(62/62 * 100%); background-repeat: no-repeat; background-position: center; background-size: contain;}
.footer_top .footer_address .sns ul li:nth-child(1) a {background-image: url(../images/icon_kakao.png);}
.footer_top .footer_address .sns ul li:nth-child(2) a {background-image: url(../images/icon_youtube.png);}
.footer_top .footer_address .sns ul li:nth-child(3) a {background-image: url(../images/icon_insta.png);}
.footer_top .footer_address .sns ul li:nth-child(4) a {background-image: url(../images/icon_blog.png);}
.footer_top .footer_address .sns ul li:nth-child(5) a {background-image: url(../images/icon_band.png);}

.footer_top .footer_schedule {border-radius: 20px; background: rgba(255, 255, 255, 0.03); padding: 34px;}
.footer_top .footer_schedule ul li {display: flex; justify-content: space-between; align-items: center; padding-bottom: 20px; font-family: 'Montserrat', sans-serif; font-size: clamp(1.125rem, 1.67vw, 1.5rem);}
.footer_top .footer_schedule ul li:last-child {margin-bottom: 23px; border-bottom: 1px solid rgba(255,255,255, .1);}
.footer_top .footer_schedule ul li span {display: block; width: 50%;}
.footer_top .footer_schedule ul li .schedule_week {font-family: 'Noto Sans KR', sans-serif;}
.footer_top .footer_schedule ul li .schedule_time {font-family: 'Montserrat', sans-serif; text-align: right;}
.footer_top .footer_schedule .notice {display: block; font-size: clamp(1rem, 1.39vw, 1.25rem); letter-spacing: -1px; text-align: center;}

.footer_top .footer_map {border-radius: 20px; background: rgba(255, 255, 255, 0.03); padding: 40px; font-size: clamp(1rem, 1.39vw, 1.25rem); line-height: 28px; letter-spacing: -1px; text-align: center;}
.footer_top .footer_map ul {margin: 12px auto 18px; display: flex; align-items: center; justify-content: space-around; gap: 8px;}
.footer_top .footer_map ul li {width: 33%; height: 0; padding-top: calc(102/102*33%); position: relative;}
.footer_top .footer_map ul li::before {content: ''; display: block; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.05); border-radius: 50%;
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.footer_top .footer_map ul li a {display: flex; flex-direction: column; align-items: center; justify-content: center; 
    width: 100%; height: 100%; color: #fff; font-size: clamp(1rem, 1.39vw, 1.25rem); letter-spacing: -1px; border-radius: 50%; 
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.footer_top .footer_map ul li a span {display: block; width: 15px; height: 15px; margin: 0 auto 12px;
    background-position: center; background-size: contain; background-repeat: no-repeat;}
.footer_top .footer_map ul li:nth-child(1) a span {background-image: url(../images/icon_footer_naver.png);}
.footer_top .footer_map ul li:nth-child(2) a span {background-image: url(../images/icon_footer_kakao.png);}
.footer_top .footer_map ul li:nth-child(3) a span {background-image: url(../images/icon_footer_google.png);}
.footer_top .footer_map a {color: #fff;}

.footer_bottom {display: flex; justify-content: space-between; align-items: flex-start}
.footer_bottom .footer_bottom_left {color: #8598AD; font-size: clamp(1rem, 1.25vw, 1.125rem); line-height: normal; letter-spacing: -1px;}
.footer_bottom .footer_bottom_left .btn_privacy {overflow: hidden; margin-bottom: 20px;}
.footer_bottom .footer_bottom_left .btn_privacy li {float: left;}
.footer_bottom .footer_bottom_left .btn_privacy li a {display: inline-block; padding: 0 30px; position: relative; color: #8598AD;}
.footer_bottom .footer_bottom_left .btn_privacy li a::after {content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: #8598AD;  
    position: absolute; top: 50%; transform: translateY(-50%); right: 0;}
.footer_bottom .footer_bottom_left .btn_privacy li:first-of-type a {padding-left: 0;}
.footer_bottom .footer_bottom_left .btn_privacy li:last-of-type a::after {display: none;}
.footer_bottom .footer_bottom_left .main_info span {display: inline-block; padding: 0 13px; position: relative;}
.footer_bottom .footer_bottom_left .main_info span:nth-of-type(1) {padding-left: 0;}
.footer_bottom .footer_bottom_left .main_info span::after {content: ''; display: block; width: 1px; height: 1em; background: #8598AD;
    position: absolute; top: 50%; transform: translateY(-40%); right: 0;}
.footer_bottom .footer_bottom_left .main_info span:last-of-type::after {display: none;}
.footer_bottom .footer_bottom_left .copy_text {font-family: 'Montserrat', sans-serif; font-size: clamp(0.875rem, 1.11vw, 1rem); color: #8598AD; text-transform: uppercase; margin-top: 1em;}

/* family site */
.family {width: 25%; position: relative;}
.family .arrow {width: 100%; display: inline-block; color: #fff; font-weight: 500; font-size: clamp(0.75rem, 0.97vw, 0.875rem); padding: 15px 24px;
    border: 1px solid #8598AD; border-radius: 8px; box-sizing: border-box; position: relative;}
.family .arrow::after {content: ''; display: block; width: 12px; height: 8px; position: absolute; right: 24px; top: 22px;
    background: url(../images/arrow_wht_down.png) center no-repeat; transform: rotate(-540deg); transition: all .2s;}
.arrow.on {background: #8598AD;}
.arrow.on::after {transform: rotate(0);}
.family .aList {width: 100%; position: absolute; bottom: 52px; left: 0; z-index: 100; box-sizing: border-box;
    border-radius: 8px 8px 0 0; border: 1px solid #8598AD; display: none;}
.family .aList li a {display: block; padding: 15px 20px; background: #001E3D; font-size: clamp(0.75rem, 0.97vw, 0.875rem); letter-spacing: -0.05em; color: #fff;
    border-top: 1px solid #8598AD; box-sizing: border-box;}
.family .aList li:first-child a {border-top-left-radius: 8px; border-top-right-radius: 8px; border-top: none;}


/* quick & top button */
.quick {position: fixed; top: 120px; right: 0; z-index: 999;}
.quick_wrap {
 position: fixed;
 top: 50%;
 right: 0;
 transform: translateY(-50%);
 z-index: 999;
 display: flex;
 flex-direction: column;
 gap: 8px;
 align-items: center;
}
.quick_wrap .quick {
 position: static;
 border-radius: 50px 0 0 50px;
 box-shadow: 0 3px 18px rgb(29 44 88 / 10%);
 overflow: hidden;
}
.quick_wrap .quick > ul {
 display: flex;
 flex-direction: column;
 padding: 0;
 margin: 0;
 list-style: none;
}
.quick--item {
 width: auto !important;
 background: none !important;
 position: static !important;
}
.quick--item::after { display: none !important; }
.quick__link {
 display: flex !important;
 flex-direction: column !important;
 align-items: center !important;
 padding: 16px 14px !important;
 background: #fff !important;
 text-decoration: none !important;
 min-width: 76px !important;
 color: #333 !important;
}
.quick__icon {
 width: 48px !important;
 height: 48px !important;
 border-radius: 50% !important;
 margin: 0 auto !important;
 background-size: 60% !important;
 background-position: center !important;
 background-repeat: no-repeat !important;
 display: flex !important;
 align-items: center !important;
 justify-content: center !important;
}
.quick__icon--img { background-color: transparent !important; }
.quick__icon--img img {
 width: 30px !important;
 height: 30px !important;
 object-fit: contain !important;
}
.quick__text {
 font-size: 16px !important;
 font-weight: 600 !important;
 color: #333 !important;
 line-height: 1.3 !important;
 text-align: center !important;
 letter-spacing: -0.3px !important;
}
a.quick__link.modalOpen {
 background: #ff9900 !important;
}
.quick--tel .quick__link {
 background: #212121 !important;
 padding-bottom: 25px !important;
}
.quick--tel .quick__icon {
 background-color: rgba(255,255,255,.12) !important;
}
.quick--tel .quick__text {
 color: #FFDA19 !important;
}
.quick_wrap .quick_top { margin: 0; }
.quick__top-link {
 display: flex !important;
 flex-direction: column !important;
 align-items: center !important;
 justify-content: center !important;
 width: 76px !important;
 height: 76px !important;
 padding: 12px 14px !important;
 background: #1E2B4B !important;
 border-radius: 200px !important;
 box-shadow: 0 3px 18px rgba(0,0,0,.13) !important;
 color: #fff !important;
 text-decoration: none !important;
 transition: transform .15s, box-shadow .15s !important;
}
.quick__top-link p {
 margin: 0 !important;
 font-size: 20px !important;
 font-weight: 700 !important;
 line-height: 1.4 !important;
 font-family: "Montserrat", sans-serif !important;
}
@media (max-width: 1199px) {
 .quick__link { min-width: 66px !important; padding: 12px 10px !important; }
 .quick__icon { width: 40px !important; height: 40px !important; }
 .quick__top-link { min-width: 66px !important; padding: 10px 10px !important; }
}
#footerArea { display: block !important; }
.quick ul li {width: 110px; background: #fff; position: relative;}
.quick ul li:not(:last-child):after {content: ''; display: block; width: 80%; height: 1px; background: #eee; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
.quick ul li a {display: block; padding: 19px 0 15px; text-align: center;}
.quick ul li a span {display: block; width: 36px; height: 36px; margin: 0 auto 10px; background-size: contain; background-position: center; background-repeat: no-repeat;}
.quick ul li a p {font-weight: 500; font-size: clamp(0.875rem, 1.11vw, 1rem); line-height: 20px; letter-spacing: -0.5px;}

.quick ul li.quick_reservation {background: #FFDA19;}
.quick ul li.quick_reservation_naver {background: #03C75A;}
.quick ul li.quick_reservation_naver:not(:last-child):after {content: ''; display: block; width: 80%; height: 1px; background: #03c75a; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
.quick ul li.quick_reservation_naver a {color: #fff;}

.quick ul li.quick_tel::after {display: none;}
.quick ul li.quick_tel a {background: #212121;}
.quick ul li.quick_tel a strong {font-size: clamp(1.5rem, 2.22vw, 2rem); line-height: 1.8rem; color: #FFDA19;}
.quick ul li.quick_tel a .label {display: inline-block; background: #FFDA19; padding: 4px 6px; border-radius: 5px; margin-top: .8em;}

.quick ul li .topMove {background: #214079; padding: 6px 0; color: #fff;}
.quick ul li .topMove p {font-family: 'Montserrat', sans-serif;}
    

/* PC (해상도 1740px ~ 1860px) */
@media screen and (max-width:1860px) {

    /* header site map */
    .site_map ul {padding: 34px 14% 68px;}
    
    /* header */
    #headerAreaPc .header_inner .header_inner_top {padding: 6.5px 12%;}
    #headerAreaPc .header_inner .header_inner_bottom {padding: 0 6%;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a {text-align: center; padding: 22.5px 12px;}
    #headerAreaPc > ul.dropdown_menu li {padding: 32px 16px;}
    /* footer */
    .footer_top {grid-template-columns: repeat(2, 1fr);}
    .footer_top .footer_address {grid-column: 1/2; grid-row: 1/2;}
    .footer_top .footer_schedule {grid-column: 1/2;}
    .footer_top .footer_map {grid-column: 2/3;}
}

/* PC (해상도 1540px ~ 1740px) */
@media screen and (max-width:1740px) {

	/* header site map */
    .site_map ul {padding: 34px 14% 68px;}

    /* header */
    #headerAreaPc .header_inner .header_inner_top {padding: 6.5px 8%;}
    #headerAreaPc .header_inner .header_inner_bottom {padding: 0 2%;}
    /* #headerAreaPc > ul.dropdown_menu padding removed */

    #headerAreaPc > ul.dropdown_menu li::before {height: 70%; top: 78px;}
    #headerAreaPc > ul.dropdown_menu li:last-child::after {height: 70%; top: 78px;}
    #headerAreaPc > ul.dropdown_menu li h3 {font-size: 16px; margin-bottom: 14px;}
    #headerAreaPc > ul.dropdown_menu li a {font-size: 14px; padding: 10px 0;}
}

/* PC (해상도 1540px ~ 1680px) */
@media screen and (max-width: 1680px) {

}

/* PC (해상도 1440px ~ 1540px) */
@media screen and (max-width:1540px) {

    /* header */
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a {font-size: 15px; margin: 0;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a::before {left: -2px;}
    /* 라미네이트 이동 버튼 */
    .btn_laminate {font-size: 14px; line-height: 34px; height: 34px;}
    /* 라미네이트 이동 버튼 */
    /* 지점 선택 반응형 */
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a {min-width: 106px; padding: 0 12px;}
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a > span {font-size: 14px; line-height: 34px; height: 34px;}
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_branch > a > span::after {vertical-align: 2px;}
    /* 지점 선택 반응형 */
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation span {font-size: 14px; line-height: 34px; height: 34px;}
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a {font-size: 14px; line-height: 34px; height: 34px; padding: 0 12px;}
    #headerAreaPc .header_inner .header_inner_bottom .right_menu .select_nation > a > span::after {vertical-align: 2px;}

    /* header site map */
    .site_map ul {padding: 34px 10% 68px;}

    /* footer */
    .footer_inner {padding: 60px 12% 220px;}
}

/* PC (해상도 1058px ~ 1440px) */
@media screen and (max-width:1440px) {
    /* appointment */
    .appointment .inner form ul.input_box {width: 55%;}
    .appointment .inner form ul.agree_box {width: 45%; gap: 10px;}
    .appointment .inner form ul.agree_box label {font-size: 13px; height: auto !important;}
    .appointment .inner form ul.agree_box label span {width: 145px; white-space: normal;}
    .appointment .inner form ul.agree_box label span a {display: block;}
    .appt-title {width: 18%;}
    .appt-title__text {font-size: 0.875rem;}

    /* header */
    #headerAreaPc .header_inner .header_inner_top {padding: 6.5px 5%;}
    #headerAreaPc .header_inner .header_inner_bottom {padding: 0 4%;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a {font-size: 15px; padding: 22.5px 6px;}
    #headerAreaPc > ul.dropdown_menu li h3 {font-size: 14px; margin-bottom: 14px;}
    #headerAreaPc > ul.dropdown_menu li a {font-size: 12px; padding: 8px 0;}

    /* header site map */
    .site_map ul {padding: 34px 8% 68px;}

    /* footer */
    .footer_inner {padding: 60px 8% 220px;}
}
@media screen and (max-width:1340px) {
    #headerAreaPc .header_inner .header_inner_bottom {padding: 0 12px;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a{font-size: 1rem;}
}
/* PC (해상도 1058px ~ 1130px) */
@media screen and (max-width:1130px) {
    /* header */
    #headerAreaPc .header_inner .header_inner_top {padding: 6.5px 3%;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a {font-size: 1rem; padding: 22.5px 4px;}
    #headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 a::before {display: none;}
    #headerAreaPc > ul.dropdown_menu li{padding: 8px 10px;}
}

/* PC (해상도 1024px ~ 1058px) */
@media screen and (max-width:1058px) {
    /* header */
    #headerAreaPc .header_inner .header_inner_top {padding: 6.5px 2%;}
    #headerAreaPc .header_inner .header_inner_bottom {padding: 0 4px;}

    /* footer */
    .footer_inner {padding: 60px 6% 220px;}
}

/* 태블릿 (해상도 769px ~ 1024px) */
@media screen and (max-width:1024px) {

    /* header */
    #headerAreaPc {display: none;}	
    #headerAreaTablet {display: block;}	
    #headerAreaMobile {display: none; position: relative;}
    #headerAreaTablet .header_inner .header_inner_bottom .menu_open {display: block;}	
    #headerAreaTablet .header_inner {width: 100vw; /* height: 132px; */ background: #fff; position:fixed; left: 0; right: 0; transform: none; top: 0; z-index: 100;
        /* backdrop-filter: blur(30px) saturate(2); -webkit-backdrop-filter: blur(30px); */ transition: all .2s;}	
    #headerAreaTablet .header_inner .header_inner_top {display: none !important; background: #214079; width: 100%; padding: 5.5px 5%; box-sizing: border-box; font-size: 12px; overflow: hidden;}
    #headerAreaTablet .header_inner .header_inner_top > div {float: left;}	
    #headerAreaTablet .header_inner .header_inner_top > div > a {padding: 0;}	
    #headerAreaTablet .header_inner .header_inner_top > ul {float: right;}	
    #headerAreaTablet .header_inner .header_inner_top > ul li {float: left; position: relative;}
    #headerAreaTablet .header_inner .header_inner_top > ul li:last-of-type:before {content: ''; display: block; width: 1px; height: 10px; background: #FFFFFF; position: absolute; left: 0; top: 3px ;}
    #headerAreaTablet .header_inner .header_inner_top a {color: #fff; display: block; padding: 0 8px;}	
    #headerAreaTablet .header_inner .header_inner_bottom {width: 100%; padding: 13.5px 5%; box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #E2E2E2;}			
    #headerAreaTablet .header_inner .header_inner_bottom .menu_open {float: right; display: block; width: 44px; height: 44px; display: flex; flex-direction: column; align-items: center; justify-content: center;}
    #headerAreaTablet .header_inner .header_inner_bottom .menu_open span {display: block; width: 70%; height: 2px; background: #161718; margin-bottom: 6px;}
    #headerAreaTablet .header_inner .header_inner_bottom .menu_open span:last-of-type {margin-bottom: 0;}
    #headerAreaTablet .header_inner .header_inner_bottom .menu_open strong {font-weight: 600;}
    #headerAreaTablet .right_menu {display: flex; align-items: center; justify-content: space-between; gap: 8px;}
    #headerAreaTablet .mobileAllMenu_inner .mobileAllMenu_list_top {display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 26px 5%;}		
    #headerAreaTablet .mobileAllMenu_inner .mobileAllMenu_list_top .home {display: block; width: 24px; height: 24px;
        background: url(../images/btn_home_bk.png) center no-repeat; background-size: contain; text-indent: -9999px; font-size: 0; color: #fff;}
    /* 라미네이트 이동 버튼 */
    .btn_laminate {font-size: 18px; padding: 0 16px; height: 38px; line-height: 38px;}
    /* 라미네이트 이동 버튼 */

    /* 지점 선택 [S] */
    #headerAreaTablet .right_menu .select_branch {position: relative;}
    #headerAreaTablet .right_menu .select_branch > a {display: inline-block; padding: 0 16px; height: 38px; line-height: 38px; min-width: 90px; text-align: center;
        border-radius: 190px; border: 1px solid #A4D0FF; background: #F0F7FF; vertical-align: middle; white-space: nowrap;}
    #headerAreaTablet .right_menu .select_branch > a.on > span::after {transform: rotate(180deg);}
    #headerAreaTablet .right_menu .select_branch > a > span {display: inline-block; position: relative; font-size: 18px; line-height: normal;
        letter-spacing: -1px; color: #214079; transform: skew(-0.1deg);}
    #headerAreaTablet .right_menu .select_branch > a > span::after {content: ''; display: inline-block; width: 10px; height: 6px; margin-left: 12px;
        background: url(../images/arrow_down_blue.png) center no-repeat; background-size: contain; vertical-align: 4px; transform: rotate(0); transition: all .1s;}
    #headerAreaTablet .right_menu .select_branch > .branches {width: 100%; box-sizing: border-box;
        position: absolute; top: 42px; left: 50%; transform: translateX(-50%); z-index: 999;
        border-radius: 10px; border: 1px solid #A4D0FF; background: #F0F7FF; padding: 8px 4px; display: none;}
    #headerAreaTablet .right_menu .select_branch > .branches li {background: #F0F7FF; border-radius: 8px;}
    #headerAreaTablet .right_menu .select_branch > .branches li:active {background: #D6EAFF;}
    #headerAreaTablet .right_menu .select_branch > .branches li a {display: block; padding: 6.5px 0; text-align: center; white-space: nowrap;}
    #headerAreaTablet .right_menu .select_branch > .branches li a span {color: #214079; font-size: 18px; line-height: normal; letter-spacing: -1px;}
    #headerAreaTablet .right_menu .select_branch > .branches li.on span {border-bottom: 1px solid #214079;}
    /* 지점 선택 [E] */

    #headerAreaTablet .right_menu .select_nation {position: relative; display: flex; align-items: center; justify-content: flex-end; gap: 10px;}
    #headerAreaTablet .right_menu .select_nation img {width: 20px; height: 20px;}
    #headerAreaTablet .right_menu .select_nation span {font-family: 'Montserrat', sans-serif; font-weight: 500; 
        font-size: 16px; line-height: normal; letter-spacing: -1px; color: #161718;}
    #headerAreaTablet .right_menu .select_nation > a {display: inline-block; padding: 0 14px; height: 38px; line-height: 36px;
        border: 1px solid #DFE0E2; background: #FAFAFA; border-radius: 200px; vertical-align: middle; white-space: nowrap;}
    #headerAreaTablet .right_menu .select_nation > a.on > span::after {transform: rotate(180deg);}
    #headerAreaTablet .right_menu .select_nation > a > img {padding-right: 24px; margin-bottom: 4px;}
    #headerAreaTablet .right_menu .select_nation > a > span {display: inline-block; line-height: 1em; vertical-align: middle; position: relative; font-size: 0;}
    #headerAreaTablet .right_menu .select_nation > a > span::before {content: ''; display: block; width: 1px; height: 20px; background: #ccc;
        position: absolute; top: -8px; left: -12px;}
    #headerAreaTablet .right_menu .select_nation > a > span::after {content: ''; display: inline-block; width: 10px; height: 6px; 
        background: url(../images/arrow_down_bk.png) center no-repeat; background-size: contain; vertical-align: 3px; transform: rotate(0); transition: all .1s;}
    #headerAreaTablet .right_menu .dropdown_menu {position: absolute; top: 42px; left: 0; z-index: 100; width: 100%; box-sizing: border-box;
        border-radius: 10px; border: 1px solid #DFE0E2; background: #FAFAFA; padding: 8px 4px; overflow: hidden;}
    #headerAreaTablet .right_menu .dropdown_menu li.on a span {border-bottom: 1px solid #161718;}
    #headerAreaTablet .right_menu .dropdown_menu li a {display: block; padding: 8px 0; border-radius: 8px; text-align: center; white-space: nowrap;}
    #headerAreaTablet .right_menu .dropdown_menu li a:active {background: #DFE0E2;}
    #headerAreaTablet .right_menu .dropdown_menu li a img {padding-right: 10px;}
    #headerAreaTablet .right_menu .btn_close {height: 48px;}
    #headerAreaTablet .right_menu .btn_close a {display: inline-block; width: 24px; height: 24px; padding: 12px 0;
        background: url(../images/btn_close_mo.png) center no-repeat; background-size: contain;}

    .mobileAllMenu_bg {width: 100%; height: 100vh; background: rgba(1, 55, 112, .5); position: fixed; top: 0; left: 0; z-index: 999; display: none;}
    #tabletAllMenu .mobileAllMenu_inner {width: 55%; height: 100vh; overflow: scroll; background: #fff; position: fixed; top: 0; right: -100%; z-index: 1000;}
    #tabletAllMenu .mobileAllMenu_list {margin-bottom: 24px;}
    #tabletAllMenu .mobileAllMenu_list .mobileAllMenu_list_top .select_nation .dropdown_menu {top: 46px;}
    #tabletAllMenu .mobileAllMenu_list .depth1 h3 a {color: #161718; font-weight: 500; font-size: 17px; letter-spacing: -0.01em; display: block;
        border-bottom: 1px solid #E2E2E2; padding: 18px 5%; box-sizing: border-box; position: relative;}
    #tabletAllMenu .mobileAllMenu_list .depth1 h3 a::after {content: ''; display: block; width: 24px; height: 24px; background-position: center; background-repeat: no-repeat;
        background-image: url(../images/arrow_gray_down_mo.png); background-size: contain; position: absolute; top: 50%; margin-top: -12px; right: 5%;}
    #tabletAllMenu .mobileAllMenu_list .depth1 h3 a.on::after {background-image: url(../images/arrow_blue_up.png);}
    #tabletAllMenu .mobileAllMenu_list .depth1 .dropdown_menu li a {display: block; color: #161718; font-weight: 500; font-size: 14px;
        background: #D6EAFF; padding: 16px 5%; box-sizing: border-box;}
    /* hover */
    @media (hover:hover) {
        #tabletAllMenu .mobileAllMenu_list .dropdown_menu li a:hover {color: #214079;}
    }
    #tabletAllMenu .mobileAllMenu_list .dropdown_menu li a:active {color: #214079;}
    #tabletAllMenu .contact_us {margin-bottom: 24px;}
    #tabletAllMenu .contact_us ul {display: flex; align-items: center; justify-content: center; gap: 1%;}
    #tabletAllMenu .contact_us ul li {width: 29%;}
    #tabletAllMenu .contact_us ul li a {display: block; text-align: center; padding: 12px 0;
        border-radius: 4px; font-size: 16px; color: #161718; font-weight: 500; box-sizing: border-box;}
    #tabletAllMenu .contact_us ul li a span {display: block; width: 60px; height: 60px; margin: 0 auto 6px; background-color: #001E3D; border-radius: 50%;
        background-position: 50% 50%; background-repeat: no-repeat; background-size: 24px;}
    #tabletAllMenu .contact_us ul li:nth-of-type(1) a span {background-image: url(../images/btn_call.png);}
    #tabletAllMenu .contact_us ul li:nth-of-type(2) a span {background-image: url(../images/btn_kakao.png);}
    #tabletAllMenu .contact_us ul li:nth-of-type(3) a span {background-image: url(../images/btn_online.png);}
    #tabletAllMenu .slogan {background: #214079;}
    #tabletAllMenu .slogan p {font-weight: 700; font-size: 16px; line-height: 20px; letter-spacing: -0.04em; color: #FFFFFF; padding: 16px 5%;}
    #tabletAllMenu .member {padding: 12px 5%; margin-bottom: 145px; text-align: center;}
    #tabletAllMenu .member ul {display: flex; align-items: center; justify-content: center;/*  margin-bottom: 40px; */}
    #tabletAllMenu .member ul li a {display: inline-block; padding: 12px 8px; color: #161718; font-weight: 500; font-size: 14px; position: relative;}
    #tabletAllMenu .member ul li a::after {content: ''; width: 1px; height: 9px; background: #161718; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
    #tabletAllMenu .member ul li:last-child a::after {display: none;}


    /* footer */
    #footerArea {display: none;}
    #footerAreaMobile {display: block; background: #001E3D; border-top: none; color: #fff;}
    #footerAreaMobile .footer_top {grid-template-columns: repeat(1, 1fr); gap: 20px; margin-bottom: 20px;}
    #footerAreaMobile .footer_top .footer_address {grid-column: 1/3; margin-bottom: 20px;}
    #footerAreaMobile .footer_top .footer_schedule {grid-column: 1/3;}
    #footerAreaMobile .footer_top .footer_map {grid-column: 1/3; text-align: left;}

    #footerAreaMobile .footer_top .footer_title {text-align: left;}

    #footerAreaMobile .footer_top .footer_address .btn_tel {display: inline-block; vertical-align: middle;}
    #footerAreaMobile .footer_top .footer_address .implant_label {font-size: 18px; font-weight: 700; height: 34px; line-height: 34px; padding: 0 10px; margin: 0 14px; vertical-align: middle;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry {display: none;}
    
    #footerAreaMobile .footer_schedule {border-radius: 20px; background: rgba(255, 255, 255, 0.03); padding: 40px;}
    #footerAreaMobile .footer_schedule ul {display: grid; grid-template-columns: repeat(3, 1fr); row-gap: 24px;}
    #footerAreaMobile .footer_schedule ul li {justify-content: flex-start; gap: 12px; padding-bottom: 0; font-size: 20px;}
    #footerAreaMobile .footer_schedule ul li:last-child {margin-bottom: 0; border-bottom: none;}
    #footerAreaMobile .footer_schedule ul li span {display: inline; width: auto; vertical-align: middle;}
    #footerAreaMobile .footer_schedule ul li span.schedule_week {font-weight: 700;}
    #footerAreaMobile .footer_schedule .notice {font-size: 18px; text-align: left; margin-top: 24px; padding-top: 24px; border-top: 1px solid rgba(255,255,255, .1);}
    
    #footerAreaMobile .footer_top .footer_map ul {margin: 20px auto 24px; gap: 12px;}
    #footerAreaMobile .footer_top .footer_map ul li {height: auto; padding-top: 0; position: relative;}
    #footerAreaMobile .footer_top .footer_map ul li::before {display: none;}
    #footerAreaMobile .footer_top .footer_map ul li a {flex-direction: row; gap: 12px; height: auto; padding: 22.5px 0;
        position: relative; top: 0; left: 0; transform: translate(0, 0); border-radius: 470px; background: rgba(255, 255, 255, 0.05);}
    #footerAreaMobile .footer_top .footer_map ul li a span {width: 16px; height: 16px; margin: 0;}

    #footerAreaMobile .footer_bottom {flex-direction: column; font-size: 16px; position: relative;}

    #footerAreaMobile .footer_bottom .sns {width: 100%;}
    #footerAreaMobile .footer_bottom .sns .footer_title {display: none;}
    #footerAreaMobile .footer_bottom .sns ul {width: 45%; display: flex; gap: 10px; margin-bottom: 40px;}
    #footerAreaMobile .footer_bottom .sns ul li {width: 25%;}
    #footerAreaMobile .footer_bottom .sns ul li a {display: block; width: 100%; padding-top: calc(62/62 * 100%); background-repeat: no-repeat; background-position: center; background-size: contain;}
    #footerAreaMobile .footer_bottom .sns ul li:nth-child(1) a {background-image: url(../images/icon_kakao.png);}
    #footerAreaMobile .footer_bottom .sns ul li:nth-child(2) a {background-image: url(../images/icon_youtube.png);}
    #footerAreaMobile .footer_bottom .sns ul li:nth-child(3) a {background-image: url(../images/icon_insta.png);}
    #footerAreaMobile .footer_bottom .sns ul li:nth-child(4) a {background-image: url(../images/icon_blog.png);}

    #footerAreaMobile .family {width: 40%; position: absolute; right: 0; top: 10px;}

    #footerAreaMobile .footer_bottom .btn_privacy {width: 100%; overflow: hidden; margin-bottom: 20px;}
    #footerAreaMobile .footer_bottom .btn_privacy li {float: left;}
    #footerAreaMobile .footer_bottom .btn_privacy li a {display: inline-block; padding: 0 12px; position: relative; color: #8598AD;}
    #footerAreaMobile .footer_bottom .btn_privacy li a::after {content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: rgba(133, 152, 173, .2);  
        position: absolute; top: 50%; transform: translateY(-50%); right: -3px;}
    #footerAreaMobile .footer_bottom .btn_privacy li:first-of-type a {padding-left: 0;}
    #footerAreaMobile .footer_bottom .btn_privacy li:last-of-type a::after {display: none;}

    #footerAreaMobile .footer_bottom .main_info span {display: inline-block; padding: 0 10px; font-size: 14px; position: relative; color: #8598AD;}
    #footerAreaMobile .footer_bottom .main_info span:nth-of-type(1) {padding-left: 0;}
    #footerAreaMobile .footer_bottom .main_info span:last-of-type {padding-right: 0;}
    #footerAreaMobile .footer_bottom .main_info span::after {content: ''; display: block; width: 1px; height: 1em; background: rgba(133, 152, 173, .2);
        position: absolute; top: 50%; transform: translateY(-40%); right: -2px;}
    #footerAreaMobile .footer_bottom .main_info span:last-of-type::after {display: none;}
    #footerAreaMobile .footer_bottom .copy_text {font-family: 'Montserrat', sans-serif; font-size: 14px; color: #8598AD; text-transform: uppercase; margin-top: 1em;}

    /* quick & top button */
    .quick ul li {width: 100px;}
    .quick ul li a {padding: 12px 0;}
    .quick ul li a span {width: 30px; height: 30px; margin: 0 auto 8px;}
    .quick ul li a p {font-size: 14px; line-height: 18px;}

    .quick ul li.quick_reservation_naver {background: #03C75A;}
    .quick ul li.quick_reservation_naver a {color: #fff;}
    
    .quick ul li.quick_tel a strong {font-size: 26px; line-height: 1.5rem;}
    .quick ul li.quick_tel a .label {padding: 4px 6px; margin-top: .8em;}
    
    .quick ul li .topMove {padding: 5px 0;}

    #topMove.mo_ver {display: none;}
}

/* 태블릿 퀵메뉴 슬라이드 토글 */
.quick_toggle_btn { display: none; }
@media screen and (min-width: 769px) and (max-width: 1024px) {
    .quick_slide {
        position: relative;
        transform: translateX(100%);
        transition: transform 0.3s ease;
    }
    .quick_wrap.is-open .quick_slide {
        transform: translateX(0);
    }
    .quick_toggle_btn {
        display: flex !important;
        align-items: center;
        justify-content: center;
        position: absolute;
        left: -36px;
        top: 50%;
        transform: translateY(-50%);
        width: 36px;
        height: 56px;
        background: #1e2b4b;
        border: none;
        border-radius: 8px 0 0 8px;
        cursor: pointer;
        color: #fff;
        font-size: 16px;
        box-shadow: -3px 3px 12px rgba(29, 44, 88, 0.3);
        z-index: 1;
    }
    .quick_toggle_btn span {
        display: inline-block;
        transition: transform 0.3s ease;
        line-height: 1;
    }
    .quick_wrap.is-open .quick_toggle_btn span {
        transform: rotate(180deg);
    }
}

/* 모바일 가로, 모바일 세로 (해상도 375px ~ 768px)*/
@media screen and (max-width:768px) {
    body {background: #fff;}
    .wrap {min-width: 375px;}

    /* appointment */
    input[type="checkbox"] + label {width: 14px; height: 14px;}
    input[class="agree"] + label::after {width: 14px; height: 14px;}
    input.agree:checked + label::after {width: 14px; height: 14px;}

    /* appointment popup */
    #appt_overlay {display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.55); z-index: 9998;}
    #appt_overlay.on {display: block;}
    .appt-title {display: none !important;}
    .appointment {display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%,-50%);
        width: 90%; max-width: 400px; box-sizing: border-box;
        padding: 28px 20px 20px; border-radius: 16px;
        background: rgba(0,13,52,0.95); backdrop-filter: blur(5px);
        bottom: auto; z-index: 9999;}
    .appointment.on {display: flex; flex-direction: column;}
    .appointment .inner {padding: 0; display: block;}
    .appointment .inner form {display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 12px;}
    .appointment .inner form h3 {display: none !important;}
    .appointment .inner form .tab_ver {width: 100% !important; flex-direction: column !important; align-items: stretch !important; gap: 10px;}
    .appointment .inner form ul.input_box {width: 100% !important; flex-direction: column !important; gap: 8px;}
    .appointment .inner form ul.input_box li {width: 100% !important;}
    .appointment .inner form ul.input_box li input,
    .appointment .inner form ul.input_box li select {width: 100% !important; padding: 12px 14px; font-size: 15px; border-radius: 8px; box-sizing: border-box; height: auto;}
    .appointment .inner form ul.input_box li select {padding-right: 32px;}
    .appointment .inner form ul.agree_box {width: 100% !important; flex-direction: column !important; gap: 6px; justify-content: flex-start !important;}
    .appointment .inner form ul.agree_box li {position: static !important; width: 100% !important; display: flex !important; flex-direction: column; align-items: flex-start; gap: 6px; min-height: 24px;}
    .appointment .inner form ul.agree_box input[type="checkbox"] {position: absolute !important; opacity: 0 !important; width: 0 !important; height: 0 !important; pointer-events: none; appearance: none; -webkit-appearance: none;}
    .appointment .inner form ul.agree_box input[type="checkbox"] + label {position: static !important; display: inline-flex !important; align-items: flex-start !important; gap: 6px; width: auto !important; height: auto !important; white-space: normal !important; min-height: 20px; transform: translateY(1px);}
    .appointment .inner form ul.agree_box input[type="checkbox"] + label::before {flex-shrink: 0 !important; width: 20px !important; height: 20px !important; margin-top: 1px;}
    .appointment .inner form ul.agree_box label {font-size: 12px; color: #fff; white-space: normal !important; line-height: 1.4;}
    .appointment .inner form ul.agree_box label span {padding: 2px 0 0 !important; font-size: 12px; color: #fff; white-space: normal !important; line-height: 1.4; width: auto !important; vertical-align: baseline !important;}
    .appointment .inner form ul.agree_box label a {font-size: 12px;}
    .appointment .inner form ul.agree_box button {display: block !important; width: 100% !important; height: 52px !important; background-image: none !important; background-color: #214079 !important; border-radius: 8px !important; font-size: 16px !important; font-weight: 700 !important; color: #fff !important; margin-top: 8px !important; letter-spacing: -0.5px;}
    .privacy_dropdown {box-shadow: none !important; border: 1px solid rgba(255,255,255,0.15); background: rgba(255,255,255,0.08) !important;}
    .privacy_dropdown p, .privacy_dropdown ol li {color: #fff;}
    .privacy_dropdown__notice {color: rgba(255,255,255,0.7) !important;}
    .appointment .custom-select__btn {max-width: none;}
    .appointment .custom-select.open .custom-select__opts {max-width: none;}
    .appointment .inner .close_btn {display: block !important; position: absolute; top: -20px; right: 0;
        color: rgba(255,255,255,0.7); font-size: 13px; line-height: 1;}
    .appointment .inner .close_btn span {display: inline-block; width: 14px; height: 14px;
        background-repeat: no-repeat; background-position: center; background-size: contain; vertical-align: middle; margin-right: 4px;}
    .appointment input[type="checkbox"] + label {vertical-align: middle !important;}

    /* header */
    #headerAreaTablet {display: none;}	
    #headerAreaMobile {display: block;}
    #headerAreaMobile .header_inner {background: rgba(255, 255, 255, 0.75); width: 100vw; position:fixed; left: 0; right: 0; transform: none; top: 0; z-index: 202;
        box-shadow: 0px 1px 4px rgba(119, 124, 129, .15); backdrop-filter: blur(30px) saturate(2); -webkit-backdrop-filter: blur(30px); transition: all .2s;}		
    #headerAreaMobile .header_inner .header_inner_top {width: 100%; padding: 5.5px 5%; box-sizing: border-box;
        display: flex; justify-content: space-between; align-items: center;}		
    #headerAreaMobile .header_inner .header_inner_top .right_menu {display: flex; align-items: center; justify-content: space-between; gap: 4px;}
    #headerAreaMobile .mobileAllMenu_inner .mobileAllMenu_list_top {display: flex; align-items: center; justify-content: space-between; gap: 4px; padding: 0 5%;}		
    #headerAreaMobile .mobileAllMenu_inner .mobileAllMenu_list_top .home {display: block; width: 24px; height: 24px;
        background: url(../images/btn_home_bk.png) center no-repeat; background-size: contain; text-indent: -9999px; font-size: 0; color: #fff;}
    /* 라미네이트 이동 버튼 */
    #headerAreaMobile .right_menu .btn_laminate {padding: 0 6px; font-size: 12px; letter-spacing: -1px; height: 28px; line-height: 28px; border-radius: 190px;}
    /* 라미네이트 이동 버튼 */

    /* 지점 선택 [S] */
    #headerAreaMobile .right_menu .select_branch {position: relative;}
    #headerAreaMobile .right_menu .select_branch > a {display: inline-block; padding: 0 10px; height: 26px; line-height: 22px; min-width: 62px; text-align: center;
        border-radius: 190px; border: 1px solid #A4D0FF; background: #F0F7FF; vertical-align: middle; white-space: nowrap;}
    #headerAreaMobile .right_menu .select_branch > a.on > span::after {transform: rotate(180deg);}
    #headerAreaMobile .right_menu .select_branch > a > span {display: inline-block; position: relative;
        font-size: 12px; line-height: normal; letter-spacing: -1px; color: #214079; transform: skew(-0.1deg);}
    #headerAreaMobile .right_menu .select_branch > a > span::after {content: ''; display: inline-block; width: 8px; height: 4px; margin-left: 6px;
        background: url(../images/arrow_down_blue.png) center no-repeat; background-size: contain; vertical-align: middle; transform: rotate(0); transition: all .1s;}
    #headerAreaMobile .right_menu .select_branch > .branches {width: 100%; padding: 4px; box-sizing: border-box;
        position: absolute; top: 32px; left: 50%; transform: translateX(-50%); z-index: 999;
        border-radius: 10px; border: 1px solid #A4D0FF; background: #F0F7FF; display: none;}
    #headerAreaMobile .right_menu .select_branch > .branches li a {display: block; padding: 3.5px 0; text-align: center; white-space: nowrap; border-radius: 8px;}
    #headerAreaMobile .right_menu .select_branch > .branches li:active a {background: #D6EAFF;}
    #headerAreaMobile .right_menu .select_branch > .branches li a span {color: #214079; font-size: 12px; line-height: normal; letter-spacing: -1px;}
    #headerAreaMobile .right_menu .select_branch > .branches li.on a span {border-bottom: 1px solid #214079;}
    /* 지점 선택 [E] */

    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation {position: relative;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation img {width: 20px; height: 20px;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation span {font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 500; line-height: 1em; color: #161718;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation > a {display: inline-block; padding: 0 6px; height: 26px; line-height: 22px; color: #161718;
        border: 1px solid #DFE0E2; border-radius: 200px; background: #FAFAFA; vertical-align: middle; white-space: nowrap;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation > a.on > span::after {transform: rotate(180deg);}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation > a > img {display: none;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation > a > span {display: inline-block; position: relative;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .select_nation > a > span::after {content: ''; display: inline-block; width: 8px; height: 4px; margin-left: 4px;
        background: url(../images/arrow_down_bk.png) center no-repeat; background-size: contain; vertical-align: middle; transform: rotate(0); transition: all .1s;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .dropdown_menu {position: absolute; top: 32px; left: 50%; z-index: 100; transform: translateX(-50%);
        border: 1px solid #DFE0E2; border-radius: 10px; background: #FAFAFA; width: 100%; padding: 8px 4px; box-sizing: border-box;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .dropdown_menu li a {display: block; padding: 6px 0; border-radius: 8px; text-align: center; white-space: nowrap;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .dropdown_menu li.on a {background: #DFE0E2;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .dropdown_menu li a:active {background: #DFE0E2;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .dropdown_menu li a span {font-size: 0; text-indent: -9999px;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .all_menu {display: inline-block; width: 32px; height: 32px; text-align: center;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .all_menu span {display: block; width: 70%; height: 2px; background: #161718; margin: 2px auto 4px;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .all_menu span:last-of-type {margin: 0 auto;}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .all_menu strong {font-weight: 600; font-size: 12px;}
    /* #headerAreaMobile .header_inner .header_inner_top .right_menu .menu_event {display: inline-block; font-weight: 500; font-size: 10px; color: #214079;
        border-radius: 50%; padding: 9px; background: rgba(195, 182, 210, 0.1); border: 1px solid rgba(12, 130, 254, 0.15);}
    #headerAreaMobile .header_inner .header_inner_top .right_menu .menu_event span {display: block; width: 17px; height: 15px; margin: 0 auto;
        background: url(../images/icon_flag.png) center top no-repeat; background-size: contain;} */

    #headerAreaMobile .header_inner .header_inner_bottom {padding: 0px 5%; justify-content: normal; align-items: center; border-top: 1px solid #E2E2E2;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb {overflow: hidden; position: relative; height: 43px;}		
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb .inner {position: absolute; top: 0; left: 0; z-index: 99;}
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul {display: flex; align-items: center; justify-content: center; 
        transform: translate(0px, 0px); transition-timing-function: cubic-bezier(0.1, 0.57, 0.1, 1); transition-duration: 400ms; 
        white-space: nowrap;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li h3 { white-space: nowrap;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li h3 a {display: inline-block; font-weight: 500; font-size: 14px; padding: 12px; position: relative;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li h3 a::before {content: ''; display: block; width: 3px; height: 3px; border-radius: 50%; 
        background: #161718; position: absolute; top: 50%; transform: translateY(-50%); left: 0;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li:first-of-type h3 a {padding-left: 0;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li:first-of-type h3 a::before {display: none;}	
    #headerAreaMobile .header_inner .header_inner_bottom #mobileGnb ul li:last-of-type h3 a {padding-right: 0;} 
    #headerAreaMobile .mobile_menu {width: 100%; padding: 18px 5% 8px; box-sizing: border-box; background: #1c1c1ce6; box-shadow: 0px 1px 4px 2px rgba(119, 124, 129, .15);
        position: fixed; left: 0; bottom: 0; z-index: 200;} 
    #headerAreaMobile .mobile_menu ul {display: flex; align-items: center; justify-content: space-between;} 
    #headerAreaMobile .mobile_menu ul li {width: 49%; border-radius: 8px; background: #214079;} 
    #headerAreaMobile .mobile_menu ul .common_seo {width: 49%; border-radius: 8px; background: #03C75A;}
    /*#headerAreaMobile .mobile_menu ul .common {width: 49%; border-radius: 8px; background: #214079;}*/
    #headerAreaMobile .mobile_menu ul li a {display: block; text-align: center; color: #fff; font-weight: 500; font-size: 18px; padding: 12px 0;} 
    #headerAreaMobile .mobile_menu ul li a span {display: inline-block; width: 24px; height: 24px; margin: 0 6px 6px 0; vertical-align: middle;
        background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;}

    #headerAreaMobile .mobile_menu ul .special_branch_consultation {
        width: 100%;
        border-radius: 8px;
        background: #214079;
        animation: colorChange 0.5s infinite alternate;
    }

    #headerAreaMobile .mobile_menu ul .special_branch_consultation a {
        animation: textColorChange 0.5s infinite alternate;
    }

    @keyframes colorChange {
        0% {
            background: #214079;
        }
        100% {
            background: #FFF719;
        }
    }

    @keyframes textColorChange {
        0% {
            color: #fff;
        }
        100% {
            color: #000;
        }
    }

    /* 특별 지점에서 아이콘 숨기기 */
    #headerAreaMobile .mobile_menu ul li a span.no-icon {
        display: none;
    }


    #mobileAllMenu .mobileAllMenu_inner {width: 85%; min-width: 320px; height: 100vh; overflow: scroll; background: #fff; position: fixed; top: 0; right: -100%; z-index: 1000;}
    #mobileAllMenu .mobileAllMenu_list {margin-bottom: 24px;}
    #mobileAllMenu .mobileAllMenu_list .right_menu {display: flex; align-items: center; justify-content: space-between; gap: 4px;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .home {display: block; width: 24px; height: 24px;
        background: url(../images/btn_home.png) center no-repeat; background-size: contain; text-indent: -9999px; font-size: 0; color: #fff;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation {position: relative; display: flex; align-items: center; justify-content: flex-end; gap: 10px;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation img {width: 20px; height: 20px;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation span {font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 500; line-height: 1em; color: #161718;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation > a {display: inline-block; padding: 0 10px; height: 28px; line-height: 26px; color: #161718;
        border: 1px solid #DFE0E2; border-radius: 200px; background: #FAFAFA; vertical-align: middle; white-space: nowrap;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation > a.on > span::after {transform: rotate(180deg);}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation > a > img {display: none;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation > a > span {display: inline-block; position: relative; color: #161718;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .select_nation > a > span::after {content: ''; display: inline-block; width: 8px; height: 4px; margin-left: 4px;
        background: url(../images/arrow_down_bk.png) center no-repeat; background-size: contain; vertical-align: middle; transform: rotate(0); transition: all .1s;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .dropdown_menu {position: absolute; left: 0; top: 40px; z-index: 100;
        border: 1px solid #DFE0E2; border-radius: 10px; background: #FAFAFA; width: 54px; padding: 8px 4px; box-sizing: border-box;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .dropdown_menu li a {display: block; padding: 6px 0; border-radius: 8px; text-align: center; white-space: nowrap;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .dropdown_menu li.on a {background: #DFE0E2;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .dropdown_menu li a:active {background: #DFE0E2;}
    #mobileAllMenu .mobileAllMenu_list .right_menu .dropdown_menu li a span {display: none;}

    #mobileAllMenu .mobileAllMenu_list .right_menu .btn_close {height: 48px; }
    #mobileAllMenu .mobileAllMenu_list .right_menu .btn_close a {display: inline-block; width: 24px; height: 24px; padding: 12px 0;
        background: url(../images/btn_close_mo.png) center no-repeat; background-size: contain;}
    #mobileAllMenu .mobileAllMenu_list h3 a {color: #161718; font-weight: 500; font-size: 17px; letter-spacing: -0.01em; display: block; 
        box-shadow: inset 0px -1px 0px #E2E2E2; padding: 18px 5%; box-sizing: border-box; position: relative;}
    #mobileAllMenu .mobileAllMenu_list h3 a::after {content: ''; display: block; width: 24px; height: 24px; background-position: center; background-repeat: no-repeat;
        background-image: url(../images/arrow_gray_down_mo.png); background-size: contain;position: absolute; top: 50%; margin-top: -12px; right: 5%;}
    #mobileAllMenu .mobileAllMenu_list h3 a.on::after {background-image: url(../images/arrow_blue_up.png);}
    #mobileAllMenu .mobileAllMenu_list h3 ~ .dropdown_menu li a {display: block; color: #161718; font-weight: 500; font-size: 14px;
        background: #D6EAFF; padding: 16px 5%; box-sizing: border-box;}
    /* hover */
    @media (hover:hover) {
        #mobileAllMenu .mobileAllMenu_list .dropdown_menu li a:hover {color: #214079;}
    }
    #mobileAllMenu .mobileAllMenu_list .dropdown_menu li a:active {color: #214079;}
    #mobileAllMenu .contact_us {margin-bottom: 24px;}
    #mobileAllMenu .contact_us ul {display: flex; align-items: center; justify-content: center; gap: 1%;}
    #mobileAllMenu .contact_us ul li {width: 29%;}
    #mobileAllMenu .contact_us ul li a {display: block; text-align: center; padding: 12px 0;
        border-radius: 4px; font-size: 16px; color: #161718; font-weight: 500; box-sizing: border-box;}
    #mobileAllMenu .contact_us ul li a span {display: block; width: 60px; height: 60px; margin: 0 auto 6px; background-color: #001E3D; border-radius: 50%;
        background-position: 50% 50%; background-repeat: no-repeat; background-size: 24px;}
    #mobileAllMenu .contact_us ul li:nth-of-type(1) a span {background-image: url(../images/btn_call.png);}
    #mobileAllMenu .contact_us ul li:nth-of-type(2) a span {background-image: url(../images/btn_kakao.png);}
    #mobileAllMenu .contact_us ul li:nth-of-type(3) a span {background-image: url(../images/btn_online.png);}
    #mobileAllMenu .slogan {background: #214079;}
    #mobileAllMenu .slogan p {font-weight: 700; font-size: 16px; line-height: 20px; letter-spacing: -0.04em; color: #FFFFFF; padding: 16px 5%;}
    #mobileAllMenu .member {padding: 12px 5%; margin-bottom: 145px; text-align: center;}
    #mobileAllMenu .member ul {display: flex; align-items: center; justify-content: center;/*  margin-bottom: 40px; */}
    #mobileAllMenu .member ul li {float: left;}
    #mobileAllMenu .member ul li a {display: inline-block; padding: 12px 8px; color: #161718; font-weight: 500; font-size: 14px; position: relative;}
    #mobileAllMenu .member ul li a::after {content: ''; width: 1px; height: 9px; background: #161718; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
    #mobileAllMenu .member ul li:last-child a::after {display: none;}
    /* 라미네이트 이동 버튼 */
    #mobileAllMenu .btn_laminate {padding: 0 12px; font-size: 14px; letter-spacing: -1px; height: 28px; line-height: 26px; border-radius: 190px;}
    /* 라미네이트 이동 버튼 */

    /* footer */
    .footer_logo {margin-bottom: 24px; width: 100px; height: 26px;}
    .footer_logo {width: 200px;height:auto; }
    #footerAreaMobile .footer_top {gap: 40px; margin-bottom: 40px;}
    #footerAreaMobile .footer_top .footer_address {grid-row: 1/2; margin-bottom: 0;}
    #footerAreaMobile .footer_top .footer_schedule {grid-row: 3/4; border-radius: none; background: none; padding: 0; font-size: 16px; line-height: normal;}
    #footerAreaMobile .footer_top .footer_map {grid-row: 2/3; border-radius: none; background: none; padding: 0; font-size: 16px; line-height: normal;}

    #footerAreaMobile .footer_top .footer_title {font-size: 20px; margin-bottom: 1em;}

    #footerAreaMobile .footer_top .footer_address .btn_tel a {font-size: 36px;}
    #footerAreaMobile .footer_top .footer_address .implant_label {display: none;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry {display: block; display: flex; gap: 6px; margin-top: 16px;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry a {display: block; padding: 12px 20px; border-radius: 100px;
        font-size: 16px; font-weight: 500; line-height: normal; letter-spacing: -1px;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry li:nth-child(1) a {color: #fff; background: #214079;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry li:nth-child(2) a {color: #001E3D; background: #FFDA19;}
    #footerAreaMobile .footer_top .footer_address .btn_mo_inquiry a span {display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: -2px;
        background-position: center; background-repeat: no-repeat; background-size: contain;}

    #footerAreaMobile .footer_top .footer_map ul {margin: 16px 0 0; gap: 6px;}
    #footerAreaMobile .footer_top .footer_map ul li a {gap: 6px; padding: 12px 0; font-size: 14px;}
    #footerAreaMobile .footer_top .footer_map > a {display: none;}
    
    #footerAreaMobile .footer_schedule ul {grid-template-columns: repeat(2, 1fr); row-gap: 10px;}
    #footerAreaMobile .footer_schedule ul li {font-size: 16px;}
    #footerAreaMobile .footer_schedule ul li span.schedule_week {font-weight: 400; display: inline-block; padding: 7.5px 12px; background: #214079; border-radius: 50%;}
    #footerAreaMobile .footer_schedule .notice {font-size: 16px; margin-top: 10px; padding-top: 0; border-top: none;}

    #footerAreaMobile .footer_bottom {flex-direction: column; font-size: 16px; position: relative;}

    #footerAreaMobile .footer_bottom .sns {width: 100%;}
    #footerAreaMobile .footer_bottom .sns .footer_title {display: block; font-weight: 700; font-size: 20px; margin-bottom: 1em;}
    #footerAreaMobile .footer_bottom .sns ul {width: 60%; gap: 6px;}

    #footerAreaMobile .family {width: 100%; position: relative; top: 0; margin-bottom: 20px;}

    #footerAreaMobile .footer_bottom .btn_privacy {width: 100%; overflow: hidden; margin-bottom: 20px;}
    #footerAreaMobile .footer_bottom .btn_privacy li {display: inline-block; margin-right: 18px; position: relative;}
    #footerAreaMobile .footer_bottom .btn_privacy li::after {content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: rgba(133, 152, 173, .2);  
        position: absolute; top: 50%; transform: translateY(-50%); right: -12px;}
    #footerAreaMobile .footer_bottom .btn_privacy li:last-child:after {display: none;}
    #footerAreaMobile .footer_bottom .btn_privacy li a {display: inline-block; padding: 0; position: relative; color: #8598AD;}
    #footerAreaMobile .footer_bottom .btn_privacy li a::after {display: none;}

    #footerAreaMobile .footer_bottom .main_info span {display: inline-block; padding: 0; margin-right: 14px; font-size: 14px; position: relative; color: #8598AD;}
    #footerAreaMobile .footer_bottom .main_info span::after {content: ''; display: block; width: 1px; height: 1em; background: rgba(133, 152, 173, .2);
        position: absolute; top: 50%; transform: translateY(-40%); right: -8px;}
    #footerAreaMobile .footer_bottom .main_info span:last-of-type::after {display: none;}
    #footerAreaMobile .footer_bottom .copy_text {font-family: 'Montserrat', sans-serif; font-size: 14px; color: #8598AD; text-transform: uppercase; margin-top: 1em;}

    #headerAreaMobile .header_inner .header_inner_top {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 5% !important;
    }
    #headerAreaMobile .header_inner .header_inner_top > li:first-child {
        display: flex;
        align-items: center;
    }
    #headerAreaMobile .header_inner .header_inner_top h1 {
        margin: 0 !important;
        padding: 0 !important;
    }
    #headerAreaMobile .header_inner .header_inner_top .logo {
        width: 130px !important;
        display: block !important;
    }
    .quick__top-link {
        min-width: 46px !important;
        padding: 10px 10px !important;
        width: 46px !important;
        height: 46px !important;
        font-size: 16px !important;
        border: 1px solid #666666 !important;
    }
    .quick__top-link p {
        margin: 0 !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        font-family: "Montserrat", sans-serif !important;
    }
    #topMove.mo_ver {display: block;}
    #topMove {position: fixed; bottom: 88px; right: 5%; z-index: 999; transition: all .2s; opacity: 0;}
    #topMove.on {opacity: 1;}
    #topMove.toppos {bottom: 250px;}
    #topMove ul li {width: 60px; height: 60px; border-radius: 50%; overflow: hidden; background-repeat: no-repeat; background-position: center; background-size: contain; margin-top: 12px;}
    #topMove ul li a {display: block; width: 100%; height: 100%; border-radius: 50%; box-shadow: 0px 1px 4px rgba(119, 124, 129, .15);}
    #topMove .topMove {text-indent: -9999px; font-size: 0;
        background-color: #fff; border: 1px solid #E2E2E2; box-sizing: border-box;
        background-image: url(../images/btn_top_pc.png); background-repeat: no-repeat; background-position: center; background-size: 20px 24px;}

    /* quick & top button */
    .quick_wrap {position: fixed; top: auto !important; bottom: 72px !important; right: 0; transform: none !important; z-index: 999; display: flex; flex-direction: column-reverse !important; gap: 8px; align-items: center; width: 100% !important;}
    .quick_wrap .quick {position: static; border-radius: 0; box-shadow: 0 3px 18px rgb(29 44 88 / 10%); overflow: hidden; width: 100%;}
    .quick_wrap .quick > ul {display: flex !important; flex-direction: row !important; padding: 0; margin: 0; list-style: none; width: 100% !important;}
    li.quick--item {width: 100% !important;}
    .quick__text { font-size: 13px !important; white-space: nowrap !important; }
    .quick__link { padding: 12px 6px !important; }
    .quick--tel .quick__link {padding-bottom: 12px !important;}
    .quick_wrap .quick_top {width: 100%; display: flex; margin-right: 3% !important; justify-content: flex-end;}
    .quick_slide { width: 100%; }
}

@media screen and (max-width: 395px) {
    .quick__text {display: none !important;}
    li.quick--item {width: 20% !important; display: flex; align-content: center; justify-content: center; align-items: center;}
    .quick__link { padding: 0 !important; width: 100%; height: 100%; display: flex !important; justify-content: center; }
    a.quick__link.modalOpen { width: 100%; height: 100%; display: flex !important; justify-content: center; }
    .quick--tel .quick__link { padding: 0 !important; width: 100%; height: 100%; display: flex !important; justify-content: center; }
    span.quick__icon.quick__icon--img {padding: 0.6rem 0 0.3rem;}
    .quick__icon--img img { width: 20px !important; height: 20px !important; }
}

/* cards-section */
.cards-section {padding: 60px 0;}
.cards-wrap {display: flex; justify-content: center; align-items: center; gap: 20px; padding: 40px 0;}
.card {width: 200px; min-height: 260px; border-radius: 20px; background: #1E2B4B; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 20px; padding: 30px 20px; box-sizing: border-box; position: relative; overflow: hidden;}
.card-bg {position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0.35;}
.card-bg--1 {background-image: url(../images/section02/section02_con1.jpg);}
.card-bg--2 {background-image: url(../images/section02/section02_con2.jpg);}
.card-bg--3 {background-image: url(../images/section02/section02_con3.jpg);}
.card-bg--4 {background-image: url(../images/section02/section02_con4.jpg);}
.card-label {color: #fff; font-size: clamp(1rem, 1.25vw, 1.125rem); font-weight: 600; line-height: 1.4; text-align: center; position: relative; z-index: 1;}
.cards-wrap .card:nth-child(1), .cards-wrap .card:nth-child(3) {margin-bottom: 70px;}



.block {display: block;}
#headerAreaPc .header_inner .header_inner_bottom #gnb .depth_first h3 ul li a {padding: 10px 0;}
@media screen and (min-width: 769px) and (max-width: 835px) {
    .appointment .custom-select__btn {font-size: 0.75rem;}
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
    /* appointment */
    .appointment .inner {padding: 10px 2% 10px 3%;}
    .appointment .inner form ul.agree_box button {width: clamp(110px, 12.5vw, 150px); height: auto; aspect-ratio: 186/60; background-size: cover;}
    .appt-title {width: 22%;}
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
    /* appointment */
    .appt-title {display: none;}
    .appointment .inner {padding: 10px 2%;}
    .appointment .inner form .tab_ver {gap: 8px;}
    .appointment .inner form ul.input_box {width: 67%;}
    .appointment .inner form ul.input_box li:nth-child(1) {width: 28%;}
    .appointment .inner form ul.input_box li:nth-child(2) {width: 20%;}
    .appointment .inner form ul.input_box li:nth-child(3) {width: 45%;}
    .appointment .inner form ul.agree_box {width: 33%; justify-content: flex-end; gap: 10px;}
    .appointment .inner form ul.agree_box li:first-child {display: flex; align-items: center; justify-content: flex-end;}
    .appointment .inner form ul.agree_box li:nth-child(2) {display: flex !important; justify-content: flex-end;}
    .appointment .inner form ul.agree_box button {width: clamp(100px, 12.5vw, 130px); height: auto; aspect-ratio: 186/60;}
}

/* result-new (공통) */
.result-new {width: 100%; min-height: 1097px; background: #fff url(/pages/01_01/images/img_result_bg.jpg) center top / cover no-repeat; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; box-sizing: border-box;}
.section_inner {max-width: 1440px; width: 80%; margin: auto;}
.result-new__inner {}
.result-new__quote {color: #1C1C1C; font-size: 30px; font-family: 'KoPubBatang_Pro', serif; font-weight: 500; line-height: 45px; word-wrap: break-word; margin-bottom: 3rem;}
.result-new__body {display: flex; flex-direction: column; align-items: flex-start; gap: 30px; max-width: 680px;}
.result-new__letter {display: flex; flex-direction: column; align-items: flex-start; gap: 15px;}
.result-new__para {color: #1C1C1C; font-size: 18px; font-family: 'Noto Sans KR', sans-serif; font-weight: 400; line-height: 28px; word-wrap: break-word;}
.result-new__para strong {font-weight: 600;}
.result-new__para .result-name {font-weight: 600;}
.result-new__signature {color: #1C1C1C; font-size: 18px; font-family: 'Noto Sans KR', sans-serif; font-weight: 600; line-height: 50px; word-wrap: break-word;}
.result-new__letter--mo {display: none; word-break: keep-all;}
@media screen and (max-width:1024px) {
    .result-new { background-image: url(/pages/01_01/images/img_result_bg_tablet.jpg); background-position: center bottom; justify-content: flex-start; }
    .result-new__letter--pc {display: none;}
    .result-new__letter--mo {display: flex;}
    .result-new__quote { font-size: 1.7rem; line-height: 34px; }
    .result-new__para { font-size: 1.2rem; line-height: 1.5em; }
    .result-new__signature { font-size: 1.5rem; line-height: 1.6em; }

    .section_inner { margin: 12vw auto 100vw; }
    .result-new__letter--mo .result-new__para { word-break: keep-all; overflow-wrap: normal; }
}
@media screen and (max-width: 768px) {
    .result-new { background-image: url(/pages/01_01/images/img_result_bg_mo.jpg); }
    .result-new__quote { font-size: 1.5rem; line-height: 1.3em; text-align: center; color: #1F2D4E; font-weight: 700; }
    .result-new__para { font-size: 1rem; line-height: 1.4em; }
    .result-new__signature { width: 100%; font-size: 1.2rem; line-height: 1.2em; text-align: center; display: flex; justify-content: center; align-items: center; }
    .result-new__signature strong { margin-left: 0.2em; }
    .result-new__letter--mo { display: flex; text-align: center; align-items: center; }
    .section_inner { width: 80%; margin: 12vw auto 60vw; }
    .result-quote__mark { display: block; }
    .result-quote__mark img { width: 13px; height: 11px; }
    .result-quote__mark--open { margin-bottom: 0.5em; }
    .result-quote__mark--close { margin-top: 0.5em; }
}
@media screen and (max-width: 530px) {
    .section_inner { width: 87%; margin: 12vw auto 0; }
}
@media screen and (max-width: 450px) {
    .section_inner { margin: 12vw auto 0; }
}
@media screen and (max-width: 430px) {
    .result-new__signature { font-size: 1.1rem; }
    .result-new__signature strong { font-size: 1.3rem; }
}
@media screen and (max-width: 395px) {
    .section_inner { margin: 12vw auto 90vw; }
}

/* Mobile Contextual Navigation [S] */
#mobile-ctx-nav { display: none; width: 100%; position: relative; background: #fff; }
#headerAreaMobile.ctx-nav-active .header_inner_top { display: none !important; }
.mobile-ctx-bar { display: flex !important; align-items: center; height: 52px; padding: 0 1%; box-sizing: border-box; }
.mobile-ctx-back { width: 40px; height: 52px; font-size: 20px; color: #333; cursor: pointer; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.mobile-ctx-title { flex: 1; min-width: 0; height: 52px; display: flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; }
.mobile-ctx-title-text { font-size: 15px; font-weight: 700; color: #1C1C1C; font-family: 'Noto Sans KR', sans-serif; white-space: nowrap; }
.mobile-ctx-title-chevron { font-size: 14px; color: #555; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; transition: transform 0.3s ease; transform-origin: center; }
.mobile-ctx-title-chevron.open { transform: rotate(180deg); }
.mobile-ctx-menu-btn { width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; cursor: pointer; flex-shrink: 0; }
.mobile-ctx-menu-icon { display: flex; flex-direction: column; gap: 4px; align-items: center; }
.mobile-ctx-menu-icon span { display: block !important; width: 18px; height: 2px; background: #333; border-radius: 1px; }
.mobile-ctx-dropdown { display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; box-shadow: 0 6px 20px rgba(0,0,0,0.12); z-index: 9999; list-style: none; margin: 0; padding: 0; border-top: 1px solid #eee; }
.mobile-ctx-dropdown li { border-bottom: 1px solid #f0f0f0; }
.mobile-ctx-dropdown li:last-child { border-bottom: none; }
.mobile-ctx-dropdown li a { display: block; padding: 15px 20px; text-align: center; font-size: 14px; color: #444; font-family: 'Noto Sans KR', sans-serif; font-weight: 400; }
.mobile-ctx-dropdown li.active a { color: #214079; font-weight: 700; }
/* Mobile Contextual Navigation [E] */


/* mobile-menu-login-area */
.mobile-menu-login-area { padding: 20px 5%; border-top: 1px solid #f0f0f0; display: flex; justify-content: flex-start; }
.mobile-menu-login-area .btn-login { font-size: 15px; padding: 10px 40px; }

@media screen and (max-width: 1210px) {
    .reimplant-banner__title,
    .intro-banner-new__title,
    .bone-graft-banner__title,
    .insurance-banner__title,
    .caries-banner__title,
    .prosthetics-banner__title,
    .nerve-banner__title,
    .scaling-banner__title,
    h3.m_color { font-size: 2.47rem !important; }
}
