@charset "utf-8";

/*-----------------------------------------------------------------------------------------------------------
common css
-----------------------------------------------------------------------------------------------------------*/

ul, ol, dl, dd, dt, li{list-style-type:none;padding:0;margin:0;}
img{border:0;}
h1, h2, h3, h4, h5, p{padding:0;margin:0;}
a {text-decoration:none;color:#6c6c6c;}
a:hover {text-decoration:none;color:#2a7cc8}
hr{clear:both;display:none;}
caption {display:none;}
form {padding:0;margin:0;}

legend, label 	{ padding:0; margin:0; overflow : hidden ; visibility : hidden; display:none;} 
input, img, select, li 	{ vertical-align: middle;}
input[type=text] 	{color: #787878; border:1px solid #ccc; background: #fff; vertical-align:middle; padding:3px; margin-bottom:1px}
input[type=password]{color: #787878; border:1px solid #ccc; background: #fff; vertical-align:middle; padding:3px; margin-bottom:1px}
input[type=file] 	{color: #787878; border:1px solid #ccc; background: #fff; vertical-align:middle; padding:3px; margin-bottom:1px}
textarea			{color: #787878; border:1px solid #ccc; background: #fff; vertical-align:middle; padding:3px;line-height:140%;}
input[type=image] 	{border: 0 none; vertical-align:middle; background:none;}
input[type=hidden] 	{padding:0;margin:0;}
input[type=radio]	{border:none; background:none;}


#wrap {overflow:hidden;width:100%;background:url("/images/new_bg.jpg") repeat-x;}
#wrap #container {overflow:hidden;width:1400px;margin:0 auto;padding-bottom:5px;background:url("/images/new_bg.jpg") repeat-x;position:relative;} 
#wrap #container .top_map {text-align:right;}
#wrap #container .header {overflow:hidden;}
#wrap #container .header h1 {float:left;}
#wrap #container .header ul.tnb {float:right;padding-top:38px;}
#wrap #container .header ul.tnb li {float:left;}

#wrap #container .m_menu {float:left;width:170px;}
#wrap #container .m_menu .m_menu_bnr {padding-top:44px;}

#wrap #container .m_visual {float:left;width:739px;position:relative;}

#wrap #container .m_bnr {float:left;width:444px;}
#wrap #container .m_bnr .m_bnr2 {clear:both;overflow:hidden;}
#wrap #container .m_bnr .m_bnr2 span.n_special {float:left;width:264px;padding:54px 16px 45px 16px;background:url("/images/m_img02_bg.jpg") no-repeat;position:relative;}
#wrap #container .m_bnr .m_bnr2 span.n_info {float:right;}
#wrap #container .m_bnr .m_bnr3 {clear:both;}
#wrap #container .m_bnr .m_bnr3 li {float:left;}
#wrap #container .m_bnr .m_bnr4 {clear:both;}
#wrap #container .m_bnr .m_bnr4 li {float:left;}
#wrap #container .m_quick {float:left;width:45px;height:775px;border-bottom:1px solid #dad7d7;border-right:1px solid #dad7d7;border-left:1px solid #dad7d7;background:#f1ecec;}

#wrap .footer {width:1400px;margin:0 auto;position:relative;text-align:center;padding:20px 0;}
#wrap .footer .util {position:absolute;top:20px;right:0;}
#wrap .footer .util li {float:left;}


/*center top banner slide*/

/*#testheader {margin-top:0px; height:0px; max-height:200; margin:0 auto;width:100%; overflow:hidden;background:#eee;}*/
#testheader #close_pop4 {position: relative;left:50%; margin:0 0 0 408px; float: left;top:4px;vertical-align:top; height:15px;color:white;}
#testheader #close_pop5 {position: relative;left:50%;float: left;top:2px;vertical-align:top; height:15px;color:white;}

.tab_body_top02 { display:none; font-size:12px; line-height:1; }
.tab_body_top02.on { display:block; }
.tab_body_top02 a { position:static; }
.tab_body_top02 ul { padding:0; }

#slider_13{clear:both; position:relative; width:100%; height:180px;}
#slider_13 .slide-wrap_13 {width:100%; height:180px; overflow:hidden;}
#slider_13 .slide-wrap_13 .bxslider13{ position:absolute; left:0px; width:100%;}
#slider_13 .slide-wrap_13 .bxslider13 li{position:relative; float:left;}
#slider_13 .slide-wrap_13 .bxslider13 li a{display:block; width:100%; height:180px;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top00{min-width:100%; height:168px; background:#fff url(/images/popup/top0.jpg) no-repeat center top;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top01{min-width:100%; height:168px; background:#fff url(/images/popup/top1.jpg) no-repeat center top;}
/*#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top02{min-width:100%; height:168px; background:#fff url(/images/popup/top2.jpg) no-repeat center top;}*/
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top03{min-width:100%; height:168px; background:#fff url(/images/popup/top3.jpg) no-repeat center top;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top04{min-width:100%; height:168px; background:#fff url(/images/popup/top4.jpg) no-repeat center top;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top05{min-width:100%; height:168px; background:#fff url(/images/popup/top5.jpg) no-repeat center top;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top06{min-width:100%; height:168px; background:#fff url(/images/popup/top6.jpg) no-repeat center top;}
#slider_13 .slide-wrap_13 .bxslider13 li.bxslider13_img_top07{min-width:100%; height:168px; background:#fff url(/images/popup/top7.jpg) no-repeat center top;}

#slider_13 .bx-pager-item{margin-right:4px;}
.bx-pager13 {position:absolute; left:50%; margin:0 0 0 0; bottom:0; top: 150px;  margin:0 0 0 630px; width:100%; overflow:hidden; z-index:100;}
.bx-pager13 .bx-pager-item, .bx-controls-auto .bx-controls-auto-item {display: inline-block;  }
.bx-pager13.bx-default-pager a {text-indent: -9999px; display: block; width:13px; height: 13px; background:url(/images/top_banner_slide_pager.png) no-repeat; margin:0 2px;}
.bx-pager13.bx-default-pager a:hover, .bx-pager13.bx-default-pager a.active {width: 13px; height: 13px;  margin:0 2px;background:url(/images/top_banner_slide_pager_on.png) no-repeat;}

.bx-controls-direction a{position:absolute; top:45%;}
.bx-prev13{left:50%; margin:0 0 0 -774px; width:14px; height:26px;font-size:0px !important; letter-spacing:-9999px; line-height:0px; background:url(/images/top_banner_slide_left.png) no-repeat; z-index:120;}
.bx-next13{right:50%; margin:0 -770px 0 0; width:14px; height:26px; font-size:0px !important; letter-spacing:-9999px; line-height:0px; background:url(/images/top_banner_slide_right.png) no-repeat; z-index:120;}

/* 진료시간 및 전화예약안내 스타일 */
.section.radius_box {
    overflow: hidden;
    background: #333;
    border-radius: 25px;
    margin-top: 40px;
    box-shadow: none;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    height: 400px;
}

.section.radius_box .content {
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    box-sizing: border-box;
    margin-top: 0px;
    height: 100%;
}

.map {
    width: 68%;
    float: none;
    box-sizing: border-box;
    padding: 0;
    height: 400px;
}

.map #map {
    border-radius: 0;
    overflow: hidden;
    height: 400px !important;
}

.time_info {
    width: 32%;
    float: none;
    background-color: #333;
    border-radius: 0;
    padding: 30px 25px;
    color: #fff;
    box-sizing: border-box;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.time_info .title {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 20px;
    margin-bottom: 25px;
}

.time_info .title h2 {
    font-size: 24px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
}

.time_info .content {
    padding: 0;
    display: block;
    flex: 1;
}

.time_table {
    margin-bottom: 15px;
}

.time_table dl {
    width:100%;
    margin-bottom: 15px;
    font-size: 15px;
    line-height: 1.4;
}

.time_table dt {
    width: 70px;
    font-weight: bold;
}

.time_table dd {
    flex: 1;
}

.time_notice {
    font-size: 13px;
    color: #ddd;
    margin: 8px 0;
    padding-left: 0;
    line-height: 1.4;
}

.phone_number {
    margin-top: 25px;
    text-align: center;
}

.phone_number h3 {
    font-size: 34px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.5px;
}


/* 기존 스타일 유지 */
.banner_cate {position:absolute;top:-37px;width:29%;height:10px;background:#fff;border:1px #bbb solid;border-bottom:1px #333 solid;padding:12px 0;font-size:12px; font-weight:bold;cursor:pointer}
.on{border:2px #333 solid;border-bottom:1px #fff solid;color:#333;font-weight:bold;padding:12px 0}

.banner_detail {display:none}
.bannerDe_1 {display:block}
.banner_bg {position:relative;width:100%;height:200%;z-index:auto}
.banner_modal {z-index:99999999;background:#000;width:100%;height:100%;position:fixed; opacity:0.9;}
.banner_warp {z-index:999999999;position:fixed;top:40%;margin-top:-270px;width:100%;height:800px;}
.close {top:-30px;left:400px; margin:0 auto; position:relative;cursor:pointer;color:#fff;font-size:2em; font-family:arial}

.banner_bg_co {position:relative;width:100%;height:200%;z-index:auto}
.banner_warp_co {z-index:999999999;position:fixed;top:40%;left:50%;margin-top:-270px;margin-left:-550px;width:1100px;height:900px;}
.close_co {top:-30px;left:1100px;position:absolute;margin-left:-28px;cursor:pointer;color:#fff;font-size:2em; font-family:arial}
.pop_contents_co{width:1600px;}
.pop_cal {text-align:center;}

/* 새로운 헤더 및 메가 메뉴 스타일 */
#header {
    height: 120px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
    background-color: #ffffff;
}

.top-bar {
    background-color: #f8f9fa;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

.top-bar .container {
    display: flex;
    justify-content: flex-end;
    max-width: 1200px;
    margin: 0 auto;
}

.top-bar a {
    color: #666;
    font-size: 13px;
    margin-left: 15px;
    text-decoration: none;
    transition: color 0.3s;
}

.top-bar a:hover {
    color: #333;
}

.main-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0;
    max-width: 1440px;
    margin: 0 auto;
}

.logo {
    flex: 0 0 300px;
}

.logo img {
    max-width: 30%;
    width: 30%;
    height: auto;
}

.navbar {
    display: flex;
    align-items: center;
    flex: 0 0 940px;
    justify-content: center;
}

.nav-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    justify-content: space-between;
}

.nav-item {
    position: relative;
    margin: 0;
    flex: 1;
    text-align: left;
    font-size: 1rem;
    padding-left: 10px;
}

.nav-item.active .nav-link {
    color: #0056b3;
}



.nav-link {
    display: block;
    padding: 21px 0;
    color: #333;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.3s;
    white-space: nowrap;
}

.nav-link:hover {
    color: #0056b3;
}

/* 드롭다운 메뉴 스타일 */
.dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: #fff;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    border-radius: 0 0 4px 4px;
    padding: 15px 0;
    z-index: 1000;
    text-align: left;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.dropdown-menu.show {
    display: block;
    opacity: 1;
    visibility: visible;
}

.nav-item:hover .dropdown-menu {
    display: block;
    opacity: 1;
    visibility: visible;
}

.dropdown-menu li {
    list-style: none;
}

.dropdown-menu a {
    display: block;
    padding: 8px 20px;
    color: #666;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.3s;
    white-space: nowrap;
}

.dropdown-menu a:hover {
    background-color: #f8f9fa;
    color: #0056b3;
}

.social-links {
    display: flex;
    align-items: center;
    flex: 0 0 200px;
    justify-content: flex-end;
}

.social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f8f9fa;
    color: #333;
    margin-left: 10px;
    transition: all 0.3s;
}

.social-links a:hover {
    background: #0056b3;
    color: #fff;
}

.clear {
    clear: both;
}

/* IMP 스타일 메가메뉴 */
#mega-menu-container {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    z-index: 1000;
    display: none;
    padding: 0px 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    border-top: 1px solid #eee;
}

#mega-menu-container.show {
    display: block;
    opacity: 1;
    visibility: visible;
}

.mega-menu-inner {
    max-width: 1440px;
    width: 1440px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    padding-left: 300px;
    padding-right: 200px;
    box-sizing: border-box;
}

.mega-menu-column {
    flex: 1;
    padding: 0 15px;
    width: calc(100% / 5);
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.mega-menu-column.active {
    background-color: rgba(0, 86, 179, 0.05);
    border-radius: 5px;
}

.mega-menu-column.active .mega-menu-title {
    color: #0056b3;
}

.mega-menu-title {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #0056b3;
}

.mega-menu-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mega-menu-list li {
    margin-bottom: 8px;
}

.mega-menu-list a {
    color: #666;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s;
    display: block;
    padding: 5px 0;
}

.mega-menu-list a:hover {
    color: #0056b3;
}


/* 플로팅 메뉴 스타일 */
.float-menu {
    position: fixed;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease;
}

.float-menu:not(.visible) {
    opacity: 0.8;
}

.float-menu-item {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0 3px 10px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none;
    color: #333;
    position: relative;
    overflow: hidden;
}

.float-menu-item:hover, .float-menu-item.hover {
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
}

.float-menu-item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.1);
    border-radius: 50%;
    transform: scale(0);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.float-menu-item:hover:before, .float-menu-item.hover:before {
    transform: scale(1.5);
    opacity: 0;
}

.float-menu-item i {
    font-size: 22px;
    margin-bottom: 5px;
    color: #0056b3;
    position: relative;
    z-index: 2;
    transition: all 0.3s ease;
}

.float-menu-item span {
    font-size: 10px;
    font-weight: 500;
    text-align: center;
    line-height: 1.2;
    position: relative;
    z-index: 2;
    transition: all 0.3s ease;
}

.float-menu-item:hover i, .float-menu-item.hover i {
    transform: scale(1.1);
}

.float-menu-item.kakao {
    background-color: #fee500;
}

.float-menu-item.kakao i {
    color: #3c1e1e;
}

.float-menu-item.blog {
    background-color: #2db400;
}

.float-menu-item.blog i {
    color: #ffffff;
}

.float-menu-item.blog span {
    color: #ffffff;
}

.float-menu-item.insta {
    background: linear-gradient(135deg, #515bd4, #8134af, #dd2a7b, #feda77, #f58529);
}

.float-menu-item.insta i, .float-menu-item.insta span {
    color: #ffffff;
}

.float-menu-item.qna {
    background-color: #0056b3;
}

.float-menu-item.qna i, .float-menu-item.qna span {
    color: #ffffff;
}

.float-menu-item.review {
    background-color: #ff6b6b;
}

.float-menu-item.review i, .float-menu-item.review span {
    color: #ffffff;
}

.caution {
    margin-bottom: 40px;
    margin-top: -50px;
    text-align: center;
}
a > i {font-family: "Font Awesome 5 Brands" !important; }
.fas  {font-family: "Font Awesome 5 Free" !important; }