
#wrap {overflow-x: clip;}
#wrap ::-webkit-scrollbar { width: 5px; }
#wrap ::-webkit-scrollbar-thumb { background-color: #aaa; border-radius:10px; }
#wrap ::-webkit-scrollbar-track { background-color: #ddd; border-radius:10px; }

.fixBody { position: fixed; width: 100%; }

.container { position: relative; width: 80rem; max-width: 100%; margin: 0 auto; }

/* header */
#header{ position:relative; z-index: 10;}
#header .h_link { position: relative; background: #0E3565; }
#header .h_link .container { display: flex; justify-content: space-between; align-items: center; height: 3rem; }
#header .h_link .container > ul { display: flex; align-items: center; gap: 1.5rem; }
#header .h_link .container > ul > li > a { display: flex; align-items: center; gap: 0.45rem; color: #fff; font-size: 0.9rem; }
#header .h_link .container > ul > li > a:hover,
#header .h_link .container > ul > li > a:focus { text-decoration: underline; }

#header .h_main { position: relative; border-bottom: 1px solid #ddd; }
#header .h_main .container { display: flex; justify-content: space-between; gap: 5rem; }

/* 로고 */
#header .logo { flex: 1; }
#header .logo a { display: inline-flex; align-items: center; height: 4.2rem; word-break: break-all; }
#header .logo a span { position: relative; color: #003E8A; font-size: 1.2rem; font-weight: 700; padding-left: 0.5rem; margin-left: 0.5rem; }
#header .logo a span::before {position: absolute; top: 50%; transform: translateY(-50%); left: 0; width: 1px; height: 1rem; background: #A5ADB7; content: ""; }

/* nav */
#nav { flex: 1; z-index: 10; }
#gnb::before { position: absolute; left: calc(50% - 50vw); top: 100%; width: 100vw; height: 100vh; background: rgba(0, 0, 0, 0.3); content: ""; opacity: 0; display: none; }
#gnb.active::before { opacity: 1; display: block; }
#gnb .depth01 > ul { display: flex; gap: 4.5rem; }
#gnb .depth01 > ul > li { flex: auto; }
#gnb .depth01 > ul > li > a { display: flex; justify-content: center; align-items: center; font-size: 1rem; font-weight: 600; color: #111; height: 4.2rem; text-align: center; word-break: keep-all; }
#gnb .depth01 > ul > li.on .depth02 { display: flex; }
#gnb .depth02 { position: absolute; left: 50%; transform: translateX(-50%); display: none; justify-content: center; width: 80rem; max-width: 100%; min-height: 18rem; }
#gnb .depth02::before { position: absolute; top: 0; left: 50%; right: 50%; height: 100%;  margin-left: -50vw; margin-right: -50vw; background: #fff; content: ""; z-index: -1; }
#gnb .depth02 .titBox { position: relative; width: 18rem; color: #fff; padding-top: 2.8rem; z-index: 0; }
#gnb .depth02 .titBox::before { position: absolute; top: 0; right: 0; width: 300%; height: 100%; background: linear-gradient(90deg, #12427D, #0038CD); border-radius: 0 3rem 0 0; content: ""; z-index: -1; }
#gnb .depth02 .titBox span { font-size: 0.7rem; font-weight: 300; font-family: 'Montserrat'; }
#gnb .depth02 .titBox .tit { font-size: 1.5rem; font-weight: 600; margin-top: 0.8rem; }
#gnb .depth02 > ul { display: flex; flex-wrap: wrap; gap: 2.5rem 1.5rem; width: calc(100% - 18rem); height: fit-content; padding: 2.5rem 0 2.5rem 3rem; }
#gnb .depth02 > ul::before { position: absolute; top: 1rem; right: -6rem; width: 12.2rem; height: 16.25rem; background: url('/images/web/gls_zh/layout/menu_bg.png') no-repeat center / contain; content: ""; z-index: -1; opacity: 0.1;}
#gnb .depth02 > ul > li { width: calc((100% - 3rem) / 3); }
#gnb .depth02 > ul > li > a { position: relative; display: block; padding: 0.7rem 0.9rem; color: #222; background: #fff; font-size: 0.9rem; border: 1px solid #D5D5D5; border-radius: 6px; }
#gnb .depth02 > ul > li > a[target="_blank"] { padding-right: 2.5rem; }
#gnb .depth02 > ul > li > a[target="_blank"]::before { position: absolute; top: 0.6rem; right: 0.9rem; font-family: 'remixicon'; font-size: 1rem; content: "\ecaf"; color: #bbb; }
#gnb .depth02 > ul > li > a:hover,
#gnb .depth02 > ul > li > a:focus { background: #0038CD; color: #fff; border-color: #0038CD; }
#gnb .depth02 > ul > li > a[target="_blank"]:hover::before,
#gnb .depth02 > ul > li > a[target="_blank"]:focus::before { color: #fff; }
#gnb .depth03 { padding: 0.75rem 0.9rem; }
#gnb .depth03 > ul > li + li { margin-top: 0.5rem; }
#gnb .depth03 > ul > li > a { position: relative; display: block; font-size: 0.85rem; padding-left: 0.7rem; }
#gnb .depth03 > ul > li > a::before { position: absolute; top: 0.35rem; left: 0; width: 6px; height: 6px; border-radius: 50%; background: #C5CDD4; content: ""; }
#gnb .depth03 > ul > li > a:hover,
#gnb .depth03 > ul > li > a:focus { color: #0038CD; text-decoration: underline; font-weight: 600; }
#gnb .depth03 > ul > li > a:hover::before,
#gnb .depth03 > ul > li > a:focus::before { background: #0038CD; }
#gnb a,
#gnb a::before { transition: 0.3s; }

.translated-ltr #gnb .depth01 > ul { gap: 3rem; }

/* 전체메뉴 */
.fullmenu { flex: none; display: flex; align-items: center; justify-content: center; width: 2.2rem; height: 2.2rem; border-radius: 0.2rem; background: #003E8A; color: #fff; margin-top: 1rem; }
.fullmenu i { font-size: 1rem; }
.popFullmenu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; min-height: 100vh; background: url('/images/web/gls_zh/layout/fullmenu_bg.png') no-repeat center / cover; z-index: 99; overflow-x: hidden; overflow-y: auto; visibility: hidden; opacity: 0; transform: translateY(-12px); transition: opacity 0.35s ease, transform 0.35s ease, visibility 0.35s; }
.popFullmenu.open { visibility: visible; opacity: 1; transform: translateY(0); }
.popFullmenu h1{ display: none;}
.popFullmenu .fullmenu_wrap { height: 100%; }
.popFullmenu .fullmenu_wrap .logo a { height: 2.2rem !important; }
.popFullmenu .fullmenu_wrap .logo a p,
.popFullmenu .fullmenu_wrap .logo a span { color: #111 !important; }
.popFullmenu .fullmenu_wrap .util { display: none; }
.popFullmenu .fullmenu_group { width: 100%; height: 100%; display: flex; max-width: 70rem; margin: 0 auto;}
.popFullmenu .fullmenu_group a { position: relative; display: block; color: #111; }
.popFullmenu .fullmenu_group .depth01{ min-width: 100%; display: flex; }
.popFullmenu .fullmenu_group .depth01 > ul { min-width: 100%; display: flex; flex-wrap: wrap; align-items: stretch; min-height: 100vh; }
.popFullmenu .fullmenu_group .depth01 > ul > li { position:relative; flex: 1; padding: 0 2.25rem; }
.popFullmenu .fullmenu_group .depth01 > ul > li + li:before{ content:""; position:absolute; left:0; top:0; height: 100%; border-left: 1px solid #DBDFE5;}
.popFullmenu .fullmenu_group .depth01 > ul > li > a { padding: 20vh 0 3rem; font-size: 1.4rem; font-weight: 700; line-height: 140%; color:#0038CD;}
.popFullmenu .fullmenu_group .depth01 > ul > li > a > span { position: relative; display: inline-block; padding-top: 0.5rem;}
.popFullmenu .fullmenu_group .depth02{ padding-bottom: 3rem;}
.popFullmenu .fullmenu_group .depth02 .titBox { display: none; }
.popFullmenu .fullmenu_group .depth02 > ul > li + li { margin-top: 1.2rem; }
.popFullmenu .fullmenu_group .depth02 > ul > li a { display: inline-block; font-size: 1rem; font-weight: 600; }
.popFullmenu .fullmenu_group .depth03 { margin-top: 1rem; padding: 0 0.4rem; }
.popFullmenu .fullmenu_group .depth03 > ul > li + li { margin-top: 0.8rem; }
.popFullmenu .fullmenu_group .depth03 > ul > li > a { padding-left: 0.75rem; font-size: 0.85rem; }
.popFullmenu .fullmenu_group .depth03 > ul > li > a::before { position: absolute; top: 0.6rem; left: 0; width: 5px; height: 5px; border-radius: 50%; background: #666; content: ""; }
.popFullmenu .fullmenu_group .depth01 > ul > li.on > a > span::after,
.popFullmenu .fullmenu_group .depth01 > ul > li > a:hover > span::after,
.popFullmenu .fullmenu_group .depth01 > ul > li > a:focus > span::after  { opacity: 1; }
.popFullmenu .fullmenu_group .depth02 > ul > li > a:hover:before,
.popFullmenu .fullmenu_group .depth02 > ul > li > a:focus:before { width: 100%; }
.popFullmenu .fullmenu_group .depth03 > ul > li > a:hover,
.popFullmenu .fullmenu_group .depth03 > ul > li > a:focus { text-decoration: underline; }
.popFullmenu .fullmenuClose { position: absolute; top: 2rem; right: 8rem; display: flex; justify-content: center; align-items: center; width: 3rem; height: 3rem; border-radius: 50%; color: #fff; background: linear-gradient(135deg,rgba(74, 122, 248, 1) 0%, rgba(0, 51, 217, 1) 100%); }
.popFullmenu .fullmenuClose i { font-size: 1.3rem; transition: 0.3s; }
.popFullmenu .fullmenuClose:hover i,
.popFullmenu .fullmenuClose:focus i { transform: rotate(180deg); }

@keyframes box_shadow{
    0% { box-shadow: 0 0 0 0 rgba(178, 251, 255, 1); }
    to { box-shadow: 0 0 0 5px transparent; }
}

@media (min-width:769px) {

    .popFullmenu .fullmenu_group .depth01 > ul > li > a span:before{ content: ""; position: absolute; left: 0; top: 0.5rem; width: 0.5rem; height: 0.5rem; border-radius: 50%; background:#0038CD; transform: scale(0); transition: all 0.2s;}
    .popFullmenu .fullmenu_group .depth01 > ul > li.on > a span:before,
    .popFullmenu .fullmenu_group .depth01 > ul > li > a:hover span:before,
    .popFullmenu .fullmenu_group .depth01 > ul > li > a:focus span:before { top: 0; transform: scale(1);}
    .popFullmenu .fullmenu_group .depth02 > ul > li > a:before{ content:""; position:absolute; left: 0; bottom: 0; width: 0; border-bottom: 2px solid #000; transition: all 0.2s;}
    .popFullmenu .fullmenu_group .depth02 > ul > li > a:hover:before,
    .popFullmenu .fullmenu_group .depth02 > ul > li > a:focus:before { width: 100%; }
}

/* footer */
#footer { position: relative;}
#footer .f_link { position: relative; background: #172A41; padding: 0.9rem 0; }
#footer .f_link .container { display: flex; justify-content: space-between; align-items: center; }
#footer .f_link .link_map { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 2rem; overflow: hidden; }
#footer .f_link .link_map li { position: relative; }
#footer .f_link .link_map li + li::before { position: absolute; top: 50%; transform: translateY(-50%); left: -1rem; width: 1px; height: 0.5rem; background: rgba(255, 255, 255, 0.6); content: ""; }
#footer .f_link .link_map li a { display: block; color: #fff; font-size: 0.9rem; }
#footer .f_link .link_map li a strong { display: block; background: #0267A7; padding: 0.5rem 1rem; font-weight: 600; border-radius: 2rem; }
#footer .f_link .siteLink { position: relative; }
#footer .f_link .siteLink button { display: flex; justify-content: space-between; align-items: center; gap: 2rem; color: #eee; background: rgba(255, 255, 255, 0.14); border-radius: 2rem; padding: 0.6rem 1rem; font-size: 0.8rem; }
#footer .f_link .siteLink .lst { position: absolute; bottom: calc(100% + 0.5rem); left: 0; width: 100%; height: 132px; background: #1E3A5C; border-radius: 0.4rem; display: none; padding: 0.8rem; overflow: hidden; z-index: 1;}
#footer .f_link .siteLink .lst ul { height: 100%; overflow-y: auto; }
#footer .f_link .siteLink .lst ul li + li { margin-top: 0.4rem; }
#footer .f_link .siteLink .lst ul li a { display: block; color: #fff; }
#footer .f_link .siteLink .lst ul li a:hover,
#footer .f_link .siteLink .lst ul li a:focus { text-decoration: underline; }
#footer .f_info { position: relative; background: #1E3A5C; padding: 2rem 0; }
#footer .f_info .container { display: flex; flex-wrap: wrap; gap: 2rem 3rem; }
#footer .btn_top{ position: absolute; right: calc(50% - 44rem); top: -3.5rem; width: 2.5rem; height: 2.5rem; border-radius: 50%; background:#fff; color:#0038CD; display: flex; align-items: center; justify-content: center; box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2); z-index: 1;}
#footer .btn_top i{ font-size: 1.1rem;}

/* footer 로고 */
#footer .f_logo { flex: none; opacity: 0.75; flex: none; }
#footer .f_logo a { display: flex; align-items: center; }
#footer .f_logo a p { display: flex; align-items: center; gap: 0.3rem; color: #fff; font-size: 1.55rem; font-weight: 800; white-space: nowrap; letter-spacing: -1px; }
#footer .f_logo a span { position: relative; color: #fff; font-size: 1.2rem; font-weight: 700; padding-left: 0.5rem; margin-left: 0.5rem; }
#footer .f_logo a span::before {position: absolute; top: 50%; transform: translateY(-50%); left: 0; width: 1px; height: 1rem; background: #A5ADB7; content: ""; }

#footer .f_info ul { flex: 1; overflow: hidden; }
#footer .f_info ul li { color: #fff; margin: 0.4rem 0 0.7rem; display: flex; flex-wrap: wrap; gap: 0.5rem 1.2rem; }
#footer .f_info ul li p { position: relative; word-break: break-all; }
/* #footer .f_info ul li p:first-child { min-width: 455px; } */
#footer .f_info ul li p + p::before { position: absolute; top: 50%; transform: translateY(-50%); left: -0.6rem; width: 1px; height: 0.5rem; background: rgba(255, 255, 255, 0.6); content: ""; }
#footer .f_info ul li p strong { font-weight: 500; }
#footer .f_info .copyright { width: 100%; border-top: 1px solid rgba(255, 255, 255, 0.2); color: rgba(238, 238, 238, 0.7); padding-top: 2rem; }

#sub_container,
#container{ position:relative; z-index: 1;}
#sub_container { display: flex; gap: 4rem; max-width: 1600px; margin: 2.8rem auto; }
#sub_container > .subCntBody { width: 16rem; flex: none; }

/* SNB (왼쪽 메뉴) 수정본 */
#snb { position: relative; z-index: 10; }
#snb::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #ccc; border-radius: 1rem; content: ""; pointer-events: none; }

#snb h2 { position: relative; display: flex; align-items: flex-end; height: 8rem; color: #fff; background: url('/images/web/gls_zh/layout/sub_pageTitle.png') no-repeat top 9px right 15px, #0038CD; border-radius: 1rem; padding: 1.75rem; font-size: 1.4rem; font-weight: 600; z-index: 1; }
#snb h2 span { display: block; } /* h2 내부 span 대응 */

#snb .snb_wrap { display: block; }
#snb .snb_wrap > nav {padding: 1.8rem 1.25rem; }

/* JSP 구조: .snb_wrap 내부의 nav > ul.lnb */
#snb .snb_wrap ul.lnb > li + li { border-top: 1px dashed #ccc; }

#snb .snb_wrap ul.lnb > li > a { position: relative; display: block; padding: 0.9rem 1.8rem 0.9rem 0.7rem; font-size: 1rem; transition: 0.3s; color: #333; }

/* 호버 및 활성화 스타일 */
#snb .snb_wrap ul.lnb > li > a::after { position: absolute; bottom: -1px; left: 0; width: 0; height: 2px; background: #072E5C; content: ""; transition: 0.3s; }
#snb .snb_wrap ul.lnb > li > a::before { position: absolute; top: 50%; right: 0.5rem; transform: translateY(-50%); font-family: 'remixicon'; font-weight: 500; color: #9E9F9F; content: "\ea6e"; transition: 0.3s; }

/* 활성화 상태 (on 클래스) 및 Hover */
#snb .snb_wrap ul.lnb > li.on > a,
#snb .snb_wrap ul.lnb > li > a:hover,
#snb .snb_wrap ul.lnb > li > a:focus { color: #072E5C; font-weight: 700; }

#snb .snb_wrap ul.lnb > li.on > a::after,
#snb .snb_wrap ul.lnb > li > a:hover::after,
#snb .snb_wrap ul.lnb > li > a:focus::after { width: 100%; }

#snb .snb_wrap ul.lnb > li.on > a::before,
#snb .snb_wrap ul.lnb > li > a:hover::before,
#snb .snb_wrap ul.lnb > li > a:focus::before { color: #072E5C; }

#sub_container .subContent { width: calc(100% - 20rem); margin-top: 2.2rem; flex: 1; } 
#sub_container .subHeader { position: relative; border-bottom: 1px solid #d5d5d5; padding-bottom: 2.2rem; margin-bottom: 2.5rem; }
#sub_container .subHeader .pageTitle { font-size: 1.5rem; font-weight: 700; color: #111; margin-bottom: 0.75rem; }
#sub_container .subHeader .location { display: flex; align-items: center; gap: 1.5rem; }

/* 홈 아이콘 : a태그 자체가 remixicon 렌더링 */
#sub_container .subHeader .location a.home { font-family: 'remixicon'; color: #0F427F; font-style: normal; }

/* 홈 숨김텍스트 : 화살표·스타일 차단 */
#sub_container .subHeader .location .hid { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* 중간 경로 span : .hid 제외 */
#sub_container .subHeader .location span:not(.hid) { position: relative; color: #555; font-size: 0.75rem; }
#sub_container .subHeader .location span:not(.hid)::before { position: absolute; top: 50%; left: -1.1rem; transform: translateY(-50%); font-family: 'remixicon'; font-weight: 500; color: #bbb; content: "\ea6e"; }

/* 현재 페이지 : strong 태그 (span:last-child 대체) */
#sub_container .subHeader .location strong { position: relative; color: #555; font-size: 0.75rem; font-weight: 600; }
#sub_container .subHeader .location strong::before { position: absolute; top: 50%; left: -1.1rem; transform: translateY(-50%); font-family: 'remixicon'; font-weight: 500; color: #bbb; content: "\ea6e"; }


#sub_container .subHeader .snsBox { display: flex; position: absolute; bottom: 3rem; right: 0; gap: 0.5rem; }
#sub_container .subHeader .snsBox > a { display: flex; justify-content: center; align-items: center; width: 2rem; height: 2rem; border-radius: 50%; border: 1px solid #ccc; color: #333; z-index: 1; transition: 0.3s; }
#sub_container .subHeader .snsBox .sns_more { display: none; position: absolute; top: 0; right: calc(100% - 0.85rem); height: 2rem; background: #F3F3F3; border-radius: 2rem 0 0 2rem; padding: 0 0.85rem; }
#sub_container .subHeader .snsBox .sns_more a { display: flex; justify-content: center; align-items: center; width: 2rem; height: 2rem; }
#sub_container .subHeader .snsBox .sns_more a.facebookicon { color: #0134AD; }
#sub_container .subHeader .snsBox .sns_more a.twitericon { color: #000; }
#sub_container .subHeader .snsBox .sns_more a.kakaoicon { color: #F6BF07; }
#sub_container .subHeader .snsBox .sns_more a i { font-size: 1rem; }
#sub_container .subHeader .snsBox.active .sns_more { display: flex; }
#sub_container .subHeader .snsBox > a:hover,
#sub_container .subHeader .snsBox > a:focus,
#sub_container .subHeader .snsBox.active .btnShare.active { background: #072E5C; border-color: #072E5C; color: #fff; }

.subContent_body { font-size: 0.9rem; line-height: 150%; overflow: hidden; }


@media (max-width:1920px) {    

    /* nav */
    #gnb .depth02 .titBox::before { width: 150%; }
}

@media (max-width:1800px) {    

    /* footer */
    #footer .btn_top{ right: 1rem; }
}

@media (max-width:1640px) {
    .container { padding: 0 1rem; }
    
    /* .popFullmenu { padding: 2rem; }
    .popFullmenu .fullmenu_group .depth01 > ul { gap: 3rem 2rem; } */
    .popFullmenu .fullmenuClose { right: 2rem; }

    #sub_container { padding: 0 1rem; }

    /* footer */
    #footer .btn_top{ top: auto; bottom: 1rem; }
    #footer .f_info .copyright{ padding-right: 3rem;}
}

@media (max-width:1580px) {
    /* header */
    #header .h_main .container { gap: 2.5rem; }
    
    /* nav */
    #gnb .depth01 > ul { gap: 1.8rem; }

    .translated-ltr #gnb .depth01 > ul { gap: 1.8rem; }
    
    /* 로고 */
    #header .logo a img { height: 26px; }
    #header .logo a p { font-size: 1rem; }
    #header .logo a span { font-size: 1rem; }
    
    /* footer 로고 */
    #footer .f_logo a img { height: 26px; }
    #footer .f_logo a p { font-size: 1rem; }
    #footer .f_logo a span { font-size: 1rem; }
}

@media (max-width:1440px) {
    #sub_container { gap: 2rem; }
    #sub_container .subContent { width: calc(100% - 18rem); }
}

@media (max-width:1240px) {
    #header .h_main .container { align-items: center; gap: 1rem; }

    #header .logo a { width: auto;}
    
    /* nav */
    #nav { display: none; }
    
    .fullmenu { margin-top: 0; }
    
    .popFullmenu .fullmenu_group { margin-top: 2rem; height: calc(100% - 4.2rem); }
    .popFullmenu .fullmenu_group .depth01 > ul { min-height: unset; align-content: flex-start; background-image: linear-gradient(to right, transparent calc((100% - 4rem) / 3), #DBDFE5 calc((100% - 4rem) / 3), #DBDFE5 calc((100% - 4rem) / 3 + 1px), transparent calc((100% - 4rem) / 3 + 1px), transparent calc((100% - 4rem) * 2 / 3), #DBDFE5 calc((100% - 4rem) * 2 / 3), #DBDFE5 calc((100% - 4rem) * 2 / 3 + 1px), transparent calc((100% - 4rem) * 2 / 3 + 1px)); }
    .popFullmenu .fullmenu_group .depth01 > ul > li { flex: none; width: calc((100% - 4rem) / 3); }
    .popFullmenu .fullmenu_group .depth01 > ul > li > a { height: auto; font-size: 1.2rem; padding: 1rem 0 1rem; }
    .popFullmenu .fullmenu_group .depth01 > ul > li + li::before { display: none; }
    
    #sub_container .subHeader .snsBox > a.btnPrint { display: none; }
    
    #sub_container { display: block; margin: 1rem auto 2rem; }

    #sub_container .subCntBody { width: 100%; }

    #snb::before { border: none; }

    #snb h2 { height: auto; padding: 1rem; font-size: 1.1rem; border-radius: 0.8rem; }
    #snb h2::before { position: absolute; top: 50%; right: 0.5rem; transform: translateY(-50%); font-family: 'remixicon'; font-weight: 500; font-size: 1.5rem; color: #fff; content: "\ea4e"; transition: 0.3s; }
    #snb h2.on::before { content: "\ea78"; }
    #snb .snb_wrap { display: none; position: absolute; top: 100%; left: 0; width: 100%; padding: 1rem; background: #fff; border-radius: 0.8rem; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); }

    #sub_container .subContent { width: 100%; margin-top: 1rem; }

    #sub_container .subHeader { padding-bottom: 1rem; margin-bottom: 1rem; }
    #sub_container .subHeader .pageTitle { font-size: 1.1rem; }

    #sub_container .subHeader .snsBox { bottom: 1rem; }

}

@media (max-width:1024px) {
    /* footer */
    #footer .f_info .container { display: block }
    #footer .f_info ul { margin-top: 1rem; }
}

@media (max-width:768px) {
    #header .h_link { display: none; }
    
    .popFullmenu { background: #fff; padding: 0; }
    .popFullmenu .fullmenu_wrap .logo { padding: 0 0.75rem; }
    .popFullmenu .fullmenu_wrap .logo a { display: block; width: calc(100% - 3rem); height: 3.6rem !important; background: url('/images/web/gls_zh/layout/logo.png') no-repeat center left / auto 22px; padding-left: 130px; }
    .popFullmenu .fullmenu_wrap .logo a p,
    .popFullmenu .fullmenu_wrap .logo a span { color: #003E8A !important; }
    .popFullmenu .fullmenu_wrap .logo a img { display: none; }
    .popFullmenu .fullmenu_wrap .util { display: flex; align-items: center; height: 2.9rem; background: linear-gradient(to right, #1EA1F1, #03679F); padding-right: 3rem; }
    .popFullmenu .fullmenu_wrap .util li { position: relative; flex: 1; }
    .popFullmenu .fullmenu_wrap .util li + li::before { position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 0.5rem; background: #fff; opacity: 0.5; content: ""; }
    .popFullmenu .fullmenu_wrap .util li a { display: block; padding: 0 0.75rem; color: #fff; text-align: center; font-size: 0.8rem; }
    .popFullmenu .fullmenu_wrap .util li a i { margin-right: 5px; }
    .popFullmenu .fullmenu_group { margin-top: 0; height: calc(100% - 6.5rem); }
    .popFullmenu .fullmenu_group a { transition: 0.3s; }
    .popFullmenu .fullmenu_group .depth01 > ul { display: block; background-image: none; }
    .popFullmenu .fullmenu_group .depth01 > ul > li { width: 100%; background: #F5F5F5; padding: 0;}
    .popFullmenu .fullmenu_group .depth01 > ul > li + li { margin-top: -2px; }
    .popFullmenu .fullmenu_group .depth01 > ul > li + li::before { display: none; }
    .popFullmenu .fullmenu_group .depth01 > ul > li > a { height: auto; color: #111; padding: 0 1rem; font-size: 0.9rem; font-weight: 600; margin-bottom: 0; }
    .popFullmenu .fullmenu_group .depth01 > ul > li > a span { display: block; padding: 1rem 0; }
    .popFullmenu .fullmenu_group .depth01 > ul > li > a > span::after { display: none; }
    .popFullmenu .fullmenu_group .depth01 > ul > li.dep > a > span { padding-right: 1.5rem;}
    .popFullmenu .fullmenu_group .depth01 > ul > li.dep > a > span::before { position: absolute; top: 1rem; right: 0; display: flex; justify-content: center; align-items: center; width: 24px; height: 24px; background: #DFDFDF; border: 1px solid transparent; border-radius: 50%; color: #72767B; font-family: 'remixicon'; font-weight: 500; content: "\ea4e"; transition: 0.3s; }
    .popFullmenu .fullmenu_group .depth01 > ul > li.active .depth02 { display: block; }
    .popFullmenu .fullmenu_group .depth02 { display: none; padding: 0.5rem 1rem; background: #fff; }
    .popFullmenu .fullmenu_group .depth02 > ul > li + li { margin-top: 0; }
    .popFullmenu .fullmenu_group .depth02 > ul > li > a { display: block; font-weight: 600; padding: 0.8rem 0; color: #222; font-size: 0.8rem; border-bottom: 1px solid #D5D5D5; }
    .popFullmenu .fullmenu_group .depth02 > ul > li:last-child > a { border-bottom: none; }
    .popFullmenu .fullmenu_group .depth02 > ul > li.dep > a { padding-right: 1.5rem;}
    .popFullmenu .fullmenu_group .depth02 > ul > li.dep > a::before { position: absolute; top: 0.7rem; right: 0; display: flex; justify-content: center; align-items: center; width: 24px; height: 24px; color: #888; font-family: 'remixicon'; font-weight: 500; content: "\ea4e"; }
    .popFullmenu .fullmenu_group .depth02 > ul > li.dep.active > a::before { color: #072E5C; content: "\ea78"; }
    .popFullmenu .fullmenu_group .depth02 > ul > li.active .depth03 { display: block; }
    .popFullmenu .fullmenu_group .depth03 { display: none; margin: 1rem 0; }
    .popFullmenu .fullmenu_group .depth03 > ul > li > a { color: #555; font-size: 0.8rem; }
    .popFullmenu .fullmenu_group .depth03 > ul > li > a::before { background: #666665; }
    /* 전체메뉴 hover active */
    .popFullmenu .fullmenu_group .depth01 > ul > li.on > a,
    .popFullmenu .fullmenu_group .depth01 > ul > li > a:hover,
    .popFullmenu .fullmenu_group .depth01 > ul > li > a:focus { color: #0B294F; }
    .popFullmenu .fullmenu_group .depth01 > ul > li.active > a { background: #0B294F; color: #fff; }
    .popFullmenu .fullmenu_group .depth01 > ul > li.active > a > span { border-color: transparent; }
    .popFullmenu .fullmenu_group .depth02 > ul > li.active > a { color: #072E5C; font-weight: 600; border-color: #072E5C; }
    .popFullmenu .fullmenu_group .depth01 > ul > li.dep > a:hover > span::before,
    .popFullmenu .fullmenu_group .depth01 > ul > li.dep > a:focus > span::before { background: rgba(7, 46, 92, 0.19); }
    .popFullmenu .fullmenu_group .depth01 > ul > li.dep.active > a > span::before { border-color: rgba(255, 255, 255, 0.6); background: transparent; color: #fff; content: "\ea78"; }
    .popFullmenu .fullmenu_group .depth02 > ul > li > a:hover,
    .popFullmenu .fullmenu_group .depth02 > ul > li > a:focus { text-decoration: none; color: #072E5C; font-weight: 600; }
    .popFullmenu .fullmenu_group .depth03 > ul > li > a:hover,
    .popFullmenu .fullmenu_group .depth03 > ul > li > a:focus { color: #111; font-weight: 600; }
    .popFullmenu .fullmenuClose { top: 0.5rem; right: 0.5rem; border: none; background: none; color: #fff; width: 2rem; height: 2rem; }
    
}

@media (max-width:580px) {
    #header .logo a img { height: 20px; }
    #header .logo a p { font-size: 0.9rem; }
    #header .logo a span { font-size: 0.9rem; }
    
    .popFullmenu .fullmenu_wrap .util li a { font-size: 0.75rem; }
    
    /* footer */
    #footer .f_link .link_map li a { font-size: 0.8rem; }
    #footer .f_link .link_map li a strong { padding: 0.4rem 0.5rem; }
    #footer .f_link .container { display: block; }
    #footer .f_link .siteLink { margin-top: 1rem; }
    #footer .f_link .siteLink button { width: 100%; }

    /* footer 로고 */
    #footer .f_logo a p { font-size: 0.9rem; }
    #footer .f_logo a span { font-size: 0.9rem; }
}

@media (max-width:480px) {
    
    #header .logo a { height: 3rem; }
    #header .logo a img { height: 15px; width: 14px; object-fit: cover; object-position: left; }
    #header .logo a p { font-size: 0.75rem; }
    #header .logo a span { font-size: 0.75rem; }

    .popFullmenu .fullmenu_wrap .logo a span { display: none; }
    .popFullmenu .fullmenu_wrap .util li a i{ display: none;}

    /* footer 로고 */
    #footer .f_logo a img { height: 15px; width: 14px; object-fit: cover; object-position: left; }
    #footer .f_logo a p { font-size: 0.75rem; }
    #footer .f_logo a span { font-size: 0.75rem; }
    
    .fullmenu { width: 1.8rem; height: 1.8rem; }
}