/* 운영 원본의 Bootstrap/MegaNavbar 화면에 필요한 그누보드 연결 규칙 */
html,body{min-width:0!important;width:100%;margin:0;background-color:#ecedef}
#hospital-site{width:100%;overflow-x:clip}
.hospital-content{min-height:400px}
.hospital-content img{max-width:100%;height:auto}
.hospital-content #ctt{background:transparent}
.hospital-content #ctt_con{padding:0}

#hospital-site .dropdown-menu .dropdown-short{position:relative}
#hospital-site .dropdown-menu .dropdown-menu{left:100%;top:0}
#hospital-site .dropdown-menu .dropdown-short:hover>.dropdown-menu{display:block}
#hospital-lightbox{position:fixed;inset:0;z-index:1000002;background:rgba(0,0,0,.85);overflow:auto;text-align:center;padding:60px 15px}
#hospital-lightbox img{max-width:100%;height:auto}
#hospital-lightbox button{position:fixed;right:20px;top:15px;padding:10px 20px;background:#fff;border:0}
@media(max-width:767px){
 .hospital-content{padding:20px 15px}
 .hospital-content table{max-width:100%}
 #hospital-site .dropdown-menu .dropdown-menu{position:static;float:none;margin-left:14px}
 #login_new .login_wrap{max-width:100%;box-sizing:border-box}
}

/* 원본 2열 구조와 그누보드 내용관리 연결 */
#hospital-content{min-width:0;box-sizing:border-box}
.hospital-content #ctt>header{display:none}
.hospital-content #ctt{margin:0;padding:0;border:0}
#hospital-site .leftArea .tbLine2{margin-left:0;margin-right:0}
@media(max-width:767px){#hospital-content{float:none;width:100%}.hospital-content #cLocation{padding-top:0}.hospital-content .table-responsive{max-width:100%;overflow-x:auto}}

/* 원본의 흰색 본문 래퍼 및 최대 너비를 유지한다. */
#hospital-site.wrapper{background-color:#fff;max-width:1580px;margin-left:auto;margin-right:auto}

/* 서브 공통 배경은 스크립트 초기화 여부와 관계없이 원본과 동일하게 표시한다. */
#hospital-site #masthead.bg-image{background-image:url('assets/images/sv_01.jpg');background-position:center center;background-size:cover;background-repeat:no-repeat}

/* 반응형 이미지 규칙으로 인사말의 flex 이미지 영역이 축소되지 않도록 한다. */
@media(min-width:1024px){
 .hospital-content .part_area>.thumb{flex:0 0 250px;width:250px}
 .hospital-content .part_area>.cont{flex:1 1 0;min-width:0}
}
.hospital-content .part_area>.thumb>img{width:250px;max-width:100%;height:auto}
.hospital-content [role="tabpanel"][hidden]{display:none!important}

#hospital-doctor-dialog{box-sizing:border-box;width:760px;max-width:calc(100vw - 32px);max-height:85vh;margin:auto;padding:0;border:0;border-radius:12px;background:#fff;color:#333;box-shadow:0 16px 64px rgba(0,0,0,.3);overflow:auto}
#hospital-doctor-dialog::backdrop{background:rgba(0,0,0,.6)}
#hospital-doctor-dialog .doctor-dialog-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:#f8f6ef;border-bottom:1px solid #d7d2c4}
#hospital-doctor-dialog .doctor-dialog-header h2{margin:0;font-size:20px;line-height:1.5}
#hospital-doctor-dialog .doctor-dialog-close{flex-shrink:0;padding:8px 14px;border:1px solid #cfcbbc;border-radius:5px;background:#fff;color:#333;font-size:15px;line-height:1.5;cursor:pointer}
#hospital-doctor-dialog .doctor-dialog-body{padding:28px;font-size:15px;line-height:1.8}
#hospital-doctor-dialog .hospital-doctor{display:flow-root}
#hospital-doctor-dialog .hospital-doctor h1{margin:0 0 12px;font-size:28px;line-height:1.4;color:#353c45}
#hospital-doctor-dialog .hospital-doctor h2{margin:24px 0 10px;font-size:19px;line-height:1.5;border-bottom:1px solid #e0ded3;padding-bottom:8px}
#hospital-doctor-dialog .doctor-photo{float:right;max-width:36%;width:200px;height:auto;margin:0 0 20px 24px;border:1px solid #eee}
@media(max-width:480px){#hospital-doctor-dialog{max-height:90vh;max-width:calc(100vw - 20px)}#hospital-doctor-dialog .doctor-dialog-header{padding:14px 16px}#hospital-doctor-dialog .doctor-dialog-body{padding:20px 16px}#hospital-doctor-dialog .doctor-photo{float:none;display:block;max-width:100%;width:160px;margin:0 auto 20px}}

/* 탭의 상태 변화는 색만 바꾸고 치수와 글자 굵기는 고정한다. */
#hospital-site .hospital-content :is(#cTapcBox,#cTapcBox02){height:auto;min-height:56px;border-bottom:1px solid #bcb59e}
#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]{display:flex;flex-wrap:wrap;align-items:stretch;gap:0;margin:0;padding:0;white-space:normal;list-style:none}
#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li{float:none;display:flex;box-sizing:border-box;margin:0!important;padding:0!important;border:0!important;background:transparent!important;font-size:16px;line-height:24px}
#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li>a[role="tab"]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:124px;min-height:56px;margin:0;padding:14px 18px!important;border:1px solid #bcb59e!important;border-top:3px solid #bcb59e!important;background:#e9e3d0;color:#6c695e;font-size:16px!important;font-weight:500!important;line-height:24px!important;letter-spacing:-.5px;text-decoration:none;transform:none!important;transition:background-color .15s,color .15s;white-space:normal;text-align:center}
#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li>a[role="tab"]:is(:hover,:focus-visible,[aria-selected="true"]){border-top-color:#7697c5!important;background:#f8f6ef;color:#333;text-decoration:none}
#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li>a[role="tab"]:focus-visible{outline:2px solid #7697c5;outline-offset:-5px}
@media(max-width:600px){#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li{flex:1 1 auto}#hospital-site .hospital-content :is(.navlist,#navlist,.tabs)[role="tablist"]>li>a[role="tab"]{width:100%;min-width:110px;padding:12px 14px!important}}

/* 원본 사이트맵의 제목 박스와 하위 링크를 반응형 열로 표시한다. */
#hospital-site .hospital-sitemap .siteMapBox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;width:100%;margin:24px 0}
#hospital-site .hospital-sitemap .siteMapBox .hbox{float:none;width:auto;min-width:0;margin:0;padding:0}
#hospital-site .hospital-sitemap .hbox h3{width:100%;margin:0;padding:14px 16px;border:1px solid #cfcbbc;background:#fff;font-size:18px;line-height:1.5}
#hospital-site .hospital-sitemap .hbox ul{margin:0;padding:0;list-style:none}
#hospital-site .hospital-sitemap .hbox li{margin:0;padding:0;border-bottom:1px solid #e0ded3;background:none;font-size:15px;line-height:1.6}
#hospital-site .hospital-sitemap .hbox li a{display:block;padding:10px 12px;overflow-wrap:anywhere}
#hospital-site .hospital-sitemap .hbox li a:hover{background:#f8f6ef}
#hospital-site .hospital-sitemap .hbox li ul{padding-left:16px}
@media(max-width:900px){#hospital-site .hospital-sitemap .siteMapBox{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){#hospital-site .hospital-sitemap .siteMapBox{grid-template-columns:1fr;gap:22px}}

/* 진료시간: 원본 진료과 제목/표 구획 복원. */
#hospital-site .ctt_hd_2_1 #congbox{margin-top:28px}
#hospital-site .hd-schedule{clear:both;width:100%;margin-top:24px}
#hospital-site .hd-schedule-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px;padding:0;list-style:none}
#hospital-site .hd-schedule-nav li{float:none;flex:1 0 140px;margin:0;padding:0;list-style:none}
#hospital-site .hd-schedule-nav a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:54px;padding:12px 16px;border:1px solid #bcb59e;background:#e9e3d0;color:#6c695e;font-size:16px;font-weight:500;line-height:24px;text-align:center;text-decoration:none}
#hospital-site .hd-schedule-nav a:hover,#hospital-site .hd-schedule-nav a:focus-visible{background:#f8f6ef;color:#333;border-color:#7697c5}
#hospital-site .hd-schedule-department{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;clear:both;width:100%;margin:0 0 32px;padding:24px 0;border-top:2px solid #bcb59e;scroll-margin-top:90px}
#hospital-site .hd-schedule-department .dpmTit{float:none;width:auto;margin:0;padding:0;color:#6c695e}
#hospital-site .hd-schedule-department .dpmTit h3{margin:0 0 12px;padding:0;font-size:23px;line-height:1.4;color:#353c45}
#hospital-site .hd-schedule-department .dpmTit p{margin:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}
#hospital-site .hd-schedule-department .dpmTableBox{float:none;width:100%;min-width:0;margin:0;padding:0}
#hospital-site .hd-schedule .dpmTable{width:100%;border-collapse:collapse;table-layout:fixed;border-top:1px solid #cfcbbc;font-size:15px;line-height:1.7}
#hospital-site .hd-schedule .dpmTable th,#hospital-site .hd-schedule .dpmTable td{height:auto;padding:14px 10px;border:1px solid #e0ded3;text-align:center;vertical-align:middle;overflow-wrap:anywhere;font-size:15px;line-height:1.7}
#hospital-site .hd-schedule .dpmTable thead th{background:#e9e3d0;color:#514e44;font-weight:600}
#hospital-site .hd-schedule .dpmTable tbody th{background:#f8f6ef;font-weight:500}
#hospital-site .hd-schedule .dpmTable tbody td{background:#fff}
#hospital-site .hd-schedule .dpmTable a{color:#355b85;text-decoration:underline;text-underline-offset:3px}
#hospital-site .hd-schedule .doctor-note{display:inline-block;margin-top:5px;color:#365f98;font-size:13px;line-height:1.6}
@media(max-width:900px){#hospital-site .hd-schedule-department{grid-template-columns:1fr;gap:16px}#hospital-site .hd-schedule-department .dpmTit{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px}#hospital-site .hd-schedule-department .dpmTit h3{margin:0}}
@media(max-width:480px){#hospital-site .hd-schedule-nav li{flex-basis:calc(50% - 8px)}#hospital-site .hd-schedule .dpmTable th,#hospital-site .hd-schedule .dpmTable td{padding:10px 6px;font-size:13px}#hospital-site .hd-schedule .doctor-note{font-size:12px}}

#hospital-site .hospital-content ul.tabs[role="tablist"]{padding:0;margin:20px 0 0}
#hospital-site .hospital-content ul.tabs[role="tablist"]>li>a[role="tab"]{position:static;top:auto;border-radius:0}
#hospital-site .hospital-content .tabs[role="tablist"]~.ddTt .tabcontents{margin-top:0;padding:24px;max-width:100%;box-sizing:border-box}

/* Equal spacing for signed-in and signed-out utility links. */
#hospital-site .top-bar .hd-utility-menu{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 0}
#hospital-site .top-bar .hd-utility-menu>a{display:inline-flex;align-items:center;padding:0 10px;margin:0;line-height:1.4;white-space:nowrap;border-left:1px solid #ccc}
#hospital-site .top-bar .hd-utility-menu>a:first-child{padding-left:0;border-left:0}
#hospital-site .top-bar .hd-utility-menu>a:last-child{padding-right:0}
@media(max-width:767px){#hospital-site .top-bar .hd-utility-menu>a{padding-right:6px;padding-left:6px}#hospital-site .top-bar .hd-utility-menu>a:first-child{padding-left:0}#hospital-site .top-bar .hd-utility-menu>a:last-child{padding-right:0}}

/* 진료과별 의료진 안내 표 */
#hospital-site .doctTable th,#hospital-site .doctTable td{text-align:center;vertical-align:middle}
#hospital-site .doctTable .doctor-note{display:inline-block;margin-top:5px;color:#365f98;font-size:13px;line-height:1.6}
@media(max-width:480px){#hospital-site .doctTable .doctor-note{font-size:12px}}

#hospital-site .doctTable .doctor-detail-link{display:inline-block;margin-left:6px;vertical-align:middle}
#hospital-site .doctTable .doctor-detail-link img{display:inline-block;max-width:100%;height:auto;vertical-align:middle}
#hospital-site .ctt_hd_4_7 #doctBox h3 + div[style]{margin:0 0 20px !important}

#hospital-site .doctTable .doctor-note,#hospital-site .hd-schedule .doctor-note{color:#0000ff}
#hospital-site .doctTable .doctor-note-closed,#hospital-site .hd-schedule .doctor-note-closed{color:#ff0000}
