@media (max-width:1480px) {
    #page-container .subpage__body {
        width: calc(100% - 25.1rem - 10rem);
    }

    .list-type-bluetop .box {
        gap:1.0rem;
        padding:4.0rem 2.0rem;
    }
    .list-type .item {
        flex:0 1 calc((100% - 48px)/2);
    }
    .list-type .more {
        width: 11.0rem;
    }
}

@media (max-width:1280px) {
    #page-container .subpage__body {
        width: calc(100% - 25.1rem - 8rem);
    }

    /* 테이블 폰트 약간 다운스케일 */
    .table-wrap > table { font-size: 1.55rem; }
    .tableB th strong { font-size: 1.7rem; }
    .tableB th p { font-size: 1.5rem; }

    .list-type .more {
        width: 10.0rem;
    }
}
@media (max-width:1080px) {
    #page-container .subpage__body {
        width: calc(100% - 25.1rem - 4rem);
    }
}

@media (max-width:1024px) {
    #page-container .subpage__body {
        width: 100%;
    }
    #page-container.cont-wrap {
        flex-direction: column;
        gap: calc(var(--mb-vw) * 60);
        padding-top: calc(var(--mb-vw) * 57);
    }
    #page-container .side-menu { width: 100%; }
    .side-menu .side-menu__head,
    .side-menu .side-menu__item .side-menu__link,
    .side-menu .side-menu__item .side-menu__toggle,
    .side-menu .side-menu__item .d4-list,
    .side-menu .side-menu__item .side-menu__sublist.d4-list {
        position: absolute; left:-2000%; top:-2000%; width: 0px; height: 0px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
        visibility: hidden; opacity: 0; overflow: hidden;
    }
    .side-menu .side-menu__list { gap: 0; }
    .side-menu .side-menu__item { gap: 0; border: none; }
    .side-menu .side-menu__item.is-active .side-menu__sublist {
        display: flex; align-items: center; justify-content: flex-start;
        flex-wrap: wrap; gap: calc(var(--mb-vw) * 10);
    }
    .side-menu .side-menu__item .sub-item {
        flex: 1 1 calc(50% - (var(--mb-vw) * 5));
        max-width: calc(50% - (var(--mb-vw) * 5));
    }
    .side-menu .side-menu__item .sub-item a.side-menu__sublink {
        display: flex; align-items: center; justify-content: center;
        padding: calc(var(--mb-vw) * 8) calc(var(--mb-vw) * 8);
        height: calc(var(--mb-vw) * 50);
        font-size: calc(var(--mb-vw) * 14);
        font-weight: 500;
        border-radius: calc(var(--mb-vw) * 6);
        background-color: #fff; border: 1px solid #d9d9d9;
    }
    .side-menu .side-menu__item .sub-item a:hover,
    .side-menu .side-menu__item .sub-item a.is-active {
        background: var(--color-blue-purple); color: #fff;
    }

    #page-container .subpage__body { width: 100%; }
    .subpage__body header .title { font-size: calc(var(--mb-vw) * 24); }
    .page-content .img-wrap { margin: 0 auto calc(var(--mb-vw) * 60); }
    .page-content .title{ font-size:calc(var(--mb-vw) * 20); margin-bottom:calc(var(--mb-vw) * 12); }
    .page-content .title:not(:first-child){ margin-top:calc(var(--mb-vw) * 28); }
    .page-content .sub-title{ font-size:calc(var(--mb-vw) * 18); margin:calc(var(--mb-vw) * 24) 0 calc(var(--mb-vw) * 10); }
    .page-content .desc{ font-size:calc(var(--mb-vw) * 16); }
    .page-content .desc + .desc{ margin-top:calc(var(--mb-vw) * 10); }

    .page-content .dot-list{ margin:calc(var(--mb-vw) * 10) 0 calc(var(--mb-vw) * 16); }
    .page-content .dot-list > li{
        margin:calc(var(--mb-vw) * 8) 0; padding-left:calc(var(--mb-vw) * 22);
        font-size:calc(var(--mb-vw) * 16);
    }
    .page-content .dot-list > li + li{ margin-top:calc(var(--mb-vw) * 10); }
    .page-content .dot-list > li::before{
        left:calc(var(--mb-vw) * 8); top:calc(var(--mb-vw) * 10); width:calc(var(--mb-vw) * 6); height:calc(var(--mb-vw) * 6); transform:translateY(0);
    }

    .page-content .blist{ margin:calc(var(--mb-vw) * 10) 0 calc(var(--mb-vw) * 16); }
    .page-content .blist li{
        margin:calc(var(--mb-vw) * 8) 0; padding-left:calc(var(--mb-vw) * 18); font-size:calc(var(--mb-vw) * 16);
    }
    .page-content .blist li + li{ margin-top:calc(var(--mb-vw) * 10); }

    .page-content .ref-note{
        font-size:calc(var(--mb-vw) * 14);
        padding:calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 16);
        margin-top:calc(var(--mb-vw) * 16);
    }
    .page-content .ref-note + .ref-note{ margin-top:calc(var(--mb-vw) * 10); }
    .page-content .note-weak{
        font-size:calc(var(--mb-vw) * 14);
        padding:calc(var(--mb-vw) * 10) calc(var(--mb-vw) * 14);
    }
    .page-content .lead-def{ font-size: calc(var(--mb-vw) * 18); }
    .page-content .note-aux{ font-size:calc(var(--mb-vw) * 16); }

    .page-content .cta-link{ padding:calc(var(--mb-vw)*12) calc(var(--mb-vw)*14); font-size:calc(var(--mb-vw)*14);}
    .page-content .cta-anno{ font-size:calc(var(--mb-vw)*14); }
    .page-content .modal__box{ margin:8vh auto 0; width:94vw; }

    .page-content .proc-steps{ flex-direction:column; gap:calc(var(--mb-vw) * 12); }
    .page-content .proc-steps > li:not(:last-child)::after{ display:none; }

    .page-content .step-head{
        padding:calc(var(--mb-vw) * 10) calc(var(--mb-vw) * 14);
    }
    .page-content .step-num{ font-size:calc(var(--mb-vw) * 18); }
    .page-content .step-title{ font-size:calc(var(--mb-vw) * 17); }

    .page-content .step-desc{
        padding:calc(var(--mb-vw) * 16);
        font-size:calc(var(--mb-vw) * 16);
    }

    .page-content .flow-head,
    .page-content .flow-row{
        grid-template-columns:12rem 1fr 1fr;
        min-width:104rem; /* 모바일은 좌우 스크롤 */
        column-gap:calc(var(--mb-vw) * 10);
    }

    .page-content .flow-head{ margin-bottom:calc(var(--mb-vw) * 14); }
    .page-content .flow-head > div{
        padding:calc(var(--mb-vw) * 12);
        font-size:calc(var(--mb-vw) * 15);
        border-radius:calc(var(--mb-vw) * 6);
    }

    .page-content .flow-row + .flow-row{ margin-top:calc(var(--mb-vw) * 14); }

    .page-content .flow-row > .cell{
        padding:calc(var(--mb-vw) * 12);
        font-size:calc(var(--mb-vw) * 15);
        border-radius:calc(var(--mb-vw) * 6);
    }

    .page-content .flow-row > .cell--step{
        font-size:calc(var(--mb-vw) * 16);
    }

    .page-content .flow-row + .flow-row .cell--step::before{
        top:calc(var(--mb-vw) * -9);
        border-left:calc(var(--mb-vw) * 6) solid transparent;
        border-right:calc(var(--mb-vw) * 6) solid transparent;
        border-top:calc(var(--mb-vw) * 8) solid var(--color-border);
    }

    .page-content .flow-row .blist li{ margin:calc(var(--mb-vw) * 6) 0; }
    .page-content .flow-row .blist li ul{ margin:calc(var(--mb-vw) * 6) 0 0; }

    .sub-content-title {
        padding: calc(var(--mb-vw) * 84) 0;
    }
    .sub-title__bg img {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        max-width: unset;
        width: auto;
        height: 100%;
    }
    .sub-content-title .cont-wrap { font-size: calc(var(--mb-vw) * 32); }
    .sub-content-title .cont-wrap .title { font-size: calc(var(--mb-vw) * 32); }

    /* 타이포 다운스케일 */
    .page-content .title { font-size: calc(var(--mb-vw) * 20); }
    .page-content .sub-title { font-size: calc(var(--mb-vw) * 19); }
    .page-content .desc { font-size: calc(var(--mb-vw) * 16); }

    /* 테이블 기본 사이즈 조정 */
    .table-wrap { margin-top: calc(var(--mb-vw) * 16); }
    .table-wrap > table { font-size: calc(var(--mb-vw) * 15); }
    .table-wrap > table th,
    .table-wrap > table td {
        padding: calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 16);
    }
    .tableB .question_open {
        min-width: calc(var(--mb-vw) * 100);
        height: calc(var(--mb-vw) * 36);
        line-height: calc(var(--mb-vw) * 34);
    }

    .list-type .item {
        flex:0 1 calc((100% / 2 - (var(--mb-vw) * 17 / 2)));
        max-width: calc((100% / 2 - (var(--mb-vw) * 17 / 2)));
    }
    .list-type .box {
        gap:calc(var(--mb-vw) * 16);
        padding: calc(var(--mb-vw) * 36) calc(var(--mb-vw) * 24) calc(var(--mb-vw) * 32) calc(var(--mb-vw) * 24);
    }
    .list-type .box .title {
        margin:0 auto;
        width: 100%;
        min-height: calc(var(--mb-vw) * 72);
    }
    .list-type .more {
        width: 100%;
        height: calc(var(--mb-vw) * 47);
        font-size: calc(var(--mb-vw) * 14);
    }


    .content-bg-box {
        margin:calc(var(--mb-vw) * 5) auto 0;
        padding:calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 16);
        border-radius: calc(var(--mb-vw) * 5);
    }
    .content-bg-box .content-sub-title {
        padding:calc(var(--mb-vw) * 5) calc(var(--mb-vw) * 10);
        margin-left:calc(var(--mb-vw) * 5);
        font-size:calc(var(--mb-vw) * 18);
    }
    .content-bg-box .content-sub-title.type-purple-box {
        min-width: calc(var(--mb-vw) * 160);
        border-radius: calc(var(--mb-vw) * 8) calc(var(--mb-vw) * 8) 0 0;
    }
    .content-bg-box.type-purple-bd .inner-content {
        padding:calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 16);
        border-radius: calc(var(--mb-vw) * 5);
    }
    .label-cont-wrap-list {
        gap:calc(var(--mb-vw) * 12);
        padding:calc(var(--mb-vw) * 8);
        font-size:calc(var(--mb-vw) * 16);
    }
    .label-cont-wrap .lc-label {
        padding:calc(var(--mb-vw) * 5) calc(var(--mb-vw) * 4);
        width: calc(var(--mb-vw) * 100);
    }
    .label-cont-wrap .lc-content {
        padding:0 0 0 calc(var(--mb-vw) * 16);
        width: calc(100% - (var(--mb-vw) * 100));
        max-width: calc(var(--mb-vw) * 800);
    }

    .page-content .flow-head2, .page-content .flow-row2 {
        min-width: 720rem;
    }
    .page-content .flow-head2.type-col3d1 {
        grid-template-columns:calc(var(--mb-vw) * 180) 1fr;
    }
    .page-content .flow-row2.type-col3d1 {
        grid-template-columns:calc(var(--mb-vw) * 180) 1fr;
    }

}

@media (max-width:768px) {
    .breadcrumb-wrap {
        position: absolute; left:-2000%; top:-2000%; width: 0px; height: 0px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
        visibility: hidden; opacity: 0; overflow: hidden;
    }

    section.list-type.list-type-bluetop .list-item { gap: calc(var(--mb-vw) * 17); }
    .list-type .box {
        padding: calc(var(--mb-vw) * 34) calc(var(--mb-vw) * 24) calc(var(--mb-vw) * 32) calc(var(--mb-vw) * 24);
        min-height: calc(var(--mb-vw) * 200);
    }
    .list-type .title { width: 100%; font-size: calc(var(--mb-vw) * 22); }
    .list-type .more {
        padding: 0 calc(var(--mb-vw) * 19);
        height: calc(var(--mb-vw) * 51);
        font-size: calc(var(--mb-vw) * 15);
    }

    /* ===== TABLE: 모바일 접근성 레이아웃 ===== */
    .table-wrap { margin-top: calc(var(--mb-vw) * 16); }

    /* tableB: 헤더 숨기고 data-before 라벨 노출 */
    .tableB colgroup,
    .tableB thead { display: none; }
    .tableB tr {
        display: block;
        padding: calc(var(--mb-vw) * 15) 0;
        border-bottom: 1px solid #d9d9d9;
        background: transparent;
    }
    .tableB tr:nth-child(2n) { background: #f4f5f9; }
    .tableB th,
    .tableB td {
        display: table;
        width: 100%;
        padding: 0;
        border: 0;
        text-align: left;
        font-size: calc(var(--mb-vw) * 14);
        line-height: 1.45;
    }
    .tableB td { margin-bottom: calc(var(--mb-vw) * 12); }
    .tableB td:last-of-type { margin-bottom: 0; }
    .tableB td:before {
        content: attr(data-before);
        display: table-cell;
        width: 40%;
        font-weight: 600;
        color: #00214f;
        padding: calc(var(--mb-vw) * 8) calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 8) 0;
        vertical-align: top;
        word-break: keep-all;
    }
    .tableB td > div,
    .tableB td > span,
    .tableB td > a,
    .tableB td > p {
        display: table-cell;
        width: 60%;
        padding: calc(var(--mb-vw) * 8) 0;
        vertical-align: top;
    }
    .tableB .question_open {
        min-width: calc(var(--mb-vw) * 90);
        height: calc(var(--mb-vw) * 34);
        line-height: calc(var(--mb-vw) * 32);
        font-size: calc(var(--mb-vw) * 14);
    }

    /* tableA: th 시각적 숨김 + data-before 라벨 */
    .tableA colgroup { display: none; }
    .tableA tbody tr { position: relative; border-bottom: 0; }
    .tableA tbody tr th {
        position: absolute; left: 0; top: 0;
        width: 1px; height: 1px; overflow: hidden;
        padding: 0; margin: -1px; border: 0;
        clip: rect(1px,1px,1px,1px); clip-path: inset(50%);
    }
    .tableA tbody tr td {
        display: block;
        padding: calc(var(--mb-vw) * 10);
        border-bottom: 1px solid #d9d9d9;
        font-size: calc(var(--mb-vw) * 14);
        word-break: keep-all;
    }
    .tableA tbody tr td:before {
        content: attr(data-before);
        display: block;
        margin: 0 0 calc(var(--mb-vw) * 4);
        font-weight: 600; color: #24427d;
    }
    .tableA tbody tr td.detail { padding: calc(var(--mb-vw) * 26) calc(var(--mb-vw) * 10); }
    .tableA tbody tr td.file button {
        font-size: calc(var(--mb-vw) * 14);
        height: calc(var(--mb-vw) * 30);
        line-height: calc(var(--mb-vw) * 28);
    }

    .tableA.table-type-normal {
        min-width: 540px;
    }
    .tableA.table-type-normal tbody tr th {
        position: relative; left: unset; top: unset;
        width: auto; height: auto; overflow: hidden;
        padding: 0; margin: -1px; border: 0;
        clip: unset; clip-path: unset;
    }
    .tableA.table-type-normal tbody tr td {
        display: table-cell;
    }

    .tableA.table-tb-th-purple {
        min-width: 720px;
        table-layout: unset;
    }
    .tableA.table-tb-th-purple tbody tr th {
        position: relative; left: unset; top: unset;
        width: auto; height: auto; overflow: hidden;
        margin: -1px; border: 0;
        padding:calc(var(--mb-vw) * 6) calc(var(--mb-vw) * 6);
        clip: unset; clip-path: unset;
    }
    .tableA.table-tb-th-purple tbody tr td {
        display: table-cell;
    }

    /* content box and label */
    .content-bg-box .content-sub-title {
        font-size:calc(var(--mb-vw) * 16);
    }
    .content-bg-box .content-sub-title.type-purple-box {
        min-width: calc(var(--mb-vw) * 148);
        border-radius: calc(var(--mb-vw) * 8) calc(var(--mb-vw) * 8) 0 0;
    }
    .content-bg-box.type-purple-bd .inner-content {
        padding:calc(var(--mb-vw) * 12) calc(var(--mb-vw) * 16);
        border-radius: calc(var(--mb-vw) * 5);
    }
    .label-cont-wrap-list {
        gap:calc(var(--mb-vw) * 12);
        padding:calc(var(--mb-vw) * 8);
        font-size:calc(var(--mb-vw) * 14);
    }
    .label-cont-wrap .lc-label {
        padding:calc(var(--mb-vw) * 4) calc(var(--mb-vw) * 4);
        width: calc(var(--mb-vw) * 64);
        font-size:calc(var(--mb-vw) * 15);
    }
    .label-cont-wrap .lc-content {
        padding:0 0 0 calc(var(--mb-vw) * 16);
        width: calc(100% - (var(--mb-vw) * 64));
        max-width: calc(var(--mb-vw) * 800);
    }

    .page-content .flow-head2 > div {
        font-size: calc(var(--mb-vw) * 16);
    }
    .page-content .flow-row2 > .cell--step {
        font-size: calc(var(--mb-vw) * 14);
    }
    .page-content .flow-row2 + .flow-row2 .cell--step::before {
        top:calc(var(--mb-vw) * 14 * -1);
    }

    .page-content .flow-head2 {
        margin:0 auto calc(var(--mb-vw) * 8);
    }
    .page-content .flow-head2, .page-content .flow-row2 {
        column-gap: calc(var(--mb-vw) * 8);
        min-width: unset;
        width: 100%;
    }
    .page-content .flow-row2.type-col3d1 > .cell--step {
        gap:calc(var(--mb-vw) * 8);
        padding:calc(var(--mb-vw) * 10) calc(var(--mb-vw) * 12);
        font-size: calc(var(--mb-vw) * 15);
    }
    .page-content .flow-head2.type-col3d1 {
        grid-template-columns:calc(var(--mb-vw) * 120) 1fr;
    }
    .page-content .flow-row2.type-col3d1 {
        grid-template-columns:calc(var(--mb-vw) * 120) 1fr;
    }
    .page-content .flow-row2.type-col3d1 .cell {
        font-size: calc(var(--mb-vw) * 14);
    }
    .page-content .flow-row2.type-col3d1 .cell .blist li {
        font-size: calc(var(--mb-vw) * 14);
    }

    #bbs-latest-sec .tabs ul {
        gap:calc(var(--mb-vw) * 60);
    }
    #bbs-latest-sec .tabs .tab {
        font-size: calc(var(--mb-vw) * 24);
    }
    #bbs-latest-sec .more {
        font-size: calc(var(--mb-vw) * 16);
    }
    .bbs-latest-sec__list {
        font-size: calc(var(--mb-vw) * 15);
    }
    .bbs-latest-sec__link {
        padding:calc(var(--mb-vw) * 10) 0;
    }
    #bbs-latest-sec .title {
        width: calc(100% - calc(var(--mb-vw) * 72));
        font-size: calc(var(--mb-vw) * 15);
    }
    #bbs-latest-sec .time {
        width: calc(var(--mb-vw) * 72);
        text-align: right;
        font-size: calc(var(--mb-vw) * 12);
    }
}

@media (max-width:480px) {
    .page-content .title { font-size: calc(var(--mb-vw) * 19); }
    .page-content .sub-title { font-size: calc(var(--mb-vw) * 17); }
    .page-content .desc { font-size: calc(var(--mb-vw) * 15); }

    .table-wrap > table { font-size: calc(var(--mb-vw) * 14); }
    .tableB td { margin-bottom: calc(var(--mb-vw) * 10); }
    .tableB td:before { width: 42%; }
    .tableB td > div,
    .tableB td > span,
    .tableB td > a,
    .tableB td > p { width: 58%; }
}