﻿@charset "utf-8";

/* ==================================================
    ANIMATION KEYFRAMES
================================================== */
@keyframes visualScrollMove {
    0% {
        transform: translateY(0);
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    85% {
        opacity: 1;
    }
    100% {
        transform: translateY(calc(5.6rem - 20px));
        opacity: 0;
    }
}

.main-popup{
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 1000;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    max-width: 80vw;
    max-height: 80vh;
    border: 1px solid var(--border-color);
    background-color: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.main-popup[hidden]{
    display: none;
}
.main-popup[aria-hidden="true"]{
    pointer-events: none;
}
.main-popup-body{
    display: flex;
    justify-content: center;
    flex-shrink: 0;
    min-height: 0;
}
.main-popup-body a,
.main-popup-body img{
    display: block;
    max-width: 100%;
}
.main-popup-body img{
    width: auto;
    height: auto;
    object-fit: contain;
}
.main-popup-footer{
    --control-icon-size: 24px;
    --control-gap: 6px;
    --control-label-font-size: 14px;
    --control-label-color: var(--grey-base);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    box-sizing: border-box;
    gap: 8px 12px;
    min-height: 44px;
    padding: 8px min(16px, 4%);
    background-color: #eee;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.main-popup-footer .control-primary{
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}
.main-popup-footer .control-primary label{
    min-width: 0;
}
.main-popup-footer .control-primary label p{
    overflow-wrap: anywhere;
}
.main-popup-footer input:focus-visible + label{
    outline: 2px solid var(--focus-border-color);
    outline-offset: 3px;
}
.main-popup-close{
    display: flex;
    align-items: center;
    flex-shrink: 0;
    gap: 6px;
    padding: 4px 0;
    background-color: transparent;
    color: var(--grey-base);
    font-size: 14px;
}
.main-popup-close::after{
    content: "";
    width: 14px;
    height: 14px;
    background: url(../../images/portal/icon/modal-close.svg) center / contain no-repeat;
}

.main-section{
    width: 100%;
    overflow: hidden;
}
.main-section-tit{
    margin-bottom: 5.6rem;
    display: flex;
    align-items: center;
}
.main-section-tit>h2{
    font-size: var(--tit-font-size-lg);
    font-weight: 700;
    color: var(--grey-darken2);
}
.main-section-tit .main-more{
    display: flex;
    align-items: center;
    gap: 0 .8rem;
    padding: 0 1.6rem;
    height: var(--btn-height-sm);
    border-radius: 999px;
    margin-left: auto;
    font-size: var(--txt-font-size);
    font-weight: 600;
    color: var(--primary-darken1);
    background-color: var(--primary-lighten5);
    transition: var(--transition);
}
.main-section-tit.sm{
    margin-bottom: 2rem;
}
.main-section-tit.sm>h2{
    font-size: var(--tit-font-size);
}
.main-section-tit.dark>h2{
    color: #fff;
}
.main-section-tit.dark .main-more{
    background-color: rgba(255, 255, 255, .2);
    color: #fff;
}
@media screen and (min-width: 1201px){
    .main-section-tit .main-more:hover{
        background-color: var(--primary-lighten3);
    }
    .main-section-tit.dark .main-more:hover{
        background-color: rgba(255, 255, 255, .4);
    }
}

.visual-area{
    --main-quick-height: 9.6rem;
}
.visual[data-mobl-yn="Y"]{
    display: none;
}
@media screen and (min-width: 1029px){
    .visual-area.no-pc-visual .main-quick-list{
        margin-top: 0;
    }
}
.visual{
    --swiper-pagination-bullet-horizontal-gap: 0;
    --swiper-pagination-bullet-width: 1.2rem;
    --swiper-pagination-bullet-height: 1.2rem;
    --swiper-pagination-bullet-inactive-color: #aaa;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-color: var(--primary-lighten1);
    --swiper-pagination-bullet-border-radius: 999px;
    --pagination-bullet-active-width: 4rem;
    --pagination-bullet-gap: 1rem;
    --visual-slide-count: 1;

    position: relative;
    width: calc(100% - 18rem);
    max-width: 1920px;
    margin: 0 auto;
    border-radius: 5.6rem;
    overflow: hidden;
}
.visual .visual-control-w{
    pointer-events: none;
    position: absolute;
    z-index: 5;
    bottom: calc((var(--main-quick-height) / 2) + 7rem);
    left: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
}
.visual .visual-control{
    display: flex;
    align-items: center;
    gap: 0 1.2rem;
    padding: 0 .8rem;
}
.visual .swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal{
    position: static;
    display: flex;
    align-items: center;
    gap: 0 var(--pagination-bullet-gap);
    width: auto;
    min-width: calc(
        (var(--visual-slide-count) - 1) * var(--swiper-pagination-bullet-width)
        + var(--pagination-bullet-active-width)
        + (var(--visual-slide-count) - 1) * var(--pagination-bullet-gap)
    );
}
.visual .swiper-pagination-bullet{
    transition: var(--transition);
}
.visual .swiper-pagination-bullet-active{
    width: var(--pagination-bullet-active-width);
}

.visual .visual-control .visual-control-btn-w{
    display: flex;
}
.visual .visual-control .swiper-pagination,
.visual .visual-control .visual-control-btn-w{
    pointer-events: auto;
}
.slide-btn{
    width: clamp(24px, 3.2rem, 3.2rem);
    min-width: clamp(24px, 3.2rem, 3.2rem);
    height: clamp(24px, 3.2rem, 3.2rem);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    transition: var(--transition);
}
.slide-btn.dark{
    background-color: rgba(29, 29, 29, .8);
}
.slide-btn.next.swiper-button-disabled,
.slide-btn.prev.swiper-button-disabled{
    opacity: .5;
    cursor: default;
}
.slide-btn.pause,
.slide-btn.play{
    display: none;
}
.slide-btn.pause.active,
.slide-btn.play.active{
    display: flex;
}

.visual .visual-slide{
    overflow: hidden;
}
.visual-banner{
    width: 100%;
    height: 0;
    padding-top: calc((650 / 1725) * 100%);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform .8s linear;
}
.visual-contents{
    position: absolute;
    width: 100%;
    max-width: calc(var(--container) + (var(--container-gutter) * 2));
    padding: 0 var(--container-gutter) 6.4rem;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding-bottom: 2rem;
}
.visual .visual-banner-link{
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    box-sizing: border-box;
}
.visual .visual-banner-link ~ .visual-contents{
    z-index: 2;
    pointer-events: none;
}
.visual .visual-banner-link ~ .visual-contents :is(a, button, input, select, textarea, label, summary, iframe, video[controls], audio[controls], [role="button"], [tabindex], [contenteditable="true"]){
    pointer-events: auto;
}
.visual .visual-tit{
    font-size: 5.4rem;
    font-weight: 700;
    color: var(--primary-darken1);
    text-shadow: 0 0 .8rem rgba(255, 255, 255, .4);
    white-space: pre-line;
}
.visual .visual-btn{
    margin-top: 1.6rem;
    padding: 0 1.6rem;
    width: fit-content;
    height: clamp(28px, 4rem, 4rem);
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 .8rem;
    background-color: var(--primary-base);
    color: #fff;
    font-size: var(--txt-font-size);
    font-weight: 600;
    transition: var(--transition);
}
.visual .visual-scroll{
    pointer-events: none;
    position: absolute;
    z-index: 5;
    top: 50%;
    left: 3.6rem;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px 0;
}
.visual .visual-scroll>p{
    writing-mode: vertical-rl;
    font-size: 1.7rem;
    font-weight: 500;
    color: var(--primary-darken1);
}
.visual .visual-scroll .scroll-animation{
    position: relative;
    display: block;
    width: 2px;
    height: 5.6rem;
    border-radius: 999px;
    background-color: rgba(206, 181, 255, .6);
    overflow: hidden;
}
.visual .visual-scroll .scroll-animation .scroll-animation-inner{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2rem;
    border-radius: 999px;
    background-color: var(--primary-darken1);
    animation: visualScrollMove 1.8s var(--timing-function) infinite;
}

.main-quick-list{
    position: relative;
    z-index: 5;
    border-radius: 3.2rem;
    padding: 2rem;
    background-color: #fff;
    box-shadow: 0 1.8rem 4.8rem rgba(206, 181, 255, .3);
    display: flex;
    gap: 0 2rem;
    margin-top: calc(var(--main-quick-height) * -.5);
}
.main-quick-list>li{
    flex: 1 1 calc((100% - 6rem) / 4);
    max-width: calc((100% - 6rem) / 4);
    display: block;
}
.main-quick-list .main-quick-btn{
    height: 100%;
    min-height: 5.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 .8rem;
    font-size: clamp(16px, 2.2rem, 2.2rem);
    text-align: center;
    color: var(--grey-darken2);
    font-weight: 600;
    border-radius: 2rem;
    transition: var(--transition);
}
@media screen and (min-width: 1201px){
    .visual .swiper-pagination-bullet:hover{
        background-color: var(--primary-lighten1);
    }
    .slide-btn:not(.swiper-button-disabled):hover{
        background-color: rgba(255, 255, 255, .4);
    }
    .visual .visual-btn:hover{
        background-color: var(--primary-darken1);
    }
    .main-quick-list .main-quick-btn:hover{
        background-color: var(--primary-darken1);
        color: #fff;
        box-shadow: 0 0 1.6rem rgba(0, 0, 0, .2);
    }
}
@media screen and (max-width: 1599px){
    .visual .visual-scroll{
        display: none;
    }
    .visual{
        width: 100%;
        border-radius: 0;
    }
    .visual .visual-control-w{
        bottom: calc((var(--main-quick-height) / 2) + 2rem);
    }
}
@media screen and (max-width: 1439px){
}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1028px){
    .visual[data-mobl-yn="N"]{
        display: none;
    }
    .visual[data-mobl-yn="Y"]{
        display: block;
    }
    .visual-area.no-mobile-visual .main-quick-list{
        margin-top: 0;
    }
    .visual-area{
        --main-quick-height: calc(clamp(32px, 4.8rem, 4.8rem) + (var(--txt-font-size-lg) * 1.5) + 5.6rem);
    }
    .visual .visual-tit{
        font-size: var(--tit-font-size-lg);
    }
    .main-quick-list .main-quick-btn{
        height: auto;
        padding: .4rem;
        flex-direction: column;
    }
    .main-quick-list .main-quick-btn>span{
        display: block;
        margin-top: .8rem;
        font-size: var(--txt-font-size-lg);
    }
    .visual-banner{
        padding-top: calc((590 / 640) * 100%);
    }
    .visual .visual-control-w{
        top: unset;
        left: 50%;
        transform: translateX(-50%);
    }
    .visual .visual-control{
        width: fit-content;
        margin: 0 auto;
        background-color: rgba(255, 255, 255, .32);
        border-radius: 999px;
        padding-left: 1.6rem;
    }
}
@media screen and (max-width: 767px){
    .visual-area{
        --main-quick-height: calc(clamp(32px, 4.8rem, 4.8rem) + (var(--txt-font-size) * 2.4) + 5.6rem);
    }
    .visual .visual-contents{
        text-align: center;
        padding: 0 var(--container-gutter) calc((var(--main-quick-height) / 2) + 1.6rem);
    }
    .visual .visual-btn{
        margin: 1.6rem auto 0;
    }
    .main-quick-list{
        gap: 0;
    }
    .main-quick-list>li{
        flex: 1 1 25%;
        max-width: 25%;
    }
    .main-quick-list .main-quick-btn{
        font-size: var(--txt-font-size);
    }
    .main-quick-list .main-quick-btn>span{
        min-height: calc(var(--txt-font-size) * 2.4);
        line-height: 1.2;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
@media screen and (max-width: 576px){
    .visual-area{
        --main-quick-height: calc(clamp(32px, 4.8rem, 4.8rem) + (var(--txt-font-size-sm) * 2.4) + 5.6rem);
    }
    .main-quick-list .main-quick-btn{
        font-size: var(--txt-font-size-sm);
    }
    .main-quick-list .main-quick-btn>span{
        min-height: calc(var(--txt-font-size-sm) * 2.4);
    }
}
@media screen and (max-width: 424px){
    .main-quick-list{
        flex-wrap: wrap;
        gap: 1rem;
    }
    .main-quick-list>li{
        flex: 1 1 calc(50% - .5rem);
        max-width: calc(50% - .5rem);
    }
}

/* section1 */
.main-section1{
    position: relative;
    padding: 4rem 0;
}
.main-section1::before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100% - 10rem);
    background-image: url(../../images/portal/main/s1-bg.jpg);
    background-position: center top;
    background-size: 1920px auto;
    background-repeat: no-repeat;
}
.main-section1 .container{
    position: relative;
    z-index: 1;
}
.main-mem-tit{
    position: relative;
    text-align: center;
    margin-bottom: 6.4rem;
    padding-top: 10.4rem;
}
.main-mem-tit::before{
    content: "";
    display: block;
    position: absolute;
    width: 2px;
    height: 8rem;
    border-radius: 999px;
    background-image: linear-gradient(transparent, var(--primary-base));
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.main-mem-tit>h2{
    font-size: var(--tit-font-size-lg);
    color: var(--primary-darken1);
    font-weight: 700;
}
.main-mem-item-list{
    display: flex;
    justify-content: center;
    gap: 4rem;
    max-width: 110rem;
    margin: 0 auto;
}
.main-mem-item-list>li{
    flex: 1 1 calc((100% - 8rem) / 3);
    max-width: calc((100% - 8rem) / 3);
    display: block;
}
.main-mem-item-list>li .main-mem-item{
    position: relative;
    display: block;
    border-radius: 200px 200px 2.4rem 2.4rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 11.2rem 2rem;
    height: 100%;
    color: #fff;
    text-align: center;
    overflow: hidden;
}
.main-mem-item-list>li .main-mem-item::before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(59, 34, 120, .8);
    transition: var(--transition);
}
.main-mem-item-list>li .main-mem-item .main-mem-item-inner{
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
}
.main-mem-item-list>li .main-mem-item .main-mem-item-inner>strong{
    display: block;
}
.main-mem-item-list>li .main-mem-item .main-mem-item-tit{
    width: 100%;
    overflow-wrap: anywhere;
    font-size: var(--tit-font-size);
    font-weight: 700;
    line-height: 1.2;
}
.main-mem-item-list>li .main-mem-item .main-mem-item-divider{
    display: block;
    width: 20rem;
    max-width: 100%;
    height: 1px;
    background-color: #fff;
    margin: 1.6rem auto;
}
.main-mem-item-list>li .main-mem-item .main-mem-item-txt{
    font-size: var(--txt-font-size);
    font-weight: 500;
}
@media screen and (min-width: 1201px){
    .main-mem-item-list>li .main-mem-item::before{
        opacity: 0;
        visibility: hidden;
    }
    .main-mem-item-list>li .main-mem-item::after{
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: linear-gradient(transparent, var(--primary-darken1));
        transition: var(--transition);
    }
    .main-mem-item-list>li .main-mem-item .main-mem-item-inner{
        padding-top: var(--main-mem-title-height, calc(var(--tit-font-size) * 1.2));
    }
    .main-mem-item-list>li .main-mem-item .main-mem-item-tit{
        position: absolute;
        top: calc(100% + 9rem - var(--main-mem-title-height, calc(var(--tit-font-size) * 1.2)));
        left: 50%;
        transform: translateX(-50%);
        transition: top .6s var(--timing-function);
    }
    .main-mem-item-list>li .main-mem-item .main-mem-item-divider{
        transform-origin: center;
        transform: scaleX(0);
        opacity: 0;
        visibility: hidden;
        transition: var(--transition);
    }
    .main-mem-item-list>li .main-mem-item .main-mem-item-txt{
        opacity: 0;
        visibility: hidden;
        transition: var(--transition);
    }
    .main-mem-item-list>li .main-mem-item:hover::before{
        opacity: 1;
        visibility: visible;
    }
    .main-mem-item-list>li .main-mem-item:hover::after{
        opacity: 0;
        visibility: hidden;
    }
    .main-mem-item-list>li .main-mem-item:hover .main-mem-item-tit{
        top: 0;
        transition-delay: 0s;
    }
    .main-mem-item-list>li .main-mem-item:hover .main-mem-item-divider{
        transform: scaleX(1);
        opacity: 1;
        visibility: visible;
        transition-delay: .15s;
    }
    .main-mem-item-list>li .main-mem-item:hover .main-mem-item-txt{
        opacity: 1;
        visibility: visible;
        transition-delay: .15s;
    }
}
@media screen and (max-width: 1439px){
}
@media screen and (max-width: 1200px){
    .main-mem-item-list>li .main-mem-item{
        padding: 8rem 1.6rem 5rem;
    }
}
@media screen and (max-width: 1028px){
    .main-mem-item-list{
        max-width: 32rem;
        margin: 0 auto;
        flex-wrap: wrap;
    }
    .main-mem-item-list>li{
        flex: 1 1 100%;
        max-width: 100%;
    }
    .main-mem-item-list>li .main-mem-item{
        border-radius: 25rem 25rem 2.4rem 2.4rem;
        min-height: 33.3rem;
    }
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 576px){
}

/* section2 */
.main-section2{
    padding: 8rem 0;
    background-image: url(../../images/portal/main/s2-bg.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.main-sup-item-list{
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}
.main-sup-item-list>li{
    flex: 1 1 calc((100% - 4rem) / 3);
    max-width: calc((100% - 4rem) / 3);
    display: block;
}
.main-sup-item-list>li .main-sup-item{
    display: flex;
    align-items: center;
    gap: 0 2rem;
    height: 100%;
    min-height: calc((var(--tit-font-size-sm) * 1.5) + (var(--txt-font-size) * 1.5) + 4px + 6.4rem);
    padding: 3.2rem;
    border-radius: 2rem;
    background-color: #fff;
    transition: var(--transition);
}
.main-sup-item-list>li .main-sup-item>img{
    display: block;
    width: clamp(40px, 5.6rem, 5.6rem);
    min-width: clamp(40px, 5.6rem, 5.6rem);
    height: clamp(40px, 5.6rem, 5.6rem);
}
.main-sup-item-list>li .main-sup-item .main-sup-item-contents{
    display: block;
    flex-basis: 0;
    flex-grow: 1;
}
.main-sup-item-list>li .main-sup-item .main-sup-item-contents>strong{
    display: block;
    font-size: var(--tit-font-size-sm);
    font-weight: 600;
    color: var(--grey-darken2);
}
.main-sup-item-list>li .main-sup-item .main-sup-item-contents>span{
    display: block;
    font-size: var(--txt-font-size);
    font-weight: 400;
    color: var(--grey-base);
    margin-top: 4px;
}
.main-sup-item-list>li .main-sup-item.primary{
    background-color: var(--primary-base);
    position: relative;
}
.main-sup-item-list>li .main-sup-item.primary::after{
    content: "";
    display: block;
    width: clamp(28px, 4rem, 4rem);
    height: clamp(28px, 4rem, 4rem);
    border-radius: 50%;
    background-color: rgba(255, 255, 255, .2);
    background-image: url(../../images/portal/icon/icon-chevron-white.svg);
    background-size: var(--icon-size) auto;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: calc(3rem + 2px);
    transform: translateY(-50%);
}
.main-sup-item-list>li .main-sup-item.primary .main-sup-item-contents>strong{
    font-weight: 700;
    color: #fff;
    padding-right: calc(clamp(28px, 4rem, 4rem) + .8rem);
}
@media screen and (min-width: 1201px){
    .main-sup-item-list>li .main-sup-item:hover{
        background-color: var(--secondary-lighten5);
    }
    .main-sup-item-list>li .main-sup-item.primary:hover{
        background-color: var(--primary-darken1);
    }
}
@media screen and (max-width: 1439px){
}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1028px){
    .main-sup-item-list>li{
        flex: 1 1 calc((100% - 2rem) / 2);
        max-width: 100%;
    }
}
@media screen and (max-width: 767px){
    .main-sup-item-list>li{
        flex: 1 1 100%;
    }
}
@media screen and (max-width: 576px){
}

/* 공지와 공유 / 주요일정 / 유관기관 바로가기 */
.main-section3{
    padding: 8rem 0;
}
.main-notice-area{
    --cardnews-tit-size: clamp(16px, 2rem, 2rem);
    --cardnews-tit-height: calc((var(--cardnews-tit-size) * 1.5 * 2) + 3.2rem);
    --cardnews-card-height: calc((100cqw * 244 / 440) + var(--cardnews-tit-height));
    display: flex;
    flex-wrap: wrap;
    gap: 4rem;
    align-items: flex-start;
}
.main-notice-w,
.main-cardnews-w,
.main-schedule-w{
    flex: 1 1 calc((100% - 8rem) / 3);
    max-width: calc((100% - 8rem) / 3);
    min-width: 0;
    display: flex;
    flex-direction: column;
    container-type: inline-size;
}
html[lang="en"] .main-notice-w .main-section-tit{
    column-gap: .8rem;
}
html[lang="en"] .main-notice-w .main-section-tit>h2{
    flex: 1 1 0;
    min-width: 0;
}
html[lang="en"] .main-notice-w .main-section-tit .main-more{
    flex: 0 0 auto;
    white-space: nowrap;
}
html[lang="en"] .main-notice-w .main-section-tit .main-more>.icon{
    flex: 0 0 auto;
}
.main-notice{
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    height: var(--cardnews-card-height);
    border-top: 2px solid var(--border-color);
}
.main-notice>li{
    display: block;
    flex: 0 0 25%;
    height: auto;
    border-bottom: 1px solid var(--border-color);
}
.main-notice:has(span.main-notice-link)>li{
    flex-basis: 0;
    flex-grow: 1;
}
.main-notice>li span.main-notice-link{
    width: 100%;
    justify-content: center;
    text-align: center;
}
.main-notice>li .main-notice-link{
    display: flex;
    align-items: center;
    height: 100%;
    padding: 2rem;
}
.main-notice>li .main-notice-link>strong{
    display: block;
    flex-basis: 0;
    flex-grow: 1;
    max-width: calc(100% - clamp(72px, 9.4rem, 9.4rem));
    font-size: clamp(16px, 2rem, 2rem);
    font-weight: 700;
    color: var(--grey-darken2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: var(--transition);
}
html[lang="ru"] .main-notice>li span.main-notice-link>strong{
    max-width: 100%;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    overflow-wrap: anywhere;
}
.main-notice>li .main-notice-link>span{
    display: block;
    flex: 0 0 auto;
    text-align: right;
    font-size: var(--txt-font-size-sm);
    color: var(--grey-base);
    min-width: clamp(72px, 9.4rem, 9.4rem);
}

.main-cardnews-count{
    margin-left: .8rem;
    font-size: clamp(16px, 2rem, 2rem);
    font-weight: 700;
    color: var(--grey-darken2);
}
.main-cardnews-count .current{
    color: var(--primary-base);
}
.main-cardnews{
    --thumb-ratio: calc(244 / 440 * 100%);
    position: relative;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    border-radius: 2rem;
    background-color: #fff;
    box-shadow: 0 0 1.6rem rgba(92, 60, 171, .2);
    overflow: hidden;
}
.main-cardnews .thumb{
    border-radius: 2rem 2rem 0 0;
}
.main-cardnews-slide{
    flex: 0 0 auto;
    width: 100%;
}
.main-cardnews-slide .swiper-wrapper,
.main-cardnews-slide .swiper-slide{
    height: auto;
}
.main-cardnews-link{
    display: flex;
    flex-direction: column;
}
.main-cardnews-contents{
    flex: 0 0 auto;
    padding: 1.6rem 2rem;
}
.main-cardnews-tit{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: calc(var(--cardnews-tit-size) * 1.5 * 2);
    font-size: var(--cardnews-tit-size);
    font-weight: 700;
    text-align: center;
    color: var(--grey-darken2);
    word-break: keep-all;
    transition: var(--transition);
}
.main-cardnews-control{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    padding-top: var(--thumb-ratio);
    pointer-events: none;
    z-index: 2;
}
.main-cardnews-control .slide-btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: auto;
    width: clamp(28px, 4rem, 4rem);
    height: clamp(28px, 4rem, 4rem);
}
.main-cardnews-control .slide-btn.prev{
    left: 2rem;
}
.main-cardnews-control .slide-btn.next{
    right: 2rem;
}
.main-schedule{
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    height: var(--cardnews-card-height);
    border-radius: 2rem;
    padding: 2.4rem;
    background-color: #fff;
    box-shadow: 0 0 1.6rem rgba(92, 60, 171, .2);
}
.main-schedule .main-schedule-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 1.6rem;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid var(--border-color);
}
.main-schedule .main-schedule-month{
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    width: clamp(152px, 20.2rem, 20.2rem);
    margin-bottom: 0;
}
.main-schedule .main-schedule-month>strong{
    flex-basis: 0;
    flex-grow: 1;
    display: block;
    font-size: var(--tit-font-size-sm);
    font-weight: 700;
    color: var(--grey-darken2);
    text-align: center;
}
.main-schedule .main-schedule-month .slide-btn{
    background-color: var(--primary-lighten5);
    width: clamp(28px, 4rem, 4rem);
    min-width: clamp(28px, 4rem, 4rem);
    height: clamp(28px, 4rem, 4rem);
}
.main-schedule select.input-primary{
    flex: 0 0 auto;
    width: 15.2rem;
}
.main-schedule-body{
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}
.main-schedule-blank{
    flex: 1 1 0;
    min-height: 0;
    border-radius: .8rem;
    background-color: var(--grey-lighten5);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--grey-lighten5);
    font-size: var(--txt-font-size);
    color: var(--grey-darken2);
}
.main-schedule .main-schedule-list{
    flex: 1 1 0;
    min-height: 0;
    display: block;
    padding-right: 2rem;
    overflow-x: hidden;
    overflow-y: auto;
}
.main-schedule .main-schedule-list::-webkit-scrollbar{
    width: var(--scrollbar-width);
}
.main-schedule .main-schedule-list::-webkit-scrollbar-track{
    background-color: var(--scrollbar-track-color);
    border-radius: 999px;
}
.main-schedule .main-schedule-list::-webkit-scrollbar-thumb{
    background-color: var(--scrollbar-thumb-color);
    border-radius: 999px;
}
.main-schedule .main-schedule-list::-webkit-scrollbar-button{
    display: none;
}
.main-schedule .main-schedule-list>li{
    display: block;
}
.main-schedule .main-schedule-list>li + li{
    margin-top: .8rem;
}
.main-schedule-row{
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: start;
    gap: .4rem 1.6rem;
    padding: 1.6rem 0;
    border-radius: .8rem;
    transition: var(--transition);
}
.main-schedule-date{
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: var(--txt-font-size);
    font-weight: 700;
    color: var(--grey-darken2);
}
.main-schedule-title{
    grid-column: 2;
    grid-row: 2;
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    font-size: var(--txt-font-size);
    color: var(--grey-darken2);
}
.main-schedule-title-text{
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.main-schedule-ongoing{
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 4px;
    padding: 0 .8rem;
    height: clamp(20px, 2.4rem, 2.4rem);
    border-radius: 999px;
    background-color: var(--primary-darken1);
    color: #fff;
    font-size: var(--txt-font-size-sm);
    font-weight: 700;
}
.main-schedule .main-schedule-list>li .main-schedule-label{
    grid-row: 1 / 3;
    align-self: center;
    flex: 0 0 auto;
    padding: 0 1.2rem;
    min-width: clamp(44px, 7.2rem, 7.2rem);
    height: clamp(22px, 3rem, 3rem);
    border-radius: 999px;
    background-color: var(--grey-lighten5);
    color: var(--grey-base);
    font-size: var(--txt-font-size-sm);
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
}
.main-schedule .main-schedule-list>li .main-schedule-label.grey{
    background-color: var(--grey-lighten4);
    color: var(--grey-darken2);
}
.main-schedule .main-schedule-list>li .main-schedule-label.brown{
    background-color: #FFE0D8;
    color: #923720;
}
.main-schedule .main-schedule-list>li .main-schedule-label.blue{
    background-color: #E7EDFB;
    color: #193E94;
}
.main-schedule .main-schedule-list>li .main-schedule-label.purple{
    background-color: #E6DDFF;
    color: #3A296B;
}
.main-schedule .main-schedule-list>li .main-schedule-label.rose{
    background-color: #FDE4EA;
    color: #8F2A45;
}
.main-schedule .main-schedule-list>li .main-schedule-label.teal{
    background-color: #D9F2EE;
    color: #146357;
}
.main-schedule .main-schedule-list>li .main-schedule-label.green{
    background-color: #E4F0D9;
    color: #3A5F1F;
}
.main-schedule .main-schedule-list>li .main-schedule-label.amber{
    background-color: #FFF0D4;
    color: #8A5A10;
}
.main-schedule .main-schedule-list>li .main-schedule-label.magenta{
    background-color: #F8E0F0;
    color: #7A2D5E;
}
.main-schedule .main-schedule-list>li .main-schedule-label.cyan{
    background-color: #D7F0FA;
    color: #155E75;
}
.main-schedule .main-schedule-list>li .main-schedule-label.olive{
    background-color: #EEF0D8;
    color: #5A621E;
}
.main-schedule .main-schedule-list>li .main-schedule-label.slate{
    background-color: #E4E9F2;
    color: #3D4A66;
}
.main-schedule .main-schedule-list>li .main-schedule-label.taupe{
    background-color: #F3E8E4;
    color: #6E4B42;
}
.main-schedule-empty{
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    padding: 4rem 0;
    text-align: center;
    color: var(--grey-base);
    font-size: var(--txt-font-size);
    border-bottom: none;
}

.main-org{
    margin-top: 8rem;
    display: flex;
    align-items: center;
    gap: 0 4rem;
}
.main-org .main-org-head{
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 0 1.2rem;
}
.main-org .main-org-head>h2{
    font-size: var(--tit-font-size);
    font-weight: 700;
    white-space: nowrap;
}
.main-org .main-org-control{
    display: none;
    align-items: center;
    gap: 0 .8rem;
}
.main-org .main-org-control .slide-btn{
    background-color: var(--primary-lighten5);
    width: clamp(28px, 4rem, 4rem);
    min-width: clamp(28px, 4rem, 4rem);
    height: clamp(28px, 4rem, 4rem);
}
.main-org .main-org-slide{
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    padding: 1.6rem;
    margin: -1.6rem;
}
.main-org .main-org-list{
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}
.main-org .main-org-list>li{
    flex: 1 1 0;
    max-width: calc((100% - 4rem) / 3);
    display: block;
}
.main-org-list .main-org-link{
    display: block;
    width: 100%;
    padding: 1.6rem;
    border-radius: 2rem;
    background-color: #fff;
    box-shadow: 0 0 1.6rem rgba(92, 60, 171, .2);
    transition: var(--transition);
}
.main-org-list .main-org-link>img{
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 31.4rem;
}
@media screen and (min-width: 1029px){
    .main-schedule-row{
        padding: 1.6rem 2rem;
        min-width: 0;
    }
    .main-schedule-title{
        display: inline-flex;
        justify-self: start;
        width: auto;
        min-width: 0;
        max-width: 100%;
    }
    .main-schedule-title-text{
        flex: 0 1 auto;
    }
    .main-schedule-row:hover .main-schedule-title{
        display: inline-block;
        overflow: visible;
        white-space: normal;
        max-width: 100%;
    }
    .main-schedule-row:hover .main-schedule-title-text{
        display: inline;
        overflow: visible;
        text-overflow: unset;
        white-space: normal;
    }
    .main-schedule-row:hover .main-schedule-ongoing{
        display: inline-flex;
    }
}
@media screen and (min-width: 1201px){
    .main-notice>li a.main-notice-link:hover>strong{
        color: var(--primary-base);
    }
    .main-cardnews-link:hover .main-cardnews-tit{
        color: var(--primary-base);
    }
    .slide-btn.dark:not(.swiper-button-disabled):hover{
        background-color: rgba(29, 29, 29, 1);
    }
    .main-schedule .main-schedule-month .slide-btn:hover{
        background-color: var(--primary-lighten3);
    }
    .main-org-list .main-org-link:hover{
        background-color: var(--primary-lighten4);
    }
    .main-org .main-org-control .slide-btn:hover{
        background-color: var(--primary-lighten3);
    }
}
@media screen and (min-width: 768px){
    .main-org .main-org-list{
        height: auto !important;
        transform: none !important;
    }
    .main-org .main-org-list>li{
        height: auto;
        margin: 0 !important;
        width: auto !important;
    }
}
@media screen and (max-width: 1439px){
    .main-notice-w,
    .main-cardnews-w{
        flex: 1 1 calc((100% - 4rem) / 2);
        max-width: calc((100% - 4rem) / 2);
    }
    .main-schedule-w{
        flex: 1 1 100%;
        max-width: 100%;
    }
    .main-schedule{
        height: auto;
    }
    .main-schedule .main-schedule-list,
    .main-schedule-blank{
        flex: 0 0 auto;
        height: 27.2rem;
    }
}
@media screen and (max-width: 1200px){
    .main-org{
        display: block;
    }
    .main-org .main-org-head{
        margin-bottom: 4rem;
    }
    .main-notice>li .main-notice-link{
        padding: 2rem 0;
    }
}
@media screen and (max-width: 767px){
    .main-notice,
    .main-schedule{
        height: auto;
    }
    .main-schedule .main-schedule-list,
    .main-schedule-blank{
        flex: 0 0 auto;
        height: 27.2rem;
    }
    .main-notice-w,
    .main-cardnews-w,
    .main-schedule-w{
        flex: 1 1 100%;
        max-width: 100%;
    }
    .main-org .main-org-head{
        justify-content: space-between;
    }
    .main-org .main-org-control{
        display: flex;
    }
    .main-org .main-org-list{
        flex-wrap: nowrap;
        gap: 0;
    }
    .main-org .main-org-list>li{
        flex: 0 0 auto;
        max-width: none;
        height: auto;
    }
}
@media screen and (max-width: 576px){
}

/* 간편모드 */
.mo-simple-w{
    display: none;
}
@media screen and (max-width: 767px){
    html.mo-simple .visual-area,
    html.mo-simple .main-section{
        display: none;
    }
    html.mo-simple .mo-simple-w{
        min-height: calc(var(--view-height) - var(--header-height));
        display: block;
        background-image: url(../../images/portal/main/mo-simple-bg.jpg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        padding: 8rem var(--container-gutter);
    }
    .mo-simple-w .mo-simple-tit{
        text-align: center;
        font-size: var(--tit-font-size-lg);
        font-weight: 700;
        color: var(--primary-darken1);
        margin-bottom: 4rem;
    }
    .mo-simple-link-list{
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
    }
    .mo-simple-link-list>li{
        flex: 1 1 calc(50% - 1rem);
        display: block;
    }
    .mo-simple-link-list .mo-simple-link{
        border-radius: 2rem;
        padding: 2rem;
        display: flex;
        align-items: flex-start;
        gap: 0 .8rem;
        font-size: var(--txt-font-size-lg);
        font-weight: 700;
        background-color: #F8F6F3;
        border: 1px solid var(--primary-lighten3);
        box-shadow: 0 0 1.6rem rgba(0, 0, 0, .2);
    }
    .mo-simple-link-list .mo-simple-link>span{
        flex-basis: 0;
        flex-grow: 1;
        display: block;
        min-height: calc(var(--txt-font-size-lg) * 3);
    }
    .mo-simple-link-list .mo-simple-link>img{
        display: block;
        width: calc(var(--txt-font-size-lg) * 3);
    }
    .mo-simple-arrow-link-list{
        margin-top: 4rem;
        display: block;
        background-color: #fff;
        border-radius: 2rem;
        box-shadow: 0 0 1.6rem rgba(0, 0, 0, .2);
    }
    .mo-simple-arrow-link-list>li{
        display: block;
    }
    .mo-simple-arrow-link-list>li + li{
        border-top: 1px solid var(--border-color);
    }
    .mo-simple-arrow-link-list .mo-simple-arrow-link{
        display: flex;
        align-items: center;
        gap: 0 1.6rem;
        padding: 2rem calc(clamp(24px, 3.2rem, 3.2rem) + 4rem) 2rem 2rem;
        font-size: var(--txt-font-size-lg);
        font-weight: 600;
        color: var(--grey-darken2);
        position: relative;
    }
    .mo-simple-arrow-link-list .mo-simple-arrow-link::before{
        content: '';
        position: absolute;
        top: 50%;
        right: 1.6rem;
        transform: translateY(-50%);
        width: clamp(24px, 3.2rem, 3.2rem);
        height: clamp(24px, 3.2rem, 3.2rem);
        background-image: url(../../images/portal/icon/icon-chevron.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    .mo-simple-arrow-link-list .mo-simple-arrow-link>img{
        display: block;
        width: calc(var(--txt-font-size-lg) * 3);
        border-radius: 1.6rem;
        background-color: var(--grey-lighten5);
    }
    .mo-simple-row-link-list{
        margin-top: 2rem;
        background-color: #fff;
        border-radius: 2rem;
        padding: 2rem;
        display: flex;
        box-shadow: 0 0 1.6rem rgba(0, 0, 0, .2);
    }
    .mo-simple-row-link-list>li{
        flex: 1 1 0;
        width: 50%;
        max-width: 50%;
        position: relative;
    }
    .mo-simple-row-link-list>li + li{
        border-left: 1px solid var(--border-color);
    }
    .mo-simple-row-link-list .mo-simple-row-link{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0 .8rem;
        font-size: var(--txt-font-size-lg);
        font-weight: 700;
    }
    .mo-simple-row-link-list .mo-simple-row-link>img{
        display: block;
        width: clamp(28px, 4rem ,4rem);
    }
}
@media screen and (max-width: 374px){
    .mo-simple-link-list .mo-simple-link{
        font-size: var(--txt-font-size);
    }
    .mo-simple-link-list .mo-simple-link>span{
        min-height: calc(var(--txt-font-size) * 3);
    }
    .mo-simple-link-list .mo-simple-link>img{
        width: calc(var(--txt-font-size) * 3);
    }
    .mo-simple-arrow-link-list .mo-simple-arrow-link{
        font-size: var(--txt-font-size);
    }
    .mo-simple-arrow-link-list .mo-simple-arrow-link>img{
        width: calc(var(--txt-font-size) * 3);
    }
    .mo-simple-row-link-list .mo-simple-row-link{
        font-size: var(--txt-font-size);
    }
}

html[lang="fa"] main[dir="rtl"] .main-section-tit .main-more{
    margin-left: 0;
    margin-right: auto;
}
html[lang="fa"] main[dir="rtl"] .slide-btn.prev>.icon,
html[lang="fa"] main[dir="rtl"] .slide-btn.next>.icon,
html[lang="fa"] main[dir="rtl"] .main-more>.icon,
html[lang="fa"] main[dir="rtl"] .visual-btn>.icon{
    transform: scaleX(-1);
}
html[lang="fa"] main[dir="rtl"] .visual .visual-btn{
    margin-left: auto;
    margin-right: 0;
}
html[lang="fa"] main[dir="rtl"] .main-sup-item-list>li .main-sup-item.primary::after{
    right: auto;
    left: calc(3rem + 2px);
    transform: translateY(-50%) scaleX(-1);
}
html[lang="fa"] main[dir="rtl"] .main-sup-item-list>li .main-sup-item.primary .main-sup-item-contents>strong{
    padding-right: 0;
    padding-left: calc(clamp(28px, 4rem, 4rem) + .8rem);
}
html[lang="fa"] main[dir="rtl"] .main-cardnews-count{
    margin-left: 0;
    margin-right: .8rem;
    direction: ltr;
    unicode-bidi: isolate;
}
html[lang="fa"] main[dir="rtl"] .main-cardnews-control .slide-btn.prev{
    left: auto;
    right: 2rem;
}
html[lang="fa"] main[dir="rtl"] .main-cardnews-control .slide-btn.next{
    right: auto;
    left: 2rem;
}
html[lang="fa"] main[dir="rtl"] .main-schedule .main-schedule-list{
    padding-right: 0;
    padding-left: 2rem;
}
html[lang="fa"] main[dir="rtl"] .main-schedule-ongoing{
    margin-left: 0;
    margin-right: 4px;
}
@media screen and (max-width: 767px){
html[lang="fa"] main[dir="rtl"] .mo-simple-arrow-link-list .mo-simple-arrow-link{
    padding: 2rem 2rem 2rem calc(clamp(24px, 3.2rem, 3.2rem) + 4rem);
}
html[lang="fa"] main[dir="rtl"] .mo-simple-arrow-link-list .mo-simple-arrow-link::before{
    right: auto;
    left: 1.6rem;
    transform: translateY(-50%) scaleX(-1);
}
html[lang="fa"] main[dir="rtl"] .mo-simple-row-link-list>li + li{
    border-left: 0;
    border-right: 1px solid var(--border-color);
}
}
