@charset "UTF-8";


:root{
	--main-color:transparent;
	--transition-custom: all 0.3s ease-in-out;
	--transition-custom2: all 0.8s ease-in-out;
	--transition-custom-2: all 0.2s ease-in-out; 
  --font-family-noto: 'Noto Sans Korean', 'Nanum Gothic', Nanum Gothic, '나눔고딕', '맑은 고딕', 'Malgun Gothic', Dotum, '돋움', Gulim, '굴림',sans-serif;
	--font-family-mont: 'Montserrat', 'Noto Sans Korean', 'Nanum Gothic', Nanum Gothic, '나눔고딕', '맑은 고딕', 'Malgun Gothic', Dotum, '돋움', Gulim, '굴림',sans-serif;
	--font-family-suit: 'SUIT', 'Noto Sans Korean', 'Nanum Gothic', Nanum Gothic, '나눔고딕', '맑은 고딕', 'Malgun Gothic', Dotum, '돋움', Gulim, '굴림',sans-serif;
}

.pop_appoint ::-webkit-scrollbar{width: 8px; height: 8px;}
.pop_appoint ::-webkit-scrollbar-thumb{background-color:#525252; border-radius: 0.625rem; border: 2px solid #fff; background-clip: padding-box;  box-sizing: border-box;}
.pop_appoint ::-webkit-scrollbar-track{ background:#cccccc; border-radius: 0.625rem; border: 2px solid #fff; box-shadow:inset 0.625rem 0 0 transparent;  box-sizing: border-box; }

body.mo .pop_appo_cnt::-webkit-scrollbar{width: 8px; height: 8px;}
body.mo .pop_appo_cnt::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0.3); border-radius: 0.625rem; border: 2px solid transparent; background-clip: padding-box;  box-sizing: border-box;}
body.mo .pop_appo_cnt::-webkit-scrollbar-track{ background:transparent; border-radius: 0.625rem; border: 2px solid transparent; box-shadow:inset 0.625rem 0 0 transparent;  box-sizing: border-box; }

/*** popup style ***/
body.pop { overflow: hidden;}

body.pop .pop_layer {background:rgba(0,0,0,0.5);}
body.pop .pop_layer_basic,
body.pop .pop_layer_alert { top:0; opacity: 1;}

.pop_layer {display:flex; justify-content: center; align-items: center; z-index:500; position:fixed; left:0; top:0; right:0; bottom:0; padding:1.25rem; box-sizing: border-box; overflow-y: auto;
	transition: 0.4s;}
.pop_layer.st01 {    background: rgba(0, 0, 0, 0.5);}

.pop_layer_basic,
.pop_layer_alert {position:relative; top:60px; opacity: 0; transition: 0.4s;}

.pop_layer.st01 .pop_layer_basic {top:auto; opacity: 1; }

.pop_close { z-index: 10; position:absolute; right:0; top:0; width:2.5rem; height:2.5rem; background:  url(../images/comm/icon_close02_b.png) no-repeat 50% 50%;}

.pop_header {  position:relative; padding-top:0.75rem; padding-bottom:0.75rem; height:5.5rem; min-height:4.5rem; color:#fff; background:#003271; }
.pop_header.bg_bl {background:#090f33;}
.pop_header .in_w {display:flex; align-items: center; gap:0 0.625rem; position:relative; height: 100%; max-width:none;}
.pop_header h2 {flex:1; margin:0; padding:0; font-size:1.625rem; color:#fff; font-weight: 500; letter-spacing: -1.5px; border:none; } 
@media (max-width:768px) { 
	.pop_header { height: 5rem; min-height: 5rem;}
}

.btn_pop_close {position:relative;  width:2.125rem; height: 2.125rem;}
.btn_pop_close > span {position:absolute; left:50%; top:50%;  width:1.875rem; height:0.1875rem; 
	transform: translate(-50%, -50%);}
.btn_pop_close > span:before,
.btn_pop_close > span:after {content:''; display:block; position:absolute; left:0; top:0; width:100%; height: 100%; background: #fff;}
.btn_pop_close > span:before {transform: rotate(45deg);}
.btn_pop_close > span:after {transform: rotate(135deg); box-shadow:2px 2px 2px rgba(0,0,0,0.1);}


.pop_layer_basic {}
.pop_layer_basic > .btn_pop_close {z-index:1; position:absolute; top:-2px; right:-2px; transform: translateX(50%); width:4rem; height: 4rem; background: #093378; border:2px solid #000; box-sizing: border-box;}
.pop_layer_basic > .btn_pop_close > span {width:2.25rem; height: 3px; }

.pop_layer_basic .pop_header .btn_pop_close {margin-right:-0.375rem;}

@media (max-width:1023px) { 
	.pop_layer_basic > .btn_pop_close {transform: translateX(0); margin-right:-1.25rem;  }
	.btn_pop_close > span { width: 1.75rem; }
	.pop_layer_basic > .btn_pop_close span { width: 2rem; }
}
@media (max-width:768px) { 
	.pop_layer_basic > .btn_pop_close { width: 3.25rem; height: 3.25rem; }
	.btn_pop_close > span { width: 1.5rem;}
	.pop_layer_basic > .btn_pop_close span { width: 1.75rem;}
}
@media (max-width:640px) { 
	.pop_layer_basic > .btn_pop_close {margin-right:-4vw; margin-top:-4vw;  width: calc(8vw + 4px); height: calc(8vw + 4px);}
	.pop_layer_basic > .btn_pop_close span {width:1.375rem; height: 0.125rem;}
}

.pop_content {flex:1; padding:2.25rem; overflow-y: auto; box-sizing: border-box;}
.pop_content .pop_cnt:not(:last-child) {margin-bottom:1.5rem;}
.pop_content .pop_cnt_s:not(:last-child) {margin-bottom:1rem;}
.pop_content h3 { margin-bottom:0.75rem; font-size:1.375rem;}
.pop_content h4 {margin-bottom:0.75rem;}

.pop_content h3.cnt_tit:before {top:0.375rem;}

.popup .btn_area_btm {display:flex; flex-wrap: wrap; justify-content: center; gap:0.375rem; margin-top:1.875rem; text-align: center;}
.popup .btn_area_btm .btn {width:8.75rem; font-size:1.0625rem; background:#777;}
.popup .btn_area_btm .btn span {color:#fff; }
.popup .btn_area_btm .btn.btn_ok {background:#0b2d85;}

.pop_content .x_agree_checkBox { font-size: 1.0625rem;}
.pop_content .x_agree_checkBox input[type="checkbox"] {	position: absolute;	width: 1px;	height: 1px;	padding: 0;	margin: -1px;	overflow: hidden;	clip: rect(0,0,0,0);	border: 0; }
.pop_content .x_agree_checkBox input[type="checkbox"] + label {display: flex; align-items: center; gap:0.5rem;}
.pop_content .x_agree_checkBox input[type="checkbox"] + label:before {content: ' ';	display: inline-block;	width: 1.5rem;	height: 1.5rem;	border: #c4c4c4 1px solid;	background: #fff; }
.pop_content .x_agree_checkBox input[type="checkbox"]:checked + label:before {	background: #fff url(../images/main_n/ico_check02.png) no-repeat 50% 50%;	border-color: #28a3e0; }


	/* pop : 레이어 팝업 */
.pop_layer_basic { display:flex;flex-direction: column; position:relative; width:100%; max-width:960px; max-height: 100%; background:#fff;  box-shadow: 0.5rem 0.5rem 4.5rem rgba(0,0,0,0.6); box-sizing: border-box;}
.pop_layer_basic .in_cover {padding-right:1.875rem; padding-left:1.875rem;}

.pop_layer_basic.layer_radius {border-radius: 0.625rem; }
.pop_layer_basic.layer_radius .pop_header {border-top-left-radius: 0.625rem; border-top-right-radius: 0.625rem;}

	/* pop : 팝업 alert */
.pop_alert { width:400px; text-align: center; background:#fff;}



	/* pop : 새창 팝업 */
.pop_blank_basic {display:flex; flex-direction: column; height: 100%;}
.pop_blank_basic .pop_content {padding-left:4vw; padding-right:4vw; max-height: none;}

.pop_alert {max-width:460px; border-radius: 0;}

	/* popup : table */
.popup .tb th, 
.popup .tb td, 
.popup .st_th {  height: 3.25rem; }
.popup .tb_th_skip > tbody > tr > td:not(.td_viewTit) {  min-height: 3.25rem; }




	/* popup : fixBanner */
.alert_fixBann {width:300px; overflow: hidden;}
.alert_fixBann .swiper_fixBann_mo {position:relative;}
.alert_fixBann .swiper_fixBann_mo a {display: block; width:300px; height: 408px;}
.alert_fixBann .swiper_fixBann_mo a img {width:100%; height:100%; object-fit: cover;}
.alert_fixBann .today_check { display: flex; align-items: center; gap:5px; padding:0 15px; height: 48px; font-size:13px; background: #efefef; box-sizing: border-box;}
.alert_fixBann .today_check label {flex:1;}
.alert_fixBann .today_check a {display: inline-flex; align-items: center;	justify-content: center; width:42px; height: 26px; font-size:13px; color:#fff; background: #666;}
.alert_fixBann .swiper-pagination { position:absolute; left:0; right:0; bottom:6px;}
.alert_fixBann .swiper_fixBann_mo .swiper-pagination-bullets {justify-content: center; }
.alert_fixBann .swiper_fixBann_mo .swiper-pagination-bullets .swiper-pagination-bullet { margin:0;}


.pop_layer_alert.alert_done {padding:50px 30px; width:400px;  text-align: center; background:#fff; box-sizing: border-box;}
.x_popTxt_done { font-size:1.3125rem; }
.x_popTxt_done > i {display: block; margin:0 auto 20px; width:70px; height: 70px;}
.x_popTxt_done svg { display: block; width: 100%; height: 100%; }
.x_popTxt_done svg .path {  stroke-dasharray: 1000;  stroke-dashoffset: 0; stroke-width: 6px;	stroke: #003271;
  &.circle { animation: ani_ch_circle .9s ease-in-out;  }
  &.check { stroke-dashoffset: -100;  animation: ani_ch_check .9s .35s ease-in-out forwards;  }
}
@keyframes ani_ch_circle {
  0%   { stroke-dashoffset: 1000;  }
  100% {  stroke-dashoffset: 0;  }
}
@keyframes ani_ch_check {
  0%   {  stroke-dashoffset: -100; }
  100% {  stroke-dashoffset: 900; }
}


* + .x_captcha {margin-top:20px;}
.x_captcha {display: flex; align-items: center; justify-content: center;}
.x_captcha > img { height: 2.875rem; }
.x_captcha > .btn {margin-left:-1px!important;}
.x_captcha input[type="text"] {flex:1; margin-left:0.625rem; width:100%; height: 46px; max-width:138px; border:1px solid #444;}
@media (max-width: 960px) {
	.x_captcha > img,
	.x_captcha > .btn,
	.x_captcha > input[type="text"] { height: 3rem; }
}


@media (max-width:768px) { 

	.popup .tb th, 
	.popup .tb td, 
	.popup .st_th { height: 3rem;  min-height: 3rem; }
	.tb_th_skip > tbody > tr > td:not(.td_viewTit) {min-height: 3rem;}

	.pop_content.pd_0 div:not(.tb_w_bd) > .tb.tb_row > tbody > tr > td:not(.td_answer) {padding-right:1rem;}


}
@media (max-width:640px) { 
	.pop_layer {padding:4vw;}

	.pop_layer_basic .in_cover {padding-left:4vw; padding-right:4vw; }

	.btn_pop_close.st01 { width: 2.5rem; height: 2.5rem; }

	.pop_content,
	.pop_layer_basic.st01 .pop_content {    padding: 2rem 4.5vw;}	
	.pop_content .pop_btn_area_btm { margin-top: 1.5rem;}

	.pop_content.pd_0 .pop_btn_area_btm {padding:1.5rem 4vw;}

}
@media (max-width:460px) { 
	.pop_layer {padding:2vw;}
}




/* 팝업 : 진료예약 */
body.popup.pc {overflow-x: initial; min-width: 1280px;}
body.pc .pop_appoint article {min-width:1280px; }

.appo_search_list .ac a:after,
.x_doc_list .ac .x_doc_info:before {content:''; display: block; position:absolute; width:1.25rem; height: 1.25rem; background: #dd4262 url(../images/cnt_n/btn_icon_reset_w.png) no-repeat 50% 50%; background-size:1.25rem auto;  border-radius: 50%;}

.x_appo_divi .c_appo_btn {display: flex; flex-direction: column; gap:6px;}
.x_appo_divi .c_appo_btn .btn {height: 56px; font-size:18px; box-shadow: 3px 5px 7px rgba(0,0,0,0.1);}
.x_appo_divi .c_appo_btn .btn span {color:#fff;}
.x_appo_divi .c_appo_btn .btn i,
.pop_appo_cnt .c_appo_btm .btn i {display: inline-block; width:1.5rem; height: 1.5rem; background:#fff url(../images/cnt_n/btn_icon_reset.png) no-repeat 50% 50%; border-radius: 50%;}
.pop_appo_cnt .btn.btn_again {background-color:#1a2d37; border-color:#1a2d37;}
.pop_appo_cnt .btn.btn_again i {background-image: url(../images/cnt_n/btn_icon_check_o.png);}
.pop_appo_cnt .btn.btn_reserv {background-color:#dd4262; border-color:#dd4262;}
.pop_appo_cnt .c_appo_btm .btn span {color:#fff;}

.x_appo_divi .btn_ok {width:7rem; height: 2.75rem; background:#444444;}
.x_appo_divi .btn_ok span {color:#fff;}

.pop_appoint {display:flex; align-items: flex-start; justify-content: center; background:#0c1b30; word-break: break-all; overflow: hidden; }
.pop_appoint article {position:relative; padding:0 40px 40px; width:100%; max-width:1580px;box-sizing:border-box ; }
.pop_appoint .btn_ico.pop_close {right:60px; top:50px;}
.pop_appoint .btn_ico.pop_close:before,
.pop_appoint .btn_ico.pop_close:after {width:2.5rem; background:#fff;}

.pop_appo_hd,
.pop_appo_cnt {max-width:1500px; box-sizing: border-box;}

.pop_appo_hd {display: flex; align-items: center; height: 5rem; min-height: 5rem; color:#fff;}
.pop_appo_hd h1 {display: flex;     align-items: center;}
.pop_appo_hd img {position:relative; top:-2px; width:115px;}
.pop_appo_hd .t {position:relative; margin-left:0.75rem; padding-left:0.75rem; font-size:1.25rem; color:#fff; font-weight: 400;}
.pop_appo_hd .t:before {content:''; display:block; position:absolute; left:0; top:50%; margin-top:-0.5rem; width:1px; height:1.125rem; background:rgba(255,255,255,0.5); }


.pop_appo_cnt {position:relative; padding:50px 60px; font-size:15px; background:#d8dfe6; border-radius: 1rem; box-shadow: 15px 15px 20px rgba(0,0,0,0.3); overflow: hidden;}
.pop_appo_cnt:before {content:''; display: block; z-index: 0; position:absolute; left:0; top:0; width:100%; height: 340px; background: #0149ad url(../images/cnt_n/appo_bg_logo.png) no-repeat right 135px top 12px; }
.pop_appo_cnt section,
.pop_appo_cnt > div {position: relative;}

.x_appo_txt .tx {display: flex; align-items: center; flex-wrap: wrap; gap:0 0.5rem; margin-bottom:1.5rem; padding-top:0.5rem; font-size:2.5rem; color:#fff; letter-spacing: -1px; box-sizing: border-box;}
.x_appo_txt .tx:not(strong) {font-weight: 100;}

.x_appo_btn_w {margin-bottom:30px;}
.x_appo_btn_w .x_btn_w {display: flex; gap:1px;}
.btn.btn_goLink {gap:0; width:8.75rem; height: 37px; font-size:14px; background:rgba(255,255,255,0.3); border:none; opacity: 0.5;}
.btn.btn_goLink .t {color:#fff;}
.btn.btn_goLink i {display: none; }
.btn.btn_goLink.ac {background:#44abfb; opacity: 1;}
.btn.btn_goLink.ac i {display: inline-block; position:relative; left:0.25rem; margin-right:-1rem; width:1.375rem; height: 1.375rem; background:  url(../images/cnt_n/btn_icon_arw_w.png) no-repeat 50% 50%;}
@media (max-width:460px) { 
	.btn.btn_goLink i{left:0.5rem;}
} 

.x_appo_btn_w .x_myReserv_list {display: inline-flex; align-items: center; gap: 0.375rem 0.5rem; padding:0.875rem 1.25rem; min-width:340px; min-height: 3.5rem; font-size:15px; white-space: nowrap; background:#fff; box-sizing: border-box;}
.x_appo_btn_w .x_myReserv_list dt {position:relative; padding-left:0.5rem; font-weight: 500; letter-spacing: -1px;}
.x_appo_btn_w .x_myReserv_list dt:before {content:''; display:block; position:absolute; left:0; top:50%; margin-top:-1px; width:3px; height: 3px; border-radius: 50%; background:#44abfb; border-radius: 50%;}
.x_appo_btn_w .x_myReserv_list dd {position:relative; margin-left:0.5rem;  padding-left:1rem; color:#777; font-weight: 500; letter-spacing: 0; font-family: var(--font-family-suit);}
.x_appo_btn_w .x_myReserv_list dd:before {content:''; display:block; position:absolute; top:50%; left:0; margin-top: -6px; margin-left:0.-5rem; width:1px; height:13px; background:#d1d1d1; }
@media (max-width:1560px) { 
	.x_appo_btn_w .x_myReserv_list { min-width:347px; }
}


.x_appo_divi {display: flex; gap:1.25rem;}
.x_appo_divi section {flex:1; display: flex;  flex-direction: column}
.x_appo_divi section.step1,
.x_appo_divi section.step2,
.x_appo_divi section.step3 {background:#fff;}
.x_appo_divi section.step1,
.x_appo_divi section.step2,
.x_appo_divi section.step3,
.x_appo_divi section.step4 > .w {box-shadow: 7px 7px 10px rgba(0, 0, 0, 0.1)}

.pop_appo_cnt h3 {display: flex; align-items: center; margin:0; padding:0 30px; height: 5rem; min-height: 5rem; font-size:1.5rem; color:#1a2d37; font-weight: 500; letter-spacing: -2px; box-sizing: border-box;}
.pop_appo_cnt .cnt {padding:0 30px 30px; box-sizing: border-box;}

.x_appo_divi section.step1 .cnt,
.x_appo_divi section.step2 .cnt,
.x_appo_divi section.step3 .cnt {height: 510px;}

.x_appo_divi section.step1 .cnt,
.x_appo_divi section.step2 .cnt {display: flex; flex-direction: column;}

.x_appo_divi section.step4 {flex:none; gap:1.25rem; max-width: 300px;	width: 22.5%;}
.x_appo_divi section.step4 > .w {flex:1; display: flex; flex-direction: column; }


.pop_appo_cnt .x_appo_box.step4 h3 {color:#fff; background:#0c3267;}
.pop_appo_cnt .x_appo_box.step4 .cnt {flex:1; height: 420px; background:#fff; border:3px solid #0c3267; border-top:none; box-sizing: border-box;}

.pop_appo_cnt .tab_list {display: flex; margin-bottom:0.625rem;  border-bottom:1px solid #0149ad;}
.pop_appo_cnt .tab_list a { flex:1; display: flex; justify-content: center;	align-items: center; height: 38px; color:#777; background:#f1f1f1;}
.pop_appo_cnt .tab_list a.ac {color:#fff; background:#0149ad;}

.appo_search { margin-bottom:0.625rem; background:#f1f1f1;}
.appo_search dd {display: flex;}
.appo_search input[type="text"] {flex:1; padding-left:15px; height: 38px; background:#f1f1f1; border:none;}
.appo_search .icon_sch {width: 38px; height: 38px; background-color:#2a3949; background-image: url(../images/cnt_n/btn_icon_sch2.png); background-size:1rem auto; }

.appo_search_list {flex:1; padding-right: 1rem; margin-right:-1rem; overflow-y: auto;}
.appo_search_list > li {display: block; margin-bottom:2px;}
.appo_search_list a {display: flex; align-items: center; position:relative; padding:0.375rem 2.25rem 0.375rem 1rem; min-height: 37px; box-sizing: border-box;}
.appo_search_list .ac a {font-weight: 500; color:#dd4262; background:#fae3e8; }
.appo_search_list .ac a:before {content:''; display: block; position:absolute; left:0; top:0; width:5px; height:100%; background:#dd4262;}
.appo_search_list .ac a:after { right:0.625rem; top:50%; transform: translateY(-50%); }



.x_appo_divi section.step2 .appo_search {margin-bottom:1.25rem;}

.pop_appo_cnt .x_doc_list {padding-right: 0.5rem; margin-right:-0.5rem; height: 100%; overflow-x:visible; overflow-y: auto;}
/*
.pop_appo_cnt .x_doc_list > li {opacity: 0.6;}
.pop_appo_cnt .x_doc_list > li.ac {opacity: 1;}
*/

.x_doc_list > li {display: block; padding: 0.5rem; border:1px solid #fff; box-sizing: border-box;}
.x_doc_info {display: flex; gap:0.625rem; position:relative; width:100%;}
.x_doc_info .pic {position:relative; width:95px; min-width:35%; height: 122px; background: #e1e2e6 url(../images/cnt_n/bg_logo.png) no-repeat 50% 50%; background-size:60% auto;}
.x_doc_info .pic img {position:absolute; left:0; top:0; width:100%; height: 100%; object-fit: cover;}
.x_doc_info .txt {flex:1; display: flex; flex-direction: column;}
.x_doc_info .txt dl {flex:1; margin-bottom:0.5rem;}
.x_doc_info .txt dt {margin-bottom:0.5rem;}
.x_doc_info .txt dt strong { font-size:20px; font-weight: 500; color:#2a3949; }
.x_doc_info .txt dt em { margin-left:0.25rem; font-size:15px; font-weight: 300; color:#0149ad; }
.x_doc_info .txt dd {height:43px; font-size:13px; line-height: 1.6; 
	display: -webkit-box;	overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.x_doc_info .txt .btn_w {display:flex; gap:0.25rem;}
.x_doc_info .txt .btn {flex:1; padding:0; height: 30px; max-width:200px; font-size:13px;}
.x_doc_info .txt .btn.btn_profile {background:#444444; border-color:#444444; }
.x_doc_info .txt .btn.btn_select {background:#0149ad; border-color:#0149ad;}
.x_doc_info .txt .btn.btn_select_cancel {border-color:#0149ad;}
.x_doc_info .txt .btn.btn_profile span,
.x_doc_info .txt .btn.btn_select span {color:#fff;}
.x_doc_info .txt .btn.btn_select_cancel span {color:#0149ad;}
.x_doc_list > li.ac {border-color: #eb8ea1;}
.x_doc_list > li.ac .x_doc_info:before {position:absolute; right:0; top:0;}


.x_appo_calen {display:flex; flex-direction: column;}
.x_appo_calen .calen_top {display:flex; align-items: center; justify-content: center; gap:10px; height: 40px; text-align: center; color:#fff; background:#2a3949;}
.x_appo_calen .calen_top .ico {width:40px; height:40px;  background: url(../images/cnt_n/calen_icon_arwL.png) no-repeat 50% 50%; background-size:1rem auto; overflow: hidden;}
.x_appo_calen .calen_top .ico span {font-size:1px; position:absolute; left:-9999px; text-indent: -9999px;}
.x_appo_calen .calen_top .ico.cal_next { background-image: url(../images/cnt_n/calen_icon_arwR.png); }
.x_appo_calen .calen_top .cal_tit { font-weight: 200;}
.x_appo_calen .calen_top .cal_tit strong {margin-left:3px; font-size:1.0625rem; font-weight: 500; letter-spacing: 0; font-family: var(--font-family-suit);}

.x_appo_calen .calen_tb_w {padding:0.5rem; border:1px solid #dddddd; border-top:none; box-sizing: border-box;}
.x_appo_calen .calen_tb {width:100%; }
.x_appo_calen .calen_tb th,
.x_appo_calen .calen_tb td {height:28px; text-align: center; }
.x_appo_calen .calen_tb th {font-weight: 500; }
.x_appo_calen .calen_tb th:first-child {color:#ff3621;}
.x_appo_calen .calen_tb th:last-child {color:#3672ff;}
.x_appo_calen .calen_tb td {padding:1px 0; font-size:14px; font-weight: 500; color:#000;}

.x_appo_calen .calen_tb a {display:block; height:28px; line-height: 28px; letter-spacing: 0; font-family: var(--font-family-suit); box-sizing: border-box;}
.x_appo_calen .calen_tb .day_today span { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
.x_appo_calen .calen_tb .day_yes { background-color:#dfeeff; }
.x_appo_calen .calen_tb .day_no {color:#aaa;}
.x_appo_calen .calen_tb .day_off { background:#e7e7e7;}
.x_appo_calen .calen_tb .ac {color:#fff;  background-color:#0149ad;}


.calen_label { margin:0.75rem 0.625rem 0.25rem 0; font-size:0.8125rem; text-align: right;}
.calen_label > li {display: inline-flex; align-items: center; margin-left:0.75rem;}
.calen_label > li:before {content:''; display:inline-block; margin-right:5px; width:0.9375rem; height:0.9375rem; background:#dfeeff; box-sizing: border-box; vertical-align: text-bottom; }
.calen_label li.day_ac:before {background-color:#0149ad;}
.calen_label li.day_off:before { background-color: #e7e7e7;}

.x_appo_time { margin-top:15px;  box-sizing: border-box;}
.x_appo_time .tit {display: flex; align-items: center; justify-content: center; gap:0.25rem; padding:0 10px; height: 40px; min-height: 40px; color:#fff; font-size:14px; font-weight: 200; background:#2a3949;}
.x_appo_time .tit i {display: inline-block; width:1.125rem; height: 1.125rem;  background: url(../images/cnt_n/appo_icon_time.png) no-repeat 50% 50%; background-size:contain; }
.x_appo_time .appo_time_list_w {padding:0 1rem; height: 155px; border:1px solid #ddd; border-top:none; overflow-y: auto; box-sizing: border-box;}
.x_appo_time .appo_time_list {display:flex; flex-wrap: wrap; align-content: flex-start; padding-bottom:1px; box-sizing: border-box; overflow: hidden;}
.x_appo_time .appo_time_list > li { position:relative; bottom:-1px; margin-bottom:-1px; padding:11px 2px; width:25%; text-align: center; border-bottom:1px dashed #ddd; box-sizing: border-box;}
.x_appo_time .appo_time_list > li.noData {display: flex; justify-content: center;	align-items: center; width:100%!important; min-height:100px ; border:none;}
.x_appo_time .appo_time_list a {display:block; font-size:13px; height:26px; font-weight: 500; line-height:24px; letter-spacing: 0; font-family: var(--font-family-suit); background:#fff; border:1px solid #ddd; border-radius: 13px; white-space: nowrap; box-sizing: border-box;}
.x_appo_time .appo_time_list a.ac {color:#fff; background-color:#0149ad; border-color:#0149ad;}
.x_appo_time .appo_time_list a.off {color:#999999; background-color:#e7e7e7; border-color:#e7e7e7;}


.appo_my {padding-top:0.5rem; height: 100%; max-height: 400px;}
.appo_my_tb {width:100%; }
.appo_my_tb th,
.appo_my_tb td {height: 26px; border-bottom:1px dashed #ddd;}
.appo_my_tb th {font-weight: 400; text-align: left; color:#2a3949; white-space: nowrap;}
.appo_my_tb td {padding:10px 0 10px 10px; font-weight: 500; font-family: var(--font-family-suit);}
.appo_my_tb .f_c { color:#dd4262; }
.appo_my_notice {display: flex; align-items: center; gap:10px; margin-right:-10px; margin-top:10px; font-size:13px; color:#666; line-height: 1.4; font-weight: 400; letter-spacing: -0.75px; word-break: keep-all;}
.appo_my_notice i {display: inline-block; width:38px; min-width:38px; height: 38px; background:#ececec url(../images/cnt_n/icon_0101.png) no-repeat 50% 50%; background-size:1.5rem auto; border-radius: 50%; }


.appo_txt_loading {display:flex; align-items: center; justify-content: center; z-index:10; position:absolute; left:0; top:0; width:100%; height:100%; background: #f5f6fa;}
.appo_txt_loading span {padding-top:5.625rem; text-align: center; color:#666; background:  url(../images/cnt_n/icon_loading01.png) no-repeat 50% 0%; background-size: 4rem auto;}

.appo_txt_info { display:flex; flex-direction: column; justify-content: center;  z-index: 10; position:absolute; left:0; top:0; right:0; height:100%; text-align: center; background: #f5f6fa; }
/*
.appo_txt_info:before {content:''; display:block; position:absolute; right:10px; top:20px; width:158px; height:118px; background:  url(../images/cnt_n/c_box_sch_bg_img03.png) no-repeat 50% 0%; background-size: 100% auto; opacity: 0.4;}
*/
.appo_txt_info .w {position:relative; padding:2rem 0; overflow-y: auto;}
.appo_txt_info p {position:relative;}
.appo_txt_info .txt {margin-bottom:25px; padding:0 5%; color:#666666; font-size:15px; letter-spacing: -1px; line-height: 1.8;}

.pop_appo_check {padding:0 1.875rem 1.875rem; width:500px; box-sizing: border-box;}
.pop_appo_check .logo_w {display: flex; justify-content: center; align-items: center; height: 4.375rem;}
.pop_appo_check .logo_w img {height: 1.75rem;}
.pop_appo_check .logo_w .t {position:relative; margin-left:0.75rem; padding-left:0.75rem; font-size:1.125rem; font-weight: 500;}
.pop_appo_check .logo_w .t:before {content:''; display:block; position:absolute; left:0; top:50%; margin-top:-0.5rem; width:1px; height:1.125rem; background:#ddd; }
.pop_appo_check .pop_content {padding:0;}
.pop_appo_check .txt_box {padding:1.5rem; text-align: center; font-size:18px; line-height: 1.7;  font-weight: 500; font-family: var(--font-family-suit); background:#f1f1f1;}
.pop_appo_check .txt_box .f_c {color:#dd4262;}
.pop_appo_check  .pop_btn_area_btm {display: flex; gap:0.375rem; margin-top:0.75rem;}
.pop_appo_check  .pop_btn_area_btm .btn {flex:1; height: 3rem; font-size:1.125rem;}
.pop_appo_check  .pop_btn_area_btm .btn span {color:#fff;}
.pop_appo_check  .pop_btn_area_btm .btn_reserv { background-color: #dd4262;	border-color: #dd4262;}
.pop_appo_check  .pop_btn_area_btm .btn_again { background-color: #1a2d37;	border-color: #1a2d37;}
@media (max-width:640px) { 
	.pop_appo_check .txt_box {font-size:1.125rem;}
	.pop_appo_check  .pop_btn_area_btm .btn {height: 3.25rem;}
}


	/* popup : 로딩 */
.pop_loading {z-index:1001; display:flex; flex-direction: column;	justify-content: center;	align-items: center; position:fixed; left:0; top:0; right:0; bottom:0; color:#fff; text-align: center; background:rgba(0,0,0,0.65);}
.pop_loading .loading_img {display: inline-block; margin-bottom: 1.25rem; width:3rem; height:3rem; background:  url(../images/cnt_n/pop_loading_img.png) no-repeat 100% 100%; background-size: contain;
	-webkit-animation:a01 1.3s linear infinite; animation:a01 1.3s linear infinite;}
.pop_loading .loading_txt {line-height:1.6; text-align: center;}

.pop_loading.loading_fix {position:fixed;}
.pop_loading.pop_loading_cnt {position:absolute;}
@-webkit-keyframes a01 {
	from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }

}
@keyframes a01 {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }

}



	/* 진료예약 : 모바일 */
body.mo .x_appo_divi {flex: 1 1 0px; display: block;  min-height: 0;}
body.mo .x_appo_divi .c_appo_btn {display: none;}

.c_appo_btm {display: flex; justify-content: center; gap:0.5rem; z-index:100; position:fixed; left:0; right: 0; bottom:0; padding:10px 25px; background:#fff; box-shadow: 0 -7px 10px rgba(0, 0, 0, 0.1);}
.c_appo_btm .btn {flex:1; height: 56px; max-width:360px; font-size:18px; border-radius: 0.375rem; }
.c_appo_btm .btn.btn_prev {} 
.c_appo_btm .btn.btn_prev span {color:#1a2d37;}
.c_appo_btm .btn.btn_next {background:#1a2d37; border-color:#1a2d37;}
.c_appo_btm .btn.btn_next span {color:#fff;}

@media (max-width:460px) { 
	.c_appo_btm .btn {height: 52px; font-size:17px;}
}
@media (max-width:390px) { 
	.c_appo_btm .btn {height: 50px; font-size:17px;}
}

body.mo .pop_appoint article.mo_cntFull {padding-bottom:0;}



body.mo .wrapper {height: 100%;}
body.mo .pop_appoint article {padding:5rem 0 76px; height: 100%; max-width:none; }
body.mo .pop_appoint { background: #d8dfe6;}
body.mo .pop_appoint:before {content:''; display: block; z-index: 0; position:absolute; left:0; top:0; width:100%; height: 350px; background: #276cc9 url(../images/cnt_n/appo_bg_logo.png) no-repeat right 0.625rem bottom 1rem; background-size:24rem auto; }

body.mo .pop_appoint .btn_ico.pop_close {position:fixed; right: 25px; top: 25px;}
@media (max-width:460px) { 
	body.mo .pop_appoint:before {background-size:18rem auto; }
}

body.mo .pop_appo_hd, 
body.mo .pop_appo_cnt {max-width:none;}

body.mo .pop_appo_hd {position:fixed; left:0; top:0; right:0; padding:0 25px; background:#0149ad ;}

body.mo .pop_appo_cnt {display: flex; flex-direction: column; padding: 0 25px 25px; height: 100%; background:transparent; border-radius:0; box-shadow:none; }
body.mo .pop_appo_cnt:before {display: none;}


body.mo .x_appo_txt { display: none; }

body.mo .x_appo_btn_w { margin-bottom:1.25rem; }
body.mo .btn.btn_goLink {height: 2.375rem; font-size:1rem;}
body.mo .btn.btn_goLink.ac i {margin-right:-0.5rem; background-size:1.25rem auto;}

body.mo .x_appo_btn_w .x_myReserv_list {  flex-wrap: wrap; min-width: auto; }
body.mo .x_appo_btn_w .x_myReserv_list dd:before {margin-top:-0.5rem; height: 1rem;}


body.mo .x_appo_divi section {height: 100%;}
body.mo .x_appo_divi section.step4 {width:100%; max-width:none;}

body.mo .x_appo_divi section.step1 .cnt,
body.mo .x_appo_divi section.step2 .cnt,
body.mo .x_appo_divi section.step3 .cnt,
body.mo .pop_appo_cnt .x_appo_box.step4 .cnt {height: calc(100% - 5rem);}

body.mo .pop_appo_cnt .x_appo_box.step4 .cnt { overflow-y:auto; }


body.mo .x_appo_divi section.step3 .cnt {display: flex; flex-direction: column; overflow-y: auto;}
body.mo .x_appo_time {flex:1; display: flex; flex-direction: column; /*min-height: 160px;*/}
body.mo .x_appo_time .appo_time_list_w {height: auto;}
body.mo .x_appo_time .appo_time_list {margin:0 auto; max-width:860px;}
body.mo .x_appo_time .appo_time_list > li {width:calc(100% / 6);}

@media (min-height:720px) { 
	body.mo .x_appo_calen .calen_tb a {height: 32px; line-height: 32px;}
}
@media (min-height:740px) { 
	body.mo .x_appo_calen .calen_tb a {height: 35px; line-height: 35px;}
}




body.mo .x_doc_info {gap:1.25rem;}
body.mo .x_doc_info .pic {max-width:95px; min-width: auto;}
body.mo .x_doc_info .txt dt {margin-bottom:0.5rem;}

body.mo .x_appo_divi section.step4 > .w {flex:none; height: 100%;}
body.mo .appo_my {height: auto; padding-top:0.75rem; box-sizing: border-box;}
body.mo .appo_my_tb th,
body.mo .appo_my_tb td {height: 34px; font-size:15px;}
body.mo .appo_my_tb td { font-size:16px; }
body.mo .appo_my dl {margin-top:1.125rem;}
body.mo .appo_my dl dd {margin-top:0.75rem;}
body.mo .appo_my dl dd textarea {padding: 0.75rem 0.875rem; height: auto; min-height: 7rem; font-size:15px;}
body.mo .appo_my_notice {margin-top:20px; margin-bottom:10px; margin-right:0;}



@media (max-width:640px) { 	
	body.mo .pop_appo_hd,
	body.mo .pop_appo_cnt,
	body.mo .c_appo_btm {padding-right:4vw; padding-left:4vw;}
	body.mo .pop_appo_cnt {padding-bottom:4vw;}
	body.mo .pop_appoint .btn_ico.pop_close {right:3vw; top:1.25rem;}

	body.mo .x_appo_txt { margin-bottom: 1.5rem;}

	body.mo .x_appo_divi section.step1 .cnt, 
	body.mo .x_appo_divi section.step2 .cnt, 
	body.mo .x_appo_divi section.step3 .cnt {height: calc(100% - 4.5rem);}
	body.mo .x_appo_time .appo_time_list > li {width:20%;}
}
@media (max-width:460px) { 
	body.mo .pop_appoint article {padding-bottom: 72px;}
	body.mo .x_appo_time .appo_time_list > li {width:25%;}
}
@media (max-width:390px) { 
	body.mo .pop_appoint article {padding-bottom: 70px;}
}



@media (max-width:1560px) { 
	.pop_appo_cnt { padding-left:40px; padding-right:40px; }
	.pop_appo_cnt h3 {padding:0 20px; }
	.pop_appo_cnt .cnt {padding:0 20px 20px;}
}
@media (max-width:1500px) { 
	.pop_appoint article {padding:0 30px 30px;}
	.pop_appo_cnt {padding:50px 40px;}
}
@media (max-width:1360px) { 
	.pop_appoint {    background: #d8dfe6;}
	.pop_appoint:before {content:''; display: block; z-index: 0; position:absolute; left:0; top:0; width:100%; height: 340px; background: #276cc9 url(../images/cnt_n/appo_bg_logo.png) no-repeat right 60px bottom 50%; }

	.pop_appoint .btn_ico.pop_close {position:fixed; right: 30px; top: 30px;}

	.pop_appo_cnt {padding:10px 0 0 ; background:transparent; border-radius:0; overflow: initial; box-shadow:none; }
	.pop_appo_cnt:before {display: none;}

	.x_appo_txt .tx {  font-size: 2rem; }
}

@media (max-width:768px) { 
	.pop_appo_hd img {width: auto; height:1.75rem;}

	.pop_appoint .btn_ico.pop_close:before, 
	.pop_appoint .btn_ico.pop_close:after { width: 2rem;}
}
@media (max-width:640px) { 
	.x_appo_btn_w .x_myReserv_list,
	.pop_appo_cnt h3, 
	.pop_appo_cnt .cnt {padding-right:5vw; padding-left:5vw;}
	.pop_appo_cnt h3 {height: 4.5rem; min-height: 4.5rem;}
	.pop_appo_cnt .cnt {padding-bottom:1.5rem;}

	.appo_search_list { margin-right: -0.5rem; padding-right: 0.5rem;}

}


.pop_appoint.st01 .x_doc_info .txt .btn_c_w {background-color:#333366;}
.pop_appoint.st01 .x_doc_info .txt .btn_c_w span {color:#fff;}

body.mo .pop_appoint.st01:before {background-color: #0149ad;}
@media (max-width:1360px) { 
	.pop_appoint.st01:before { background-color: #0149ad; }
}



.pop_layer_basic.pop_barcode {max-width:460px;}
.pop_barcode .pop_content {text-align: center;}
.pop_barcode .pop_content .pop_cnt {margin:0 auto; max-width:100%; }
.pop_layer_basic.pop_barcode .pop_content {padding:3rem; }
@media (max-width:560px) { 
	.pop_layer_basic.pop_barcode .pop_content {margin:0; padding:10vw 5vw; }
}

@media (max-height:740px) { 
	body.mo .pop_appoint article {padding-bottom:4.75rem;}
	.c_appo_btm {padding-top:0.625rem; padding-bottom:0.625rem;}
	.c_appo_btm .btn {height: 3.5rem; font-size:1.125rem;}

	body.mo .appo_my_notice {margin-bottom:0;}
}








