﻿@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR&display=swap');
@import url('//fonts.googleapis.com/earlyaccess/nanumpenscript.css');
body { font-family: 'Noto Sans KR', sans-serif; }

@keyframes menu_move {
    0% { opacity: 0; transform: scaleX(0); }
    100% { opacity: 1; transform: scaleX(1); }
}

.foot_info_right > p { text-align: end }
.foot_info_left > hr { border-top: 3px solid #fff; width: 40px; float: left; }
.mobileBone { display: none; }
.absolute1 { position: absolute; left: 44.3%; top: 0%; background-size: cover; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/1.png'); }
.absolute2 { position: absolute; left: 59.88%; top: 16.4%; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/2.png'); background-size: cover; }
.absolute7 { position: absolute; left: 44.4%; top: 35.4%; opacity: 1; }
.absolute3 { position: absolute; left: 59.88%; bottom: 28.1%; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/3.png'); background-size: cover; }
.absolute4 { position: absolute; left: 44.3%; bottom: 8%; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/4.png'); background-size: cover; }
.absolute5 { position: absolute; left: 29%; bottom: 28.1%; z-index: 100; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/5.png'); background-size: cover; }
.absolute6 { position: absolute; left: 28.9%; top: 16.4%; background-image: url('/UserData/gnjich/Layouts/gnjich_Layout/Images/6.png'); background-size: cover; }

@media(max-width:1499PX) {
    .absolute1 { left: 43.1%; top: 0%; }
    .tooltip-link4[data-tooltip]:not([data-tooltip=""])::before { content: attr(data-tooltip); position: absolute; background-color: rgba(0, 0, 0, 0.5); color: #fff; padding: 10px 7px; border-radius: 10px; max-width: 300px; width: 300px; left: -60% !important; bottom: 74%; opacity: 0; transition: all 0.5s linear; }
    .absolute2 { left: 61.88%; top: 16.4%; }
    .absolute3 { left: 61.88%; bottom: 28.1%; }
    .absolute4 { left: 43.1%; bottom: 8%; }
    .absolute5 { left: 24.9%; bottom: 28.1%; }
    .absolute6 { left: 24.9%; top: 16.4%; }
}


@media(max-width:1199PX) {
    .absolute1 { left: 42.1%; top: 0%; }
    .absolute2 { left: 63.88%; top: 16.4%; }
    .absolute3 { left: 63.88%; bottom: 28.1%; }
    .absolute4 { left: 42.1%; bottom: 8%; }
    .absolute5 { left: 19.9%; bottom: 28.1%; }
    .absolute6 { left: 19.9%; top: 16.4%; }
}

@media(max-width:991PX) {
    .absolute1 { left: 39.1%; top: 0%; }
    .absolute4 { left: 39.1%; bottom: 8%; }
    .absolute2 { left: 69.88%; top: 16.4%; }
    .absolute3 { left: 69.88%; bottom: 28.1%; }
    .absolute5 { left: 11.9%; bottom: 28.1%; }
    .absolute6 { left: 11.9%; top: 16.4%; }
}


@media(max-width:760PX) {
    .pcBone { display: none; }
    .mobileBone { display: block; }
    .absolute1 { display: none; }
    .absolute4 { display: none; }
    .absolute2 { display: none; }
    .absolute3 { display: none; }
    .absolute5 { display: none; }
    .absolute6 { display: none; }
    .absolute7 { display: none; }
}

/* span태그 option */
.tooltip-link { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
.tooltip-link2 { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
.tooltip-link3 { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
.tooltip-link4 { border-radius: 105px; /* border: 3px solid #eee; */ padding: 73px; box-sizing: border-box; /* background-color: rgba(0, 0, 0, 0.5); */ }

@media(max-width:1199px) {
    .tooltip-link { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
    .tooltip-link2 { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
    .tooltip-link3 { border-radius: 105px; border: 3px solid #eee; padding: 73px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.5); }
}

/* 툴팁 option */
.tooltip-link[data-tooltip]:not([data-tooltip=""])::before { content: attr(data-tooltip); position: absolute; background-color: rgba(0,0,0,0.5); color: #fff; padding: 10px 7px; border-radius: 10px; max-width: 300px; width: 300px; left: 25%; bottom: 97%; opacity: 0; transition: all 0.5s linear; }
.tooltip-link2[data-tooltip]:not([data-tooltip=""])::before { content: attr(data-tooltip); position: absolute; background-color: rgba(0,0,0,0.5); color: #fff; padding: 10px 7px; border-radius: 10px; max-width: 300px; width: 300px; left: 25%; bottom: -50%; opacity: 0; transition: all 0.5s linear; }
.tooltip-link3[data-tooltip]:not([data-tooltip=""])::before { content: attr(data-tooltip); position: absolute; background-color: rgba(0,0,0,0.5); color: #fff; padding: 10px 7px; border-radius: 10px; max-width: 300px; width: 300px; left: -100%; bottom: 97%; opacity: 0; transition: all 0.5s linear; }
.tooltip-link4[data-tooltip]:not([data-tooltip=""])::before { content: attr(data-tooltip); position: absolute; background-color: rgba(0, 0, 0, 0.5); color: #fff; padding: 10px 7px; border-radius: 10px; max-width: 300px; width: 300px; left: -50%; bottom: 74%; opacity: 0; transition: all 0.5s linear; }

/* 툴팁 말풍선 방향 팁 추가 */
.tooltip-link[data-tooltip]:not([data-tooltip=""])::after { content: ''; border-width: 6px; border-style: solid; border-color: transparent; border-top-color: rgba(0,0,0,0.5); width: 0; height: 0; display: inline-block; position: absolute; left: 50%; bottom: 90%; transform: translate(-50%, 0); opacity: 0; transition: all 0.5s linear; }
.tooltip-link2[data-tooltip]:not([data-tooltip=""])::after { content: ''; border-width: 6px; border-style: solid; border-color: transparent; border-top-color: rgba(0, 0, 0, 0.5); width: 0; height: 0; display: inline-block; position: absolute; left: 50%; bottom: 0%; transform: translate(-50%, 0) rotate(180deg); opacity: 0; transition: all 0.5s linear; }
.tooltip-link3[data-tooltip]:not([data-tooltip=""])::after { content: ''; border-width: 6px; border-style: solid; border-color: transparent; border-top-color: rgba(0,0,0,0.5); width: 0; height: 0; display: inline-block; position: absolute; left: 50%; bottom: 90%; transform: translate(-50%, 0); opacity: 0; transition: all 0.5s linear; }
.tooltip-link4[data-tooltip]:not([data-tooltip=""])::after { content: ''; border-width: 6px; border-style: solid; border-color: transparent; border-top-color: rgba(0,0,0,0.5); width: 0; height: 0; display: inline-block; position: absolute; left: 50%; bottom: 90%; transform: translate(-50%, 0); opacity: 0; transition: all 0.5s linear; }
.tooltip-link:hover[data-tooltip]:not([data-tooltip=""])::before, .tooltip-link:hover[data-tooltip]:not([data-tooltip=""])::after { opacity: 1; }
.tooltip-link2:hover[data-tooltip]:not([data-tooltip=""])::before, .tooltip-link2:hover[data-tooltip]:not([data-tooltip=""])::after { opacity: 1; }
.tooltip-link3:hover[data-tooltip]:not([data-tooltip=""])::before, .tooltip-link3:hover[data-tooltip]:not([data-tooltip=""])::after { opacity: 1; }
.tooltip-link4:hover[data-tooltip]:not([data-tooltip=""])::before, .tooltip-link3:hover[data-tooltip]:not([data-tooltip=""])::after { opacity: 1; }

.board-theme.gallery .theme-list > .each-document { display: inline-block; vertical-align: top; width: 215px !important; margin-bottom: 5px; }
.board-theme.gallery .theme-list > .each-document > a.title-image { width: 200px !important; height: 160px !important; }
.board-theme.gallery .theme-list > .each-document > a.title { width: 200px !important; font-size: 16px !important; }
#dimodePage { display: block !important; }
#loginForm { margin-top: 100px !important; }
#joinForm { margin-top: 100px !important; }
#findForm { margin-top: 100px !important; }
.go_top { display: none; cursor: pointer; position: fixed; width: 87px; right: 70px; bottom: 17%; z-index: 999; height: 87px; }

.logo-wrap { transition: all .2s ease-in-out; width: 15%; float: left; margin-left: 0; position: relative; height: 120px; }
.logo-wrap img { position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.black > img { /* content: url(../images/1.logo.png); */ position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.white > img { /* content: url(../images/KakaoTalk_20230922_164945798.png); */ position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.container-fluid { padding: 0px; border-bottom: 1px solid #000; width: 95%; justify-content: space-between; display: flex; }

.row { margin: 0px; }
.menu-icon { font-size: 25px; position: relative; top: 3px; }
#gnb-wrap { position: absolute; top: 0; width: 100%; z-index: 999; }
#sitemap-wrap { display: none; }
ul#gnb { justify-content: space-between; width: 68%; display: inline-flex; }
    ul#gnb > li { /*width:118px;*/
        width: 12.1%;
        text-align: center;
        line-height: 120px;
        padding: 0;
        height: 120px;
        container-type: inline-size;
        transition: all .2s ease-in-out;
    }
    ul#gnb > li:last-child {
        width: 17%;
        text-align: center;
        line-height: 120px;
        padding: 0;
        height: 120px;
        container-type: inline-size;
        transition: all .2s ease-in-out;
    }
ul#gnb > li li { line-height: 1.5; }
ul#gnb > li .subal { background: white; padding: 10px 10px; }

ul#gnb > li > a { font-size: 14.5px; color: #000; text-decoration: none; letter-spacing: .54px; text-transform: uppercase; }
/*ul#gnb > li > a { font-size: 21px; color: #000; text-decoration: none; letter-spacing: .54px; text-transform: uppercase; }*/
ul#gnb > li a { text-decoration: none; display: block; word-break: keep-all; }
ul#gnb > li a li { font-size: 18px; color: black; margin-bottom: 10px; }
#gnb > li > ul > li a { padding: 12px 0px; text-align: left; color: black; font-size: 15px; }

#login-wrap { display: inline-flex; width: 20%; justify-content: end; align-items: center; }
ul#login-wrap > li { /*width:118px;*/ width: auto; text-align: center; line-height: 120px; padding: 0; height: 120px; transition: all .2s ease-in-out; }
ul#login-wrap > li li { line-height: 1.5; }
ul#login-wrap > li .subal { background: white; padding: 10px 10px; }
ul#login-wrap > li > a { font-size: 21px; color: #000; text-decoration: none; letter-spacing: .54px; text-transform: uppercase; }
ul#login-wrap > li a { text-decoration: none; display: block; word-break: keep-all; }
ul#login-wrap > li a li { font-size: 18px; color: black; margin-bottom: 10px; }
#login-wrap > li > ul > li a { padding: 12px 25px; text-align: left; color: black; font-size: 16px; }
ul#login-wrap > li.youtube { margin: 0 5px; }
ul#login-wrap > li.youtube img { min-width: 135px; }

.login { max-width: 95px !important; margin: 0px 5px !important; }
.login a { font-size: 15px !important; }
li.login.start { margin-left: 20px; }
.ham-menu { max-width: 75px !important; min-width: 30px; }
.menu-icon { padding-right: 15px; }
.subal { width: 133px; padding: 18px 13px; text-align: left; background-color: #000; color: #fff; position: relative; left: -49%; z-index: 0; visibility: hidden; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); opacity: 0; top: 30px; -webkit-transition: opacity .2s ease-in-out,top .2s ease-in-out; -moz-transition: opacity .2s ease-in-out,top .2s ease-in-out; -o-transition: opacity .2s ease-in-out,top .2s ease-in-out; transition: opacity .2s ease-in-out,top .2s ease-in-out; word-break: keep-all; }
.subal:before { content: ''; position: absolute; left: 50%; top: -8px; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid #fff; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-transition: opacity .2s ease-in-out; -moz-transition: opacity .2s ease-in-out; -o-transition: opacity .2s ease-in-out; transition: opacity .2s ease-in-out; }
/*사이트맵*/
.site-map { height: 100%; background: white; display: none; transition: 0.3s all; padding-top: 100px; width: 100%; position: fixed; top: 0; left: 0; z-index: 998; }
.site-map .depth3 { padding-left: 30px; }
.site-map .depth3 > a { color: #8D8D8D !important; }
.site-map .navbar-nav { position: relative; left: 50%; transform: translate(-50%); }
.site-map .navbar-nav > li { padding: 40px; text-align: left !important; height: 800px; border-right: 1px solid #F2F2F2; }
.site-map .navbar-nav > li:first-child { border-left: 1px solid #F2F2F2; }
.site-map .navbar-nav > li > a { padding: 10px 0px; color: black; font-size: 18px; }
.site-map .navbar-nav > li ul li a { font-size: 16px; color: black; line-height: 1.7; }
.site-map hr { margin: 5px 0px 20px 0px; border: 2px solid #f1592a; width: 65px; }
.nav > li > a:focus, .nav > li > a:hover { background: none !important; }
/*사이트맵*/

/* all-menu */
.gnb-all { display: none; position: fixed; z-index: 9999; background: rgba(0, 0, 0, 0.7); top: 0; left: 0; width: 100%; height: 100%; text-align: center; }
.gnb-all a { color: #fff; text-decoration: none; }
.gnb-all img { margin: 100px 0px 60px; max-width: 300px; }
.gnb-all .all-wrapper .all-close { color: #fff; cursor: pointer; font-weight: 600; font-size: 5em; float: right; margin-top: 1vw; }
.gnb-all .all-wrapper .container a { display: block; color: #fff; }
.gnb-all .all-wrapper .container > ul > li { display: inline-block; vertical-align: top; padding: 0px 24px; }
.gnb-all .all-wrapper .container > ul > li > a { margin: 0px 0px 18px; font-size: 25px; font-weight: 600; text-decoration: none; }
.gnb-all .all-wrapper .container > ul > li:first-child { display: none; }
.gnb-all .all-wrapper .container > ul > li > ul > li > a { color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 20px; padding: 6px 0px; }
.gnb-all .all-wrapper .container > ul > li > ul > li > a:hover { font-weight: bold; transition: 0.2s all ease; }
.gnb-all .all-wrapper .container > ul > li > ul > li > ul > li > a { color: #fff; display: block; margin-bottom: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 16px; }

/*모바일*/
#mm-2 { background: #2C548F !important; }
#mm-3 { background: #2C548F !important; }
#mm-4 { background: #2C548F !important; }
#mm-5 { background: #2C548F !important; }
#mm-6 { background: #2C548F !important; }
#mm-7 { background: #2C548F !important; }
.mm-title, .mm-listview > li > a, .mm-listview > li > span { color: #fff !important; }
.mm-menu .mm-listview > li .mm-next:after { border-color: #fff !important; }
.mm-vertical .mm-panel { background-color: #fff; }
.mm-panels > .mm-panel.mm-hasnavbar { background-color: #2C548F !important; }

#footer { background: #000; text-align: left; padding: 30px 0; }
#footer > div { display: flex; align-items: flex-end; }
#footer p { color: #d3d3d3; font-size: 17px; line-height: 1.7; word-break: keep-all; }
#footer p a { color: #d3d3d3; }
#footer .bar { border-top: 1px solid #fff; width: 20px; margin: 20px 0; }
.foot_log { display: inline-block; }
#footer .row { position: relative; }
#footer .youtube_icon { position: absolute; right: 0; }
#footer .youtube_icon img { width: 50%; }
.footer_box { position: relative; float: left; width: 100%; }
.footer_box .col-xs-6 { position: absolute; bottom: 5px; left: 270px; }
#footer .margin_top { margin-top: 37px; }
#footer .col-md-9 { text-align: right; }
#footer .col-md-3 { padding: 0; }
.foot_log table { border: 0px; width: 300px; }
.foot_log table td { text-align: center; }
.site-link { padding: 30px 0px; }
.site-link span { padding: 0px 30px; color: rgb(207,205,192); font-size: 16px; text-decoration: underline; }
.foot_info img { padding: 1.5% 0; }


@media(min-width:1500px) {
    .container { width: 1400px; }
}

@media(max-width:1500px) {
    ul#gnb > li { width: 120px !important; }
    .site-map .navbar-nav > li { padding: 40px 20px; }
    #footer .col-md-9 { width: 60%; }
    #footer .col-md-3 { width: 40%; }
}
/*레이아웃의 흰색 부분*/
@media(min-width: 1200px) and (max-width: 1500px)
{
    #gnb-wrap { position: relative; }
    .hidden-md {
        display: none !important;
    }
    .logo-wrap {width: 50%; }
    #login-wrap { float: right; justify-content: end; width: 50%; } 
    ul#gnb li a { font-size: 16px; }
    ul#gnb > li > a { color: #000; width: 65px; }
    ul#gnb > li:not(:last-child) { width: 100px; }
    #gnb > li:last-child { margin: 0px 0px 0px 5px; }
    .site-map .navbar-nav > li { padding: 40px 10px; }
}


@media(max-width:1199px) {
    #gnb-wrap { position: relative; }
    .logo-wrap {width: 50%; }
    #login-wrap { float: right; justify-content: end; width: 50%; }
    ul#gnb > li { width: 85px !important; }
    ul#gnb li a { font-size: 16px; }
    ul#gnb > li > a { color: #000; width: 65px; }
    ul#gnb > li:not(:last-child) { width: 100px; }
    #gnb > li:last-child { margin: 0px 0px 0px 5px; }
    .site-map .navbar-nav > li { padding: 40px 10px; }
}

@media(max-width:993px) {
    .logo-wrap { height: 90px; }
    ul#login-wrap > li { height: 70px; line-height: 70px; }
    #footer .youtube_icon { display: none; }
    .footer_box .col-xs-6 { position: absolute; bottom: 5px; left: 0px; padding: 0px; width: 100%; }
    .footer_img { margin-bottom: 73px; }
    .foot_info { padding: 0px; margin-top: 20px; }
    .header-mobile-gnb { float: right; position: absolute; top: 50%; transform: translateY(-50%); right: 15px; }
    .header-mobile-gnb .toggle { color: #000 !important; }
    .fa-bars { font-size: 30px; }
    .site-map { display: none !important; }
}

@media (max-width:767px) {
    .logo-wrap { height: 90px; }
    ul#login-wrap > li.youtube img { min-width: 100px; }
    ul#login-wrap > li.youtube { margin: 0 5px; }
    .site-link span { display: block; }
    .foot_info_right { height: auto !important; justify-content: left !important; }
    #footer p { line-height: 1.2; text-align: left; }
    #footer > div { flex-wrap: wrap; }
    
}

@media (max-width:767px) {
}

@media (max-width:430px) {
    .sub-15 #unit3634 > img{
        width: unset !important;
        height: unset !important;
    }
}

/*------------------------------------*/
@media (max-width: 768px) {

    /* table 구조 해체 */
    .sub-15 .table.sub_012,
    .sub-15 .table.sub_012 tbody,
    .sub-15 .table.sub_012 tr,
    .sub-15 .table.sub_012 td {
        display: block;
        width: 100%;
    }

        /* 한 사건 단위 간격 */
        .sub-15 .table.sub_012 tr {
            margin-bottom: 20px;
            padding-bottom: 20px;
            border-bottom: 1px solid #eee;
        }

        /* 날짜 */
        .sub-15 .table.sub_012 td:first-child {
            width: 100%;
            padding: 0 0 8px;
            font-size: 14px;
            color: #415faa;
        }

        /* 내용 */
        .sub-15 .table.sub_012 td:last-child {
            padding: 0;
        }

        .sub-15 .table.sub_012 ul {
            padding-left: 16px;
        }

        .sub-15 .table.sub_012 li {
            font-size: 15px;
            line-height: 1.7;
        }

    .sub-16 #unit1232 > img {
        width: unset !important;
        height: unset !important;
    }

    .sub-16 #unit3537 > img {
        width: unset !important;
        height: unset !important;
    }

    .sub-16 #unit1232 {
        padding: 0px !important;
    }

    .sub-16 #unit3537 {
        padding: 0px !important;
    }

    .sub-16 .dimode-sort.col-sm-3 {
        width: 100%;
        float: none;
    }

        .sub-16 .dimode-sort.col-sm-3 > .dimode-unit > div {
            padding: 15px;
        }

        .sub-16 .dimode-sort.col-sm-3 img {
            max-width: 150px;
        }

        .sub-16 .dimode-sort.col-sm-3 .font-l {
            font-size: 16px;
        }

    .sub-20 #component1857 #unit3634 > img {
        width: unset !important;
        height: unset !important;
    }

    .sub-20 #dimodePage .dimode-sort {
        display: unset;
    }

    /* 내부 row를 세로로 */
    .sub-21 #unit8423 .row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* 각 안내 박스 */
    .sub-21 #unit8423 .col-sm-4,
    .sub-21 #unit8423 .col-sm-3 {
        width: 100% !important;
        height: auto !important;
        margin-right: 0 !important;
        border-right: none !important;
        padding-bottom: 15px;
    }

    /* 아이콘 + 제목 줄 */
    .sub-21 #unit8423 p.font-l {
        margin-bottom: 10px !important;
        font-size: 15px;
    }

    /* 설명 텍스트 */
    .sub-21 #unit8423 span {
        font-size: 14px;
        display: block;
        line-height: 1.6;
    }

    /* 전체 박스 padding 줄이기 */
    .sub-21 #unit8423 > div {
        padding: 25px !important;
    }

    .sub-33 #component1857 #unit3634 > img {
        width: unset !important;
        height: unset !important;
    }

    .sub-34 #component1857 #unit3634 > img {
        width: unset !important;
        height: unset !important;
    }

    .sub-35 #component1857 #unit3634 > img {
        width: unset !important;
        height: unset !important;
    }


    .sub-38 #unit2742 .row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .sub-38 #unit2742 .col-sm-4 {
        width: 100% !important;
    }

    /* 내부 아이콘 + 텍스트 비율 무력화 */
    .sub-38 #unit2742 .col-sm-5,
    .sub-38 #unit2742 .col-sm-7 {
        width: 100% !important;
        text-align: left !important;
    }

    .sub-38 #unit2742 img {
        margin-top: 0 !important;
    }


    .sub-38 #component6082 {
        display: flex;
        flex-direction: column;
    }

    .sub-38 #component6413,
    .sub-38 #component8510 {
        width: 100% !important;
    }

        .sub-38 #component6413 img {
            width: 100%;
            height: auto;
            display: block;
        }

        /* 회색 박스 padding 축소 */
        .sub-38 #component8510 > div {
            padding: 25px !important;
        }

    .sub-38 #unit7118 > div {
        padding: 25px !important;
    }

    .sub-38 .sub_041 li {
        font-size: 14px;
        line-height: 1.6;
    }


    .sub-38 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-38 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-38 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }


        /*-----------------*/


    .sub-40 #unit2742 .row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .sub-40 #unit2742 .col-sm-4 {
        width: 100% !important;
    }

    /* 내부 아이콘 + 텍스트 비율 무력화 */
    .sub-40 #unit2742 .col-sm-5,
    .sub-40 #unit2742 .col-sm-7 {
        width: 100% !important;
        text-align: left !important;
    }

    .sub-40 #unit2742 img {
        margin-top: 0 !important;
    }


    .sub-40 #component6082 {
        display: flex;
        flex-direction: column;
    }

    .sub-40 #component6413,
    .sub-40 #component8510 {
        width: 100% !important;
    }

        .sub-40 #component6413 img {
            width: 100%;
            height: auto;
            display: block;
        }

        /* 회색 박스 padding 축소 */
        .sub-40 #component8510 > div {
            padding: 25px !important;
        }

    .sub-40 #unit7118 > div {
        padding: 25px !important;
    }

    .sub-40 .sub_041 li {
        font-size: 14px;
        line-height: 1.6;
    }


    .sub-40 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-40 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-40 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }
        
        /*-----------------*/


    .sub-39 #unit2742 .row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .sub-39 #unit2742 .col-sm-4 {
        width: 100% !important;
    }

    /* 내부 아이콘 + 텍스트 비율 무력화 */
    .sub-39 #unit2742 .col-sm-5,
    .sub-39 #unit2742 .col-sm-7 {
        width: 100% !important;
        text-align: left !important;
    }

    .sub-39 #unit2742 img {
        margin-top: 0 !important;
    }


    .sub-39 #component6082 {
        display: flex;
        flex-direction: column;
    }

    .sub-39 #component6413,
    .sub-39 #component8510 {
        width: 100% !important;
    }

        .sub-39 #component6413 img {
            width: 100%;
            height: auto;
            display: block;
        }

        /* 회색 박스 padding 축소 */
        .sub-39 #component8510 > div {
            padding: 25px !important;
        }

    .sub-39 #unit7118 > div {
        padding: 25px !important;
    }

    .sub-39 .sub_041 li {
        font-size: 14px;
        line-height: 1.6;
    }


    .sub-39 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-39 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-39 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }


    /*-----------------*/


    .sub-41 #unit2742 .row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .sub-41 #unit2742 .col-sm-4 {
        width: 100% !important;
    }

    /* 내부 아이콘 + 텍스트 비율 무력화 */
    .sub-41 #unit2742 .col-sm-5,
    .sub-41 #unit2742 .col-sm-7 {
        width: 100% !important;
        text-align: left !important;
    }

    .sub-41 #unit2742 img {
        margin-top: 0 !important;
    }


    .sub-41 #component6082 {
        display: flex;
        flex-direction: column;
    }

    .sub-41 #component6413,
    .sub-41 #component8510 {
        width: 100% !important;
    }

        .sub-41 #component6413 img {
            width: 100%;
            height: auto;
            display: block;
        }

        /* 회색 박스 padding 축소 */
        .sub-41 #component8510 > div {
            padding: 25px !important;
        }

    .sub-41 #unit7118 > div {
        padding: 25px !important;
    }

    .sub-41 .sub_041 li {
        font-size: 14px;
        line-height: 1.6;
    }


    .sub-41 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-41 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-41 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }

    .sub-46 #unit3634 img {
        height: auto !important;
        border-radius: 10px;
    }


    .sub-46 #unit2742 div[style*="line-height"] {
        font-size: 14px;
        line-height: 1.6 !important;
    }

    .sub-46 #unit2742 br {
        display: none;
    }


    /* 태블릿: 2열 */
    .sub-46 #component4159 .col-sm-4 {
        width: 50%;
    }



    /* 모바일: 1열 */
    .sub-46 #component4159 {
        display: flex;
        flex-direction: column;
    }

        .sub-46 #component4159 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

            .sub-46 #component4159 .col-sm-4 > div {
                padding: 20px !important;
                border-width: 6px !important;
            }


    /* 태블릿: 2열 */
    .sub-46 #component1052 .col-sm-4 {
        width: 50%;
    }



    .sub-46 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-46 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-46 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }


    .sub-46 .font-2xl {
        font-size: 18px !important;
    }

    .sub-46 .font-xl {
        font-size: 16px !important;
    }

    /*-----------------------------*/


    .sub-49 #unit3634 img {
        height: auto !important;
        border-radius: 10px;
    }


    .sub-49 #unit2742 div[style*="line-height"] {
        font-size: 14px;
        line-height: 1.6 !important;
    }

    .sub-49 #unit2742 br {
        display: none;
    }


    /* 태블릿: 2열 */
    .sub-49 #component4159 .col-sm-4 {
        width: 50%;
    }



    /* 모바일: 1열 */
    .sub-49 #component4159 {
        display: flex;
        flex-direction: column;
    }

        .sub-49 #component4159 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

            .sub-49 #component4159 .col-sm-4 > div {
                padding: 20px !important;
                border-width: 6px !important;
            }


    /* 태블릿: 2열 */
    .sub-49 #component1052 .col-sm-4 {
        width: 50%;
    }



    .sub-49 #component1052 {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

        .sub-49 #component1052 .col-sm-4 {
            width: 100% !important;
            padding: 0 !important;
        }

        .sub-49 #component1052 img {
            width: 100%;
            height: auto;
            display: block;
        }


    .sub-49 .font-2xl {
        font-size: 18px !important;
    }

    .sub-49 .font-xl {
        font-size: 16px !important;
    }

    .sub-49 #unit2873 {
        width: 50% !important;
        min-width: 360px !important;
    }

    .sub-50 #unit3634 img {
        height: auto !important;
        border-radius: 10px;
    }
}


/* =========================
   1뎁스 메뉴
========================= */
#gnb > li {
    position: relative;
}

    #gnb > li > a {
        display: block;
        padding: 15px 20px;
        font-weight: 500;
        color: #222;
        text-decoration: none;
    }

    #gnb > li:hover > a,
    #gnb > li.active > a {
        color: #1c3f94; /* 포인트 컬러 */
    }

/* =========================
   2뎁스 메뉴
========================= */
#gnb .subal {
    position: absolute;
    top: 100% !important;
    left: -49%;
    min-width: 200px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
    padding: 8px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all .25s ease;
    z-index: 100;
}

#gnb > li:hover > .subal {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

#gnb .subal > li {
    position: relative;
}

    #gnb .subal > li > a {
        display: block;
        padding: 10px 20px;
        font-size: 14px;
        color: #333;
        text-decoration: none;
        white-space: nowrap;
    }

    #gnb .subal > li:hover > a,
    #gnb .subal > li.active > a {
        background: #f3f6ff;
        color: #1c3f94;
    }

/* =========================
   3뎁스 메뉴
========================= */
#gnb .dropdown-3depth {
    position: absolute;
    top: 0;
    left: 100%;
    min-width: 200px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
    padding: 8px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(10px);
    transition: all .25s ease;
}

#gnb .subal > li:hover > .dropdown-3depth {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

#gnb .dropdown-3depth li a {
    display: block;
    padding: 10px 20px;
    font-size: 13px;
    color: #444;
    text-decoration: none;
}

    #gnb .dropdown-3depth li a:hover,
    #gnb .dropdown-3depth li.active a {
        background: #eef2ff;
        color: #1c3f94;
    }

/* =========================
   화살표 표시 (선택)
========================= */
#gnb .subal > li:has(.dropdown-3depth) > a::after {
    content: "›";
    position: absolute;
    right: 15px;
    font-size: 14px;
    color: #999;
}
.dropdown-menu {
     display: block !important; 
}
a {
    text-decoration: none !important;
    color: black; 
}
