@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap');

/* Reset some default browser styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Set default font and background color */
body {
    font-family: Arial, sans-serif;
    background-color: #3B56A8;
    color: #333;
    line-height: 1.6;
    font-family: "Noto Sans KR", sans-serif;
    color: #fff;
}

a {
    color: #333;
    text-decoration: none;
}

ul,
ol {
    list-style: none;
    padding: 0;
    bottom: 0;
}

.text-right {
    text-align: right;
}

.emptytxt{
    font-size: 16px;
    font-weight: 500;
    color: #999;
}

.container {
    max-width: 1320px;
}

header {
    border-bottom: 1px solid #fff;
    color: #fff;
}

    header .navbar-light .navbar-nav .nav-link {
        color: #fff;
        padding: 0 1.5rem;
        font-size: 16px;
        white-space: nowrap;
    }


.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .show > .nav-link {
    color: #FFAB11;
    font-weight: bold;
}

/* 검색영역 */
.searchBox {
    display: flex;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    padding: 10px 15px;
    max-width: 390px;
    height: 40px;
}

    .searchBox input {
        border: none;
        padding: 10px;
        width: 100%;
        font-size: 16px;
        border-radius: 0;
        padding: 0;
    }

    .searchBox > img {
        cursor: pointer;
    }

header .navbar > .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
}

    header .navbar > .container .leftBox {
        display: flex;
        align-items: center;
    }

header .navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
    color: #FFAB11;
}

.navbar-light .navbar-brand {
    color: #fff;
}

    .navbar-light .navbar-brand .logoimg {
        height: 50px;
    }

.mob_box {
    padding: 9px 0;
    border-top: 1px solid #fff;
    display: none;
}

    .mob_box .searchBox {
        width: 100%;
    }

/* 페이지 */
.main {
    padding-top: 35px;
    width: 100%;
    overflow: hidden;
    
}
.bg_img {
    background-image: url(../img/background.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.tob_btns .btn {
    color: #fff;
    border: 1px solid #fff;
    padding: 10px 20px;
    border-radius: 30px;
    margin-right: 10px;
    font-size: 1.0625rem;
    font-weight: bold;
    margin-bottom: 30px;
}

    .tob_btns .btn:hover {
        background-color: #FFAB11;
        border: 1px solid #FFAB11;
    }

    .tob_btns .btn.btn2:hover {
        background-color: #7087CE;
        border: 1px solid #7087CE;
    }

    .tob_btns .btn.active {
        background-color: #FFAB11;
        border: 1px solid #FFAB11;
    }

    .tob_btns .btn.btn2.active {
        background-color: #7087CE;
        border: 1px solid #7087CE;
    }

.card {
    border-radius: 25px;
}

.cateBox {
    height: 628px;
}

.leftmenuBox .card {
    padding: 20px 0 20px 20px;
}

.leftmenuBox ul li {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

    .leftmenuBox ul li.no-data {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        color: #000;
        font-size: 20px;
        font-weight: 500;
    }

        .leftmenuBox ul li.no-data:hover {
            background-color: transparent;
            width: 100%;
        }

    .leftmenuBox ul li a {
        font-size: 1.0625rem;
        font-weight: bold;
        padding-left: 20px;
        display: block;
        height: 100%;
        padding: 17px 0 17px 20px;
    }

    .leftmenuBox ul li.color1 {
        background-color: #FFA4CB;
        width: 106%;
    }
    .leftmenuBox ul li.color1 a{
        color:#fff;
    }
    .leftmenuBox ul li.color2 {
        background-color: #60A7F8;
        width: 106%;
    }
    .leftmenuBox ul li.color2 a {
        color: #fff;
    }
    .leftmenuBox ul li.color3 {
        background-color: #FEC55C;
        width: 106%;
    }
    .leftmenuBox ul li.color3 a {
        color: #fff;
    }
    .leftmenuBox ul li.color4 {
        background-color: #C09BFF;
        width: 106%;
    }
    .leftmenuBox ul li.color4 a {
        color: #fff;
    }
    .leftmenuBox ul li.color5 {
        background-color: #FF8E8E;
        width: 106%;
    }
    .leftmenuBox ul li.color5 a {
        color: #fff;
    }
    .leftmenuBox ul li.color6 {
        background-color: #27D39F;
        width: 106%;
    }
    .leftmenuBox ul li.color6 a {
        color: #fff;
    }


    .leftmenuBox ul li.active {
        width: 106%;
    }

        .leftmenuBox ul li.active a {
            color: #fff;
        }

.leftmenuBox ul li.color1.active {
        background-color: #FFA4CB;
    }

  .leftmenuBox ul li.color2.active {
        background-color: #60A7F8;
    }

.leftmenuBox ul li.color3.active {
        background-color: #FEC55C;
    }
.leftmenuBox ul li.color4.active {
        background-color: #C09BFF;
    }

    .leftmenuBox ul li.color5.active {
        background-color: #FF8E8E;
    }

   .leftmenuBox ul li.color6.active {
        background-color: #27D39F;
    }



.infoBoxList {
    background-position: bottom right;
    background-repeat: no-repeat;
}

.area_bg1 {
    border: 5px solid #FFA4CB;
    background-color: rgba(255, 164, 203, 0.08);
    background-image: url(../img/area_bg_01.png);
}
.area_bg2 {
    border: 5px solid #60A7F8;
    background-color: rgba(96, 167, 248, 0.08);
    background-image: url(../img/area_bg_02.png);
}
.area_bg3 {
    border: 5px solid #FEC55C;
    background-color: rgba(254, 197, 92, 0.08);
    background-image: url(../img/area_bg_03.png);
}
.area_bg4 {
    border: 5px solid #C09BFF;
    background-color: rgba(192, 155, 255, 0.08);
    background-image: url(../img/area_bg_04.png);
}
.area_bg5 {
    border: 5px solid #FF8E8E;
    background-color: rgba(255, 142, 142, 0.08);
    background-image: url(../img/area_bg_05.png);
}
.area_bg6 {
    border: 5px solid #27D39F;
    background-color: rgba(39, 211, 159, 0.08);
    background-image: url(../img/area_bg_06.png);
}

.txtBox {
    padding-top: 2.375rem;
    padding-left: 2rem;
}

    .txtBox img {
        max-width: 100%;
        max-height: 530px;
    }

    .txtBox h3 {
        padding-bottom: 29px;
        font-size: 30px;
        font-weight: bold;
    }

    .txtBox p {
        font-size: 17px;
        font-weight: 300;
    }

.favbtn {
    border: 0;
    background-color: transparent;
    padding: 0;
    display: flex;
}

.infoBoxCate {
    background-color: #fff;
    border-radius: 25px;
    overflow: hidden;
}

.infoBox .card {
    padding: 49px;
    padding-top: 20px;
    overflow-y: auto;
    /* 스크롤바 디자인 */
    scrollbar-width: thin; /* Firefox용 */
    scrollbar-color: #aaa #f5f5f5; /* 스크롤바 색상 (Firefox용) */
}

    .infoBox .card::-webkit-scrollbar {
        width: 8px; /* 스크롤바 너비 */
    }

    .infoBox .card::-webkit-scrollbar-thumb {
        background: #aaa; /* 스크롤바 손잡이 색상 */
        border-radius: 4px; /* 스크롤바 손잡이 모서리 둥글게 */
    }

        .infoBox .card::-webkit-scrollbar-thumb:hover {
            background: #888; /* 마우스 오버 시 색상 */
        }

    .infoBox .card::-webkit-scrollbar-track {
        background: #f5f5f5; /* 스크롤바 트랙 배경색 */
        border-radius: 4px; /* 스크롤바 트랙 모서리 둥글게 */
    }



    .infoBox .card ul {
        flex-wrap: wrap;
        display: flex;
    }

        .infoBox .card ul li {
            padding: 20px 0;
            display: flex;
            align-items: end;
            width: 33%;
        }

            .infoBox .card ul li a {
                line-height: 1.2;
            }

            .infoBox .card ul li .favbtn {
                margin-right: 6px;
            }

                .infoBox .card ul li .favbtn img {
                    vertical-align: text-top;
                }

            .infoBox .card ul li a:hover {
                color: #FFAB11;
            }

.infoBoxList {
    display: none;
}

.cateexp {
    height: 100%;
    background: url(../img/main_bg.png) no-repeat;
    background-position: bottom right;
    background-size: 500px;
}

.alert {
    background-color: rgba(0, 29, 79, 0.75);
    color: #fff;
    border: 0;
    padding: 20px 30px;
    border-radius: 20px;
    width: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}


.comm_card {
    padding: 40px;
    color: #333333;
    margin-top: 40px;
    height: 881px;
}

.toptitBox {
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 15px;
    margin-bottom: 25px;
}

    .toptitBox h5 {
        font-size: 20px;
        color: #333333;
        font-weight: 700;
        padding-bottom: 10px;
    }

        .toptitBox h5 small {
            font-size: 14px;
            color: #333333;
            font-weight: 400;
        }

.searchResult {
    background-color: #eee;
    border-radius: 10px;
    padding: 10px 15px;
}

    .searchResult a {
        color: #3B88EE;
        font-weight: 700;
    }

    .searchResult span {
        color: #999999;
    }

.search_page .tob_btns {
    display: flex;
    gap: 5px;
}

    .search_page .tob_btns .btn {
        font-size: 16px;
        border: 1px solid #3B56A8;
        color: #3B56A8;
    }

        .search_page .tob_btns .btn:hover {
            color: #fff;
            border: 1px solid #FFAB11;
        }

        .search_page .tob_btns .btn.active {
            color: #fff;
            border: 1px solid #FFAB11;
        }

.seachCard {
    padding: 20px;
    overflow-y: auto;
}

    .seachCard .line {
        display: flex;
        gap: 38px;
    }

        .seachCard .line .tit {
            font-size: 17px;
            font-weight: bold;
            max-width: 150px;
            width: 100%;
        }

        .seachCard .line ul {
            display: flex;
            flex-wrap: wrap;
        }

            .seachCard .line ul li {
                width: 33.33%;
                padding-bottom: 20px;
                display: flex;
                align-items: center;
                gap: 5px;
            }

/* 내서재 */
.toparea {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 15px;
    margin-bottom: 30px;
}

    .toparea .btns {
        gap: 15px;
        display: flex;
        flex-wrap: wrap;
    }

        .toparea .btns .btn {
            border: 1px solid #3B56A8;
            border-radius: 30px;
            color: #3B56A8;
            width: 130px;
            height: 50px;
            font-size: 20px;
            font-weight: bold;
        }

            .toparea .btns .btn:hover,
            .toparea .btns .btn.active {
                background-color: #3B56A8;
                color: #fff;
            }

.comm_card .mysearchBox .searchBox {
    background-color: #eee;
    max-width: 300px;
}

    .comm_card .mysearchBox .searchBox input {
        background-color: transparent;
    }

.my_library_page .tob_btns .btn {
    border: 1px solid #ccc;
    border-radius: 10px;
    color: #777;
    font-weight: normal;
    height: 45px;
    padding: 5px 10px;
    max-width: 150px;
    width: 100%;
    font-size: 17px;
    margin-bottom: 10px;
    word-break: keep-all;
}

    .my_library_page .tob_btns .btn:hover,
    .my_library_page .tob_btns .btn.active {
        color: #fff;
        border: 1px solid #FFAB11;
    }

    .my_library_page .tob_btns .btn.btn2:hover,
    .my_library_page .tob_btns .btn.btn2.active {
        color: #fff;
        border: 1px solid #7087CE;
    }

.mylistBox ul {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    align-items: center;
    padding: 10px 0;
    overflow-y: auto;
    max-height: 478px;
}

    .mylistBox ul .card {
        width: 24%;
        padding: 23px 16px;
        background-color: #fff;
        color: #333;
        position: relative;
    }

        .mylistBox ul .card .closebtn {
            position: absolute;
            background-color: transparent;
            top: 1px;
            right: 13px;
            color: #fff;
            border: 0;
            border-radius: 50%;
            font-size: 20px;
            line-height: 30px;
            text-align: center;
        }

        .mylistBox ul .card .head {
            padding-bottom: 16px;
        }

        .mylistBox ul .card .head,
        .mylistBox ul .card .content sub {
            color: #777;
            font-size: 15px;
        }

        .mylistBox ul .card .content p {
            font-size: 20px;
            color: #333;
            font-weight: bold;
            padding-top: 8px;
            margin: 0;
        }

        .mylistBox ul .card .date {
            padding-top: 43px;
            color: #aaa;
            font-size: 14px;
        }

            .mylistBox ul .card .date img {
                margin-right: 10px;
            }

.morebtn {
    width: 100%;
    text-align: center;
}

    .morebtn button > div {
        color: #3B56A8;
    }

button:disabled {
    cursor: not-allowed;
}

.morebtn button:disabled > div {
    color: #aaa;
}

.morebtn button:disabled svg path {
    fill: #aaa;
}

.btn:disabled {
    opacity: 1;
}

.swiper-container.btns {
    margin: 0;
    display: none;
}

    .swiper-container.btns .tob_btns {
        padding: 0;
        justify-content: flex-start;
    }

    .swiper-container.btns .swiper-slide {
        max-width: 150px;
        padding-right: 10px;
    }


/* 모달 */
.modal {
    color: #777;
}

.modal-header {
    border-bottom: 0;
    padding-bottom: 0;
}

.modal-title {
    font-size: 17px;
    font-weight: normal;
}

.modal-body .subtit sub {
    font-size: 17px;
}


/* 공지사항 */
.notice_page .toparea,
.noticeDetail_page .toparea {
    border-bottom: 0;
    margin-bottom: 20px;
    padding-bottom: 0;
}

.notilist ul {
    overflow-y: auto;
    max-height: 600px;
}

    .notilist ul .card {
        padding: 20px;
        margin-bottom: 10px;
        border-radius: 25px;
    }

.notilist .card {
    padding: 20px;
    margin-bottom: 10px;
    border-radius: 25px;
}

.notilist ul .card:last-child {
    margin-bottom: 0;
}

        .notilist ul .card .head {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

            .notilist ul .card .head .import {
                display: inline-block;
                background-color: #FFAB11;
                color: #fff;
                border-radius: 20px;
                padding: 2px 18px;
                height: 34px;
                line-height: 30px;
                font-weight: 500;
                font-size: 16px;
            }

            .notilist ul .card .head .num {
                font-size: 16px;
                color: #aaa;
            }

            .notilist ul .card .head .date {
                font-size: 16px;
                color: #aaa;
            }

        .notilist ul .card .txt {
            padding-top: 5px;
            display: flex;
            align-items: center;
        }

            .notilist ul .card .txt span {
                font-weight: bold;
                font-size: 17px;
            }

.notice_page .notilist ul .card .txt span, .inquiry_page .notilist ul .card .txt span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.inquiry_page.inquiryDetail_page .notilist ul .card .txt span {
    display: block;
}

.notilist ul .card .txt img {
    max-width: 20px;
    max-height: 20px;
    margin-left: 10px;
}

.noticeDetail_page .notilist ul .card .txt img {
    margin-left: 5px;
}

.notilist ul .card .conts {
    padding-top: 41px;
    margin: 0;
}



.notilist .scrollBox {
    overflow-y: auto;
    max-height: 420px;
}

    .notilist .scrollBox img {
        max-width: 100%;
    }

.fileBox {
    padding-top: 51px;
}

    .fileBox a {
        display: block;
        padding: 7px 0;
    }

    .fileBox img {
        margin-right: 12px;
    }

.noticeDetail_page .notilist ul {
    overflow-y: inherit;
    max-height: none;
    margin: 0;
}

.noti_pagination {
    margin-top: 20px;
}

    .noti_pagination > a {
        display: block;
        width: 100%;
        border: 1px solid #ccc;
        background-color: #F5F5F5;
        border-radius: 25px;
        padding: 10px 15px;
        color: #aaa;
        margin-bottom: 10px;
        display: flex;
        justify-content: space-between;
        font-size: 17px;
        word-break: keep-all;
    }

        .noti_pagination > a:last-child {
            margin-bottom: 0;
        }

        .noti_pagination > a .tit {
            width: auto;
        }

    .noti_pagination .right {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .noti_pagination > a .noti_tit {
        padding-left: 57px;
        color: #333;
    }

        .noti_pagination > a .noti_tit > img {
            margin-left: 5px;
            height: 16px;
        }


.golistbtnBox {
    text-align: center;
    margin-top: 35px;
}

    .golistbtnBox a {
        border-radius: 15px;
        background-color: #3B56A8;
        color: #fff;
        height: 50px;
        max-width: 140px;
        width: 100%;
        display: inline-block;
        font-size: 20px;
        padding-top: 8px;
    }

    .golistbtnBox button {
        border-radius: 15px;
        background-color: #043592;
        color: #fff;
        height: 50px;
        max-width: 140px;
        width: 100%;
        display: inline-block;
        font-size: 20px;
        border: 0;
    }

        .golistbtnBox button:disabled {
            background-color: #ddd;
            color: #777;
        }
/* 1:1 문의 */
.tabCont label {
    font-size: 17px;
    padding-bottom: 10px;
    color: #aaa;
    font-weight: bold;
}

.tabCont .tob_btns .btn {
    border-radius: 15px;
    width: 49%;
    border: 1px solid #ccc;
    margin: 0;
    color: #aaa;
    font-weight: normal;
}

    .tabCont .tob_btns .btn.active, .tabCont .tob_btns .btn:hover {
        border: 1px solid #FFAB11;
        color: #fff;
    }

.mb25 {
    margin-bottom: 25px;
}

textarea {
    resize: none;
}

.tabCont input {
    border-radius: 15px;
    padding: 15px;
    height: 50px;
}

    .tabCont input::placeholder,
    .tabCont textarea::placeholder {
        color: #ccc;
        font-size: 15px;
    }

.tabCont textarea::placeholder {
    padding-left: 5px;
}

.tabCont textarea {
    border-radius: 25px;
    padding-left: 15px;
    padding-top: 15px;
}

/* 숨겨진 파일 input */
.upload-hidden {
    display: none;
}

/* 파일을 선택한 텍스트와 함께 있는 박스 */
.customFileBox {
    display: flex;
    align-items: center;
}


/* 파일 선택 버튼 스타일 */
.file-label {
    width: 90px;
    height: 90px;
    cursor: pointer;
    color: white;
    border-radius: 5px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 15px;
    padding: 0;
    text-align: center;
    position: relative;
}

    .file-label svg {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
/* 파일을 선택했을 때의 상태 */
input[type="file"]:focus + .file-label {
    outline: 2px solid #4CAF50;
}

.file_lineBox {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.imgBox {
    width: 90px;
    height: 90px;
    color: white;
    border-radius: 5px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 15px;
    padding: 0;
    text-align: center;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

    .imgBox .btn {
        position: absolute;
        right: 5px;
        top: 0;
        padding: 0;
    }

.file_infotxt {
    color: #ccc;
    font-size: 15px;
    padding-top: 10px;
}

.br_mob {
    display: none;
}

.tabCont .notilist ul {
    max-height: 500px;
    overflow-y: auto;
}

#readConts .notilist ul {
    padding-top: 48px;
}

    #readConts .notilist ul .card {
        margin-bottom: 49px;
    }

.notilist ul .card .state {
    display: inline-block;
    position: absolute;
    right: 35px;
    top: -40px;
    background-color: #D9D9D9;
    color: #777;
    border-radius: 15px 15px 0 0;
    width: 130px;
    padding: 7px 0;
    text-align: center;
    font-weight: bold;
}

    .notilist ul .card .state.complete {
        background-color: #FFAB11;
        color: #fff;
    }

.inquiryDetail_page .fileBox {
    padding-top: 27px;
}

.inquiryDetail_page .notilist ul .card {
    margin-bottom: 55px;
}

    .inquiryDetail_page .notilist ul .card:last-child {
        margin-bottom: 0;
    }

.notilist ul #answerBox .conts {
    padding-top: 0;
}

.inquiryDetail_page .toparea {
    margin-bottom: 45px;
}


/* 메인팝업 */
.Pop_wrap {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 9999999;
    background-color: rgba(77, 76, 76, 0.37);
    /*display: none;*/
}

.Pop_box {
    position: absolute;
    max-width: 500px;
    width: 90%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    text-align: center;
    color: #000;
}


    .Pop_box .swiper-wrapper {
        width: 100%;
        max-height: 500px;
    }

        .Pop_box .swiper-wrapper .editorBox {
            overflow-y: auto;
            max-height: 500px;
            text-align: left;
            padding: 20px;
        }


.Pop_closebtn {
    position: absolute;
    right: -10%;
    top: 0;
    cursor: pointer;
}

    .Pop_closebtn button {
        border: 0;
        font-size: 30px;
        font-weight: bold;
        background-color: transparent;
        padding: 0;
    }

.popSwiper .swiper-slide {
    height: 100%;
    overflow-y: auto;
    max-height: 500px;
}

    .popSwiper .swiper-slide img {
        width: 100%;
        height: 100%;
    }


.pagingBox label {
    float: right;
    color: #fff;
    margin-bottom: 0;
    line-height: 40px;
    margin-right: 13px;
    vertical-align: middle;
    font-size: 16px;
    cursor: pointer;
    margin-left: auto;
}

    .pagingBox label input {
        margin-right: 9px;
        width: 18px;
        height: 18px;
        vertical-align: middle;
        border-radius: 3px;
        cursor: pointer;
    }

.popBox_body .pagingBox {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #07153E;
    width: 100%;
}

    .popBox_body .pagingBox .pagination_bullet {
        height: 100%;
        text-align: left;
        padding-left: 17px;
    }

        .popBox_body .pagingBox .pagination_bullet span {
            width: 10px;
            height: 10px;
            background: #D9D9D9;
            border-radius: 50%;
            margin-right: 5px;
            opacity: 1;
        }

    .popBox_body .pagingBox .swiper-pagination-bullet-active {
        width: 22px;
        height: 5px;
        border-radius: 1.6px;
        background: #FFAB11 !important;
    }




































/* 미디어쿼리 */

@media (max-width: 1199.98px) {
    .container {
        padding-left: 20px;
        padding-right: 20px;
    }


    .comm_card {
        height: 900px;
    }
}

@media (max-width: 991.98px) {
    header .navbar-light .navbar-nav .nav-link {
        padding: 1rem;
    }

    .leftmenuBox .card {
        padding: 0;
    }

    .main .row {
        flex-wrap: nowrap;
    }

    .main .container {
        padding: 0;
    }

    .infoBox .card {
        padding: 20px;
    }

    .toparea {
        flex-direction: column;
        align-items: baseline;
    }

    .comm_card {
        padding: 30px;
    }

        .comm_card .mysearchBox {
            padding-top: 20px;
            width: 100%;
        }

            .comm_card .mysearchBox .searchBox {
                width: 100%;
                max-width: none;
                height: 50px;
            }

                .comm_card .mysearchBox .searchBox input::placeholder {
                    font-size: 17px;
                }

    .mylistBox ul .card {
        width: 23%;
    }

    .comm_card {
        height: auto;
    }
}

@media (max-width: 767.98px) {

    .leftmenuBox .card {
        padding: 20px;
    }

    .leftmenuBox ul li a {
        padding: 17px 20px 17px 20px;
    }

    .infoBox .card ul li {
        width: 50%;
    }

    .leftmenuBox ul li:hover {
        width: 127%;
    }

    .leftmenuBox ul li.active {
        width: 121%;
    }


    .searchBox {
        display: none;
    }

    .mob_box {
        display: block;
    }

        .mob_box .searchBox {
            display: flex;
        }

        .mob_box .leftmenuBox ul li:hover.searchBox {
            display: flex;
        }

    .leftmenuBox {
        margin-left: -26px;
        width: 232px;
    }

    .tob_btns {
        padding: 0 20px;
    }

        .tob_btns.pc {
            display: none;
        }

    .tabCont .tob_btns {
        padding: 0;
    }

    .swiper-container.btns {
        display: block;
        margin-bottom: 10px;
    }

    .tob_btns .btn {
        font-size: 16px;
        width: 114px;
        padding: 10px 0;
    }

    .txtBox {
        padding: 0;
        padding-right: 24px;
    }

        .txtBox h3 {
            font-size: 24px;
        }

        .txtBox p {
            font-size: 14px;
        }

    .comm_card .mysearchBox .searchBox {
        display: flex;
    }

    .mylistBox ul .card {
        width: 48%;
    }

    .my_library_page .tob_btns .btn {
        font-size: 14px;
    }

    .br_mob {
        display: block;
    }


    .Pop_closebtn {
        right: 0;
        top: -50px;
    }
}

@media (max-width: 575.98px) {
    .main {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .tob_btns .btn {
        font-size: 14px;
        width: 109px;
        margin-right: 0;
    }

    .collapse:not(.show) {
        display: block;
    }

    .navbar-expand-sm .navbar-nav {
        flex-direction: row;
    }

        .navbar-expand-sm .navbar-nav .nav-link {
            padding-right: .5rem;
            padding-left: .5rem;
        }

    .infoBox .card ul li {
        width: 100%;
    }

    .leftmenuBox ul li a {
        font-size: 16px;
    }

    .txtBox img {
        transform: scale(1.5);
    }

    .comm_card {
        padding: 20px;
        margin-top: 20px;
    }

    .notice_page .comm_card {
        height: auto;
    }

    .seachCard .line {
        flex-direction: column;
        gap: 10px;
    }

    .search_page .tob_btns {
        padding: 0;
    }

        .search_page .tob_btns .btn {
            inline-size: 117px;
            font-size: 12px;
            padding: 8px 0;
        }

    .seachCard .line ul li {
        width: 100% !important;
    }

    .toparea .btns {
        gap: 10px;
        width: 100%;
    }

        .toparea .btns .btn {
            width: auto;
            height: auto;
            font-size: 15px;
        }

    .mylistBox ul .card {
        width: 100%;
    }

    .my_library_page .tob_btns .btn {
        font-size: 15px;
        line-height: 1.2;
        margin: 0;
    }


    .noticeDetail_page .notilist ul .card {
        border: 0;
        border-top: 1px solid #ccc;
        border-radius: 0;
        padding: 0;
        padding-top: 10px;
    }

    .noticeDetail_page .tabCont .notilist ul .card, .inquiryDetail_page .notilist ul .card {
        padding: 20px;
        border-radius: 25px;
        border: 1px solid #ccc;
    }

    .notilist ul .card .conts {
        padding-top: 30px;
    }

    .notice_page .notilist ul .card .txt span {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal;
        word-break: break-all;
    }

    .inquiry_page .notilist ul .card .txt span {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal;
    }

    .fileBox {
        padding-top: 30px;
    }

    .noti_pagination > a {
        align-items: center;
    }

    .noti_pagination .right {
        flex-direction: column;
        align-items: baseline;
    }

    .noti_pagination > a .noti_tit {
        padding-left: 22px;
        display: flex;
        align-items: center;
    }

        .noti_pagination > a .noti_tit > span {
            /*   max-width: 197px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;*/
            word-break: break-all;
            width: auto;
            max-width: none;
            font-size: 15px;
        }

    .noti_pagination > a .tit {
        font-size: 15px;
    }

    .noti_pagination > a .date {
        padding-left: 22px;
        font-size: 15px;
    }

    .inquiryDetail_page .toparea {
        margin-bottom: 55px;
    }

    header .navbar > .container .leftBox {
        display: block;
        text-align: center;
        width: 100%;
        margin-bottom: 15px;
    }

    .navbar-light .navbar-brand .logoimg {
        height: 45px;
    }

    .topmenu {
        margin: 0 auto;
    }

    .txtBox {
        padding-top: 14px;
    }

        .txtBox h3 {
            padding-bottom: 15px;
        }


    .infoBox .card {
        padding: 10px 15px;
    }

        .infoBox .card ul li {
            padding: 10px 0;
            align-items: center;
        }

            .infoBox .card ul li a {
                font-size: 15px;
            }

    .notilist ul .card .head .import {
        font-size: 15px;
    }

    .notilist ul .card .txt span, .notilist ul .card .head .date, .notilist ul .card .head .num {
        font-size: 15px;
    }

    .cateexp {
        background-size: 220px;
    }

    .tob_btns {
        display: flex;
        gap: 8px;
        justify-content: center;
    }

    .infoBoxList {
        background-position-x: center;
    }
}

@media (max-width: 320px) {
    header .navbar-light .navbar-nav .nav-link {
        padding-right: .6rem;
        padding-left: .5rem;
    }

    .leftmenuBox {
        width: 191px;
    }

    .cateexp {
        background-size: contain;
    }
}
