@media screen and (max-width: 1600px) {
    #gnb_layout .depth1_ul > li {
        margin: 0 10px;
        /*대메뉴사이간격조절*/
    }

    #gnb_layout .depth1_ul .item {
        padding: 0 0 0 400px;
    }

    #gnb_layout .depth1_ul .item .gnb-title .bg-text {
        background-position: left 80px center;
    }

    #gnb_layout .depth1_ul .item .gnb-title {
        padding: 60px 40px 0 80px;
        width: 400px;
    }

    #gnb_layout .depth2_ul {
        max-width: 700px;
        padding-left: 25px;
    }

    #gnb_layout .depth2_ul > li > a {
        min-width: 120px;
        font-size: 14px;
    }

    /*왼쪽배너*/
    .gnb-banner {
        float: left;
        top: 0;
        right: 0;
        color: #222;
        padding: 50px 30px 30px 30px;
    }

    .banner-in {
        background: #f8f3f5 url(../../images/home/i_manualbook.png) 10px center no-repeat;
        border-radius: 12px;
        padding: 20px 20px 20px 50px;
    }

    .banner-in strong {
        font-size: 14px;
        line-height: 140%;
        font-weight: 600;
    }
}

@media screen and (max-width: 1460px) {
    .lnb_wrap {
        padding: 0 4%;
    }

    .pd-cont {
        padding: 0 2%;
    }

    .pd-cont-2 {
        padding: 0 4%;
    }

    .pd-cont-3 {
        padding: 75px 4%;
        min-width: auto;
    }

    #top_layout .top_wrap #logo {
        left: 3%;
    }

    #top_layout .top_wrap .utile_wrap {
        right: 3%;
    }

    #gnb_layout .depth1_ul .item .gnb-title {
        padding: 40px 40px 0 40px;
        width: 350px;
    }

    #gnb_layout .depth1_ul .item .gnb-title .bg-text {
        background-position: left 40px center;
    }

    #gnb_layout .depth1_ul .item {
        padding: 0 0 0 350px;
    }

    .depth2_ul > li > a {
        min-width: 120px;
    }

    #gnb_layout .depth1_ul > li {
        margin: 0 10px;
        /*대메뉴사이간격조절*/
    }

    #gnb_layout .depth1_ul > li > a span {
        padding: 0 20px;
        font-size: 20px;
    }

    #gnb_layout .depth1_ul {
        margin-left: 50px;
    }

    #gnb_layout .depth2_ul {
        max-width: 580px;
        padding-left: 20px;
    }

    #gnb_layout .depth2_ul > li > a {
        min-width: 120px;
        font-size: 14px;
    }

    /*왼쪽배너*/
    .gnb-banner {
        float: left;
        top: 0;
        right: 0;
        color: #222;
        padding: 50px 30px 30px 30px;
    }

    .banner-in {
        background: #f8f3f5 url(../../images/home/i_manualbook.png) 10px center no-repeat;
        border-radius: 12px;
        padding: 20px 20px 20px 50px;
    }

    .banner-in strong {
        font-size: 14px;
        line-height: 140%;
        font-weight: 600;
    }

    #list_01 .list_item {
        width: calc(50% - 20px);
    }

    #list_01 .list_item2 {
        width: calc(50% - 20px);
    }

    #view_02 .view_body .btn_all_down2 a {
        display: block;
        font-size: 16px;
        font-weight: 700;
        text-align: left;
        padding: 20px 30px;
        color: #fff;
    }

    #view_02 .view_body .btn_all_down2 {
        background-size: 15px;
    }

    /*홍보자료*/
    .info__btn-container {
        display: none;
    }

    /*연혁*/
    .timeline-items {
        flex-direction: column;
        gap: 10px;
    }

    .timeline-item {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: left !important; /* 좌우 정렬 제거 */
    }

    /*오시는길*/
    .bs_map {
        display: none; /* 지도 숨김 */
    }

    .gu-mobile {
        display: block;
        padding: 0 10px;
    }

    .gu-mobile .gu {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        padding: 0;
        margin: 0 0 16px 0;
        list-style: none;
    }

    /* ✅ 한 줄에 4개씩 */
    .gu-mobile .gu li {
        width: calc(20% - 6.4px);
    }

    .gu-mobile .gu li a {
        display: block;
        padding: 10px 12px;
        background-color: #f0f0f0;
        border-radius: 6px;
        text-align: center;
        color: #333;
        text-decoration: none;
        font-weight: 500;
        transition: background 0.2s, color 0.2s;
    }

    .gu-mobile .gu li a:hover,
    .gu-mobile .gu li a.active {
        background-color: #3498db;
        color: #fff;
    }

    /*퀵배너*/
    .quick-banner {
        display: none;
    }
}

@media screen and (max-width: 1200px) {
    /*게시판&배너*/
    .content-wrapper {
        flex-direction: row; /* PC 구조 유지 */
        max-width: 100%; /* wrapper가 화면 폭에 맞도록 */
    }

    .left-section {
        flex: 7;
        padding-right: 15px;
    }

    .right-section {
        flex: 3;
    }

    .content-display {
        width: 700px !important; /* 기존 940px -> 화면에 맞게 줄임 */
        padding: 40px 30px 25px 30px; /* 패딩도 줄임 */
    }

    /* 배너 너비 조정 */
    .top-banner-container,
    .bottom-banner-container {
        width: 250px !important; /* 기존 320px -> 화면 폭에 맞춤 */
    }

    .bottom-banner-container .swiper-slide img {
        width: 250px !important;
        height: auto; /* 비율 유지 */
    }

    /*즐겨찾기*/
    .bipa-content {
        max-width: 1200px;
        padding: 0 20px;
        justify-content: space-between;
    }

    /* 왼쪽 홍보동영상 */
    .bipa-video-banner,
    .bipa-video-banner img {
        max-width: 500px !important;
        height: 300px;
    }

    /* 가운데 자주찾는 메뉴 */
    .bipa-menu-items {
        width: 280px !important;
    }

    .bipa-menu-link {
        max-width: 280px !important;
        padding: 25px 0;
    }

    .bipa-menu-text {
        font-size: 18px;
        margin-left: 25px;
    }

    .bipa-menu-icon {
        width: 35px;
        height: 35px;
        margin-right: 20px;
    }

    /* 오른쪽 배너 */
    .bipa-banner-item {
        width: 280px !important;
    }

    .bipa-banner-link {
        max-width: 280px !important;
        padding: 35px 0;
    }

    .bipa-banner-img {
        width: 60px;
        height: 60px;
        margin-right: 20px;
    }

    .bipa-banner-title {
        font-size: 18px;
        margin-left: 25px;
    }

    .bipa-banner-text {
        font-size: 14px;
        margin-left: 25px;
    }

    /* 제목 영역 */
    .bipa-title {
        font-size: 32px;
    }

    .bipa-tit2 {
        font-size: 30px;
    }

    /* 전체 섹션 패딩도 약간 줄임 */
    .bipa-menu-section {
        padding: 40px 0;
    }

    #top_layout .top_wrap .utile_wrap {
        display: flex;
        justify-content: flex-end; /* 오른쪽 정렬 */
        gap: 15px; /* 아이템 간격 */
        position: relative; /* 필요시 right 적용 가능 */
    }

    /* PC 전용 요소 숨기기 */
    #top_layout .top_wrap .utile_wrap > li.pc {
        display: none;
    }

    /* MO 전용 요소 보이기 */
    #top_layout .top_wrap .utile_wrap > li.mo {
        display: block; /* flex 아이템이면 block/inline-block 충분 */
    }

    /* site-link 숨기기 (중복 제거) */
    #top_layout .top_wrap .utile_wrap.pc .site-link {
        display: block;
    }

    #gnb_layout {
        display: none;
    }

    #sub_top .sub_title {
        margin-left: 20px;
    }

    /* 메뉴 */
    #subCont {
        margin: 0;
    }

    #subCont .inner {
        flex-wrap: wrap;
        gap: 10px;
        width: auto;
        padding: 0 15px;
    }

    #subCont .page-left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    #subCont .left-top {
        border-radius: 10px;
    }

    #subCont .page-name {
        padding: 20px 25px;
        font-size: 20px;
    }

    #subCont .page-name:after {
        display: none;
    }

    /* 모바일에서는 메뉴를 가로 스크롤 형태로 변경 */
    #subCont .m-snb ul.left-menu {
        display: flex;
        overflow-x: auto;
        padding: 10px;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    #subCont .m-snb ul.left-menu > li {
        margin: 0 5px;
        flex-shrink: 0;
    }

    #subCont .m-snb ul.left-menu > li a {
        padding: 12px 15px;
        font-size: 15px;
    }

    /* 선택된 메뉴 스타일 조정 */
    #subCont .m-snb ul.left-menu > li.on > a {
        padding-left: 15px;
        background: #e8f3ff;
        background-image: none;
        /* 아이콘 제거 */
    }

    #subCont .m-snb ul.left-menu > li:not(.on) a:hover {
        background: #f5f9ff;
        color: #0068b7;
        /* 로고 색상으로 변경 */
    }

    #subCont .m-snb ul.left-menu > li.on > a:hover {
        background: #e8f3ff;
        background-image: none;
        /* 아이콘 제거 */
        color: #0068b7;
    }

    #footer .foot-body .logo_wrap > .f-logo {
        background-size: 65%;
    }

    #footer .foot-body .logo_wrap {
        margin-bottom: 10px;
    }

    footer .foot-body .social-icons {
        float: left;
        position: absolute;
        top: 125px;
        margin-left: 280px;
    }

    #footer .foot-body .social-icons a {
        margin-left: 10px;
    }

    #footer .foot-body .social-icons img {
        width: 39px;
        height: 39px;
    }

    #tb_list_01 thead th {
        font-size: 16px;
        padding: 15px 5px;
    }

    #tb_list_01 thead th::after {
        top: 17px;
    }

    #tb_list_01 tbody td {
        font-size: 16px;
        padding: 15px 5px;
    }

    #tb_list_01 tbody td.tt {
        font-size: 17px;
        white-space: normal;
        overflow: auto;
        text-overflow: clip;
    }

    #tb_list_01 span.selection,
    #tb_list_01 span.available {
        font-size: 14px;
        padding: 4px 7px;
    }

    #tb_list_01 span.taken,
    #tb_list_01 span.closed {
        font-size: 14px;
        padding: 4px 7px;
    }

    .tb_responsive {
        width: 100% !important;
        overflow-x: scroll !important;
    }

    #list_01 .list_item a {
        padding: 30px;
    }

    #list_01 .list_item2 a {
        padding: 30px;
    }

    #view_02 .view_head {
        padding: 40px;
        margin-bottom: 20px;
    }

    #view_02 .view_head .title_info .category {
        margin-bottom: 5px;
        font-size: 14px;
    }

    #view_02 .view_head .title_info .vtitle {
        font-size: 28px;
        line-height: 130%;
    }

    #view_02 .view_body .attatch_list {
        float: none;
        width: 100%;
        margin-right: 0;
    }

    #view_02 .view_body .attatch_list .tit_01 {
        display: none;
    }

    #view_02 .view_body .v_content {
        float: none;
        width: 100%;
        margin-top: 40px;
    }

    #view_02 .view_body .board-view-filelist li a {
        font-size: 16px;
        padding: 15px 30px 15px 55px;
    }

    #view_02 .view_body .board-view-filelist li a::before {
        top: 15px;
    }

    #view_02 .view_body .btn_all_down a {
        font-size: 18px;
        padding: 15px 35px;
    }

    #view_02 .view_body .btn_all_down2 a {
        font-size: 18px;
        padding: 15px 35px;
    }

    #view_02 .view_head .edit_btn {
        position: relative;
        right: auto;
        bottom: auto;
        margin-top: 20px;
        text-align: right;
    }

    #view_02 .view_body .btn_all_down {
        background-size: 15px;
    }

    #view_02 .view_body .btn_all_down2 {
        background-size: 15px;
    }

    #view_02 .view_foot ul li a .subject {
        font-size: 17px;
    }

    /*홍보자료*/
    .info__btn-container {
        display: none;
    }

    .promo__brochure-item {
        display: block; /* 혹은 grid, contents 등 상황에 맞게 */
    }

    /*추진사업*/
    .project-table .col-wide {
        width: 80%;
    }

    .project-table .col-narrow {
        width: 20%;
    }

    /*교육일정안내 스크롤*/
    .training-table-container {
        overflow-x: auto; /* 작은 화면에서는 가로 스크롤을 활성화 */
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    /*비전*/
    .vision-box {
        padding: 30px 20px;
        max-width: 90%;
    }

    .strategy-card {
        max-width: 95%;
    }

    .task-card-horizontal {
        width: 90%;
    }

    /*연혁*/
    .timeline-items {
        flex-direction: column;
        gap: 15px;
    }

    .timeline-item {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: left !important; /* 좌우 정렬 제거 */
    }

    /*메인 유관기관 슬라이드*/
    .sub-org-card {
        flex: 0 0 calc(33.333% - 13.3px);
    }

    .image-text-img {
        max-width: 100%; /* 이미지의 최대 너비 설정 */
        height: auto; /* 비율 유지 */
    }

    /*퀵배너*/
    .quick-banner {
        display: none;
    }
}

@media screen and (max-width: 900px) {
    .sub-org-card {
        flex: 0 0 calc(50% - 10px);
    }

    /* 한 줄 2개 */
}

@media screen and (max-width: 768px) {
    .slide-wrapper {
        position: relative;
    }

    /*메인이미지*/
    .main-visual {
        height: auto !important;
    }

    .bg-video {
        display: none !important;
    }

    .bg-main-slide {
        position: relative !important; /* 배경은 뒤로 */
        z-index: 1 !important;
        height: 700px !important;
    }

    .bg-main-slide img {
        width: 100%;
        height: 100% !important;
        display: none; /* JS로 순차적 표시 */
    }

    .visual-text {
        flex-direction: column !important; /* 세로 배치 */
        top: 120px !important;
        z-index: 6 !important;
    }

    .main-slogan {
        font-size: 22px !important; /* 모바일에 맞게 크기 줄이기 */
        margin-right: 0 !important; /* 가로 여백 제거 */
    }

    .image-text-img {
        max-width: 220px !important; /* 이미지 크기 축소 */
    }

    .overlay {
        z-index: 5 !important;
    }

    .image-text-img {
        max-width: 100%; /* 이미지의 최대 너비 설정 */
        height: auto; /* 비율 유지 */
    }

    .notice-slide {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        margin: 250px auto 0 !important;
        z-index: 10 !important; /* bg-main-slide보다 위 */
    }

    .swiper-button-hyphens {
        display: none !important;
    }

    /*보도자료*/
    .news-single-line {
        padding-top: 5px !important;
        padding-bottom: 10px !important;
        width: 90% !important;
    }

    .news-label {
        margin-left: 15px !important;
        font-size: 20px !important;
    }

    .news-source {
        display: none !important;
    }

    .news-title {
        font-size: 14px !important;
    }

    .news-more,
    .news-date {
        display: none;
    }

    /*게시판&배너*/
    /* 메인 콘텐츠 전체 */
    .main-content {
        flex-direction: column; /* 좌우에서 세로로 쌓기 */
        margin: auto 0; /* 상하좌우 간격 조정 */
        padding-top: 20px !important;
    }

    /* wrapper */
    .content-wrapper {
        flex-direction: column;
        width: 100%;
    }

    /* 왼쪽/오른쪽 섹션 세로 스택 */
    .left-section,
    .right-section {
        flex: 1 1 100%; /* 세로 폭 100% */
        padding: 0 !important; /* 좌우 padding 제거 */
        margin-bottom: 10px !important; /* 섹션 간 간격 */
    }

    /* 게시물 컨텐츠 */
    .content-display {
        width: 100% !important; /* 모바일에 맞게 100% */
        padding: 30px 20px 30px 20px !important;
    }

    .content-list li {
        margin-bottom: 10px !important;
    }

    .main-title {
        font-size: 14px !important; /* 글자 크기 축소 */
    }

    .main-date {
        font-size: 14px !important;
    }

    /* 카테고리 버튼 */
    .category-btn {
        font-size: 14px !important;
        padding: 10px !important;
        margin-right: 3px !important;
    }

    .category-more-btn {
        display: none;
    }

    /* 배너존 */
    .banner-zone {
        padding: 0px !important;
    }

    .banner-zone-wrapper {
        padding: 20px 15px !important;
        justify-content: center !important; /* 가로 가운데 */
    }

    .banner-title {
        font-size: 18px !important;
        margin-bottom: 5px !important;
        margin-top: 10px !important;
    }

    /* 배너 컨테이너 */
    .top-banner-container,
    .bottom-banner-container {
        overflow: hidden;
    }

    .top-banner-container .swiper-slide,
    .bottom-banner-container .swiper-slide {
        width: 250px !important; /* 슬라이드 전체 폭 */
        height: auto !important; /* 비율 유지 */
        display: flex !important; /* flex로 가운데 정렬 */
    }

    .bottom-banner-container .swiper-slide img {
        width: 100%; /* 이미지 폭 100% */
        height: auto;
    }

    /* 컨트롤 버튼 위치 조정 */
    .banner-button-next,
    .banner-button-prev {
        width: 30px;
        height: 30px;
        font-size: 16px;
    }

    /* 배너 버튼 컨테이너 */
    .swiper-buttons-container {
        justify-content: center; /* 버튼 중앙 정렬 */
        gap: 10px;
    }

    /*포토게시판*/
    .gallery-section {
        padding: 50px 0 !important;
    }

    .gallery-header {
        flex-direction: column; /* 상하 스택 */
        align-items: flex-start; /* 왼쪽 정렬 */
        margin-bottom: 20px;
    }

    .gallery-title {
        margin-bottom: 10px;
    }

    .gallery-more-btn {
        float: none; /* 오른쪽 띄우기 해제 */
        display: block;
        margin: 10px 0 0 0; /* 상단 여백 조정 */
        font-size: 14px !important;
        padding: 10px 15px !important;
    }

    /* 포토 갤러리 */
    .photo-gallery {
        padding: 20px !important;
        grid-template-columns: repeat(2, 1fr) !important; /* 2열로 변경 */
        gap: 10px !important; /* 간격 축소 */
    }

    /* 사진 항목 */
    .photo-img {
        width: 100% !important; /* 컨테이너 폭에 맞춤 */
        height: 150px !important; /* 비율 유지 */
    }

    .photo-info {
        padding: 15px !important; /* 패딩 축소 */
    }

    .photo-title {
        font-size: 14px !important;
    }

    .photo-date {
        font-size: 12px !important;
    }

    /*추진사업*/
    .promotion-section {
        padding: 40px 0 !important;
    }

    .promotion-content {
        flex-direction: column; /* 세로 배치 */
        padding: 0 15px; /* 좌우 여백 살짝 줄이기 */
    }

    .pro-left-section,
    .pro-right-section {
        flex: none; /* 비율 초기화 */
        width: 100%; /* 전체 폭 사용 */
        padding-left: 10px !important; /* 오른쪽 여백 제거 */
        margin-bottom: 20px !important; /* 섹션 간 간격 */
    }

    .pro-txt {
        font-size: 12px !important;
    }

    .pro-left-section h2 {
        font-size: 32px !important;
        margin-bottom: 30px !important;
    }

    .pro-left-section p {
        font-size: 16px !important;
        color: #fff;
        margin-bottom: 15px;
    }

    .pro-buttons .pro-button1 {
        padding: 10px 20px !important;
        background-color: #22a9fd;
        color: white;
        font-size: 14px !important;
        margin-right: 10px;
    }

    .pro-buttons .pro-button2 {
        padding: 10px 20px !important;
        background-color: #4a52cc;
        color: white;
        font-size: 14px !important;
    }

    .pro-banner {
        gap: 10px !important;
    }

    .pro-banner-item {
        position: relative !important;
        width: calc(49% - 10px) !important; /* 한 줄에 2개 */
        float: left; /* 좌우로 나열 */
    }

    .pro-banner-link {
        padding: 10px !important;
        background-color: #20548d;
        color: white;
        text-align: left;
        font-size: 14px !important;
        height: 85px !important;
    }

    .pro-banner-link a {
        color: white;
        text-align: left;
    }

    .pro-banner-btn {
        display: none;
    }

    /*즐겨찾기*/
    .bipa-video-banner {
        margin: 0 auto !important;
        height: auto !important;
        padding-bottom: 20px !important;
    }

    .bipa-video-banner img {
        margin: 0 auto;
        width: 100% !important;
        height: 250px !important;
        border-radius: 10px;
        cursor: pointer;
    }

    .bipa-middle-section {
        margin: 0 auto;
        width: 100% !important;
    }

    .bipa-right-section {
        margin: 0 auto;
        width: 100% !important;
    }

    .bipa-title {
        font-size: 32px !important;
    }

    .bipa-tit2 {
        font-size: 32px !important;
    }

    .bipa-menu-items {
        width: 100% !important; /* 콘텐츠 크기에 맞춤 */
        margin: 0 auto;
    }

    .bipa-menu-text {
        font-size: 16px !important;
    }

    .bipa-banner-title {
        font-size: 16px !important;
    }

    .bipa-banner-text {
        font-size: 14px !important;
    }

    .bipa-menu-item {
        width: 100% !important;
        display: flex; /* 가운데 정렬을 위한 flex */
        justify-content: center; /* 가로 중앙 */
        align-items: center; /* 세로 중앙 (선택 사항) */
        text-align: center;
        margin-bottom: 10px !important;
    }

    .bipa-menu-link {
        display: flex;
        flex-direction: column; /* 아이콘 위, 텍스트 아래 */
        align-items: center;
        justify-content: center;
        width: auto; /* 필요 시 auto로 */
        padding: 10px 0 !important;
    }

    .bipa-banner-item {
        width: 100% !important;
        display: flex; /* 가운데 정렬을 위한 flex */
        justify-content: center; /* 가로 중앙 */
        align-items: center; /* 세로 중앙 (선택 사항) */
        text-align: center;
    }

    .bipa-banner-link {
        display: flex;
        flex-direction: column; /* 아이콘 위, 텍스트 아래 */
        align-items: center;
        justify-content: center;
        width: auto; /* 필요 시 auto로 */
        padding: 10px 0 !important;
        max-width: 100% !important;
    }

    .sw {
        display: block !important;
        padding-left: 22px !important;
        background: url(../../images/home/icon_swipe.png) left top 3px no-repeat !important;
        background-size: 18px !important;
        margin: 15px 0 8px !important;
        text-align: left !important;
        font-size: 14px !important;
    }

    .tb_responsive {
        width: 100%;
        overflow-x: scroll;
    }

    #tb_list_01 thead th {
        font-size: 16px;
        padding: 15px 5px;
    }

    #tb_list_01 thead th::after {
        top: 17px;
    }

    #tb_list_01 tbody td {
        font-size: 16px;
        padding: 15px 5px;
    }

    #tb_list_01 tbody td.tt {
        font-size: 17px;
        white-space: normal;
        overflow: auto;
        text-overflow: clip;
    }

    #tb_list_01 span.selection,
    #tb_list_01 span.available {
        font-size: 14px;
        padding: 4px 7px;
    }

    #tb_list_01 span.taken,
    #tb_list_01 span.closed {
        font-size: 14px;
        padding: 4px 7px;
    }

    #view_01 .view_head .title_info {
        padding: 40px 0;
    }

    #view_01 .view_head h2.vtitle {
        font-size: 28px;
    }

    #view_01 .view_body {
        padding: 30px 0;
    }

    #view_01 .attatch_list {
        padding: 25px;
    }

    #view_01 .attatch_list .ilbl {
        display: none;
    }

    #view_01 .attatch_list .board-view-filelist {
        float: none;
        width: 100%;
        padding-left: 0;
    }

    .btn-search-list {
        width: 100%;
        height: 40px;
        text-indent: 0;
        background: #222;
        color: #fff;
        font-weight: 600;
        font-size: 14px;
    }

    .btn-search-list:active,
    .btn-search-list:hover,
    .btn-search-list:focus {
        color: #fff;
        outline: none;
    }

    #search_box .search_box_wrap {
        display: block;
        width: 100%;
        height: auto;
    }

    #search_box .more_search {
        display: block;
        width: 100%;
    }

    #search_box .search_basic {
        background: none;
        padding: 0;
    }

    #search_box .more_search {
        text-align: right;
    }

    #search_box .btn_detail_search2 {
        background: #fff;
        color: #0d2b58;
        height: 40px;
        font-size: 14px;
    }

    #search_box .btn_detail_search2:hover {
        background: none;
        color: #0d2b58;
    }

    .search-cont {
        width: 100%;
        border: 1px solid #f5f6f8;
        margin-bottom: 5px;
    }

    .btn-search-list3 {
        width: 100%;
        height: 40px;
        text-indent: 0;
        background: #0d2b58;
        color: #fff;
        font-weight: 600;
        font-size: 16px;
    }

    .btn-search-list2:hover {
        color: #fff;
    }

    .dp_ib .form-input-2 {
        min-width: auto;
    }

    .form-input-1 {
        padding: 0 15px;
        height: 40px;
        font-size: 14px;
    }

    .form-input-2 {
        font-size: 14px;
        line-height: 14px;
        height: 40px;
        padding: 10px;
    }

    .form-input-3 {
        padding: 0 15px;
        height: 40px;
        font-size: 14px;
        padding: 10px;
    }

    .form-select-1 {
        padding: 10px 24px 10px 14px;
        font-size: 14px;
        line-height: 14px;
        height: 40px;
    }

    .form-select-2 {
        font-size: 14px;
        height: 40px;
    }

    .form-select-3 {
        font-size: 14px;
        height: 40px;
    }

    .list_head .search-box {
        border: 0;
        float: none;
    }

    #search_box {
        margin-bottom: 0px;
    }

    #top_layout .top_wrap {
        height: 74px;
    }

    #top_layout .top_wrap #logo {
        display: inline-block;
        width: auto;
        top: 27px;
    }

    #top_layout .top_wrap #logo > .f-logo {
        display: inline-block;
        width: 240px;
    }

    #top_layout .top_wrap .utile_wrap {
        top: 27px;
    }

    .lnb_wrap {
        padding: 0;
        margin-top: 75px;
    }

    .pd-cont {
        padding: 0 2%;
    }

    .pd-cont-3 {
        padding: 0 4%;
    }

    #sub_top .sub_title {
        font-size: 24px;
        margin-bottom: 40px;
        margin-left: 15px;
    }

    /* 메뉴 */
    #subCont {
        margin: 0;
    }

    #subCont .inner {
        flex-wrap: wrap;
        gap: 10px;
        width: auto;
        padding: 0 15px;
    }

    #subCont .page-left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    #subCont .left-top {
        border-radius: 10px;
    }

    #subCont .page-name {
        padding: 20px 25px;
        font-size: 20px;
    }

    #subCont .page-name:after {
        display: none;
    }

    /* 모바일에서는 메뉴를 가로 스크롤 형태로 변경 */
    #subCont .m-snb ul.left-menu {
        display: flex;
        overflow-x: auto;
        padding: 10px;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    #subCont .m-snb ul.left-menu > li {
        margin: 0 5px;
        flex-shrink: 0;
    }

    #subCont .m-snb ul.left-menu > li a {
        padding: 12px 15px;
        font-size: 15px;
    }

    /* 선택된 메뉴 스타일 조정 */
    #subCont .m-snb ul.left-menu > li.on > a {
        padding-left: 15px;
        background: #e8f3ff;
        background-image: none;
        /* 아이콘 제거 */
    }

    #subCont .m-snb ul.left-menu > li:not(.on) a:hover {
        background: #f5f9ff;
        color: #0068b7;
        /* 로고 색상으로 변경 */
    }

    #subCont .m-snb ul.left-menu > li.on > a:hover {
        background: #e8f3ff;
        background-image: none;
        /* 아이콘 제거 */
        color: #0068b7;
    }

    .lnb_wrap div.lnb_item:first-child {
        width: 40px;
    }

    .lnb_wrap .home {
        width: 17px;
        margin-left: 15px;
        text-align: center;
        background-image: url("../../images/home/home.svg");
        /* 아이콘 이미지 경로 설정 */
        background-size: contain;
        /* 이미지 크기 맞추기 */
        background-repeat: no-repeat;
        /* 이미지 반복 방지 */
        display: inline-block;
        /* 텍스트를 표시할 필요 없으므로 inline-block으로 변경 */
        height: 17px;
        /* 이미지 높이 설정 */
    }

    .lnb_wrap div.lnb_item {
        width: calc((100% - 40px) / 2);
    }

    .lnb_wrap .lnb_item .dropdown .dropdown-toggle {
        min-width: auto;
        padding: 0 10px;
        font-size: 14px;
    }

    .lnb_wrap .lnb_item .dropdown .dropdown-toggle::after {
        top: 0;
        right: 15px;
    }

    #footer .foot-head > ul {
        position: relative;
        padding-left: 0px;
    }

    #footer .foot-head > ul > li:last-child {
        float: none;
        width: 100%;
        position: absolute;
        top: 0;
        margin-top: 0px;
        padding: 0;
    }

    #footer .foot-head > ul > li > a {
        font-size: 14px;
        padding: 15px 0 15px 20px;
        opacity: 0.6;
    }

    #footer .foot-head > ul > li:last-child a {
        opacity: 1;
    }

    #footer .foot-head > ul > li {
        position: relative;
        margin-top: 50px;
        padding-left: 0;
    }

    #footer .foot-head .quick_menu.on > .quick_list li a {
        padding: 15px 20px;
    }

    #footer .foot-body .foot-info li {
        font-size: 14px;
        padding-right: 10px !important;
    }

    #footer .foot-body .logo_wrap {
        float: left;
        margin-right: 30px;
    }

    #footer .foot-body .social-icons {
        float: left !important;
        position: absolute !important;
        top: 155px;
        margin-left: 280px;
    }

    #footer .foot-body .social-icons a {
        margin-left: 10px;
    }

    #footer .foot-body .social-icons img {
        width: 30px;
        height: 30px;
    }

    #footer .foot-head {
        position: absolute;
        left: 0;
        width: 100%;
    }

    #footer .foot-body {
        padding: 150px 0 55px 0;
    }

    #footer .foot-body .logo_wrap {
        float: none;
        width: 100%;
        margin-bottom: 20px;
    }

    #footer .foot-body .foot-info {
        float: none;
        width: 100%;
    }

    #footer .foot-body .copyright {
        margin-top: 15px;
        font-size: 14px;
        opacity: 0.8;
    }

    #footer .foot-body .logo_wrap > .f-logo {
        display: inline-block !important;
        width: 254px !important;
    }

    /*페이징*/
    #paging_wrap .paging {
        margin-top: 25px;
        text-align: left;
        font-size: 0;
    }

    #paging_wrap .paging a {
        display: inline-block;
        width: 18px;
        border: 1px solid transparent;
        font-size: 12px;
        line-height: 18px;
        text-align: center;
        vertical-align: middle;
        cursor: pointer;
    }

    #paging_wrap .paging a + a {
        margin-left: 4px;
    }

    #paging_wrap .paging a.active {
        background: #222;
        width: 18px;
        height: 18px;
        color: #fff;
        font-weight: bold;
    }

    #paging_wrap .paging .nav {
        width: 18px;
        height: 18px;
        background: #fff;
        line-height: 18px;
    }

    #paging_wrap .paging .prev_10 {
        background: url(../../images/home/pg_arr_10_prev.png) center center no-repeat;
        background-size: 14px;
    }

    #paging_wrap .paging .next_10 {
        background: url(../../images/home/pg_arr_10_next.png) center center no-repeat;
        background-size: 13px;
    }

    #paging_wrap .paging .prev {
        background: url(../../images/home/pg_arr_prev.png) center center no-repeat;
        background-size: 8px;
    }

    #paging_wrap .paging .next {
        background: url(../../images/home/pg_arr_next.png) center center no-repeat;
        background-size: 7px;
    }

    /*게시판*/
    #tb_list_01 tbody td.tt {
        font-size: 16px;
        max-width: auto;
    }

    #tb_list_01 tbody td {
        font-size: 14px;
    }

    #tb_list_01 thead th {
        font-size: 14px;
    }

    #view_01 .view_foot {
        display: none;
    }

    #view_01 .view_head .title_info {
        padding: 30px 0;
    }

    #view_01 .view_head h2.vtitle {
        font-size: 20px;
        margin-bottom: 10px;
    }

    #view_01 .view_head .vtitle-info li {
        font-size: 14px;
    }

    #view_01 .view_body {
        padding: 20px 0;
        font-size: 16px;
    }

    .form-box {
        padding: 25px;
        border: 5px solid #f5f6f8;
        margin-bottom: 25px;
        margin-top: 25px;
        overflow-x: scroll;
    }

    .form-box::before {
        content: none;
    }

    .form-box .m_txt {
        font-size: 18px;
    }

    .form-box .s_txt {
        font-size: 14px;
    }

    #view_01 .view_foot {
        display: none;
    }

    #view_01 .attatch_list .board-view-filelist li a {
        font-size: 14px;
    }

    #view_01 .view_head span.due {
        font-size: 14px;
        padding: 4px 7px;
    }

    #view_01 .view_head span.closed {
        font-size: 14px;
        padding: 4px 7px;
    }

    #view_01 .view_head .title_info {
        padding: 40px 0;
    }

    #view_01 .view_head h2.vtitle {
        font-size: 28px;
    }

    #view_01 .view_body {
        padding: 30px 0;
    }

    #view_01 .attatch_list {
        padding: 25px;
    }

    #view_01 .attatch_list .ilbl {
        display: none;
    }

    #view_01 .attatch_list .board-view-filelist {
        float: none;
        width: 100%;
        padding-left: 0;
    }

    .btn-list {
        padding: 15px 60px 15px 90px;
        font-size: 16px;
    }

    #view_02 .view_head {
        border: 0;
        padding: 30px 0;
        border-top: 2px solid #222;
        border-bottom: 1px solid #ddd;
    }

    #view_02 .view_head .title_info .vtitle {
        font-size: 20px;
        margin-bottom: 15px;
    }

    #view_02 .view_head .vtitle-info li {
        font-size: 14px;
        padding: 0 8px;
        border-right: 0;
    }

    .tit_01 {
        font-size: 20px;
        line-height: 20px;
        padding-left: 10px;
        margin-bottom: 20px;
    }

    .tit_01::before {
        width: 4px;
        height: 20px;
    }

    .tit_03 {
        font-size: 20px;
        line-height: 20px;
        padding-left: 10px;
        margin-bottom: 20px;
    }

    .tit_03::before {
        width: 4px;
        height: 20px;
    }

    #view_02 .view_foot {
        display: none;
    }

    #view_02 .view_body .board-view-filelist li a {
        padding: 15px 15px 15px 45px;
        font-size: 14px;
    }

    #view_02 .view_body .board-view-filelist li a::before {
        left: 20px;
    }

    #view_02 .view_body .v_content .cont {
        font-size: 16px;
    }

    .lnb_wrap .home i {
        font-size: 14px;
    }

    #view_02 .view_body .btn_all_down a {
        width: 100%;
        padding: 16px 30px;
        font-size: 16px;
    }

    #view_02 .view_head span.selection {
        font-size: 14px;
        padding: 4px 7px;
    }

    #view_02 .view_head span.taken {
        font-size: 14px;
        padding: 4px 7px;
    }

    #view_02 .view_body .v_content_2 {
        overflow-x: scroll;
    }

    /*뉴스레터*/
    #newsletter .suggest-box {
        flex-direction: column;
        align-items: flex-start;
        height: auto;
        padding: 20px;
    }

    #newsletter .suggest-box .newsletter-img {
        width: 100px;
        margin: 0 auto 20px;
    }

    #newsletter .txt-box {
        padding: 20px;
        border-radius: 20px;
        position: static;
        width: 100%;
    }

    #newsletter .txt-box .tt {
        font-size: 18px;
    }

    #newsletter .txt-box .dt {
        font-size: 14px;
    }

    #newsletter .txt-box .btn-area {
        position: static;
        transform: none;
        margin-top: 20px;
        text-align: center;
    }

    .btn-register {
        width: 100%;
        text-align: center;
        padding: 14px 20px;
        background-position: right 10px center;
    }

    #list_01 {
        border-bottom: 0;
    }

    #list_01 .list_wrap {
        width: 100%;
        padding: 10px 0;
        margin-left: 0;
        margin-right: 0;
    }

    #list_01 .list_item {
        float: none;
        width: 100%;
        margin: 0 0 10px 0;
    }

    #list_01 .list_item2 {
        float: none;
        width: 100%;
        margin: 0 0 10px 0;
    }

    #list_01 .list_item .title {
        font-size: 18px;
        margin-bottom: 25px;
        white-space: normal;
        overflow: auto;
        text-overflow: clip;
        margin-bottom: 10px;
    }

    #list_01 .list_item2 .title {
        font-size: 20px;
        margin-bottom: 30px;
        white-space: normal;
        overflow: auto;
        text-overflow: clip;
        margin-bottom: 10px;
    }

    #list_01 .list_item a {
        padding: 20px 0;
        border: 0;
        border-bottom: 1px solid #ddd;
    }

    #list_01 .list_item2 a {
        padding: 20px 0;
        border: 0;
        border-bottom: 1px solid #ddd;
    }

    #list_01 .list_item .category {
        font-size: 14px;
        margin-bottom: 4px;
    }

    #list_01 .list_item2 .category {
        font-size: 14px;
        margin-bottom: 4px;
    }

    #list_01 .list_item ul.info li {
        font-size: 14px;
        line-height: 14px;
    }

    #list_01 .list_item2 ul.info li {
        font-size: 14px;
        line-height: 14px;
    }

    .list_body .btn-area {
        margin-top: 30px;
    }

    .form-select-2 {
        font-size: 14px;
        height: 40px;
    }

    .form-input-1 {
        padding: 0 15px;
        height: 40px;
        font-size: 14px;
    }

    /*홍보자료*/
    .pstit_icon,
    .promo__button img {
        display: none;
    }

    .promo__buttons {
        display: flex;
        gap: 7px;
    }

    .promo__button a {
        background-color: #0068b7;
        color: white;
        text-align: center;
        margin: 10px;
        font-size: 12px;
        border-radius: 8px;
        cursor: pointer;
    }

    .promo__btn {
        background-image: none;
        /* 배경 이미지 제거 */
    }

    /* 비디오, 이미지 전체 폭 */
    .promo__video-wrapper video {
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    /* 브로슈어/CI/소개자료 아이템 세로 정렬 */
    .promo__brochure-item,
    .info-item,
    .ci-item {
        flex: 1 1 100%;
        display: flex;
        align-items: center;
        /* 가운데 정렬 */
        text-align: center;
    }

    /* 버튼 컨테이너 세로 정렬 유지 */
    .promo__btn-container,
    .info__btn-container,
    .ci__btn-container {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    /* 버튼 크기 조정 */
    .promo__btn,
    .info__btn-container a,
    .ci__btn-container a {
        font-size: 0.8rem;
        padding: 0.5rem 1rem;
        text-align: center;
    }

    /* 제목/설명글 중앙 정렬 */
    .ci__tit,
    .promo__section-title,
    .promo__brochure-item h4,
    .info__btn-container h4 {
        text-align: center;
    }

    .ci__desc {
        text-align: left;
    }

    /* 영상 트랜스크립트 */
    .transcript {
        max-height: 300px;
        /* 모바일에서 조금 줄임 */
    }

    .info__btn-container {
        display: none;
    }

    /*추진사업*/
    .project-card {
        background: #fff;
        border: 1px solid #e6eaf0;
        border-radius: 10px;
        padding: 5px;
        margin-bottom: 20px;
    }

    .project-title {
        margin: 10px;
        font-size: 1.2rem;
        font-weight: 600;
        color: #005bac;
    }

    .project-desc {
        margin: 0 0 12px;
        line-height: 1.6;
        font-size: 0.95rem;
        color: #444;
    }

    .project-info {
        font-size: 0.9rem;
        color: #555;
        border-top: 1px dashed #ccc;
        padding-top: 8px;
    }

    .pro-gallery {
        display: none;
        /* 모바일에서 사진 숨김 */
    }

    .project-table .col-wide {
        width: 68%;
    }

    .project-table .col-narrow {
        width: 32%;
    }

    /*입주시설안내*/
    .facility-map-section {
        height: 300px; /* 작은 화면에서는 높이 조정 */
    }

    .photo-carousel {
        max-width: 100%;
    }

    .facility-tab {
        flex: 2 0 30%;
        font-size: 14px;
    }

    .facility-table th,
    td {
        font-size: 12px;
        padding: 8px;
    }

    .training-table-container {
        overflow-x: auto; /* 작은 화면에서는 가로 스크롤을 활성화 */
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    .training-table th,
    .training-table td {
        padding: 10px 15px;
        font-size: 12px;
    }

    /*교육일정*/
    .training-table {
        width: 390px;
    }

    .top-page-header {
        flex-direction: column; /* 화면 크기가 작으면 세로로 쌓이게 함 */
        padding: 30px 20px; /* 패딩 줄이기 */
        background-position: center; /* 배경 이미지 위치 중앙으로 변경 */
    }

    .top-page-header .title {
        width: 100%; /* 작은 화면에서는 타이틀을 전체 너비로 */
        font-size: 1.5rem; /* 작은 화면에서 폰트 크기 줄이기 */
        text-align: center; /* 타이틀 가운데 정렬 */
        margin-bottom: 10px;
    }

    .description-container {
        width: 100%; /* 설명글도 전체 너비로 */
        text-align: center; /* 설명글 가운데 정렬 */
    }

    .description-container .description {
        font-size: 0.95rem; /* 설명글 폰트 크기 조정 */
    }

    /*예약안내*/
    .reservation-category h2 {
        font-size: 1rem;
        text-align: center;
    }

    .reservation-table th {
        font-size: 0.85rem;
        padding: 6px;
    }

    .reservation-table td {
        font-size: 0.8rem;
        padding: 5px;
    }

    .reservation-button {
        font-size: 0.8rem;
        padding: 4px 6px;
    }

    .rese-logo {
        display: none;
    }

    .rese-tit {
        width: 40%;
    }

    .reservation-category {
        padding: 15px;
    }

    /*인사말*/
    .greeting-header {
        flex-direction: column;
        text-align: center;
        height: auto;
        padding: 10px;
    }

    .greeting-header .greeting-text h1 {
        max-width: 100%;
        font-size: 20px;
        align-items: center;
        margin-bottom: 5px;
        margin-top: 5px;
    }

    .greeting-header .greeting-text p {
        max-width: 100%;
        font-size: 20px;
        align-items: center;
    }

    .greeting-header .director-photo {
        display: none;
    }

    .initial-text {
        padding: 25px;
    }

    .greeting-message .message-content {
        flex-direction: column;
        text-align: center;
    }

    .greeting-message .message-content .photo {
        margin-right: 0;
    }

    .greeting-message .message-content .photo img {
        width: 80%;
        margin: 0 auto;
    }

    .greeting-message .message-content .text p {
        margin-bottom: 20px;
        text-align: left;
    }

    /*설립목적/연혁*/
    .purpose {
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 15px;
        padding-bottom: 15px;
        margin-bottom: 20px;
    }

    .timeline {
        padding: 20px;
    }

    /*연혁*/
    .timeline-items {
        flex-direction: column;
        gap: 15px;
    }

    .timeline-item {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: left !important; /* 좌우 정렬 제거 */
    }

    /*비전*/
    .strategy-card {
        flex-direction: column;
        text-align: center;
    }

    .highlight-text,
    .str-description {
        width: 100%;
    }

    .task-card-horizontal {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        width: 95%;
    }

    .task-card-horizontal .highlight,
    .task-card-horizontal .task-details {
        width: 100%;
    }

    .values-container {
        gap: 15px;
    }

    .value-card {
        width: 100px;
        height: 100px;
        font-size: 14px;
    }

    /*ESG*/
    .vision-sub-tab-btn {
        flex: 1 1 calc(50% - 6px);
        /* 두 개씩 */
    }

    .vision-content-block .block-img img {
        width: 100%;
        height: auto;
        /* 이미지가 컨테이너를 넘지 않도록 */
    }

    /*진흥원에 바란다*/
    .opinion-guide {
        padding: 30px 20px;
    }

    .opinion-wrap {
        padding: 10px;
    }

    .step-flow {
        flex-direction: column;
        gap: 10px;
    }

    .step-arrow {
        display: none;
    }

    .step-item {
        width: 80%;
    }

    /*기업애로상담*/
    .form-row.double {
        flex-direction: column;
    }

    .form-row.triple .form-group,
    .form-row.double .form-group {
        flex: 1 1 100%;
    }

    /*오시는길*/
    .map_container {
        display: block;
    }

    .map_left {
        width: 100%;
    }

    .bs_map {
        display: none; /* 지도 숨김 */
    }

    .map_right {
        border-left: 1px solid #fff;
        padding-left: 0px;
    }

    .institution_detail h5 {
        font-size: 1.2em;
        font-weight: bold;
        margin-bottom: 10px;
        margin-top: 20px;
    }

    /*조직도*/
    /* 3열: 하위부서 숨김 */
    .mobile-3only .org-box4 {
        display: none;
    }

    /* 부모 컨테이너 */
    .sub-org-column {
        display: flex;
        flex-wrap: wrap; /* 줄 바꿈 허용 */
        justify-content: center;
    }

    /* 하위부서 박스 */
    .sub-org-club .org-box3 {
        flex: 1 1 calc(25% - 5px); /* 한 줄에 3개 */
        min-width: 75px; /* 최소폭 확보 */
        text-align: center;
        font-size: 14px;
        padding: 10px;
    }

    .org-search {
        width: 90%; /* 고정 너비 */
    }

    .org-search input {
        width: 150px;
    }

    .org-search button {
        font-size: 12px;
        width: 60px;
    }

    /*포토게시판*/
    .gallery-title {
        font-size: 32px !important;
    }

    .gtit2 {
        font-size: 32px !important;
    }

    /*메인유관기관슬라이드*/
    .sub-org-icon {
        display: none;
    }

    /* 헤더를 두 줄 구성으로 */
    .sub-org-header {
        flex-direction: column; /* 세로 정렬 */
        align-items: flex-start; /* 왼쪽 정렬 */
        gap: 10px;
        margin-bottom: 20px;
    }

    /* 타이틀 크기 조정 */
    .sub-org-title {
        font-size: 18px;
    }

    /* 컨트롤 버튼을 별도 줄에 표시 */
    .sub-org-controls {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        gap: 8px;
    }

    .sub-org-card {
        flex: 0 0 calc(100% - 10px) !important;
    }
}

/*뉴스레터*/
@media (max-width: 600px) {
    .newsletter-filter {
        display: flex; /* flex-direction 적용을 위해 반드시 필요 */
        flex-direction: column; /* 세로 배치 */
        align-items: stretch; /* 전체 폭 맞춤 */
        gap: 15px; /* 요소 간 간격 (선택사항) */
    }

    .select-box {
        width: 100%;
        margin-bottom: 15px; /* 여백 조정 */
    }

    .newsletter-preview {
        padding: 15px;
    }

    /*개인정보처리방침*/
    .policy-content-wrapper {
        padding: 25px 20px;
    }

    .policy-title {
        font-size: 26px;
    }

    .policy-section-title {
        font-size: 18px;
    }

    .policy-paragraph,
    .policy-list li,
    .policy-intro {
        font-size: 14px;
        line-height: 1.6;
    }

    .download-btn {
        font-size: 14px;
        padding: 10px 16px;
    }
}

/* 모바일 환경에서 추가 조정 */
@media (max-width: 480px) {
    /*메인포토게시판*/
    .photo-gallery {
        grid-template-columns: 1fr; /* 1열로 변경 */
        gap: 10px;
    }

    #subCont .page-name {
        font-size: 18px;
        padding: 20px 25px;
    }

    .pd-cont {
        padding: 0 2%;
    }

    .search-box {
        border: 0;
        float: none;
    }

    .form-select-2 {
        font-size: 14px;
        height: 40px;
    }

    .pd-cont-3 {
        padding: 75px 4%;
        min-width: auto;
    }

    #subCont .m-snb ul.left-menu > li a {
        padding: 10px 12px;
        font-size: 13px;
    }

    #footer .foot-body .social-icons {
        float: left;
        position: absolute;
        top: 155px;
        margin-left: 170px;
    }

    #footer .foot-body .social-icons a {
        margin-left: 10px;
    }

    #footer .foot-body .social-icons img {
        width: 24px;
        height: 24px;
    }

    .btn-search-list {
        width: 100%;
        height: 40px;
        text-indent: 0;
        background: #222;
        color: #fff;
        font-weight: 600;
        font-size: 14px;
    }

    .btn-search-list:active,
    .btn-search-list:hover,
    .btn-search-list:focus {
        color: #fff;
        outline: none;
    }

    /*교육일정*/
    .top-page-header .title {
        font-size: 1.3rem; /* 더욱 작은 화면에서는 타이틀 크기 줄이기 */
    }

    .description-container .description {
        font-size: 0.9rem; /* 설명글 폰트 크기 더 줄이기 */
    }

    /*비전*/
    .section-label {
        font-size: 18px;
    }

    .vision-box .line1 {
        font-size: 18px;
    }

    .vision-box .line2 {
        font-size: 15px;
    }

    .strategy-summary {
        font-size: 18px;
    }

    .highlight-text {
        font-size: 16px;
    }

    .str-description {
        font-size: 14px;
        padding: 15px;
    }

    .task-card-horizontal {
        padding: 15px;
    }

    .task-card-horizontal .highlight {
        font-size: 16px;
    }

    .task-card-horizontal .task-details {
        font-size: 14px;
    }

    .core-values .main {
        width: auto;
        font-size: 16px;
    }

    .value-card {
        width: 85px;
        height: 85px;
        font-size: 13px;
    }

    /*ESG*/
    .vision-sub-tab-btn {
        flex: 1 1 100%;
    }

    .vision-content-block .block-img img {
        width: 100%;
        height: auto;
        /* 이미지가 컨테이너를 넘지 않도록 */
    }

    /*뉴스레터*/
    .newsletter-filter {
        flex-direction: column; /* 유지 */
        gap: 10px; /* 간격 더 줄이기 */
    }

    .select-box {
        position: relative !important;
        display: block !important;
    }

    .select-box select {
        display: block !important;
        width: 100% !important;
        padding: 10px 40px 10px 12px !important;
        height: auto !important;
    }

    .select-box::after {
        content: "▼";
        position: absolute;
        right: 12px;
        top: 50%;
        transform: translateY(-50%);
        color: #007fc8;
        font-size: 16px;
        pointer-events: none;
        z-index: 10;
    }

    .list_head .search-box {
        width: 330px !important;
    }

    .tb_responsive {
        width: 330px !important;
        overflow-x: scroll !important;
    }

    .facility-tab {
        font-size: 12px !important;
    }

    .facility-tab-content {
        padding: 0px !important;
    }

    .photo-carousel {
        width: 100% !important;
    }

    .promo__section {
        padding: 0;
        margin: 1.5rem 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        border-radius: 0;
        box-shadow: none;
    }

    .promo__brochure-item {
        padding-left: 0px !important;
        gap: 1rem;
    }

    .promo__button {
        font-size: 12px !important;
    }

    section.timeline {
        padding: 15px;
        border-radius: 0;
        box-shadow: none;
    }

    .vision-tab-btn {
        padding: 6px 10px;
    }

    .vision-content-block {
        margin-top: 0px;
        background-color: #fff;
        padding: 0;
        border-radius: 0;
        border: 0;
    }

    .vision-tab-content {
        padding: 20px;
    }

    .gu-mobile .gu li a {
        font-size: 12px;
    }
}

/*해상도별 미디어쿼리 기반 max-width 설정*/
/* 1600px 이상 - 초고해상도 */

@media (min-width: 1600px) {
    .sub-container {
        max-width: 1350px;
        /* 1600 - 250 */
        margin-left: 0;
    }
}

@media (min-width: 1460px) and (max-width: 1599px) {
    .sub-container {
        max-width: 1100px;
        /* 1460 - 160 = 여백 확보 */
        margin-left: 0;
    }
}

@media (min-width: 1280px) and (max-width: 1359px) {
    .sub-container {
        max-width: 1000px;
    }
}

@media (min-width: 1200px) and (max-width: 1459px) {
    .sub-container {
        max-width: 920px;
        margin-left: 0;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .sub-container {
        max-width: 100%;
        margin: auto;
    }
}

/* 스마트폰 */
@media (max-width: 767px) {
    .sub-container {
        max-width: 100%;
        padding: 0 16px;
        margin: auto;
    }
}

/* 480px 이상 ~ 767px 이하 (일반 스마트폰) */
@media (min-width: 480px) and (max-width: 767px) {
    .sub-container {
        max-width: 470px;
        padding: 0 16px;
        margin: auto;
    }
}

/* 480px 이하 (작은 스마트폰) */
@media (max-width: 479px) {
    .sub-container {
        max-width: 100%;
        padding: 0;
        margin: auto;
    }
}

@media (min-width: 2560px) {
    .bg-video {
        min-width: 2560px;
    }
}
@media (min-width: 3840px) {
    .bg-video {
        min-width: 3840px;
    }
}