@charset "utf-8";
@font-face {
	font-family:'icomoon';
	src:url('/img_up/shop_pds/aramskin/design/ursmart123/icomoon/icomoon.eot');
	src:url('/img_up/shop_pds/aramskin/design/ursmart123/icomoon/icomoon.eot') format('embedded-opentype'),
		url('/img_up/shop_pds/aramskin/design/ursmart123/icomoon/icomoon.ttf') format('truetype'),
		url('/img_up/shop_pds/aramskin/design/ursmart123/icomoon/icomoon.woff') format('woff'),
		url('/img_up/shop_pds/aramskin/design/ursmart123/icomoon/icomoon.svg') format('svg');
	font-weight:normal;
	font-style:normal;
}
@font-face {
	font-family:'voice_icomoon';
	src:url('/img_up/shop_pds/aramskin/design/skin/voice_guide/icomoon.eot');
	src:url('/img_up/shop_pds/aramskin/design/skin/voice_guide/icomoon.eot?#iefix') format('embedded-opentype'),
		url('/img_up/shop_pds/aramskin/design/skin/voice_guide/icomoon.woff') format('woff'),
		url('/img_up/shop_pds/aramskin/design/skin/voice_guide/icomoon.ttf') format('truetype'),
		url('/img_up/shop_pds/aramskin/design/skin/voice_guide/icomoon.svg#icomoon') format('svg');
	font-weight:normal;
	font-style:normal;
}
@keyframes voice_animation {
	from {color:#168fff}
	50% {color:#16b5ff}
	to {color:#168fff}
}


@font-face {
    font-family: 'YESMyoungjo-Regular';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_13@1.0/YESMyoungjo-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


@font-face { font-family: 'BookkMyungjo-Lt'; src:url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2302@1.0/BookkMyungjo-Lt.woff2') format('woff2'); font-weight: 400;  font-style: normal;}

@font-face { font-family: 'BookkMyungjo-Bd'; src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2302@1.0/BookkMyungjo-Bd.woff2') format('woff2');  font-weight: 700; font-style: normal;}

/*지마켓산스(GmarketSans)*/
@font-face {
    font-family: 'GmarketSansLight';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'GmarketSansMedium';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'GmarketSansBold';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
/*ylee 폰트*/
@font-face {
    font-family: 'yleeMortalHeartImmortalMemory';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2205@1.0/yleeMortalHeartImmortalMemory.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

* { font-family: 'Pretendard' !important; letter-spacing:-0.02em !important; line-height:1.7; word-break: keep-all;}
body{font-size:1.8rem; overflow-x:hidden}
body, h1, h2, h3, h4, h5, h6, p, div, li, dt, dd, input, textarea, button {font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.7; letter-spacing: -0.02em;}
.pc {display:none;}

.point01 {font-family: 'BookkMyungjo-Bd'!important;}
.point02 {font-family: 'BookkMyungjo-Lt'!important;}
.point03 {font-family: 'GmarketSansMedium'!important;}
.point04 {font-family: 'GmarketSansBold'!important;}
.point05 {font-family: 'GmarketSansLight'!important;}
.point06 {font-family: 'yleeMortalHeartImmortalMemory'!important;}
.point07 {font-family: 'SCoreDream'!important;}
.point08 {font-family: "Cormorant Garamond", serif; font-optical-sizing: auto; font-family: "Cormorant Garamond", serif !important; font-weight: normal; letter-spacing: 0 !important;}


@media (prefers-color-scheme: dark) {
           /*  dark mode css */
   #header .logo h1 span img {
        filter: opacity(0.5) drop0-shadow(0 0 0 white) !important;
    }
}

/* Layout */
p { word-break:keep-all }
#popup207235_div {
    z-index: 100 !important;
}

#viewport {min-height:100%;background:#ffffff}
#viewport > #main_view,
#viewport > #sub_view {max-width:100%;width:100%}

#header {position:relative;z-index:200;background:#fff;box-shadow:0 1px 2px rgba(0, 0, 0, .3);}
#header .logo h1 {width:100%;margin:0;padding:0px 60px;font-size:0;box-sizing:border-box}
#header .logo h1 span {display:table;width:100%;table-layout:fixed}
#header .logo h1 span a {display:table-cell;height:50px;vertical-align:middle;text-align:center}
#header .logo h1 img {width:170px; display:inline-block;}
#header .logo button {position:absolute;top:0;bottom:0;width:50px;height:50px;margin:auto;border:none;background:none;font-size:0}
#header .logo button:before {font-family:'icomoon';position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;color:#29367e;}
#header .logo #toggle_left {left:0}
#header .logo #toggle_left:before {content:'\e902';width:40px;height:40px;font-size:30px;line-height:40px}
#header .logo #toggle_right {right:0}
#header .logo #toggle_right:before {content:'\e905';width:28px;height:28px;font-size:22px;line-height:28px}

#container {background-color:#ffffff}
#container .contents_wrap {min-height:350px}
#container .contents:after {content:'';display:block;overflow:hidden;clear:both}
#sub_view #container .contents_wrap {padding:0 0 0px}
#sub_view #container .contents_wrap .contents {padding-top:0px}

#footer {overflow:hidden;position:relative;border-top:1px solid #252525;background:#313131;}
#footer #btn_site_top {position:fixed;bottom:85px;right:10px;z-index:0;width:40px;height:40px;border:none;border-radius:50%;background:#0a6ebd;font-size:0;opacity:0;transition:all .2s ease-in-out}
#footer #btn_site_top:before {content:'\e917';font-family:'icomoon';font-size:16px;font-weight:bold;color:#fff}
#footer #btn_site_top.on {opacity:.6;z-index:1000}
#footer .fnb {border-bottom:1px solid #252525}
#footer .fnb ul {display:table;table-layout:fixed;width:100%;margin:0;padding:0;list-style:none;font-size:0}
#footer .fnb ul li {display:table-cell;border-left:1px solid #252525; width:50%;}
#footer .fnb ul li a {display:block;height:40px;line-height:40px;padding:0 15px;font-size:13px;font-weight:bold;color:#999999;text-align:center;white-space:nowrap;letter-spacing:-.03em}
#footer .fnb ul li a:hover {color:#0a6ebd;transition:all .2s ease-out}
#footer .fnb ul li:first-child {border-left-width:0}
#footer .finfo {box-sizing:border-box;padding:10px 20px 110px;font-size:0;text-align:center}
#footer .finfo .f_logo {display:none}
#footer .finfo p {display:inline-block;position:relative;line-height:16px;margin:0;padding:2px 15px 2px 0;font-size:12px;color:#999999;letter-spacing:-.03em}
#footer .finfo p:before {content:'';position:absolute;top:0;bottom:0;left:0;width:2px;height:2px;margin:auto;opacity:.5}
#footer .finfo p.mobile_hide {display:none}
#footer .finfo p a {color:#999999}
#footer .finfo .copyright {line-height:16px;padding:10px 0 0;font-size:12px;color:#999999;letter-spacing:-.03em}
#footer .finfo button {border:1px solid #aaa;border-radius:4px;box-shadow:inset 0 1px 0 white;background:#f6f6f6;font-size:12px;color:#555;text-align:center}


/* ==============================
   PC QUICK BAR
============================== */

.pc_qq{display:none;}
.footer-btn{display:none;}

.clinic-quickbar{box-sizing:border-box;position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:'Pretendard','Noto Sans KR',Arial,sans-serif;}

.clinic-quickbar .quick-item{box-sizing:border-box;width:58px;height:58px;min-height:58px;padding:8px;border:1px solid rgba(35,35,35,.08);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(0,0,0,.10);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:row-reverse;align-items:center;justify-content:flex-start;overflow:hidden;text-decoration:none;color:#222;cursor:pointer;appearance:none;transition:width .28s ease,box-shadow .25s ease,border-color .25s ease;}

.clinic-quickbar .quick-item:hover{width:160px;border-color:rgba(158,123,76,.25);box-shadow:0 12px 30px rgba(0,0,0,.14);}

.clinic-quickbar .quick-reserve_kakao{background:#fee500;color:#000;}
.clinic-quickbar .quick-reserve_naver{background:#03c75a;color:#fff;}
.clinic-quickbar .quick-reserve_youtube{background:#f21011;color:#fff;}


.clinic-quickbar .quick-icon{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:rgba(155,122,77,.10);display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;}
.clinic-quickbar .quick-icon img{display:block;width:55%;height:auto;}

.clinic-quickbar .quick-reserve_kakao .quick-icon,.clinic-quickbar .quick-reserve_naver .quick-icon,.clinic-quickbar .quick-reserve_youtube .quick-icon{background:rgba(255,255,255,.20);}
.clinic-quickbar .quick-reserve_youtube .quick-icon, .clinic-quickbar .blog .quick-icon{filter:brightness(0) invert(1);}

.clinic-quickbar .quick-text{flex:1;width:0;min-width:0;margin-right:0;opacity:0;visibility:hidden;display:flex;flex-direction:column;align-items:flex-end;gap:3px;line-height:1.25;white-space:nowrap;overflow:hidden;transition:opacity .18s ease,margin-right .28s ease;}

.clinic-quickbar .quick-item:hover .quick-text{width:auto;margin-right:10px;opacity:1;visibility:visible;}

.clinic-quickbar .quick-text strong{font-size:16px;font-weight:700;letter-spacing:-.04em;white-space:nowrap;}
.clinic-quickbar .quick-text em{font-style:normal;font-size:12px;font-weight:400;color:#777;letter-spacing:-.03em;white-space:nowrap;}

.clinic-quickbar .quick-reserve_naver .quick-text em{color:rgba(255,255,255,.82);}
.clinic-quickbar .quick-reserve_kakao .quick-text em{color:rgba(0,0,0,.68);}

.clinic-quickbar button.quick-item{font-family:inherit;border:1px solid rgba(35,35,35,.08);}


/* ==============================
   MOBILE QUICK BAR
============================== */

@media (max-width:768px){

body{padding-bottom:90px;}

.clinic-quickbar{position:fixed;left:50%;right:auto;top:auto;bottom:14px;transform:translateX(-50%);width:calc(100% - 24px);max-width:430px;display:flex;flex-direction:row;align-items:center;gap:8px;z-index:9999;}

.clinic-quickbar .quick-item{flex:1;width:auto;height:54px;min-height:54px;padding:0;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:row;gap:0;overflow:visible;box-shadow:0 6px 20px rgba(0,0,0,.10);transition:none;}

.clinic-quickbar .quick-item:hover{width:auto;padding:0;transform:none;border-color:rgba(35,35,35,.08);box-shadow:0 6px 20px rgba(0,0,0,.10);}
.clinic-quickbar .quick-item:active{opacity:.8;}

.clinic-quickbar .quick-icon{flex:0 0 36px;width:36px;height:36px;margin:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;}
.clinic-quickbar .quick-icon img{display:block;width:55%;height:auto;margin:0;}

.clinic-quickbar .quick-text,.clinic-quickbar .quick-item:hover .quick-text{display:none!important;width:0;margin:0;opacity:0;visibility:hidden;}

.clinic-quickbar .quick-reserve_kakao{background:#fee500;color:#000;}
.clinic-quickbar .quick-reserve_kakao .quick-icon{background:rgba(255,255,255,.22);}

.clinic-quickbar .quick-reserve_naver{background:#03c75a;color:#fff;}
.clinic-quickbar .quick-reserve_naver .quick-icon{background:rgba(255,255,255,.20);}

}


/* ==============================
   아주 작은 모바일
============================== */

@media (max-width:360px){

body{padding-bottom:82px;}

.clinic-quickbar{width:calc(100% - 16px);bottom:10px;gap:6px;}
.clinic-quickbar .quick-item{height:50px;min-height:50px;border-radius:14px;}
.clinic-quickbar .quick-icon{flex:0 0 32px;width:32px;height:32px;font-size:16px;}

}



/* sub page */
.shgroup {position:relative}
.shgroup > a {display:block;position:relative;width:100%;height:40px;line-height:40px;margin:0;padding:0 40px;border:none;box-sizing:border-box;background:#0a6ebd;font-size:16px;color:#fff;text-align:center}
.shgroup > a span {overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:block}
.shgroup > a i {display:block;position:absolute;top:0;width:40px;height:40px;font-size:0}
.shgroup > a i:before {content:'';position:absolute;top:50%;left:50%;border:8px solid transparent;opacity:.5}
.shgroup > a i:after {content:'';position:absolute;top:50%;left:50%;border:8px solid transparent}
.shgroup > a i {left:0}
.shgroup > a i:before {margin:-8px 0 0 -12px;border-right-color:#fff}
.shgroup > a i:after {margin:-8px 0 0 -10px;border-right-color:#0a6ebd}
#sub_view #container .contents_wrap.mypage .snb_wrap {width:100%}
#sub_view #container .contents_wrap.mypage .snb {position:relative}
#sub_view #container .contents_wrap.mypage .snb > div {overflow-x:scroll}
#sub_view #container .contents_wrap.mypage .snb ul {display:inline-block;min-width:100%;margin:0;padding:0 40px;border-bottom:3px solid #0a6ebd;box-sizing:border-box;list-style:none;font-size:0;text-align:center;white-space:nowrap}
#sub_view #container .contents_wrap.mypage .snb ul li {display:inline-block}
#sub_view #container .contents_wrap.mypage .snb ul li a {height:40px;line-height:40px;padding:0 10px;font-size:13px}
#sub_view #container .contents_wrap.mypage .snb ul li.on a {color:#0a6ebd}
#sub_view #container .contents_wrap.mypage .snb i {position:absolute;left:0;top:0;width:40px;height:40px;background:#ffffff}
#sub_view #container .contents_wrap.mypage .snb i.prev:before {content:'';position:absolute;top:0;left:8px;bottom:0;width:0;height:0;margin:auto;border:8px solid transparent;border-right-color:#0a6ebd}
#sub_view #container .contents_wrap.mypage .snb i.prev:after {content:'';position:absolute;top:0;left:9px;bottom:0;width:0;height:0;margin:auto;border:8px solid transparent;border-right-color:#ffffff}
#sub_view #container .contents_wrap.mypage .snb i.next {right:0;left:inherit}
#sub_view #container .contents_wrap.mypage .snb i.next:before {content:'';position:absolute;top:0;right:8px;bottom:0;width:0;height:0;margin:auto;border:8px solid transparent;border-left-color:#0a6ebd}
#sub_view #container .contents_wrap.mypage .snb i.next:after {content:'';position:absolute;top:0;right:9px;bottom:0;width:0;height:0;margin:auto;border:8px solid transparent;border-left-color:#ffffff}

/* Mobile viewport - PC content display none */
.gnb_p, .lnb_p, .lnb_p_bg, #header .header_form, .shgroup > .shgroup_pc, .contents .sub_top_title {display:none}



/* PC CSS */
@media all and (min-width:1400px) {

.pc {display:block;}

	/* 음성안내 */
	#voice_guide_wrap {display:inline-block;margin-right:15px;vertical-align:top}
	#voice_guide_wrap a {display:none;width:16px;height:27px;line-height:27px;font-size:0;text-align:center}
	#voice_guide_wrap a > span {position:absolute;top:-9999px;left:-9999px;text-indent:-9999px}
	#voice_guide_wrap a:before {font-family:'voice_icomoon';font-size:16px}
	#voice_guide_wrap.off a.state_voice_on {display:inline-block}
	#voice_guide_wrap.on a.state_voice_off {display:inline-block}
	#voice_guide_wrap a.state_voice_on:before {
		content:'\e903';color:#168fff;
		transition:all 0.1s ease;
		animation-name:voice_animation;
		animation-duration:1s;
		animation-iteration-count:infinite;
		animation-timing-function:step-end;
	}
	#voice_guide_wrap a.state_voice_off:before {content:'\e902';color:#87909c}

	/* PC viewport - Mobile content display none */
	#header .logo button, .shgroup > a {display:none}

	/* PC display:block */
	.gnb_p, .lnb_p, .lnb_p_bg, .shgroup > .shgroup_pc, .contents .sub_top_title {display:block}
	#header .header_form {display:inline-block;vertical-align:top}

	/* PC 화면 넓이값을 가진 센터유지 */
	#header > .inner, .gnb_p > .inner, .sub_location > ul, .shgroup .sub_top_text_wrap, .contents .sub_top_title,
	#footer .fnb .fnb_inner, #footer .finfo {margin:0 auto;max-width:1500px}
        #lnb_p { margin-top:10px; }
	.row > .white-space {max-width:1440px !important}

	/* mypage 서브 네비게이션 넓이값 */
	#container .contents_wrap {min-height:500px; margin-top:126px;}
	#sub_view #container .contents_wrap .contents {padding-top:0}

	#header {position:fixed;top:0;right:0;left:0;z-index:9998;padding:10px 0 5px;border-bottom:none;background:#fff;box-shadow:2px 2px 10px 0px #eee;;transition:all .2s ease-out}
	#header > .inner {box-sizing:border-box;position:relative;z-index:9998;padding: 15px 0 0; display:flex;}
	#header > .inner:after {content:'';display:block;clear:both}
	#header.on {background:#fff;}
#header .logo h1 {padding:10px 60px;}
#header .logo h1 img {width: 200px; display: inline-block;margin-left: 20px;}
	.gnb_p {position:relative;z-index:9998;padding-bottom:5px;font-size:0;text-align:right; border-bottom: 1px solid #eee;}
	.gnb_p .new_date {display:inline-block;padding:0 20px 0 10px;font-size:13px;font-weight:bold}
	.gnb_p .gnb_list {display:inline-block;margin:0;padding:0;list-style:none}
	.gnb_p .gnb_list li {display:inline-block;position:relative;margin-left:20px}
	.gnb_p .gnb_list li:first-child {margin-left:0}
	.gnb_p .gnb_list li a {display:inline-block;height:27px;line-height:27px;font-size:13px;font-weight:bold;color:#000;letter-spacing:-.03em;transition:all .2s ease-out}
	.gnb_p .gnb_list li a:hover {color:#0a6ebd}

	.header_form {margin-left:30px}
	.search_p {width:150px;margin:auto 0}
	.search_p fieldset {position:relative;margin:0;padding:0;padding-right:35px;border:1px solid #ffffff;background:transparent;transition:all .2s ease-out}
	.search_p fieldset:hover {border-color:#0a6ebd}
	.search_p legend {display:none}
	.search_p .search_form span {display:block}
	.search_p .search_form span input[type=text] {box-sizing:border-box;width:100%;height:25px;margin:0;padding:0 8px;border:none;background:transparent;font-size:12px;color:#ffffff;line-height:25px;transition:all .2s ease-out}
	.search_p .search_form span input::placeholder {color:#ffffff;opacity:1}
	.search_p .search_form span input:-ms-input-placeholder {color:#ffffff}
	.search_p .search_form span input::-ms-input-placeholder {color:#ffffff}
	.search_p .search_form button {display:block;position:absolute;border:none;padding:0;top:0;right:0;bottom:0;margin:auto;width:30px;height:25px;background:transparent;font-size:0}
	.search_p .search_form button:before {content:'\e901';font-family:'icomoon';font-size:18px;color:#ffffff}

	#header .logo {width:250px; margin:0 auto}
	#header .logo h1 {width:auto;padding:0}
	#header .logo h1 span {width:100%}
	#header .logo h1 span a {height:50px;text-align:left}
	#header .logo h1 img {height: auto;}

	#footer #btn_site_top {position:absolute;top:0;right:0;bottom:auto;width:60px;height:42px;border-left:1px solid #252525;border-right:1px solid #252525;border-radius:0;background:#313131;font-size:12px;font-weight:bold;color:#999999;line-height:1.1em;opacity:1}
	#footer #btn_site_top:before {display:block;color:#999999;transition:all .2s ease-out}
	#footer #btn_site_top:hover,
	#footer #btn_site_top:hover:before {color:#0a6ebd}
	#footer #btn_site_top.on {opacity:1}
	#footer .fnb .fnb_inner {position:relative}
	#footer .fnb ul {display:block;width:auto}
	#footer .fnb ul li {display:inline-block; width:auto;}
	#footer .fnb ul li:first-child {border-left-width:1px}
	#footer .fnb ul li:last-child {border-right:1px solid #252525}
	#footer .fnb ul li a {box-sizing:border-box;display:inline-block;min-width:150px;height:42px;line-height:42px;padding:0 20px;font-size:13px;transition:all .2s ease-in-out}
	#footer .finfo {position:relative;padding:57px 0 50px 350px;text-align:left}
	#footer .finfo .f_logo {display:block;position:absolute;top:45px;left:0}
	#footer .finfo .f_logo img {max-width:250px}
	#footer .finfo p {font-size:13px}
	#footer .finfo .copyright {font-size:13px}


        footer{width:1920px !important;}
	.lnb_p {
    flex:1;
    display:block;
    width:auto;
    height:78px;
    margin:0;
}

.lnb_p ul {
    margin:0;
    padding:0;
    list-style:none;
}

.lnb_p a {
    display:block;
    text-decoration:none;
}

.lnb_p .dep1 {
    display:flex;
    justify-content:flex-end;
    align-items:center;
    height:78px;
}

.lnb_p .dep1 > li {
    position:relative;
    height:78px;
}

.lnb_p .dep1 > li > a {
    position:relative;
    display:flex;
    align-items:center;
    height:78px;
    padding:0 28px;

    font-size:18px;
    font-weight:700;
    line-height:1;
    color:#222;

    white-space:nowrap;
    box-sizing:border-box;
}

.lnb_p .dep1 > li.on > a,
.lnb_p .dep1 > li:hover > a {
    color:#17174e;
}

.lnb_p .dep1 > li > a:after {
    content:"";
    position:absolute;
    left:28px;
    right:28px;
    bottom:18px;
    height:3px;

    background:#f29a00;

    transform:scaleX(0);
    transition:transform .2s ease;
}

.lnb_p .dep1 > li.on > a:after,
.lnb_p .dep1 > li:hover > a:after {
    transform:scaleX(1);
}


ul.dep1 > li:nth-child(2) > div >ul.dep2 > li:nth-child(1) a{color:#000;}
ul.dep1 > li:nth-child(2) > div >ul.dep2 > li:nth-child(1) a:hover{color:#0a6ebd; }
	/* sub page */
	.shgroup > .shgroup_pc {box-sizing:border-box;height:350px;padding-top:102px;background-position:center 0;background-repeat:no-repeat;background-size:cover}
	.shgroup .sub_top_text_wrap {display:table;width:100%;table-layout:fixed}
	.shgroup .sub_top_text_wrap .top_text_inner {box-sizing:border-box;display:table-cell;height:198px;padding-bottom:30px;text-align:center;vertical-align:middle}
	.shgroup .sub_top_text_wrap .sub_top_text {margin:10px 0 0;padding:0;font-size:22px;font-weight:bold;color:#ffffff;line-height:1.4em}
	.shgroup .sub_location {border-bottom:1px solid #252525;background:#313131}
	.shgroup .sub_location > ul {box-sizing:border-box;padding:0}
	.shgroup .sub_location > ul:after {content:'';display:block;clear:both}
	.shgroup .sub_location > ul > li {box-sizing:border-box;float:left;position:relative;z-index:100;min-width:150px;margin:0;padding:0;list-style-type:none;border-right:1px solid #252525}
	.shgroup .sub_location > ul > li > p {position:relative;margin:0;padding:0 20px;font-size:14px;font-weight:bold;color:#bbbbbb;text-align:center;line-height:49px;letter-spacing:-.03em}
	.shgroup .sub_location > ul > li.loca_home {min-width:60px;border-left:1px solid #252525}
	.shgroup .sub_location > ul > li.loca_home > p {padding:0}
	.shgroup .sub_location > ul > li.loca_home > p > a {display:block;position:relative;font-size:0}
	.shgroup .sub_location > ul > li.loca_home > p > a:before {content:'\e900';font-family:'icomoon';font-size:20px;font-weight:normal;color:#bbbbbb;vertical-align:top}
	.shgroup .sub_location > ul > li.loca_current > p {color:#0a6ebd}
	.shgroup .sub_location > ul > li.snb_on > p {box-sizing:border-box;padding-right:42px;text-align:left;cursor:pointer}
	.shgroup .sub_location > ul > li.snb_on > p:before {content:'';position:absolute;top:50%;right:20px;margin-top:-3px;border-width:6px;border-style:solid;border-color:#bbbbbb transparent transparent transparent;vertical-align:top}
	.shgroup .sub_location > ul > li.snb_on.on > p:before {margin-top:-10px;border-color:transparent transparent #bbbbbb transparent}
	.shgroup .sub_location > ul > li.snb_on > ul {box-sizing:border-box;display:none;position:absolute;left:-1px;right:-1px;min-width:100%;margin:0;padding:0;border:1px solid #252525;background:#313131;}
	.shgroup .sub_location > ul > li.snb_on > ul > li {margin:0;padding:0;list-style-type:none;border-top:1px solid #252525}
	.shgroup .sub_location > ul > li.snb_on > ul > li:first-child {border-top:none}
	.shgroup .sub_location > ul > li.snb_on > ul > li > a {display:block;padding:10px 20px;font-size:13px;color:#bbbbbb;background:#313131;letter-spacing:-.03em;transition:all .2s ease-out}
	.shgroup .sub_location > ul > li.snb_on > ul > li > a:hover,
	.shgroup .sub_location > ul > li.snb_on > ul > li.on > a {color:#0a6ebd}
	.shgroup .sub_location > ul > li.loca_current.snb_on > p:before {border-color:#0a6ebd transparent transparent transparent}
	.shgroup .sub_location > ul > li.loca_current.snb_on.on > p:before {border-color:transparent transparent #0a6ebd transparent}
	.contents .sub_top_title {margin:0 auto 35px;padding:0;font-size:32px;color:#404040;line-height:1.3em;letter-spacing:-.03em}
	#sub_view #container .contents_wrap:after {clear:both;content:'';display:block}
	#sub_view #container .contents_wrap.mypage .snb_wrap {display:none}
	#sub_view #container .contents_wrap.mypage .contents {overflow:hidden}
}



/* MOBILE - 뷰포트 CSS */
@media all and (max-width:1400px) {
	#viewport {position:relative;width:100%;overflow-x:hidden}
	#viewport #header {position:fixed;left:0;top:0;width:100%;transition:all 300ms ease}
	#viewport #container {position:relative;z-index:100;}
	#viewport #main_view,
	#viewport #sub_view {position:relative;left:0;top:0;transition:all 300ms ease}
	#viewport.app_view #container {padding-top:0}
	.viewport_side > h1 {margin:0;}
	.viewport_side > h1 a {display:block;position:relative;height:50px;line-height:50px;margin:0;padding:0 30px;background:#0a6ebd;font-size:14px;color:#fff;text-align:center}

	.side_menu ul {margin:0;padding:0;list-style:none}
	.side_menu [role=toggle] > a:before {content:'';position:absolute;top:50%;right:12px;width:0;height:0;margin-top:-2px;border:6px solid transparent;border-top-color:#666}
	.side_menu [role=toggle].active > a:before {margin-top:-8px;border-top-color:transparent;border-bottom-color:#666}
	.side_menu .dep1 > li > a {display:block;position:relative;height:40px;line-height:40px;padding:0 35px 0 12px;border-bottom:1px solid #e6e6e6;background:#fafafa;font-size:13px;font-weight:bold;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
	.side_menu .dep2 {display:none}
	.side_menu .dep2 > li > a {display:block;position:relative;height:40px;line-height:40px;padding:0 12px 0 24px;border-bottom:1px solid #e6e6e6;background:#fff;font-size:13px;font-weight:bold;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
	.side_menu .active .dep2 {display:block}

	.side_search {border-bottom:1px solid #e6e6e6;background:#fafafa}
	.side_search fieldset {position:relative;margin:0;padding:8px;border:none}
	.side_search legend {display:none}
	.side_search span {display:block;padding:4px 8px;border:1px solid #ccc;background:#fff}
	.side_search span input {width:100%;margin:0;padding:4px 0;border:none;background:transparent;color:#666}
	.side_search button {position:absolute;border:none;padding:0;top:10px;right:10px;bottom:10px;margin:auto;padding:5px;background:transparent;font-size:0}
	.side_search button:before {content:'\e901';font-family:'icomoon';font-size:24px;color:#666}

	#viewport .viewport_side {visibility:hidden;overflow-y:auto;position:absolute;top:0;width:270px;height:100%;background:#ffffff;z-index:9999;transition:all 300ms ease}
	#viewport #left_side {left:-270px}
	#viewport #right_side {right:-270px}
	#viewport.left-open,
	#viewport.right-open {overflow:hidden;width:100%;height:100%}
	#viewport.left-open #header,
	#viewport.left-open #main_view,
	#viewport.left-open #sub_view {left:270px}
	#viewport.right-open #header,
	#viewport.right-open #main_view,
	#viewport.right-open #sub_view {left:-270px}
	#viewport.left-open #left_side {visibility:visible;left:0}
	#viewport.right-open #right_side {visibility:visible;right:0}
	#viewport #close_side {display:none;position:absolute;top:0;left:0;bottom:0;left:0;z-index:9998;width:100%;height:100%;box-sizing:border-box;border:none;background:none;text-align:left;text-indent:-9999px;background:rgba(0,0,0,0.6)}
	#viewport.left-open #close_side,
	#viewport.right-open #close_side {display:block}
}

#header .gnb_p .inner .logo img{display:inline-block;}

/* PC - 뷰포트 CSS */
@media all and (min-width:1400px) {
	#viewport #left_side {display:none}
	#viewport #right_side {display:none}
	#viewport #close_side {display:none}
}


/* =========================================================
   PC HEADER / MEGA MENU RENEWAL
========================================================= */
@media all and (min-width:1400px) {

    /* =========================
       HEADER
    ========================= */

    #header {
        position:fixed;
        top:0;
        left:0;
        right:0;
        height:78px;
        padding:0;
        background:#fff;
        border-bottom:1px solid #eee;
        box-shadow:none;
        z-index:9998;
    }

    #header .gnb_p {
        display:none !important;
    }

    #header > .inner {
        display:flex;
        align-items:center;
        width:100%;
        max-width:1440px;
        height:78px;
        margin:0 auto;
        padding:0 20px;
        box-sizing:border-box;
    }




    /* =========================
       LOGO
    ========================= */

    #header .logo {
        flex:0 0 300px;
        width:300px;
        margin:0;
    }

    #header .logo h1 {
        width:auto;
        margin:0;
        padding:0;
    }

    #header .logo h1 span {
        display:block;
    }

    #header .logo h1 span a {
        display:flex;
        align-items:center;
        height:78px;
    }

    #header .logo h1 img {
        width:200px;
        height:auto;
    }


    /* =========================
       1차 메뉴
    ========================= */

    #lnb_p {
        flex:1;
        height:78px;
        margin:0;
    }

    #lnb_p ul {
        margin:0;
        padding:0;
        list-style:none;
    }

    #lnb_p .dep1 {
        display:flex;
        justify-content:flex-end;
        align-items:center;
        height:78px;
    }

    #lnb_p .dep1 > li {
        position:relative;
        height:78px;
    }

    #lnb_p .dep1 > li > a {
        position:relative;
        display:flex;
        align-items:center;
        height:78px;
        padding:0 28px;

        box-sizing:border-box;

        font-size:20px;
        font-weight: 800;
        line-height:1;

        color:#333;
        white-space:nowrap;

    }

    #lnb_p .dep1 > li:hover > a,
    #lnb_p .dep1 > li.on > a {
        color:#17174e;
    }

    #lnb_p .dep1 > li > a:after {
        content:"";
        position:absolute;
        left:28px;
        right:28px;
        bottom:17px;

        height:3px;
        background:rgba(27,127,204,.8);

        transform:scaleX(0);
        transition:.2s;
    }

    #lnb_p .dep1 > li:hover > a:after,
    #lnb_p .dep1 > li.on > a:after {
        transform:scaleX(1);
    }


    /* =========================
       메가메뉴
    ========================= */

    #lnb_p .mega-menu {
        display:block !important;

        position:fixed;
        top:78px;
        left:0;

        width:100%;
        height:270px;

        padding:0;

          background:
        linear-gradient(
            90deg,
            #f3f5fb 0%,
            #f3f5fb 50%,
            #fff 50%,
            #fff 100%
        );

        visibility:hidden;
        opacity:0;
        pointer-events:none;

        transform:translateY(-5px);

        transition:
            opacity .18s ease,
            transform .18s ease,
            visibility .18s;

        z-index:9997;
    }





    .mega-menu:before {
        display:none !important;
    }


    .mega-menu-inner {
        display:flex;
        width:100%;
        height:270px;
        max-width: 1440px;
        margin: 0 auto;
    }


    /* =========================
       왼쪽
    ========================= */

    .mega-info {
        display:flex;
        justify-content:flex-end;
        align-items:flex-start;

        width:50%;
        height:270px;

        padding:43px 55px 30px 20px;

        box-sizing:border-box;

        background:transparent;
    }


    .mega-clinic {
        width:240px;
        padding-top:5px;
    }


    .mega-clinic img {
        display:block;
        width:225px;
        height:auto;
    }


    .mega-call {
        display:flex;
        justify-content:center;
        align-items:center;

        width:193px;
        height:51px;

        margin-top:65px;

        border-radius:7px;

        background:#1e1c59;

        color:#fff !important;

        font-size:23px;
        font-weight:800;

        text-decoration:none;
    }


    .mega-hours {
        width:330px;
        margin-left:30px;
    }


    .mega-hour-row {
        display:flex;
        align-items:center;

        min-height:40px;

        font-size:18px;
        color:#161842;
    }


    .mega-hour-row strong {
        flex:0 0 95px;
    text-align: justify;
    text-align-last: justify;
    text-justify: inter-character;

    white-space: nowrap;
    }


    .mega-hour-row span {
        white-space:nowrap;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum";
    }


    .mega-hour-row b {
        font-size:21px;
        font-weight:800;
    }


    .mega-hour-note {
        margin:11px 0 0;

        font-size:14px;
        line-height:1.55 !important;

        color:#8991a5;
    }


    /* =========================
       오른쪽
    ========================= */

    .mega-links {
        position:relative;

        flex:1;
        height:270px;

        padding:42px 60px;

        box-sizing:border-box;

        background:#fff;
        overflow:hidden;
    }


    /*
       ★ 중요
       기존 .dep1 flex 영향을 여기서 완전히 해제
    */
    #lnb_p .mega-links .dep2 {
        display:grid !important;

        grid-template-columns:170px 170px;
        column-gap:140px;
        row-gap:12px;

        width:auto;

        margin:0;
        padding:0;

        font-size:inherit;
        white-space:normal;
    }


    #lnb_p .mega-links .dep2 > li {
        display:block;
        width:auto;
        margin:0;
        padding:0;

        white-space:normal;
    }


    #lnb_p .mega-links .dep2 > li > a {
        display:block;

        padding:3px 0;

        font-size:18px;
        font-weight:400;

        line-height:1.5;

        text-align:left;

        color:#7e8796;
        font-weight: 600;
    }


    #lnb_p .mega-links .dep2 > li:hover > a,
    #lnb_p .mega-links .dep2 > li.on > a {
        color:#16164d;
    }


    #container .contents_wrap {
        margin-top:50px;
    }

}


    /* ---------------------------------------------------------
       FIXED HEADER 공간 확보
    --------------------------------------------------------- */

    #container .contents_wrap {
        margin-top: 50px;
    }

}

/* =========================================================
   MEGA MENU HOVER FIX
========================================================= */
@media all and (min-width:1400px) {

    /* 1차 메뉴 li는 글자 크기에 맞춤 */
    #lnb_p .dep1 > li {
        flex:0 0 auto !important;
        width:auto !important;
        height:auto !important;
        position:relative;
    }

    /*
       기존에는 height:78px + padding 28px라
       글자 주변 빈 공간까지 hover 영역이었음
    */
    #lnb_p .dep1 > li > a {
        display:block !important;

        width:auto !important;
        height:auto !important;

        margin:0 28px !important;
        padding:8px 0 !important;

        line-height:1.4 !important;

        position:relative;
    }

    /* underline 위치 재조정 */
    #lnb_p .dep1 > li > a:after {
        left:0 !important;
        right:0 !important;
        bottom:2px !important;
    }


    /* ===========================
       메가메뉴 기본 닫힘
    =========================== */

    #lnb_p .dep1 > li > .mega-menu {
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
        transform:translateY(-5px);
    }



}

@media all and (min-width:1400px) {

    /* 모든 메가메뉴 기본 닫힘 */
    #lnb_p .dep1 > li > .mega-menu {
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;

        /* 메뉴 바뀔 때 내려오는 애니메이션 제거 */
        transform:none !important;
        transition:none !important;
    }

    /* JS가 선택한 메뉴만 표시 */
    #lnb_p .dep1 > li.is-menu-active > .mega-menu {
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }

    /* 활성 메뉴 글자 */
    #lnb_p .dep1 > li.is-menu-active > a {
        color:#17174e;
    }

    /* 활성 메뉴 밑줄 */
    #lnb_p .dep1 > li.is-menu-active > a:after {
        transform:scaleX(1);
    }

}

/* =========================
   메가메뉴 왼쪽 영역 정리
========================= */
.mega-info {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 50%;
    height: 270px;
    padding: 38px 30px 28px 34px;
    box-sizing: border-box;
    background: #f3f5fb;
}

.mega-clinic {
    width: 100px;
    padding-top: 4px;
}


/* =========================
   시간표 영역
========================= */
.mega-hours {
    width: 520px;
    margin-left: 24px;
    padding-top: 2px;
}

.mega-hours-cols {
    display: flex;
    gap: 114px;
}

.mega-hours-col {
    flex: 1;
    min-width: 0;
}

.mega-hours-subtitle {
    display: inline-block;
    margin: 9px 0 14px;
    padding: 7px 18px;

    background: #17174e;
    color: #fff;

    border-radius: 999px;

    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.mega-hour-row {
    display: flex;
    align-items: flex-start;
    min-height: 38px;
    margin-bottom: 12px;
    font-size: 18px;
    line-height: 1.4;
    color: #161842;
    gap: 20px;
}

.mega-hour-row strong {
    flex: 0 0 65px;
    font-size: 18px;
    font-weight: 800;
    color: #111345;
    white-space: nowrap;
    letter-spacing: 0;
}

.mega-hour-row > span,
.mega-hour-text {
    display: block;
    min-width: max-content;
    flex-shrink: 0;
}

.mega-hour-row > span,
.mega-hour-text > span {
    white-space: nowrap;
    font-size: 18px;
    line-height: 1.4;
    color: #161842;
}

.mega-hour-row b,
.mega-hour-text b {
    font-size: 21px;
    font-weight: 800;
    color: #111;
}

.mega-hour-text small {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    line-height: 1.35;
    color: #7e8798;
    white-space: nowrap;
}

.mega-hour-row-sat {
    margin-bottom: 0;
}


.mega-hours-divider {
    flex: 0 0 1px;
    width: 1px;
    height: 180px;
    margin: 9px 8px 0;
    background: #9ca2ad;
}


/* =========================================================
   MOBILE DRAWER RENEWAL
========================================================= */
@media all and (max-width:1400px) {

    /* 기존 push 방식 → overlay 방식 */
    #viewport.left-open #header,
    #viewport.left-open #main_view,
    #viewport.left-open #sub_view {
        left:0 !important;
    }

    #viewport #left_side {
        left:-340px;
    }

#viewport #left_side.mobile-drawer {
    position:fixed !important;

    top:0;
    bottom:0;
    left:-330px;

    width:330px;
    max-width:calc(100vw - 38px);

    height:100dvh;
    max-height:100dvh;

    display:flex;
    flex-direction:column;

    background:#fff;
    overflow:hidden;

    box-sizing:border-box;
}
#viewport.left-open #left_side.mobile-drawer {
    left:0;
}

    #viewport.left-open #left_side {
        left:0;
    }


    /* 상단 */
.mobile-menu-head {
    display:flex;
    align-items:center;
    justify-content:space-between;

    height:68px;
    padding:0 18px;

    background:#29367e;
    border-bottom:0;

    box-sizing:border-box;
}

 .mobile-menu-logo {
    display:flex;
    align-items:center;
}

.mobile-menu-logo img {
    display:block;
    width:155px;
    height:auto;

    /* 기존 컬러 로고를 흰색으로 */
    filter:brightness(0) invert(1);
}

/* 닫기 버튼 */
.mobile-menu-close {
    display:flex;
    align-items:center;
    justify-content:center;

    width:36px;
    height:36px;

    margin:0;
    padding:0;

    border:0;
    background:none;

    font-size:26px;
    font-weight:300;
    line-height:1;

    color:#fff;

    cursor:pointer;
}


    /* 상단 바로가기 */
    .mobile-menu-quick {
        display:flex;
        gap:7px;

        padding:13px 18px 8px;
    }

    .mobile-menu-quick a {
        flex:1;

        display:flex;
        align-items:center;
        justify-content:center;

        height:38px;

        border:1px solid #e4e7ed;
        border-radius:9px;

        background:#fff;

        box-shadow:0 2px 8px rgba(0,0,0,.035);

        font-size:13px;
        font-weight:700;
        line-height:1;

        color:#17174e;
    }

    .mobile-menu-quick a.is-primary {
        background:#17174e;
        border-color:#17174e;

        color:#fff;
    }


    .mobile-menu-label {
        padding:5px 18px 7px;

        font-size:10px;
        font-weight:700;

        color:#969ca9;

        letter-spacing:.09em !important;
    }


    /* 메뉴 */
#left_side .side_menu {
    flex:1;
    min-height:0;

    padding:0 17px 20px;

    overflow-y:auto;
    overflow-x:hidden;

    -webkit-overflow-scrolling:touch;
}

    #left_side .side_menu ul {
        margin:0;
        padding:0;

        list-style:none;
    }

    #left_side .side_menu .dep1 > li {
        margin:0 0 6px;
    }

    #left_side .side_menu .dep1 > li > a {
        position:relative;

        display:flex;
        align-items:center;

        width:100%;
        min-height:46px;
        height:auto;

        padding:0 42px 0 14px;

        border:1px solid #e8eaf0;
        border-radius:10px;

        background:#fff;

        box-shadow:0 2px 7px rgba(0,0,0,.025);

        box-sizing:border-box;

        font-size:14px;
        font-weight:800;
        line-height:1.35;

        color:#252b3d;

        white-space:normal;
    }


    /* 기존 삼각형 삭제 */
    #left_side .side_menu [role=toggle] > a:before {
        display:none !important;
    }


    /* 화살표 */
    #left_side .side_menu [role=toggle] > a:after {
        content:"";

        position:absolute;

        top:50%;
        right:16px;

        width:7px;
        height:7px;

        border-right:1px solid #9ba0a9;
        border-bottom:1px solid #9ba0a9;

        transform:translateY(-70%) rotate(45deg);

        transition:transform .2s ease;
    }

    #left_side .side_menu [role=toggle].active > a:after {
        transform:translateY(-30%) rotate(225deg);
    }


    /* 현재 메뉴 */
    #left_side .side_menu .dep1 > li.on > a,
    #left_side .side_menu .dep1 > li.active > a {
        color:#17174e;
    }


    /* 2차 메뉴 */
    #left_side .side_menu .dep2 {
        display:none;

        margin:5px 7px 9px !important;
        padding:5px 0 5px 12px !important;

        border-left:1px solid #e5e8ee;
    }

    #left_side .side_menu .active > div > .dep2 {
        display:block;
    }

    #left_side .side_menu .dep2 > li > a {
        display: block;
        min-height: 0;
        height: auto;
        padding: 7px 10px;
        border: 0;
        background: none;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.45;
        color: #727986;
        white-space: normal;
    }

    #left_side .side_menu .dep2 > li.on > a {
        color:#17174e;
        font-weight:700;
    }


    /* 하단 진료시간 카드 */
.mobile-menu-hours {
    flex:0 0 auto;

    width:100%;
    margin:auto 0 0;

    padding:
        18px
        20px
        calc(22px + env(safe-area-inset-bottom));

    box-sizing:border-box;

    background:#17174e;
    color:#fff;

    border-radius:20px 20px 0 0;

    z-index: 2;
}
 
    .mobile-menu-hours-title {
        display: block;
        margin-bottom: 12px;
        font-size: 13px;
        font-weight: 800;
        color: #fff;
    }

    .mobile-hours-row {
        display:flex;
        align-items:center;

        margin-top:7px;

        font-size:11px;
        line-height:1.4;
    }

    .mobile-hours-row b {
        flex: 0 0 54px;
        font-size: 14px;
        font-weight: 800 !important;

        color:#bde3ff;

margin-right: 10px;
    text-align:justify;
    text-align-last:justify;
    text-justify:inter-character;

    }

.mobile-hours-row span {
    color:#fff;
    font-size:14px;
    font-family:'Pretendard' !important;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum";
}

.mobile-hours-row span em {
    display:inline-block;
    width:34px;

    font-style:normal;
    font-family:'Pretendard' !important;
    text-align:left;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum";
}

    .mobile-menu-hours p {
        margin:12px 0 0;
        padding-top:10px;

        border-top:1px solid rgba(255,255,255,.12);

        font-size:10px;
        line-height:1.5;

        color:#aeb5d3;
    }


    /* 바깥 어둡게 */
    #viewport #close_side {
        background:rgba(15,18,28,.52);
        backdrop-filter:blur(2px);
        -webkit-backdrop-filter:blur(2px);
    }

}

/* 기본적으로 모바일 전용 네비 숨김 */
.mobile-bottom-nav {
    display:none;
}


@media (max-width:768px) {

    /* 기존 컬러 퀵바는 모바일에서 숨김 */
    .clinic-quickbar {
        display:none !important;
    }

    /* 하단 네비만큼 본문 공간 확보 */
    body {
        padding-bottom:76px;
    }

    .mobile-bottom-nav {
        position:fixed;

        left:0;
        right:0;
        bottom:0;

        z-index:9998;

        display:flex;

        width:100%;
        height:72px;

        padding-bottom:env(safe-area-inset-bottom);

        background:#29367e;

        box-sizing:content-box;

        box-shadow:0 -3px 15px rgba(0,0,0,.14);
    }


    .mobile-nav-item {
        position:relative;

        flex:1;

        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;

        gap:4px;

        min-width:0;

        color:#fff !important;
        text-decoration:none;

        box-sizing:border-box;
    }


    /* 버튼 사이 구분선 */
    .mobile-nav-item + .mobile-nav-item:before {
        content:"";

        position:absolute;

        left:0;
        top:14px;
        bottom:14px;

        width:1px;

        background:rgba(255,255,255,.22);
    }


    /* 아이콘 */
    .mobile-nav-icon {
        display:flex;
        align-items:center;
        justify-content:center;

        width:26px;
        height:26px;
    }

    .mobile-nav-icon svg {
        display:block;

        width:25px;
        height:25px;

        fill:none;
        stroke:#fff;
        stroke-width:1.8;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    /* 전화 아이콘은 면 형태가 더 자연스러움 */
    .mobile-nav-item:first-child svg {
        fill:#fff;
        stroke:none;
    }


    /* 글자 */
    .mobile-nav-item strong {
        font-size:13px;
        font-weight:700;
        line-height:1.2;

        color:#fff;

        white-space:nowrap;
        font-family: 'NanumSquareNeo' !important;
    }

}
@media all and (max-width:1400px) {

    /* =========================
       RIGHT SIDE
    ========================= */

    #viewport #right_side {
        position:fixed;
        top:0;
        right:-330px;
        left:auto;

        width:330px;
        max-width:calc(100vw - 38px);
        height:100dvh;

        background:#fff;

        overflow-y:auto;
        overflow-x:hidden;

        box-shadow:-10px 0 40px rgba(20,30,60,.15);

        box-sizing:border-box;
        z-index:9999;

        transition:right .3s ease;
    }

    #viewport.right-open #right_side {
        right:0;
    }

    /* 본문 밀리지 않게 */
    #viewport.right-open #header,
    #viewport.right-open #main_view,
    #viewport.right-open #sub_view {
        left:0 !important;
    }


    /* =========================
       기존 로그인 / 로그아웃 헤더
       HTML 그대로 사용
    ========================= */

    #right_side > h1 {
        margin:0;
        padding:0;

        background:#29367e;
    }

    #right_side > h1 a {
        display:flex;
        align-items:center;

        width:100%;
        height:64px;

        padding:0 20px;

        background:#29367e !important;

        box-sizing:border-box;

        font-size:15px;
        font-weight:700;
        line-height:1;

        color:#fff !important;
        text-align:left;
    }


    /* =========================
       검색
    ========================= */

    #right_side .side_search {
        padding:16px 17px 10px;

        border:0;
        background:#fff;
    }

    #right_side .side_search fieldset {
        position:relative;

        margin:0;
        padding:0;

        border:0;
    }

    #right_side .side_search .search_form span {
        display:block;

        padding:0;

        border:1px solid #e4e8ef;
        border-radius:11px;

        background:#fff;

        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.9),
            0 3px 10px rgba(40,60,90,.04);
    }

    #right_side .side_search input {
        width:100%;
        height:44px;

        padding:0 48px 0 14px;

        border:0;
        outline:0;

        background:transparent;

        box-sizing:border-box;

        font-size:13px;
        color:#252b3c;
    }

    #right_side .side_search button {
        position:absolute;
        top:50%;
        right:8px;

        width:34px;
        height:34px;

        padding:0;

        border:0;
        border-radius:9px;

        background:#29367e;

        transform:translateY(-50%);
    }

    #right_side .side_search button:before {
        color:#fff;
        font-size:17px;
    }


    /* =========================
       로그인 / 회원가입 /
       마이페이지 등 기존 메뉴
    ========================= */

    #right_side .side_menu {
        padding:6px 17px 24px;

        background:#fff;
    }

    #right_side .side_menu ul {
        margin:0;
        padding:0;

        list-style:none;
    }

    /* ★ 아무것도 숨기지 않음 */
    #right_side .side_menu .dep1 > li {
        display:block;
        margin:0 0 7px;
    }

    #right_side .side_menu .dep1 > li > a {
        display:flex;
        align-items:center;

        width:100%;
        min-height:48px;

        padding:0 15px;

        border:1px solid #e6e9ef;
        border-radius:11px;

        background:
            linear-gradient(
                135deg,
                #fff 0%,
                #f7faff 100%
            );

        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.95),
            0 3px 9px rgba(43,63,92,.04);

        box-sizing:border-box;

        font-size:14px;
        font-weight:700;
        line-height:1.35;

        color:#252b3c;

        transition:
            border-color .2s ease,
            background .2s ease,
            color .2s ease;
    }

    #right_side .side_menu .dep1 > li > a:hover {
        border-color:rgba(41,54,126,.25);

        background:
            linear-gradient(
                135deg,
                #fff,
                #eef4ff
            );

        color:#29367e;
    }

}