﻿@charset "utf-8";

/* 공통 */
html, body, div, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, span, form, fieldset, input, select, label, textarea, table, caption, thead, tfoot, tbody, tr, th, td {
    word-break: keep-all;
}

#contents {
    padding: 0 26px;
}

.hidden {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    margin: 1px;
    border: none;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.typeMain footer {
    background: #F1F3F7
}
/* 240926 추가 */
.typeMain #footer:focus-visible {
    outline: none;
}

    .typeMain #footer:focus-visible::after {
        content: "";
        position: absolute;
        left: 1px;
        top: -1px;
        display: block;
        width: calc(100% - 1px);
        height: 100%;
        outline: -webkit-focus-ring-color auto 1px;
    }

.mTit {
    display: block;
    font-size: 56px;
    line-height: 76px;
    font-weight: 600;
}

.mTit1 {
    display: block;
    font-size: 48px;
    line-height: 72px;
    font-weight: 700;
    margin-bottom: 8px;
}

.mTit2 {
    display: block;
    font-size: 32px;
    line-height: 37px;
    font-weight: 600;
    margin-bottom: 14px;
}

.mTit3 {
    display: block;
    font-size: 36px;
    line-height: 46px;
    font-weight: 500;
    margin-bottom: 32px;
    min-height: 138px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.mbodytxt1 {
    font-size: 20px;
    line-height: 26px;
}

.mbodytxt2 {
    font-size: 18px;
    line-height: 26px;
}

.mbodytxt3 {
    font-size: 16px;
    line-height: 22px;
}

.bg_B1 {
    background-color: #0075D2;
}

.bg_B2 {
    background-color: #003883;
}

.bg_G1 {
    background-color: #ACD423;
}

.bg_W1 {
    background-color: #ffffff;
}

.c_White {
    color: #fff;
}

.bg_ico01 {
    background-image: url(../img/per/main/bg_ico01.svg);
    background-repeat: no-repeat;
    background-position: right 42px bottom 46px;
}

.bg_ico02 {
    background-image: url(../img/per/main/bg_ico02.svg);
    background-repeat: no-repeat;
    background-position: right 53px bottom 51px;
}

.bg_ico03 {
    background-image: url(../img/per/main/bg_ico03.svg);
    background-repeat: no-repeat;
    background-position: right 42px bottom 45px;
}

.iconB {
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
}

    .iconB.new {
        background: url(../img/per/main/icon_new.svg) no-repeat center center/100% auto;
        margin-left: 8px;
    }

.btn_more {
    width: 24px;
    height: 24px;
    background: url(../img/per/main/ico_more.svg) no-repeat center;
}

/* 메인 */
.typeMain #container {
    overflow: hidden;
}

.mSection {
    padding-bottom: 16px;
}

    .mSection .disF {
        display: flex;
        flex-direction: row;
        align-items: stretch;
        justify-content: space-between;
    }

    .mSection .first {
        width: 42%;
        margin-right: 16px;
    }

        .mSection .first .mCont {
            padding: 40px 64px 55px 64px;
        }

    .mSection .second {
        width: 33%;
        display: flex;
        margin-right: 16px;
    }

        .mSection .second .second_cont {
            width: calc(50% - 8px);
        }

            .mSection .second .second_cont:first-of-type {
                margin-right: 16px;
            }

            .mSection .second .second_cont a {
                display: block;
                height: 100%;
            }

        .mSection .second .mTit2 br {
            display: none;
        }

        .mSection .second .more {
            display: inline-block;
            padding-right: 18px;
            background-repeat: no-repeat;
            background-position: right center;
            font-size: 15px;
            margin-top: 44px;
        }

            .mSection .second .more.icoW {
                background-image: url(../img/per/main/ico_more_w.svg);
                color: #fff;
                opacity: 0.6;
            }

            .mSection .second .more.icoB {
                background-image: url(../img/per/main/ico_more_b.svg);
            }

    .mSection .third {
        width: 25%;
        position: relative;
        margin-right: 16px;
    }

        .mSection .third .mTit2 {
            border-bottom: 1px solid #E8E8E8;
            padding-bottom: 23px;
            margin-bottom: 22px;
        }

        .mSection .third .btn_more {
            position: absolute;
            right: 40px;
            top: 45px;
        }

    .mSection .btnWrap {
        position: absolute;
        padding-top: 180px;
        font-size: 0;
    }
        /* 240930 버튼 크기 수정 */
        .mSection .btnWrap .baseBtn {
            height: 64px;
            font-size: 20px;
            width: auto;
            display: inline-block;
            vertical-align: top;
        }
            /* 241004 버튼 색상 수정 */
            .mSection .btnWrap .baseBtn > .base {
                min-width: 240px;
                font-size: 20px;
                text-align: left;
                justify-content: flex-start;
                border-radius: 32px;
                background: #ACD423 url(../img/per/main/ico_link02.svg) no-repeat right 30px center;
                color: #000;
            }

.mCont {
    border-radius: 48px;
    padding: 40px;
    height: 100%;
}

    .mCont .link {
        display: inline-block;
        width: 240px;
        font-size: 20px;
        line-height: 26px;
        border: 1px solid #fff;
        border-radius: 32px;
    }

        .mCont .link span {
            display: block;
            padding: 16px 30px;
            background: url(../img/per/main/ico_link.svg) no-repeat right 30px center;
        }

.third .no_article {
    padding-top: 140px;
    background-position: left 50% top 44px;
    padding-bottom: 0;
}

.mNotice {
}

    .mNotice li {
    }

        .mNotice li a {
            display: block;
            padding: 6px 0;
        }

        .mNotice li:first-child a {
            padding-top: 0;
        }

        .mNotice li:last-child a {
            padding-bottom: 0;
        }

        .mNotice li p {
            max-width: calc(100% - 26px);
            display: inline-block;
            font-size: 17px;
            line-height: 24px;
            font-weight: 500;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            vertical-align: middle;
        }

.bg_B1 .mbodytxt2 {
    padding: 46px 0 37px;
    position: relative;
}

    .bg_B1 .mbodytxt2::before {
        content: '';
        width: 32px;
        height: 1px;
        background: #fff;
        opacity: 0.6;
        position: absolute;
        left: 0;
        top: 24px;
    }

.mQuick_wrap {
    background: #DFE4EB;
    border-radius: 48px;
    padding: 0 170px;
    margin-bottom: 16px;
    position: relative;
    overflow: hidden;
}

.mQuick {
    overflow: hidden;
}

    .mQuick ul {
        height: 100px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

        .mQuick ul li {
            text-align: center;
        }

    .mQuick .item {
        display: inline-block;
        vertical-align: middle;
        width: auto;
    }

    .mQuick ul li a {
        display: inline-block;
        font-size: 22px;
        line-height: 26px;
        font-weight: 600;
        margin: 23px 0;
    }

        .mQuick ul li a span {
            display: inline-block;
            background-repeat: no-repeat;
            background-position: left center;
            padding: 10px 0 10px 60px;
        }

            .mQuick ul li a span.mQuick01 {
                background-image: url(../img/per/main/ico_mQuick01.svg);
            }

            .mQuick ul li a span.mQuick02 {
                background-image: url(../img/per/main/ico_mQuick02.svg);
            }

            .mQuick ul li a span.mQuick03 {
                background-image: url(../img/per/main/ico_mQuick03.svg);
            }

            .mQuick ul li a span.mQuick04 {
                background-image: url(../img/per/main/ico_mQuick04.svg);
            }

            .mQuick ul li a span.mQuick05 {
                background-image: url(../img/per/main/ico_mQuick05.svg);
            }

            .mQuick ul li a span.mQuick06 {
                background-image: url(../img/per/main/ico_mQuick06.svg);
            }

            .mQuick ul li a span.mQuick08 {
                background-image: url(../img/per/main/ico_mQuick08.svg);
            }

.mQuick_wrap .swiper-button-prev {
    display: none;
    width: 17px;
    height: 31px;
    background: url(../img/per/main/ico_slide_prev.png) no-repeat left center;
    background-size: contain;
    left: 15px;
    margin-top: -16px;
}

.mQuick_wrap .swiper-button-next {
    display: none;
    width: 17px;
    height: 31px;
    background: url(../img/per/main/ico_slide_next.png) no-repeat right center;
    background-size: contain;
    right: 15px;
    margin-top: -16px;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    display: none;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    display: none;
}


.mView {
    background: #fff url(../img/per/main/bg_mView.png) no-repeat left bottom;
    padding: 56px 67px;
    position: relative;
}

    .mView .mTit {
        position: absolute;
        left: 67px;
        top: 56px;
        z-index: 1;
    }

.mView_list {
    margin-left: 546px;
}

    .mView_list ul {
        display: flex;
        flex-flow: row wrap;
    }

        .mView_list ul li {
            width: 33.33%;
            margin-bottom: 27px;
            padding-bottom: 32px;
        }

            .mView_list ul li.line {
                border-bottom: 1px solid #E8E8E8;
            }

            .mView_list ul li:nth-child(n+7) {
                margin-bottom: 0;
                border-bottom: 0;
            }

            .mView_list ul li:nth-child(n+4) {
                display: none;
            }

            .mView_list ul li a {
                display: block;
                padding: 0 48px;
                border-left: 1px solid #E8E8E8;
            }

                .mView_list ul li a .dday {
                    display: inline-block;
                    width: 78px;
                    height: 30px;
                    line-height: 28px;
                    color: #0075D2;
                    border: 1px solid #0075D2;
                    border-radius: 18px;
                    text-align: center;
                    font-size: 14px;
                    font-weight: 500;
                    margin-top: 54px;
                }

    .mView_list .btn_view {
        background: #F3F3F5;
        border-radius: 12px;
        text-align: center;
        padding: 14px 0 15px
    }

        .mView_list .btn_view a {
            display: block;
        }

            .mView_list .btn_view a span {
                display: inline-block;
                font-size: 17px;
                line-height: 26px;
                background: url(../img/per/main/ico_arrow.svg) no-repeat right center;
                padding-right: 27px;
            }

            .mView_list .btn_view a.on span {
                background-image: url(../img/per/main/ico_arrow_on.svg);
            }
    /* 240926 수정 */
    .mView_list .mbodytxt3 {
        height: 44px;
        font-size: 18px;
    }

.minH .disF {
    height: 595px;
}

.mBoard {
    background: #fff;
    width: 50%;
    padding: 64px 62px;
}

    .mBoard .contTab_Group {
        height: calc(100% - 90px);
    }

.contTab_Group .contTab {
    height: 100%;
}

.mBoard_tab {
    border-bottom: 1px solid #E8E8E8;
    padding-bottom: 18px;
    overflow: hidden;
}

.mBoard .tabList {
    display: flex;
}

    .mBoard .tabList li {
        margin-right: 40px;
        width: auto;
    }

        .mBoard .tabList li a {
            font-size: 32px;
            line-height: 37px;
            font-weight: 600;
        }

        .mBoard .tabList li.on {
            color: #0075D2;
            position: relative;
        }

        .mBoard .tabList li:hover {
            color: #0075D2;
        }

        .mBoard .tabList li.on:before {
            content: '';
            width: 100%;
            height: 3px;
            background: #0075D2;
            position: absolute;
            left: 0;
            bottom: -18px;
            right: 0;
        }

.BoardList {
    margin-top: 37px;
    position: relative;
    height: 100%;
}

    .BoardList .btn_more {
        position: absolute;
        right: 0;
        top: -85px;
    }

    .BoardList ul li {
        position: relative;
    }

        .BoardList ul li a {
            display: block;
            font-size: 22px;
            font-weight: 500;
            width: calc(100% - 100px);
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            margin-bottom: 25px;
        }

        .BoardList ul li span {
            position: absolute;
            right: 0;
            top: 6px;
            font-size: 16px;
            color: #666666;
        }

    .BoardList .no_article {
        position: absolute;
        left: 0;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
    }


.mService {
    background: #D1E3FC;
    padding: 0;
    width: 50%;
}
    /* .mService .swiper-container{height:100%;} */
    .mService .bTit {
        font-size: 40px;
        line-height: 50px;
        font-weight: 600;
        margin-bottom: 17px;
        padding-left: 60px;
        padding-top: 60px;
    }

    .mService .sTit {
        font-size: 28px;
        line-height: 33px;
        color: #04325B;
        font-weight: 600;
        margin-bottom: 17px;
    }

    /* 240926 수정 */
    /* .mService .sTit br{display:none;} */

    .mService .mbodytxt3 {
        color: #04325B;
    }

    .mService ul {
        display: flex;
        justify-content: space-between;
        margin-top: 64px;
        height: 100%;
        max-height: 306px;
    }

        .mService ul li {
            width: 33.33%;
            border-left: 1px solid #A7B6CA;
            background-repeat: no-repeat;
            background-position: right 30px bottom;
            min-height: 306px;
        }

            .mService ul li:first-child {
                border-left: 0;
                padding-left: 60px;
                background-position: right 20px bottom;
                padding-right: 30px;
            }

            .mService ul li:nth-child(2) {
                padding-left: 40px;
                padding-right: 30px;
            }

            .mService ul li:nth-child(3) {
                padding-left: 30px;
                padding-right: 30px;
                background-position: right 70px bottom;
            }

            .mService ul li.mService01 {
                background-image: url(../img/per/main/ico_mService01.svg);
            }

            .mService ul li.mService02 {
                background-image: url(../img/per/main/ico_mService02.svg);
            }

            .mService ul li.mService03 {
                background-image: url(../img/per/main/ico_mService03.svg);
            }

            .mService ul li a {
                display: block;
            }

.mBanner a {
    display: block;
    height: 324px;
    padding: 15px 24px;
}

.mBanner .mCont {
    background-repeat: no-repeat;
    flex: 1;
}

.mBanner .bTit {
    font-size: 40px;
    line-height: 50px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 17px;
}

.mBanner .mbodytxt2 {
    color: #fff;
}

    .mBanner .mbodytxt2 span {
        font-weight: 400;
    }
/* 240925 */
/* .mBanner01{background: #6D14F6 url(../img/per/main/bg_mBanner01.png);background-position:right bottom;} */
.mBanner01 .bTit {
    font-weight: 400;
    font-family: 'Tenada';
}

.mBanner02 {
    background: #005955 url(../img/per/main/bg_mBanner02.png);
    background-position: right 40px bottom 48px;
}

.mBanner03 {
    background: #1454FF url(../img/per/main/bg_mBanner03.png);
    background-position: right 54px bottom 40px;
}

/* 효과 */
.firstAni .first {
    position: relative;
}

    .firstAni .first .mCont::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #F1F3F7;
        transition: 1s all;
        z-index: 1;
    }

.firstAni.ani .first .mCont::before {
    width: 0;
}

.firstAni .second_cont {
    position: relative;
}

    .firstAni .second_cont .mCont::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #F1F3F7;
        transition: 1s all;
    }

.firstAni.ani .second_cont .mCont::before {
    width: 0;
}

.firstAni .third {
    position: relative;
}

    .firstAni .third .mCont::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #F1F3F7;
        transition: 1s all;
    }

.firstAni.ani .third .mCont::before {
    width: 0;
}

.mQuick_wrap {
    opacity: 0;
    transition: 1s;
    transition-delay: 0.3s;
}

    .mQuick_wrap.ani {
        opacity: 1;
    }

.mView {
    transform: translateY(20%);
    opacity: 0;
    transition: 1s all;
}

    .mView.ani {
        transform: translateY(0);
        opacity: 1;
    }

.minH .mCont {
    position: relative;
    width: calc(50% - 8px);
}

    .minH .mCont::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background-color: #F1F3F7;
        transition: 1s all;
    }

.minH.ani .mCont::before {
    width: 0;
}

.minH .mBoard_tab {
    transform: translateX(100%);
    opacity: 0;
    transition: 1s all;
    transition-delay: .2s;
}

.minH.ani .mBoard_tab {
    transform: translateX(0);
    opacity: 1;
}

.minH .BoardList {
    transform: translateX(100%);
    opacity: 0;
    transition: 1s all;
    transition-delay: .3s;
}

.minH.ani .BoardList {
    transform: translateX(0);
    opacity: 1;
}

.minH .mService .bTit {
    transform: translateX(100%);
    opacity: 0;
    transition: 1s all;
    transition-delay: .4s;
}

.minH.ani .mService .bTit {
    transform: translateX(0);
    opacity: 1;
}

.minH .mService .swiper-container {
    transform: translateY(100%);
    opacity: 0;
    transition: 1s all;
    transition-delay: .3s;
}

.minH.ani .mService .swiper-container {
    transform: translateY(0);
    opacity: 1;
}

.mBanner .mCont {
    position: relative;
    width: calc(33.333% - 5.333px);
}

.mBanner.ani .mBanner02 {
    margin: 0 16px;
}

.mBanner .mCont::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #F1F3F7;
    transition: 1s all;
}

.mBanner.ani .mCont::before {
    width: 0;
}

/* 240925 */
/* .mBanner .mBanner01 {background-position: right bottom -470px;transition: 1s all;}
.mBanner.ani .mBanner01 {background-position: right bottom;} */
.mBanner .mBanner02 {
    background-position: right 40px bottom -150px;
    transition: 1s all;
    transition-delay: .2s;
}

.mBanner.ani .mBanner02 {
    background-position: right 40px bottom 48px
}

.mBanner .mBanner03 {
    background-position: right 54px bottom -170px;
    transition: .8s all;
    transition-delay: .4s;
}

.mBanner.ani .mBanner03 {
    background-position: right 54px bottom 40px
}

/* 긴급공지 */
.topNotice {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background: #fff;
    height: 48px;
    z-index: 1004;
    transition: top 0.2s ease-in-out;
}

    .topNotice .in {
        display: flex;
        align-items: center;
        max-width: 650px;
        margin: 0 auto;
        height: 100%;
    }

    .topNotice .ico {
    }

        .topNotice .ico span {
            width: 80px;
            height: 32px;
            line-height: 32px;
            border-radius: 22px;
            display: inline-block;
            text-align: center;
            font-size: 15px;
            color: #fff;
            text-align: center;
            padding-left: 22px;
            background: #E8242A url(../img/per/main/ico_urgency.svg) no-repeat left 16px center;
        }

        .topNotice .ico .urgency {
        }

    .topNotice .txtBody3 {
        margin-left: 16px;
        display: inline-block;
        width: auto;
        word-break: break-word;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .topNotice .more {
        margin-left: 100px;
        font-size: 14px;
        background: url(../img/per/main/ico_arrow_more.svg) no-repeat right top 5px;
        padding-right: 10px;
        flex-basis: 81px;
    }

/* 롤링배너_240626 */
.mBanner01 .inner {
    overflow: hidden;
}

.mBanner01 .swiper-pagination {
    transition: none;
    transform: none;
    position: static;
}

    .mBanner01 .swiper-pagination span {
        width: 8px;
        height: 8px;
        margin: 0 3px;
        transition: all 0.2s;
        background-color: #333;
        opacity: 0.5;
    }

        .mBanner01 .swiper-pagination span.swiper-pagination-bullet-active {
            background: #333;
            width: 22px;
            border-radius: 10px;
            opacity: 1;
        }

.mBanner01 .control {
    position: absolute;
    left: 64px;
    bottom: 2px;
    z-index: 10;
}

    .mBanner01 .control > div {
        display: inline-block;
    }

    .mBanner01 .control .stop {
        width: 6px;
        height: 8px;
        background: url(../img/per/main/ico_stop.svg) no-repeat center top;
    }

    .mBanner01 .control .play {
        width: 7px;
        height: 8px;
        background: url(../img/per/main/ico_play.svg) no-repeat center top;
        display: none;
    }

/* 240925 */
.mBanner01 {
    padding: 0 !important;
    overflow: hidden;
}

    .mBanner01 ul li {
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 100% 100%;
        padding: 40px;
    }


@media all and (max-width:2560px) {
    .mBanner .mCont::before {
        width: 100%
    }
}


@media all and (max-width:1650px) {
    .bg_ico01 {
        background-size: auto 100px;
    }

    .bg_ico02 {
        background-size: auto 52px;
    }

    .bg_ico03 {
        background-size: auto 53px;
    }

    .mView_list {
        margin-left: 450px;
    }

    .mBoard .tabList li {
        margin-right: 20px;
    }

    .mService .mbodytxt3 br {
        display: none;
    }

    .mService .sTit br {
        display: block;
    }
}

@media all and (max-width:1500px) {
    .mCont {
        padding: 30px;
    }

    .mView {
        padding: 35px;
    }

    .mBoard {
        padding: 35px;
    }

    .bg_ico01 {
        background-position: right 30px bottom 30px;
        background-size: auto 80px;
    }

    .bg_ico02 {
        background-position: right 40px bottom 40px;
    }

    .bg_ico03 {
        background-position: right 30px bottom 30px;
    }

    .mQuick_wrap {
        padding: 0 100px;
    }

    .mView .mTit {
        left: 40px;
        top: 40px;
    }

    .mView_list ul li a {
        padding: 0 25px;
    }

    .minH .disF {
        height: 540px;
    }

    .mService .bTit {
        font-size: 38px;
        padding-top: 0;
        padding-left: 0;
    }

    .mService ul li {
        padding: 0 30px;
    }

        .mService ul li.mService01 {
            background-size: auto 100px;
            padding-left: 30px;
        }

        .mService ul li.mService02 {
            background-size: auto 88px;
            padding-left: 30px;
        }

        .mService ul li.mService03 {
            background-size: auto 53px;
            padding-left: 30px;
        }

    .mSection .btnWrap {
        padding-top: 160px;
    }

    .mBanner01 .control {
        left: 35px;
    }

    .mBanner .mCont {
        padding: 35px;
    }

    .mBanner01 .bTit br {
        display: none;
    }

    .mBanner01 {
        background-size: auto 280px;
    }

    .mBanner02 {
        background-size: auto 108px;
    }

    .mBanner03 {
        background-size: auto 120px;
    }

    .mBanner a {
        padding: 0;
    }

    /* 240125 */
    .mTit {
        font-size: 46px;
        line-height: 66px;
    }

    .mTit1 {
        font-size: 40px;
    }

    .mTit2 {
        font-size: 28px;
        line-height: 32px;
    }

    .mTit3 {
        font-size: 32px;
        line-height: 40px;
        min-height: 110px;
    }

    .mSection .second .mTit2 br {
        display: block;
    }

    .mSection .first {
        width: 32%;
    }

    .mSection .second {
        width: 34%;
    }

    .mSection .third {
        width: 32%;
    }

    .mCont .link {
        width: 180px;
        font-size: 18px;
        line-height: 20px;
    }

        .mCont .link span {
            padding: 17px 20px;
            background-position: right 20px center;
            background-size: auto 14px;
        }

    .mBoard .tabList li a {
        font-size: 28px;
        line-height: 32px;
    }

    .mQuick ul li a {
        font-size: 20px;
        line-height: 24px;
    }

    .mService .bTit {
        font-size: 32px;
        line-height: 42px;
    }

    .mService ul {
        margin-top: 42px;
    }

    .mBanner .bTit {
        font-size: 36px;
        line-height: 48px;
    }

    .mBanner a {
        height: 340px;
    }

    .mSection .first .mCont {
        padding: 30px 34px 30px 34px;
    }

    .mService.mCont {
        padding: 0;
    }

    .minH.ani .mService .bTit {
        padding-left: 30px;
        padding-top: 30px;
    }

    /* 240925 */
    .mBanner01 ul li {
        padding: 35px;
    }
}

@media all and (max-width:1280px) {
    #contents {
        padding: 0 22px;
    }

    .minH .disF {
        height: auto;
    }

    .mBoard {
        width: 100%;
    }

        .mBoard .tabList li {
            margin-right: 32px;
        }

            .mBoard .tabList li a {
                font-size: 20px;
                line-height: 28px;
            }

    .BoardList {
        margin-top: 0;
    }

        .BoardList ul li {
            border-bottom: 1px solid #E8E8E8;
        }

            .BoardList ul li:last-child {
                border-bottom: 0;
            }

                .BoardList ul li:last-child a {
                    padding-bottom: 0;
                }

            .BoardList ul li a {
                font-size: 16px;
                line-height: 22px;
                margin-bottom: 0;
                padding: 20px 0;
            }

            .BoardList ul li span {
                top: 20px;
            }

        .BoardList .btn_more {
            width: 18px;
            height: 18px;
            top: -37px;
        }

        .BoardList .no_article {
            position: static;
            transform: none;
        }

    .mService {
        width: 100%;
    }

        .mService .bTit {
            font-size: 32px;
            line-height: 37px;
        }

        .mService .sTit {
            font-size: 24px;
            line-height: 29px;
        }

            .mService .sTit br {
                display: none;
            }

        .mService ul {
            margin-top: 32px;
            max-height: none;
        }

    .mBanner .mCont {
        padding: 24px;
    }

        .mBanner .mCont a {
            height: 260px;
        }

    .mBanner .bTit {
        font-size: 24px;
        line-height: 29px;
    }

    .mBanner02 {
        background-position: right 20px bottom 20px;
    }

    .mBanner.ani .mBanner02 {
        background-position: right 20px bottom 20px;
    }

    .mBanner03 {
        background-position: right 30px bottom 10px;
    }

    .mBanner.ani .mBanner03 {
        background-position: right 30px bottom 10px;
    }

    .mSection .btnWrap {
        padding-top: 140px;
    }

    .mTit1 {
        font-size: 40px;
        line-height: 50px;
    }

    .mTit2 {
        font-size: 24px;
        line-height: 29px;
    }

    .mbodytxt1 {
        font-size: 18px;
    }

    .mbodytxt2 {
        font-size: 16px;
    }

    .bg_B1 .mbodytxt2 {
        padding: 37px 0 40px;
    }

        .bg_B1 .mbodytxt2::before {
            top: 20px;
        }

    /* 240125 */
    .mTit {
        font-size: 40px;
        line-height: 50px;
    }

    .mTit3 {
        font-size: 28px;
        line-height: 32px;
        word-break: break-all;
        min-height: 97px;
    }

    .mQuick_wrap {
        padding: 0 70px;
    }

    .mView_list {
        margin-left: 320px;
    }

        .mView_list ul li a {
            padding: 0 15px;
        }
    /* .mCont .link{width: 150px;} */
    /* .mCont .link span{padding:10px 15px;background-position:right 15px center;} */
    .mCont .link {
        width: auto;
    }

        .mCont .link span {
            padding: 12px 45px 12px 20px;
        }

    .bg_ico01 {
        background-size: auto 60px;
    }

    .minH.ani .mService .bTit {
        padding-top: 45px;
    }

    .mService.mCont {
        height: 540px
    }

    .mService ul {
        margin-top: 40px;
    }

    /* 240925 */
    .mBanner01 ul li {
        padding: 24px;
    }
}

@media all and (max-width:1041px) {
    .mCont {
        padding: 32px;
    }

    .mTit3 {
        min-height: auto;
        font-size: 20px;
        line-height: 26px;
        margin-bottom: 8px;
    }

    .mCont {
        border-radius: 20px;
    }

    .mQuick_wrap {
        border-radius: 20px;
        padding: 0 50px;
    }

    .mQuick ul li a {
        font-size: 15px;
        line-height: 18px;
        ;
    }

        .mQuick ul li a span {
            padding: 30px 0 0;
            background-position: center top;
            background-size: auto 24px;
        }

    .mSection .disF {
        flex-flow: row wrap;
    }

    .mSection .btnWrap {
        padding-top: 0;
        right: 32px;
        top: 35px;
    }

        .mSection .btnWrap .baseBtn {
            height: auto;
        }

            .mSection .btnWrap .baseBtn > .base {
                background: none;
                border-radius: 0;
                min-width: inherit;
                color: var(--second);
                font-weight: 700;
                padding: 0;
                padding-right: 12px;
                background: url(../img/per/main/ico_arr_navy.svg) no-repeat right 0 top 50%;
            }

    .third .no_article {
        padding-top: 65px;
        background-position: left 50% top 0px;
    }

    .mBanner01 {
        width: 100%;
    }

    .mBanner02 {
        width: calc(50% - 16px);
    }

    .mBanner03 {
        width: 50%;
    }

    .mCont .link {
        width: 163px;
        font-size: 14px;
        line-height: 20px;
    }

        .mCont .link span {
            padding: 10px 24px;
            background-size: auto 15px;
            background-position: right 23px center;
        }

    .bg_ico01 {
        background-size: auto 61px;
        background-position: right 17px bottom 18px;
    }

    .bg_ico02 {
        background-size: auto 33px;
        background-position: right 20px bottom 18px;
    }

    .bg_ico03 {
        background-size: auto 33px;
        background-position: right 20px bottom 18px;
    }

    .mSection .first {
        width: calc(50% - 8px);
        margin-right: 16px;
    }

    .mSection .second {
        width: calc(50% - 8px);
        flex-flow: row wrap;
        margin-right: 0;
    }

        .mSection .second .second_cont {
            width: 100%;
        }

            .mSection .second .second_cont:first-of-type {
                margin-right: 0;
                margin-bottom: 16px;
            }

        .mSection .second .more {
            font-size: 15px;
            margin-top: 20px;
        }

    .mSection .third {
        width: 100%;
        margin-right: 0;
        margin-top: 16px;
    }

        .mSection .third .mTit2 {
            padding-bottom: 16px;
            margin-bottom: 24px;
        }

        .mSection .third .btn_more {
            top: 35px;
            right: 32px;
        }

    .minH .mCont {
        width: 100%;
    }

        .minH .mCont ~ .mCont {
            margin-top: 16px;
        }

    /* 240125 */
    .mView {
        background-image: none;
    }

        .mView .mTit {
            position: static;
            font-size: 24px;
            line-height: 29px;
            padding-bottom: 16px;
            border-bottom: 1px solid #E8E8E8;
            margin-bottom: 20px;
        }

            .mView .mTit br {
                display: none;
            }

    .mView_list {
        margin-left: 0;
    }
        /* 240926 수정 */
        .mView_list .mbodytxt3 {
            height: auto;
            font-size: 14px;
        }

        .mView_list ul {
            display: block;
        }

            .mView_list ul li {
                width: 100%;
                padding-bottom: 20px;
                margin-bottom: 20px;
            }

                .mView_list ul li:nth-child(n+7) {
                    border-bottom: 1px solid #E8E8E8;
                    margin-bottom: 20px;
                }

                .mView_list ul li:last-child {
                    border-bottom: 0;
                    margin-bottom: 0;
                }

                .mView_list ul li .mTit3 br {
                    display: none
                }

                .mView_list ul li a {
                    padding: 0;
                    border-left: 0;
                    position: relative;
                }

                    .mView_list ul li a .dday {
                        margin-top: 0;
                        position: absolute;
                        right: 0;
                        top: 50%;
                        transform: translateY(-50%);
                    }

        .mView_list .btn_view {
            padding: 11px 0 10px;
        }

            .mView_list .btn_view a span {
                font-size: 15px;
            }

    .mService.mCont {
        height: auto;
    }

    .mService.mCont {
        height: auto;
        padding-bottom: 30px;
    }

    .mService ul {
        height: auto;
    }

        .mService ul li {
            min-height: 206px;
        }

    .minH.ani .mService .bTit {
        padding: 30px;
        padding-bottom: 0;
        margin-bottom: 7px;
    }

    .mService ul li:nth-child(3) {
        background-position: right 30px bottom;
    }

    .mBanner .mBanner01 {
        background-size: 270px auto;
        background-position: right 0 bottom 0;
    }

    .mBanner .mBanner02 {
        background-size: 120px auto;
    }

    .mBanner .mBanner03 {
        background-size: 90px auto;
    }


    .mBanner01 .control {
        left: 24px;
    }

    /* 긴급공지 */
    .topNotice .in {
        max-width: 596px;
    }

    /* 240925 */
    .mBanner01 ul li {
        padding: 24px 18px;
    }
}

@media all and (max-width:767px) {
    .mBanner .mCont {
        padding: 18px;
    }

        .mBanner .mCont a {
            height: 240px;
        }

    .mBanner .bTit {
        font-size: 18px;
        line-height: 24px;
        margin-bottom: 10px;
    }

    .mBanner .mbodytxt2 {
        font-size: 14px;
        line-height: 20px;
    }

        .mBanner .mbodytxt2 span {
            font-size: inherit;
            line-height: inherit
        }

    /* 240925 */
    .mBanner01 ul li {
        padding: 18px;
    }
}


@media all and (max-width:720px) {
    .mBanner.ani .mBanner01 {
        background-size: 220px auto;
    }

    .mBanner.ani .mBanner02 {
        background-size: 90px auto;
    }

    .mBanner.ani .mBanner03 {
        background-size: 80px auto;
    }
}

@media all and (max-width:650px) {
    .mService .sTit {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .mbodytxt3 {
        font-size: 14px;
        line-height: 20px;
    }
}

@media all and (max-width:600px) {
    #contents {
        padding: 0 17px;
    }

    .mSection .first {
        width: 100%;
        margin-right: 0;
        margin-bottom: 16px;
    }

        .mSection .first .mCont {
            padding: 25px 24px;
        }

    .mSection .second {
        width: 100%;
    }

        .mSection .second .second_cont {
            width: calc(50% - 8px);
            height: 100px;
        }

            .mSection .second .second_cont:first-of-type {
                margin-right: 16px;
                margin-bottom: 0;
            }

    .mSection .third .mTit2 {
        font-size: 24px;
        line-height: 29px;
        margin-bottom: 15px;
        font-weight: 700;
    }

    .mSection .third .btn_more {
        top: 20px;
    }

    .mSection .btnWrap {
        position: relative;
        top: 0;
        right: auto;
        padding-bottom: 20px;
    }

    .mView_list {
        border-top: 1px solid #E8E8E8;
        padding-top: 15px;
    }

    .mSection .first .mbodytxt1 {
        display: none;
    }

    .bg_B1 .mbodytxt2::before {
        display: none;
    }

    .mSection .second .mbodytxt2 {
        display: none;
    }

    .mSection .second .mTit2 {
        margin-bottom: 16px;
    }

        .mSection .second .mTit2 br {
            display: block;
        }

    .mSection .second .more {
        display: none;
    }

    .mSection .third .btn_more {
        top: 27px;
    }

    .mCont {
        padding: 25px 24px 25px 24px;
    }

    .mTit1 {
        font-size: 24px;
        line-height: 32px;
    }

    .mTit2 {
        font-size: 16px;
        line-height: 22px;
    }

    .mTit3 {
        -webkit-line-clamp: 2;
    }

    .mbodytxt1 {
        font-size: 14px;
    }

    .mbodytxt2 {
        font-size: 14px;
        line-height: 22px;
    }

    .mbodytxt3 {
        font-size: 14px;
        line-height: 24px;
    }

    .bg_B1 .mbodytxt2 {
        padding: 0 0 21px;
    }

        .bg_B1 .mbodytxt2::before {
            top: 7px;
        }

    .mView .mTit {
        font-size: 24px;
        font-weight: 700;
        border-bottom: 0;
        margin-bottom: 0;
        line-height: 27px;
    }

    .mView_list ul li a {
        padding-right: 85px;
    }

        .mView_list ul li a .dday {
            width: 70px;
            height: 28px;
            font-size: 12px;
        }

    .mBoard_tab {
        padding-bottom: 14px;
    }

    .mBoard .tabList li.on:before {
        bottom: -14px;
    }

    .mBoard .tabList li {
        margin-right: 19px;
    }

        .mBoard .tabList li a {
            font-size: 16px;
        }

    .mService ul {
        display: block;
    }

    .mService .bTit {
        font-size: 24px;
        line-height: 32px;
    }

    .mService .sTit {
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 6px;
    }

    .mBanner .mCont {
        flex: none;
        width: 100%;
    }

        .mBanner .mCont a {
            height: auto;
            min-height: 152px;
        }

    .mBanner02 {
        background-size: auto 84px;
    }

    .mBanner03 {
        background-size: auto 102px;
    }

    .btn_more {
        width: 15px;
        height: 15px;
        background-size: 15px 15px;
    }

    .BoardList ul li span {
        font-size: 14px;
    }

    .BoardList ul li a {
        width: calc(100% - 75px);
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal;
    }

    .BoardList .btn_more {
        background-color: #fff;
        z-index: 1;
        width: 15px;
        height: 15px;
        background-size: 15px 15px;
    }

    .mQuick_wrap .swiper-button-prev {
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
    }

    .mQuick_wrap .swiper-button-next {
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
    }

    .mQuick ul li a span {
        font-size: 14px;
    }

    .mService ul {
        margin-top: 6px;
    }

    .minH.ani .mService .bTit {
        padding-top: 25px;
        margin-bottom: 21px;
    }

    .mService ul li a {
        padding-right: 100px;
    }

    .mService ul li {
        position: relative;
        flex: none;
        width: 100%;
        background-position: right 30px top 0px !important;
        min-height: 120px;
        border-left: 0;
        margin-bottom: 25px;
    }

        .mService ul li:last-child {
            min-height: inherit;
            padding-bottom: 15px;
        }

            .mService ul li:last-child::before {
                display: none;
            }

        .mService ul li:before {
            content: '';
            display: block;
            width: calc(100% - 48px);
            height: 1px;
            background: #A6B4C8;
            position: absolute;
            left: 24px;
            bottom: 0;
        }

        .mService ul li:last-child {
            margin-bottom: 0;
        }

    .mService .swiper-container {
        overflow: hidden;
    }

    .mBanner .mbodytxt2 span {
        display: block;
    }

    .mBanner .mbodytxt2 br {
        display: none;
    }

    .mBanner .mBanner01 {
        background-size: 300px auto;
    }

    .mBanner .mBanner02 {
        background-size: 120px auto;
        background-position: bottom 10px right 10px;
    }

    .mBanner .mBanner03 {
        background-size: 110px auto;
    }

    .mBanner .mCont {
        padding: 34px 30px;
    }

    .mBanner .bTit {
        font-size: 30px;
        margin-bottom: 18px;
        line-height: 36px;
    }

    .mBanner .mbodytxt2 {
        font-size: 15px;
        line-height: 20px;
        padding-right: 30px;
        word-break: keep-all;
    }

    .mBanner.ani .mBanner02 {
        margin: 16px 0;
    }

    .mQuick ul {
        height: 105px
    }

    .mQuick_wrap {
        position: relative;
    }

    /* 긴급공지 */
    .topNotice .in {
        max-width: 100%;
        margin: 0 17px;
    }

    .topNotice .ico span {
        font-size: 13px;
    }

    .topNotice .txtBody3 {
        margin-left: 8px;
    }

    .topNotice .more {
        margin-left: 8px;
    }

    .mBanner01 .control {
        bottom: 15px;
    }

    /* 240925 */
    .mBanner01 ul li {
        height: 240px;
        background-size: 100% 100%;
        padding: 34px 30px;
    }
}

@media all and (max-width:583px) {
    .mQuick_wrap {
        padding: 0 5px;
    }

        .mQuick_wrap .swiper-pagination {
            position: absolute;
            bottom: 15px;
            left: 0;
            z-index: 100;
            width: 100%;
            font-size: 0;
        }

        .mQuick_wrap .swiper-pagination-bullet {
            width: 10px;
            height: 10px;
            margin-right: 12px;
            background: #C6C6C6;
            opacity: 1;
        }

            .mQuick_wrap .swiper-pagination-bullet.swiper-pagination-bullet-active {
                background: var(--primary)
            }

            .mQuick_wrap .swiper-pagination-bullet:last-child {
                margin-right: 0;
            }
}

@media all and (max-width:420px) {
    .mBoard .tabList li {
        margin-right: 12px;
    }
}

@media all and (max-width:380px) {
    .mBoard .tabList li {
        margin-right: 18px;
    }
}
