a:hover{
    text-decoration: none !important;
}

/*base-font*/
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-ExtraLight.woff') format('woff'); 
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-Regular.woff') format('woff'); 
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-Medium.woff') format('woff'); 
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-SemiBold.woff') format('woff'); 
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-Bold.woff') format('woff'); 
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-ExtraBold.woff') format('woff'); 
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Pretendard'; 
    src: url('Pretendard-Black.woff') format('woff'); 
    font-weight: 900;
    font-style: normal;
}
.xnmain_inner{
    position: relative;
    width:1320px;
    margin:auto;
}
.mg-l10{
    margin-left:10px;
}
/* main_color */
:root{
    --xnmain-primary-color-blue: #2A59A1; 
    --xnmain-primary-color-red: #C62043; 
    --xnmain-primary-color-yellow: #FCAF16; 
    --xnmain-primary-color-green: #0A8F9B; 
    --xnmain-bg-color-gray: #F1F2F6;
    --xnmain-bg-color-dkgray: #888888;
    --xnmain-bg-color-syblue: #EFF4FC;
    --xnmain-bg-color-blue:#1D3278;
    --xnmain-text-888: #888888;
    --xnmain-text-777: #777777;
    --xnmain-text-666: #666666;
    --xnmain-text-555: #5c5c5c;
    --xnmain-text-333: #333333;
    --xnmain-text-222: #222222;
    --xnmain-text-navy: #1D3278; 
    --xnmain-text-dkavy: #0E2239;
    --xnmain-text-skyblue: #CEE1FF;
    --xnmain-bg-footer: #202330;
    --xnmain-border-ddd:#dddddd;
}

/* header */
#header.xnmain{
    position:relative;
    height:145px;
    border-bottom:0;
    background: #FFF;
    box-shadow: 0 -7px 58.2px 0 rgba(0, 0, 0, 0.10);
    font-family: "Pretendard";
    z-index: 10;
}
#header.xnmain .navbar-static-top,
#header.xnmain .navbar-static-top .container .navbar-header,
#header.xnmain .navbar-static-top .container{
    height:145px;
}
#header.xnmain .navbar-static-top .container{
    width:100%;
    max-width:1320px !important;
    max-width:inherit;
}
#header.xnmain .navbar-static-top .container .navbar-header > div:first-of-type{
    display:none;
}
#header.xnmain .navbar-static-top .container .xn-main-menu-wrap{
    flex:1;
    text-align:right;
    height:100%;
}
#header.xnmain .navbar-static-top .container .xn-main-menu-wrap .desktop{
    display:flex;
    align-items:center;
    width:100%;
}
#header.xnmain .navbar-static-top .container .xn-main-menu-wrap .tnb{
    padding: 12px 0 20px 0;
}
#header.xnmain .navbar-static-top .container .xn-main-menu-wrap .tnb > .login_wrap{
    display:inline-flex;
    height:fit-content;
    padding:0 20px;
    
}
#header.xnmain .xn-header-menu-wrapper{
    flex:1;
}
#header.xnmain .xn-header-menu{
    display:flex;
    justify-content: center;
    height:48px;
    flex:1;
}
#header.xnmain .xn-main-catalog-header-logo-wrap{
    margin-top:40px;
}
#header.xnmain .xn-main-catalog-header-logo{
    max-width:432px
}
#header.xnmain .xn-main-catalog-header-logo-image{
    height:54px;
}
#header.xnmain .xn-header-menu li{
    position:relative;
    width:inherit;
}
#header.xnmain .xn-header-menu > li:hover,
#header.xnmain .xnmain_header-menu-dep2 li:hover{
    background:transparent !important;
}
#header.xnmain .xn-header-menu > li:last-of-type::after{
    display:none;
}
#header.xnmain .xn-header-menu > li > a{
    height:48px;
    line-height: 48px;
    color:var(--xnmain-text-333);
    font-size:22px;
    font-weight:600;
    padding:0 17px;
}
/* 헤더 1뎁스 메뉴 - 한국어가 아닐 때 폰트 사이즈 및 라인 하이트 조정 */
body.translated-ltr #header.xnmain .xn-header-menu > li > a,
body.translated-rtl #header.xnmain .xn-header-menu > li > a,
body:not(:lang(ko)) #header.xnmain .xn-header-menu > li > a {
    font-size: 18px !important;
    line-height: 1.3 !important;
    height: auto !important;
    padding: 10px 17px !important;
}
#header.xnmain .xn-header-menu > li > a:hover{
    color:var(--xnmain-primary-color-blue);
}
#header.xnmain .xnmain_header-menu-dep2{
    position:absolute;
    display:none;
    left:50%;
    transform:translateX(-50%);
    width:124px;
    background:var(--xnmain-primary-color-blue);
    border-radius:10px;
}
#header.xnmain .xnmain_header-menu-dep2 li{
    padding:0 !important;
}
#header.xnmain .xnmain_header-menu-dep2 li a{
    height:auto !important;
    font-size:15px;
    color:#fff !important;
    letter-spacing: -0.5px;
    line-height:1.2;
    margin:0;
    padding:12px 0;
    font-weight:500;
}
#header.xnmain .xnmain_header-menu-dep2 li a:hover{
    color:#ffdc7a !important;
}
/* 3depth desktop */
#header.xnmain .xnmain_header-menu-dep2 li.has-dep3{
    position:relative;
}
#header.xnmain .xnmain_header-menu-dep2 li.has-dep3 > a::after{
    content:'';
    display:inline-block;
    width:5px;
    height:5px;
    border-right:1.5px solid #fff;
    border-bottom:1.5px solid #fff;
    transform:rotate(-45deg);
    margin-left:6px;
    vertical-align:middle;
}
#header.xnmain .xnmain_header-menu-dep3{
    display:none;
    position:absolute;
    left:100%;
    top:0;
    min-width:140px;
    background:var(--xnmain-bg-color-gray);
    border-radius:10px;
    padding:8px 0;
    margin-left:4px;
    z-index:1001;
    box-shadow:0 4px 12px rgba(0,0,0,.15);
}
#header.xnmain .xnmain_header-menu-dep3 li{
    padding:0 !important;
    width:100%;
}
#header.xnmain .xnmain_header-menu-dep3 li a{
    display:block;
    width:100%;
    height:auto !important;
    font-size:14px;
    color: var(--xnmain-bg-color-blue) !important;
    letter-spacing:-0.5px;
    line-height:1.2;
    margin:0;
    padding:10px 16px;
    /* font-weight:400; */
    white-space:nowrap;
    text-align:center;
}
#header.xnmain .xnmain_header-menu-dep3 li a:hover{
    color:var(--xnmain-primary-color-green) !important;
}
#header.xnmain .xnmain_header-menu-dep2 li.has-dep3:hover > .xnmain_header-menu-dep3{
    display:block;
}
#header.xnmain .xn-sub-menu-outer-wrapper{
    display:none !important;
}
#header.xnmain .xn-translate_language-title{
    display:none;
}
#header.xnmain .xn-translate_language-select_box:before{
    display: inline-block;
    content:'언어';
}
/* 한국어가 아닐 때 "Language"로 표시 */
body.translated-ltr #header.xnmain .xn-translate_language-select_box:before,
body.translated-rtl #header.xnmain .xn-translate_language-select_box:before,
body:not(:lang(ko)) #header.xnmain .xn-translate_language-select_box:before {
    content:'Language' !important;
}
#header.xnmain .xn-translate_language-select_box{
    width:inherit;
    height:48px;
    font-size:16px;
    font-weight:600;
    color:#fff;
    padding:12px 18px;
    border-radius: 32px;
    background:var(--xnmain-bg-color-dkgray);
    border:0;
    margin-left:10px;
    position: relative;
}
/* 언어 선택 박스 span 요소 표시 (번역 가능하도록) */
#header.xnmain .xn-translate_language-select_box .xn-translate_language-select_box-current-language{
    display: inline-block !important;
}
/* span이 비어있을 때 "언어" 텍스트 표시 */
#header.xnmain .xn-translate_language-select_box .xn-translate_language-select_box-current-language:empty::before{
    content: '언어';
    display: inline-block;
}
/* 영어일 때 "Language" 텍스트 표시 */
#header.xnmain .xn-translate_language-select_box:lang(en) .xn-translate_language-select_box-current-language:empty::before{
    content: 'Language';
}
/* 언어 선택 박스 버튼 내부의 이미지만 숨김 (드롭다운은 제외) */
#header.xnmain .xn-translate_language-select_box .xn-translate_language-image {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}
#header.xnmain .xn-translate_language-select_box i{
    display:none;
}
#header.xnmain .xn-translate_language-select_box:hover{
    background:#666666;
}
#header.xnmain .btn-dropdown-user-menu{
    margin:0;
    padding:0 15px;
    height:36px;
    border-radius: 30px;
    color:var(--xnmain-text) !important;
    border:1px solid var(--xnmain-border-ddd);
    background: transparent !important;
}
#header.xnmain .btn-dropdown-user-menu:hover{
    background: var(--xnmain-bg-light-eee);
}
#header.xnmain .xn-translate_language-select_dropdown{
    border-radius:10px;
    margin-top:5px;
    right: 0;
    left: unset !important;
    top: calc(100% + 6px);
    border: 1px solid #d9d9d9;
    overflow: hidden;
    transform: translate(0, 0) !important;
}
#header.xnmain .xn-translate_language-select_dropdown-item{
    background:none;
}
#header.xnmain .xn-header-member-dropdown-menu{
    border-radius:10px;
    margin-top:5px;
}
#header.xnmain .xn-header-member-dropdown-menu .dropdown-item.xn-logout-btn-wrap{
    border-radius:0 0 10px 10px;
}
#header.xnmain .btn-dropdown-user-menu .xn-header-member-btn-text{
    font-size:14px;
    font-weight:600;
}
#header.xnmain .login_wrap{
    border:1px solid var(--xnmain-border-ddd);
    border-radius:32px;
}
#header.xnmain .btn-login{
    margin:0;
    padding:0 10px 0 0;
    float:inherit;
}
#header.xnmain .btn-join{
    padding:0 0 0 10px;
    border-left: 1px solid var(--xnmain-border-ddd) !important;
}
#header.xnmain .btn-login,
#header.xnmain .btn-join{
    display:flex;
    align-items:center;
    height:36px;
    transition: all .4s;
    font-size: 14px;
    font-weight:600;
    color:var(--xnmain-text-666) !important;
    line-height:normal;
    border:0;
    background: transparent;
}
#header.xnmain .btn-login span,
#header.xnmain .btn-join span{
    display:inline-block;
    width:16px;
    height:16px;
    background-repeat:no-repeat;
    margin-right:10px;
}
#header.xnmain .btn-login:hover,
#header.xnmain .btn-join:hover{
    color:var(--xnmain-text-navy) !important;
}
#header.xnmain .btn-login span{
    background-image:url(xnmain_login_ico.png);
}
#header.xnmain .btn-join span{
    background-image:url(xnmain_join_ico.png);
}
#header.xnmain .top_search,
#header.xnmain .top_lms{
    display:flex;
    align-items:center;
    justify-content: center;
    height:48px;
}
#header.xnmain .top_search{
    width:48px;
    border-radius:50%;
    cursor: pointer;
    background:var(--xnmain-primary-color-green);
}
#header.xnmain .top_search:hover{
    background:#00737e;
}
#header.xnmain .top_lms{
    gap:5px;
    font-size:16px;
    font-weight:600;
    color:#fff;
    border-radius:32px;
    background:var(--xnmain-primary-color-blue);
    padding:12px 18px;
}
#header.xnmain .top_lms:hover{
    background:#113469;
}
#header.xnmain .top_lms span{
    font-size: 24px;
}
#header.on{
    position:sticky;
}

/* visual */
#visual.xnmain{
    position: absolute !important;
    width:1320px;
    height:370px;
    top:60px;
    left:50%;
    transform: translateX(-50%);
    padding:0;
    z-index:10;
    font-family: 'Pretendard';
    background:transparent !important;
}
#visual.xnmain .visual-container{
    width:450px !important;
    height:100% !important;
    padding:0 !important;
    margin:0 !important;
    float:right;
}
#visual.xnmain .visual-container .main-slogan-wrap{
    display:none !important;
}
#visual.xnmain .xn-main-login-container{
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    justify-content: flex-end;
    gap:20px;
    width:100% !important;
    height:100% !important;
    float:inherit !important;
    padding:0 !important;
    background:none !important;
}
#visual.xnmain .xn-main-login-container-title-wrap{
    display:none;
}
#visual.xnmain .xnmain-btn{
    position:relative;
    width:auto !important;
    height:auto !important;
    display:inline-block !important;
    margin-bottom:0 !important;
    background:var(--xnmain-bg-color-gray) !important;
    border-radius: 30px !important;
    border:0 !important;
    padding:35px;
    font-size: 22px !important;
    font-weight:700 !important;
    text-align:left;
    word-break: keep-all;
    transition: all .4s;
}
#visual.xnmain .xnmain-btn p{
    position:relative;
    margin:0;
    z-index:20;
}
#visual.xnmain .xnmain-btn p span{
    display:block;
    font-size: 16px;
    color:var(--xnmain-text-333);
    font-weight:500;
    transition: all .4s;
}
#visual.xnmain .xn-sso-login-btn-wrap a{
    width:100% !important;
    height:100% !important;
    color:#000 !important;
}

#visual.xnmain .xnmain-btn:after{
    position:absolute;
    display:inline-block;
    content:'';
    width:12px;
    height:12px;
    background:var(--xnmain-primary-color-green);
    border-radius:50%;
    right:35px;
    bottom:35px;
    box-shadow: 0 13px 21.9px 0 rgba(0, 0, 0, 0);
    transition: ease-out .4s;
    z-index:19;
}
#visual.xnmain .xnmain-btn .quick_ico{
    display:inline-block;
    position:absolute;
    width:85px;
    height:95px;
    right:20px;
    bottom:20px;
    background-repeat:no-repeat;
    background-position:center bottom;
    opacity: 0;
    transition: all .4s;
}
#visual.xnmain .xnmain-btn .login_ico{
    background-image:url(xnmain_quick_login_ico.png);
}
#visual.xnmain .xnmain-btn .portal_ico{
    background-image:url(xnmain_quick_portal_ico.png);
}
#visual.xnmain .xnmain-btn .notice_ico{
    background-image:url(xnmain_quick_notice_ico.png);
}
#visual.xnmain .xnmain-btn .faq_ico{
    background-image:url(xnmain_quick_faq_ico.png);
}
#visual.xnmain .xnmain-btn .class_ico{
    background-image:url(xnmain_quick_class_ico.png);
}
#visual.xnmain .rd:after{
    background:var(--xnmain-primary-color-red);
}
#visual.xnmain .bu:after{
    background:var(--xnmain-primary-color-blue);
}

#visual.xnmain .xn-main-link-wrap{
    width:100% !important;
    margin-bottom:0 !important;
    height:100% !important;
    background:transparent !important;
}
#visual.xnmain .xn-main-link-wrap a{
    display:inline-block;
    width:100% !important;
    height:100% !important;
    padding:35px !important;
    color:#000 !important;
}
#visual.xnmain .xn-main-mypage-link-wrap{
    display:none !important;
}

/* search box */
.search_box_form{
    display:flex;
    align-items:center;
    border-radius: 160px;
    border: 1px solid #DBDBDB;
    background: #F7F7F9;
    max-width:850px;
    margin:120px auto;
    padding:25px 30px 25px 60px;
}
.search_box_form .search_title{
    font-size:26px;
    font-weight:600;
    margin-right:30px;
}
.search_box_form > input{
    border:0;
    background:transparent !important;
    font-size: 20px;
    color:var(--xnmain-text-333);
    padding:0;
}
.search_box_form > input::placeholder{
    color:var(--xnmain-text-888);
}
.search_box_form .btn_search{
    min-width:110px;
    font-size: 18px;
    font-weight:600;
    color:#fff;
    border:0;
    padding:15px 20px;
    border-radius: 40px;
    background:var(--xnmain-primary-color-blue);
}

/* main-slide */
.xnmain_main_slider{
    position:relative;
    width:830px;
    height:370px;
    font-family: "Pretendard";
    z-index:11;
}
.xnmain_main_slider .xn-widget-slider-container .xnws-img{
    border-radius:30px;
}
.xnmain_main_slider .carousel-caption{
    width:86%;
    left:60px;
    right:inherit;
    top:50px;
    bottom:inherit;
    padding:0;
    text-align:left;
}
.xnmain_main_slider .carousel-indicators:before,
.xnmain_main_slider .carousel-indicators:after{
    position:absolute;
    display:inline-block;
    content:'';
    width:30px;
    height:30px;
    top:0;
    background:url(xnmain_round_left.svg) no-repeat;
}
.xnmain_main_slider .carousel-indicators:before{
    left:0;
    margin-left:-30px;
}
.xnmain_main_slider .carousel-indicators:after{
    right:0;
    top:64px;
}
.xnmain_main_slider .carousel-indicators{
    left:inherit;
    top:0;
    right:0;
    bottom:inherit;
    margin:0 !important;
    padding:26px 30px;
    border-radius: 0  0 0 30px;
    background-color:#fff;
}
.xnmain_main_slider .carousel-indicators li{
    width:12px;
    height:12px;
    border-radius:50%;
    border:0;
    background-color:var(--xnmain-bg-color-gray);
    margin:0 10px;
    opacity: 1;
}
.xnmain_main_slider .carousel-indicators li.active{
    background-color:var(--xnmain-primary-color-blue);
}
.xnmain_main_slider .carousel-control-next, 
.xnmain_main_slider .carousel-control-prev{
    width:fit-content;
    top:inherit;
    bottom:23px;
    left:50%;
}
.xnmain_main_slider .carousel-control-prev{
    transform: translateX(-150px);
}
.xnmain_main_slider .carousel-control-next{
    transform: translateX(130px);
}

.xnmain_slogan{
    color:#372500;
    line-height:1.3;
}
.xnmain_slogan .m_slogan{
    font-size:40px;
    font-weight: 700;
    margin-bottom:10px;
}
.xnmain_slogan .s_slogan{
    font-size:20px;
    font-weight: 500;
}
/* 한국어가 아닐 때 폰트 사이즈 조정 */
body.translated-ltr .xnmain_slogan .m_slogan,
body.translated-rtl .xnmain_slogan .m_slogan,
body:not(:lang(ko)) .xnmain_slogan .m_slogan {
    font-size: 32px !important;
}
body.translated-ltr .xnmain_slogan .s_slogan,
body.translated-rtl .xnmain_slogan .s_slogan,
body:not(:lang(ko)) .xnmain_slogan .s_slogan {
    font-size: 16px !important;
}
.xnmain_slogan span.gr{
    color:#008236;
}
.xnmain_slogan span.yr{
    color:#F29100;
}
.xnmain_slogan ul{
    display:flex;
    gap:10px;
    margin-top:50px !important;
}
.xnmain_slogan ul li{
    font-size: 16px;
    font-weight:400;
    color:#000;
    padding: 12px 20px;
    border-radius: 55px;
    background: #fff;
}
.xnmain_slogan.blue{
    color:#005EAE;
}
.xnmain_slogan.blue:lang(en){
    line-height:1.2;
}
.xnmain_slogan.blue .s_slogan{
    color:#000;
}

/* cnt_wrap */
.xnmain_cnt_wrap{
    font-family: "Pretendard";
}

/* link wrap */
.link_wrap{
    margin:70px 0 90px 0;
    text-align:center;
}
.link_wrap .title{
    font-size:34px;
    color:#000;
    font-weight:700;
    margin-bottom:40px;
}
.link_wrap .link_btn{
    display:flex;
    justify-content: center;
    gap:30px;
}
.link_wrap .link_btn .btn{
    display:inline-flex;
    align-items: center;
    gap:10px;
    width:300px;
    height:150px;
    border-radius: 100px;
    border: solid;
    border-width: 5px 2px;
    background: #FFF;
    padding-left:20px;
}
.link_wrap .link_btn .btn:lang(en){
    width:400px;
}
.link_wrap .link_txt:lang(en) strong br{
    display:none;
}
.link_wrap .link_btn .btn:nth-of-type(1){
    border-color: var(--xnmain-primary-color-blue);
}
.link_wrap .link_btn .btn:nth-of-type(2){
    border-color: var(--xnmain-primary-color-yellow);
}
.link_wrap .link_btn .btn:nth-of-type(3){
    border-color: var(--xnmain-primary-color-green);
}
.link_wrap .link_btn .link_icon{
    display:inline-block;
    width:80px;
    height:80px;
    min-width:80px;
    flex-shrink:0;
    background-position:center;
    background-repeat:no-repeat;
}
.link_wrap .link_btn .btn:nth-of-type(1) .link_icon{
    background-image:url(xnmain_link_ico01_v2.png);
}
.link_wrap .link_btn .btn:nth-of-type(2) .link_icon{
    background-image:url(xnmain_link_ico03.png);
}
.link_wrap .link_btn .btn:nth-of-type(3) .link_icon{
    background-image:url(xnmain_link_ico02.png);
}
.link_wrap .link_txt{
    text-align:left;
}
.link_wrap .link_txt span{
    display:block;
    font-size:18px;
    color:var(--xnmain-text-777);
}
.link_wrap .link_txt strong{
    font-size:24px;
    font-weight:700;
    color:#000;
}
.link_wrap .link_txt strong .black-icon{
    display:inline-block;
}
.link_wrap .link_txt strong .white-icon{
    display:none;
}
.link_wrap a:hover .link_txt strong .black-icon{
    /* display:none; */
    filter: invert(1);
}
.link_wrap a:hover .link_txt strong .white-icon{
    /* display:inline-block; */
}
.link_wrap .link_txt strong span{
    display:inline-block;
    color:#000;
    font-size: 16px;
    margin-left:5px;
}
/* 한국어가 아닐 때 link_txt 하위 요소 폰트 사이즈 조정 */
body.translated-ltr .link_wrap .link_txt span,
body.translated-rtl .link_wrap .link_txt span,
body:not(:lang(ko)) .link_wrap .link_txt span {
    font-size: 14px !important;
}
body.translated-ltr .link_wrap .link_txt strong,
body.translated-rtl .link_wrap .link_txt strong,
body:not(:lang(ko)) .link_wrap .link_txt strong {
    font-size: 20px !important;
}
body.translated-ltr .link_wrap .link_txt strong span,
body.translated-rtl .link_wrap .link_txt strong span,
body:not(:lang(ko)) .link_wrap .link_txt strong span {
    font-size: 13px !important;
}
/* link_icon 사이즈 고정 - 줄어들지 않도록 */
.link_wrap .link_btn .link_icon {
    min-width: 80px !important;
    width: 80px !important;
    height: 80px !important;
    flex-shrink: 0 !important;
}
body.translated-ltr .link_wrap .link_btn .link_icon,
body.translated-rtl .link_wrap .link_btn .link_icon,
body:not(:lang(ko)) .link_wrap .link_btn .link_icon {
    min-width: 80px !important;
    width: 80px !important;
    height: 80px !important;
    flex-shrink: 0 !important;
}
.link_wrap .link_btn .btn:hover .link_txt strong,
.link_wrap .link_btn .btn:hover .link_txt span{
    color:#fff;
}

/* courses widget */
.xnmain-widget-course{
    margin-bottom:120px;
}
.xnmain-widget-course .xn-widget-container{
    background:transparent !important;
    padding:0 !important;
}
.xnmain-widget-course .xncw-top-container{
    display:flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom:32px;
}
.xnmain-widget-course .xncw-top-container,
.xnmain-widget-course .xnbw-items-container{
    width:100% !important;
}
.xnmain-widget-course .xncw-top-container .xncw-title-wrap{
    display:flex;
    flex-direction: column;
    letter-spacing: -0.5px;
    margin-bottom:0;
    text-align:left;
    line-height:1.2;
}
.xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title{
    font-size: 42px;
    font-weight:700;
    color:#000;
    margin:12px 0 0 0;
    order:1;
}
.xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-sub-title{
    font-size:22px;
    color:var(--xnmain-text-888);
    order:0;
}
.xnmain-widget-course .xncw-top-container .xncw-more:before{
    display:inline-block;
    content:'';
    width:45px;
    height:45px;
    background:url(xnmain_more_ico.svg) no-repeat;
}
.xnmain-widget-course .xncw-top-container .xncw-more .xncw-more-text,
.xnmain-widget-course .xncw-top-container .xncw-more i{
    display:none;
}
.xnmain-widget-course .xncw-top-container .xncw-more{
    position:relative !important;
    right:inherit !important;
    bottom:inherit !important;
    padding:0 !important;
}
.xnmain-widget-course .xnbw-items-container{
    position:relative;
    display:flex;
    align-items: flex-start;
}
.xnmain-widget-course .xnbw-item-container-wrap{
    position:relative;
    display:flex !important;
    gap:2%;
    width:100%;
}
.xnmain-widget-course .xnbw-item-container{
    width:23.5%;
    margin:0;
}
.xnmain-widget-course .xnbw-item-container:hover .xncwi-container{
    box-shadow:none !important;
}
.xnmain-widget-course .xnbw-items-btn-wrap{
    position:absolute;
    width:0;
    top: -100px;
    right:110px;
}
.xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap button{
    margin-right:0;
}
.xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap button i{
    width:45px;
    height:45px;
    margin-right:0;
    background-position:center;
}
.xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap .xnbw-items-prev-btn{
    transform: translateX(-60px);
}
.xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap .xnbw-items-prev-btn i{
    background:url(xnmain_prev_ico.svg);
}
.xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap .xnbw-items-next-btn i{
    background:url(xnmain_next_ico.svg);
}
.xnmain-widget-course .xncwi-container{
    border:0;
}
.xnmain-widget-course .xncwi-container .xncwi-background{
    height:173px;
    border-radius:20px;
}
.xnmain-widget-course .xncwi-container .xncwi-label-wrapper > div{
    border-radius:40px;
    margin:10px;
    font-size:15px;
}
.xnmain-widget-course .xncwi-container .xncwi-status-label{
    background-color:#fff;
    color:var(--xnmain-text-555);
}
.xnmain-widget-course .xncwi-container .xncwi-payment-label{
    background-color:var(--xnmain-bg-color-blue);
    color:#fff;
}
.xnmain-widget-course .xncwi-container .xncwi-status-label.closed{
    background-color:#333;
    color:#fff;
}
.xnmain-widget-course .xncwi-container .xncwi-catalog-info-container{
    height:inherit;
    background:transparent !important;
    padding:20px 0 10px 0;
}
.xnmain-widget-course .xncwi-container .xncwi-catalog-info-container .xncwi-catalog-wrap{
    width:100%;
}
.xnmain-widget-course .xncwi-container .xncwi-catalog-info-container .xncwi-catalog-wrap .xncwi-catalog-title{
    font-size:16px;
    color:var(--xnmain-text-navy);
    font-weight:600;
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:100%;
}
.xnmain-widget-course .xncwi-container .xncwi-certificate-wrap{
    width:auto;
    top:-40px;
    margin:0 10px;
}
.xnmain-widget-course .xncwi-container .xncwi-certificate-wrap .xncwi-certificate-title{
    display:none;
}
.xnmain-widget-course .xncwi-container .xncwi-certificate-wrap .xncwi-certificate-icon{
    width: 29px;
    height: 29px;
    border-radius: 10px;
    background:url(xnmain_certificate_ico.png) rgba(0, 0, 0, 0.50) no-repeat center !important;
}
.xnmain-widget-course .xncwi-catagory-title,
.xnmain-widget-course .xncwi-recruitment-wrap,
.xnmain-widget-course .xncwi-container .xncwi-info-footer{
    display:none;
}
.xnmain-widget-course .xncwi-container .xncwi-info-container{
    padding:0;
}
.xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-title{
    font-size: 22px;
    color:var(--xnmain-text-333);
    margin-bottom:32px;
    /* 기본 말줄임 처리 */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-author{
    font-size:16px;
    font-weight:600;
    margin-bottom:50px;
    color:var(--xnmain-text-888);
}
.xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-studydate-wrap .xncwi-status{
    width:auto;
   color:var(--xnmain-text-dkavy); 
   font-size:15px;
   font-weight:600;
}
.xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-date{
    float:inherit;
    font-size:15px;
}



/* board */
.cnt_board{
    position:relative;
    font-family: "Pretendard";
    background-color:var(--xnmain-bg-color-syblue);
    padding:80px 0 130px 0;
    margin-bottom:-50px;
}
.cnt_board .board_sub_title{
    position:absolute;
    word-break: keep-all;
    font-size: 40px;
    font-weight: 700 !important;
    line-height: 1.3;
    color:#000 !important;
    letter-spacing:-0.5px;
    left:50%;
    margin-top:44px;
    transform: translateX(-50%);
}
.cnt_board .board_sub_title:lang(en){
    letter-spacing: -2px;
    font-size: 38px;
}
.cnt_board .board_sub_title span{
    color:var(--xnmain-primary-color-blue);
}
/* 한국어가 아닐 때 board_sub_title 숨김 */
body.translated-ltr .cnt_board .board_sub_title,
body.translated-rtl .cnt_board .board_sub_title,
body:not(:lang(ko)) .cnt_board .board_sub_title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
.cnt_board .obj1{
    position:absolute;
    width:233px;
    height:176px;
    top:0;
    right:0;
    background:url(xnmain_obj1.png) no-repeat;
    background-position:right top;
}
.cnt_board .obj2{
    position:absolute;
    width:113px;
    height:216px;
    bottom:0;
    left:0;
    background:url(xnmain_obj2.png) no-repeat;
}
.cnt_board .obj3{
    position:absolute;
    width:203px;
    height:107px;
    bottom:50px;
    left:50%;
    background:url(xnmain_obj3.png) no-repeat;
}
.xnmain-widget-board{
    position:relative;
    width:100%;
    z-index:3;
}
.xnmain-widget-board .xn-widget-container{
    display: flex;
    padding:0 !important;
    max-width: 1320px !important;
}
.xnmain-widget-board .xn-widget-container .xnbw-top-container{
    display:flex;
    align-items: flex-start;
    flex-direction: column;
    width:45%;
}
/* 보드 위젯 타이틀 영역 - 한국어가 아닐 때 줄바꿈 처리 */
body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-top-container,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-top-container,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-top-container {
    max-width: 100% !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-title-wrap,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-title-wrap,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-title-wrap {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    max-width: 100% !important;
}
body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-title,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-title,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-title {
    font-size: 20px !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    max-width: 100% !important;
    line-height: 1.3 !important;
}

/* board_v2 위젯의 xnbw-title - 한국어가 아닐 때 글씨 크기 키움 */
body.translated-ltr .xn-widget-container.board_v2 .xnbw-title,
body.translated-rtl .xn-widget-container.board_v2 .xnbw-title,
body:not(:lang(ko)) .xn-widget-container.board_v2 .xnbw-title {
    font-size: 3rem !important;
    margin-bottom: 0;
}

/* board_sub_title - 한국어가 아닐 때 숨김 */
body.translated-ltr .cnt_board .board_sub_title,
body.translated-rtl .cnt_board .board_sub_title,
body:not(:lang(ko)) .cnt_board .board_sub_title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
.xnmain-widget-board .xn-widget-container .xnbw-category-tab-wrap{
    display:none;

}
.xnmain-widget-board .xn-widget-container .xnbw-title{
    font-size:24px !important;
    font-weight:700;;
    color:var(--xnmain-primary-color-blue) !important;
    margin-bottom:190px;
}
.xnmain-widget-board .xn-widget-container .xnbw-sub-title{
    display:none;
}
/* 보드 위젯 서브 타이틀 - 한국어가 아닐 때 표시 및 스타일 조정 */
body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-sub-title {
    display: block !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: var(--xnmain-text-888) !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
    line-height: 1.4 !important;
    max-width: 100% !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
}
.xnmain-widget-board .xn-widget-container .xnbw-more-tab{
    position:relative !important;
    top:inherit !important;
    border-radius: 62px;
    background: #C9D3E3 !important;
    padding:15px 17px !important;
    gap:10px !important;
}
.xnmain-widget-board .xn-widget-container .xnbw-more-tab span{
    color:#000;
    font-size:16px;
}
.xnmain-widget-board .xn-widget-container .xnbw-more-tab-plus-icon{
    width:24px !important;
    height: 24px !important;
    background:url(xnmain_board_more_ico.png) no-repeat !important;
    margin-top:-2px;
}
.xnmain-widget-board .xn-widget-container .xnbw-items-container{
    width:55% !important;
    max-width: 55% !important;
    border-radius:30px;
    background-color:#fff;
    padding:40px;
    margin:0 !important;
    gap:0 !important;
}
.xnmain-widget-board .xn-widget-container .xnbw-item-container{
    position:relative;
    width:100% !important;
    height:auto !important;
    /* 영역 넘침 방지 */
    overflow: hidden;
    word-break: break-word;
}
.xnmain-widget-board .xn-widget-container .xnbw-board-post-list{
    padding:10px !important;
    border-radius:8px;
    /* 영역 넘침 방지 */
    overflow: hidden;
    word-break: break-word;
}
.xnmain-widget-board .xn-widget-container .xnbw-post-list-title{
    font-size:20px !important;
    color:var(--xnmain-text-222);
    font-weight: 600;
    /* 기본 말줄임 처리 */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.xnmain-widget-board .xn-widget-container .xnbw-post-list-created{
    font-size:16px !important;
    color: var(--xnmain-text-555) !important;
    /* 영역 넘침 방지 */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.xnmain-widget-board .xn-widget-container .xnbw-post-list-category{
    height:26px;
    color:#fff !important;
    border-radius:60px !important;
    border:0 !important;
    padding: 0 10px !important;
    line-height:30px !important;
    font-size: 16px !important;
    font-weight:500;
    background-color:var(--xnmain-primary-color-green);
    /* 영역 넘침 방지 */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}



/* footer */
.xnmain_footer{
    position:relative;
    font-family: "Pretendard";
    background:var(--xnmain-bg-footer);
    padding:95px 0;
    color:var(--xnmain-text-888);
    font-size:16px;
    word-break: keep-all;
    border-radius: 50px 50px 0 0;
    z-index:10;
}
.xnmain_footer > div{
    display:flex;
    justify-content: space-between;
    align-items: center;
}
.xnmain_footer .footer_logo{
    margin:0 54px 40px 0;
}
.xnmain_footer .ft_add{
    line-height:1.8;
    flex:1;
}
/* 한국어가 아닐 때 footer 요소 사이즈 조정 */
body.translated-ltr .xnmain_footer,
body.translated-rtl .xnmain_footer {
    font-size: 14px !important;
}
body.translated-ltr .xnmain_footer .ft_add,
body.translated-rtl .xnmain_footer .ft_add {
    font-size: 14px !important;
    line-height: 1.6 !important;
}
body.translated-ltr .footer_btn a,
body.translated-rtl .footer_btn a {
    font-size: 16px !important;
}
body.translated-ltr .xnmain_footer .fs_btn,
body.translated-rtl .xnmain_footer .fs_btn {
    font-size: 16px !important;
}
body.translated-ltr .xnmain_footer .fs_list a,
body.translated-rtl .xnmain_footer .fs_list a {
    font-size: 14px !important;
}
.footer_btn a{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff;
    font-size:18px;
    letter-spacing: -0.5px;
    font-weight:400;
}
.footer_btn a:hover,
.xnmain_footer .fs_btn:hover{
    color:var(--xnmain-primary-color-yellow) !important;
}
.xnmain_footer .footer_btn{
    display:flex;
    align-items:flex-end;
    flex-direction: column;
    gap:20px;
}
.xnmain_footer .footer_info{
    position:relative;
}
.footer_btn .btn{
    display:flex;
    flex-direction: column;
    gap:15px;
    padding:0;
    align-items: flex-end;
}
.footer_btn .btn .pri{
    color:#CEE1FF;
}
/* 구글 번역 시 footer_btn .btn 보호 */
body.translated-ltr .footer_btn .btn,
body.translated-rtl .footer_btn .btn,
body.translated-ltr .footer_btn .btn *,
body.translated-rtl .footer_btn .btn * {
    font-family: "Pretendard" !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    padding: 0 !important;
    align-items: flex-end !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
body.translated-ltr .footer_btn a,
body.translated-rtl .footer_btn a,
body.translated-ltr .footer_btn a *,
body.translated-rtl .footer_btn a * {
    font-family: "Pretendard" !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #fff !important;
    font-size: 18px !important;
    letter-spacing: -0.5px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}
/* 구글 번역이 추가한 font 태그 제거 */
body.translated-ltr .footer_btn font,
body.translated-rtl .footer_btn font,
body:not(:lang(ko)) .footer_btn font {
    font-family: "Pretendard" !important;
    color: inherit !important;
    background: transparent !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    display: inline !important;
    word-break: break-all !important;
}
.xnmain_footer .fs_wrap{
    position:relative;
}
.xnmain_footer .fs_btn{
    position:relative;
    display:flex;
    gap:10px;
    align-items:center;
    color:#fff;
    font-size:18px;
    letter-spacing: -0.5px;
    font-weight:600;
    cursor: pointer;
}
.xnmain_footer .fs_btn span{
    width:24px;
}
.xnmain_footer .fs_list{
    position:absolute;
    display:none;
    bottom:130%;
    right:0;
    background:var(--xnmain-primary-color-green);
    padding:10px 20px;
    width:150px;
    text-align: left;
    border-radius:8px;
    z-index:3;
}
.xnmain_footer .fs_list a{
    display:block;
    color:#b4feff;
    font-size:16px;
    padding:3px 0;
}
.xnmain_footer .fs_list a:hover{
    color:#fff;
}
.xnmain_footer .footer_logo_img{
    display:inline-block;
}
.xnmain_footer .footer_logo_img_en{
    display:none;
}
.xnmain_footer .footer_logo_img_en:lang(en){
    display:inline-block;
}
.xnmain_footer .footer_logo_img:lang(en){
    display:none;
}
.xnmain_footer .scrollTop{
    position:absolute;
    display:inline-block;
    width:80px;
    height:80px;
    cursor: pointer;
    background:url(xnmain_sctop_ico.png) #fff no-repeat center;
    box-shadow: 0 0 32.3px 0 rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    right:50px;
    top:-140px;
    z-index:999;
    transition: all .4s;
    pointer-events: auto;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}
@media (hover: hover) and (pointer: fine) {
    #header.xnmain .btn-login:hover,
    #header.xnmain .btn-join:hover{
        background: var(--xnmain-bg-light-eee);
    }
    #visual.xnmain .xnmain-btn a:hover{
        background: var(--xnmain-bg-light-eee) !important;
    }
    #visual.xnmain .xnmain-btn:hover .quick_ico{
        opacity: 1 !important;
        z-index:20;
    }
    #visual.xnmain .xnmain-btn:hover,
    #visual.xnmain .xnmain-btn:hover p span{
        color:#fff !important;
    }
    #visual.xnmain .xnmain-btn:hover:after{
        width:100%;
        height:100%;
        border-radius:30px;
        right:0;
        bottom:0;
        box-shadow: 0 13px 21.9px 0 rgba(0, 0, 0, 0.20);
    }
    #visual.xnmain .xn-main-link-wrap a:hover{
        color:#fff !important;
    }
    .link_wrap .link_btn .btn:nth-of-type(1):hover{
        background-color:var(--xnmain-primary-color-blue);
    }
    .link_wrap .link_btn .btn:nth-of-type(2):hover{
      background-color:var(--xnmain-primary-color-yellow);
    }
    .link_wrap .link_btn .btn:nth-of-type(3):hover{
        background-color:var(--xnmain-primary-color-green);
    }
    .xnmain-widget-course .xnbw-item-container:hover .xncwi-title{
        color:var(--xnmain-primary-color-blue);
    }
    .xnmain-widget-board .xn-widget-container .xnbw-board-post-list:hover{
        background:var(--xnmain-bg-color-gray) !important;       
    }
    .xnmain_footer .scrollTop:hover{
        background-color:#eee;
    }
  }
@media (max-width:1680px){
    .xnmain_footer .scrollTop{
        top:-40px;
    }
}
@media (max-width:1415px){
    html,body{
        overflow-x:hidden;
    }

}
@media (max-width:1320px){
    .xnmain_inner{
        width:96% !important;
    }
    #header.xnmain .navbar-static-top .container .navbar-header{
        padding:0 2%;
    }
    #header.xnmain .xn-header-menu > li > a{
        font-size: 20px;
        padding:0 12px;
    }
    #visual.xnmain{
        width:96%;
        height:28.03vw;
    }
    #visual.xnmain .visual-container{
        width:33% !important;
    }
    #visual.xnmain .xnmain-btn,
    #visual.xnmain .xn-main-link-wrap a{
        padding:1.89vw !important;
        border-radius:2.27vw !important;
    }
    #visual.xnmain .xnmain-btn:after{
        right:1.89vw;
        bottom:1.89vw;
    }
    #visual.xnmain .xnmain-btn{
        letter-spacing: -1px;
    }
    #visual.xnmain .xnmain-btn .quick_ico{
        width:6.44vw;
        height:7.2vw;
        background-size:contain;
    }
    .link_wrap .link_btn:lang(en){
        gap:10px;
    }
    .link_wrap .link_btn .btn:lang(en){
        flex:1 0 0;
        letter-spacing: -1px;
    }
    .link_wrap .link_txt:lang(en) strong br{
        display:inline-block;
    }
    .link_wrap .link_txt:lang(en) strong{
        line-height: 1.2;
    }
    .xnmain_main_slider{
        width:65%;
        height:28.03vw;
    }
    .xnmain_main_slider .xn-widget-slider-container .xnws-img{
        border-radius:2.27vw;
    }
    .xnmain_main_slider .carousel-indicators:before, 
    .xnmain_main_slider .carousel-indicators:after{
        width:2.27vw;
        height:2.27vw;
        background-size:cover;
    }
    .xnmain_main_slider .carousel-indicators:before{
        margin-left:-2.27vw;
    }
    .xnmain_main_slider .carousel-indicators{
        border-radius: 0 0 0 2.27vw;
    }
    .xnmain_main_slider .carousel-caption{
        left:4.55vw;
        top:3.79vw;
    }
    .xnmain_slogan .m_slogan{
        font-size:2.58vw;
    }
    .xnmain_slogan .s_slogan{
        font-size:1.52vw;
    }
    /* 한국어가 아닐 때 폰트 사이즈 조정 */
    body.translated-ltr .xnmain_slogan .m_slogan,
    body.translated-rtl .xnmain_slogan .m_slogan,
    body:not(:lang(ko)) .xnmain_slogan .m_slogan {
        font-size: 2.1vw !important;
    }
    body.translated-ltr .xnmain_slogan .s_slogan,
    body.translated-rtl .xnmain_slogan .s_slogan,
    body:not(:lang(ko)) .xnmain_slogan .s_slogan {
        font-size: 1.2vw !important;
    }
    .xnmain_slogan ul{
        margin-top: 3.79vw !important;;
    }
    .xnmain_slogan ul:lang(en){
        margin-top: 3vw !important;;
    }
    .xnmain_slogan ul li{
        font-size: 1.21vw;
    }
    .xnmain-widget-course .xncwi-container .xncwi-background{
        height:12.68vw !important;
    }
    .cnt_board .board_sub_title{
        width:27.95vw !important;
        left:2%;
        transform: inherit;
    }
    /* 한국어가 아닐 때 board_sub_title 숨김 */
    body.translated-ltr .cnt_board .board_sub_title,
    body.translated-rtl .cnt_board .board_sub_title,
    body:not(:lang(ko)) .cnt_board .board_sub_title {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}
@media (max-width:1280px){
    #header.xnmain .navbar-static-top .container{
        width:100%;
    }
    #header.xnmain .navbar-static-top .container .navbar-header > div:first-of-type{
        display:inline-block !important;
        margin-top:30px;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .desktop{
        display:flex !important;
        justify-content: flex-end;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .xn-header-menu-wrapper{
        display:none;
    }
    #header.xnmain .top_menu{
        display: none;
    }
    #header.xnmain .navbar-light .navbar-toggler-icon{
        width:21px;
        height:15px;
        background-image:url(xnmain_toggler_ico.png) !important;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile{
        box-shadow: 0 8px 10px rgba(0, 0, 0, .3);
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile ul{
        width:100%;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-1depth-menu-wrap{
        padding:0;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-1depth-menu-wrap .xn-mobile-menu-title{
        display:flex;
        align-items:center;
        border-bottom:1px solid #ddd;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-1depth-menu-wrap .xn-mobile-menu-title .xn-1depth-menu{
        display:inline-block;
        flex:1;
        padding:12px 15px;
        font-size:16px;
        font-weight:600;
        color:#333;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-toggle-btn{
        background:none;
        border:none;
        padding:8px 12px;
        cursor:pointer;
        color:#666;
        transition:transform .25s ease;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-toggle-btn.active{
        transform:rotate(180deg);
    }
    /* mobile 2depth */
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep2-list{
        display:none;
        background:#f7f8fa;
        padding:0;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep2-list .xn-2depth-menu-wrap{
        border-bottom:1px solid #eee;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep2-list .xn-mobile-menu-title{
        display:flex;
        align-items:center;
        border-bottom:none;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep2-list .xn-2depth-menu{
        display:block;
        flex:1;
        padding:10px 15px 10px 30px;
        font-size:15px;
        font-weight:500;
        color:#444;
    }
    /* mobile 3depth */
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep3-list{
        display:none;
        background:#eef0f4;
        padding:0;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep3-list .xn-3depth-menu-wrap{
        border-bottom:1px solid #e2e4e8;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep3-list .xn-3depth-menu{
        display:block;
        padding:9px 15px 9px 50px;
        font-size:14px;
        font-weight:400;
        color:#555;
    }
    #header.xnmain .navbar-collapse.collapse.in.mobile .xn-mobile-dep3-list .xn-3depth-menu::before{
        content:'- ';
        color:#999;
    }
    #header.xnmain .xn-main-catalog-header-logo-wrap{
        position:absolute;
        margin-left:50px;
    }
    .xnmain-widget-course .xnbw-items-container .xnbw-item-container-wrap{
        width:100% !important;
    }
    .xnmain-widget-course .xncwi-container .xncwi-info-container{
        height:160px;
    }
    .cnt_board .board_sub_title{
        width:96% !important;
    }
    .xn-widget-container.board_v2 .xnbw-items-container{
        max-width: 100% !important;
    }
    .cnt_board .board_sub_title:lang(en) > br{
        display:none;
    }
    /* 한국어가 아닐 때 board_sub_title 숨김 */
    body.translated-ltr .cnt_board .board_sub_title,
    body.translated-rtl .cnt_board .board_sub_title,
    body:not(:lang(ko)) .cnt_board .board_sub_title {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-top-container{
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-title{
        margin-bottom:150px;
    }
    /* 보드 위젯 서브 타이틀 - 한국어가 아닐 때 스타일 조정 */
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-sub-title {
        font-size: 14px !important;
        max-width: 100% !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
    }
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-title {
        font-size: 20px !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        max-width: 100% !important;
    }
    /* 보드 위젯 서브 타이틀 - 한국어가 아닐 때 스타일 조정 */
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-sub-title {
        font-size: 14px !important;
        max-width: 100% !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-more-tab{
        margin-bottom:10px;
    }
    .xnmain-widget-board .xn-widget-container{
        flex-direction: column;
    }
}
@media (max-width:1024px){
    #visual.xnmain .xnmain-btn .quick_ico{
        display:none;
    }
}
@media (max-width:980px){
    #header.xnmain .btn-login, 
    #header.xnmain .btn-join{
        font-size:14px;
        padding:6px 10px;
    }
    #header.xnmain .btn-dropdown-user-menu .xn-header-member-btn-text{
        font-size:14px;
    }
    #visual.xnmain{
        top:57vw;
    }
    #visual.xnmain .visual-container{
        width:100% !important;
    }
    #visual.xnmain .xn-main-login-container{
        gap:2.04vw;
    }
    #visual.xnmain .xnmain-btn{
        border-radius:3.06vw !important;
        font-size:3.06vw !important;
        padding:3.57vw;
    }
    #visual.xnmain .xnmain-btn p span{
        font-size: 2.04vw;
    }
    .xnmain_main_slider{
        width:100%;
        height:50vw;
    }
    .xnmain_main_slider .xn-widget-slider-container .xnws-img{
        height:42.76vw;
        border-radius:3.06vw;
    }
    .xnmain_main_slider .carousel-indicators{
       top:inherit;
       bottom:2.04vw;
       background:transparent;
       padding:0;
       left:50%;
       transform: translateX(-50%);
    }
    .xnmain_main_slider .carousel-indicators:before, 
    .xnmain_main_slider .carousel-indicators:after{
       display:none;
    }
    .xnmain_slogan .m_slogan{
        font-size: 4.9vw;
    }
    .xnmain_slogan .s_slogan{
        font-size: 2.6vw;
    }
    /* 한국어가 아닐 때 폰트 사이즈 조정 */
    body.translated-ltr .xnmain_slogan .m_slogan,
    body.translated-rtl .xnmain_slogan .m_slogan,
    body:not(:lang(ko)) .xnmain_slogan .m_slogan {
        font-size: 4vw !important;
    }
    body.translated-ltr .xnmain_slogan .s_slogan,
    body.translated-rtl .xnmain_slogan .s_slogan,
    body:not(:lang(ko)) .xnmain_slogan .s_slogan {
        font-size: 2.1vw !important;
    }
    .xnmain_slogan ul{
        margin-top:5.1vw !important;
    }
    .xnmain_slogan ul li{
        font-size: 2.04vw;
    }
    .xnmain_cnt_wrap{
        margin-top:50vw; 
    }
    .link_wrap .title{
        font-size: 5.1vw;
        margin-bottom:4.08vw;
    }
    .link_wrap{
        margin:0 0 90px 0;
    }
    .link_wrap .link_btn{
        gap:2%;
    }
    .link_wrap .link_btn .btn{
        width:32%;
        height:auto;
        flex-direction: column;
        padding:15px 0;
    }
    .link_wrap .link_txt:lang(en) strong span{
        display:none;
    }
    .link_wrap .link_txt{
        text-align: center;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-created{
        font-size:14px !important;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title{
        font-size:40px;
    }
    .xnmain_footer{
        padding:50px 0;
    }
    .xnmain_footer > div{
        flex-direction: column;
        gap:10px;
    }
    .xnmain_footer .footer_logo{
        margin:0;
    }
    .xnmain_footer .footer_logo img{
        height:45px;
    }
    .xnmain_footer .ft_add{
        text-align:center;
    }
    .xnmain_footer .footer_btn .btn{
        align-items:center;
    }
    .xnmain_footer .fs_list{
        right:-10%;
    }
    .footer_btn a,
    .xnmain_footer .fs_btn{
        font-size:16px;
    }
    .xnmain_footer .scrollTop{
        width:60px;
        height:60px;
        z-index:999;
        pointer-events: auto;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }
    /* 한국어가 아닐 때 footer 요소 사이즈 조정 */
    body.translated-ltr .xnmain_footer,
    body.translated-rtl .xnmain_footer {
        font-size: 13px !important;
    }
    body.translated-ltr .xnmain_footer .ft_add,
    body.translated-rtl .xnmain_footer .ft_add {
        font-size: 13px !important;
    }
    body.translated-ltr .footer_btn a,
    body.translated-rtl .footer_btn a {
        font-size: 14px !important;
    }
    body.translated-ltr .xnmain_footer .fs_btn,
    body.translated-rtl .xnmain_footer .fs_btn {
        font-size: 14px !important;
    }
}
@media (max-width:768px){
    #header.xnmain .xn-main-catalog-header-logo-image{
        height:40px;
        margin:0;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .tnb > .login_wrap{
        padding:0 5px;
    }
    #header.xnmain .xn-translate_language-select_box{
        width:48px;
        justify-content: center;
        margin-left:5px;
    }
    #header.xnmain .xn-translate_language-select_box:lang(en){
        width:auto;
    }
    #header.xnmain .top_lms,
    #header.xnmain .xn-translate_language-select_box{
        font-size:13px;
        padding:12px 5px;
    }
    .mg-l10{
        margin-left:5px;
    }
    #header.xnmain .top_lms span{
        font-size:16px;
    }
    #visual.xnmain .xnmain-btn:after{
        width:10px;
        height:10px;
    }
    .link_wrap .link_btn{
        flex-direction: column;
        gap:10px;
    }
    .link_wrap .link_btn .btn{
        width:100% !important;
        flex-direction: row;
        padding:15px 20px;
        justify-content: center;
    }
    .search_box_form{
        padding: 15px 20px 15px 30px;
    }
    .search_box_form > input{
        font-size:16px;
    }
    .cnt_board{
        flex-direction: column;
    }
    .cnt_board > div:first-of-type{
        margin-bottom:20px;
    }
    .xnmain-widget-course .xnbw-items-container .xnbw-items-btn-wrap button{
        display:none;
    }
    .xnmain-widget-course .xncw-top-container .xncw-more:before{
        width:38px !important;
        height:38px !important;
        background-size: cover !important;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap:before{
        width:26px;
        height:26px;
        background-size: cover;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title{
        font-size:36px;
        margin: 10px 0;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-sub-title{
        font-size:18px;
    }
    .xnmain-widget-course .xncw-top-container .xncw-more{
        bottom:5px !important;
    }
    .xnmain-widget-course .xnbw-item-container {
        width: 49%;
    }
    .xnmain-widget-course .xnbw-item-container:nth-of-type(-n+2){
        margin-bottom: 20px;
    }
    .xnmain-widget-course .xnbw-items-container{
        padding:0;
    }
    .xnmain-widget-course .xnbw-items-container .xnbw-item-container-wrap{
        display: flex !important;
        flex-wrap: wrap;
        gap: 2%;
    }
    .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-title{
        font-size: 20px;
    }
    .xnmain-widget-course .xncwi-container .xncwi-background{
        height:27vw !important;
    }
    .xnmain-widget-course .xncwi-container .xncwi-info-container{
        height:180px;
    }
    .cnt_board .obj1,
    .cnt_board .obj2{
        background-size:70%;
    }
    .cnt_board .obj3{
        display:none;
    }
    .xnmain-widget-board{
        width:100%;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-title{
        margin-bottom:130px;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-title-wrap{
        margin-bottom:10px;
    }
    /* 보드 위젯 서브 타이틀 - 한국어가 아닐 때 스타일 조정 */
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-sub-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-sub-title {
        font-size: 13px !important;
        max-width: 100% !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
    }
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-title {
        font-size: 18px !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        max-width: 100% !important;
    }
    .cnt_board .board_sub_title{
        font-size: 36px !important;
    }
    /* 한국어가 아닐 때 board_sub_title 숨김 */
    body.translated-ltr .cnt_board .board_sub_title,
    body.translated-rtl .cnt_board .board_sub_title,
    body:not(:lang(ko)) .cnt_board .board_sub_title {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-more-tab{
        padding:8px 10px !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-more-tab span{
        font-size: 14px;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-more-tab-plus-icon{
        width:24px !important;
        height: 24px !important;
        background-size:cover !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-title,
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-category{
        font-size: 16px !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-items-container{
        flex-direction: column !important;
        gap:0 !important;
        padding:20px;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-item-container{
        width:100% !important;
        height:auto !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-title{
        height:28px !important;
        -webkit-line-clamp: 1;
        line-clamp: 1;
    }
    /* 한국어가 아닐 때 게시글 제목 말줄임 처리 (1줄) */
    body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-post-list-title,
    body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-post-list-title,
    body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-post-list-title {
        display: -webkit-box !important;
        -webkit-line-clamp: 1 !important;
        line-clamp: 1 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        height: 28px !important;
        max-height: 28px !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-created{
        width:80px;
        position:relative;
        bottom:inherit;
    }
    .footer_btn .btn{
        flex-wrap:wrap;
        justify-content: center;
    }    
}
@media (max-width:600px){
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .desktop{
        gap: 16px;
    }
    #header.xnmain .top_search:hover{
        background: none;
    }
    #header.xnmain .top_search{
        background: none;
        filter: invert(1);
        width: 32px;
        height: 32px;
        padding: 8px;
    }
    .xn-translate_language-icon.site{
        width: 32px;
        height: 32px;
        padding: 8px;
        background-repeat: no-repeat;
        background-position: center center;

    }
}
@media (max-width:560px){
    #header.xnmain .navbar-static-top .container .navbar-header{
        gap:0;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .tnb{
        float:left !important;
        margin-left:-35px;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .desktop{
        width:fit-content;
        padding-top:12px;
        float: right;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .tnb > .login_wrap a span{
        display:none;
    }
    #header.xnmain .xn-main-catalog-header-logo-wrap,
    #header.xnmain .navbar-static-top .container .navbar-header > div:first-of-type{
        margin-top:50px;
    }
    #header.xnmain .btn-login,
    #header.xnmain .btn-join,
    #header.xnmain .xn-translate_language-select_box{
        padding:6px;
    }
    #header.xnmain .btn-login, 
    #header.xnmain .btn-join, 
    #header.xnmain .top_search, 
    #header.xnmain .xn-translate_language-select_box,
    #header.xnmain .btn-dropdown-user-menu,
    #header.xnmain .top_lms{
        font-size:13px;
        height:36px;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap{
        flex:inherit;
        width:100%;
    }
    #header.xnmain .top_search{
        width:36px;
    }
    #visual.xnmain .xnmain-btn{
        font-size:5vw !important;
    }
    #visual.xnmain .xnmain-btn p span{
        font-size:3.57vw;
    }
    .xnmain_slogan .m_slogan{
        font-size: 5.5vw;
    }
    .xnmain_slogan .m_slogan:lang(en){
        font-size: 5vw;
        margin-bottom:5px;
    }
    .xnmain_slogan .s_slogan{
        font-size: 3.2vw;
    }
    .xn-widget-slider-container, .xn-widget-slider-container>div, .xn-widget-slider-container>div .carousel-inner, .xn-widget-slider-container>div .carousel-inner .carousel-item{
        height: auto !important;
        overflow: hidden
    }
    /* 한국어가 아닐 때 폰트 사이즈 조정 */
    body.translated-ltr .xnmain_slogan .m_slogan,
    body.translated-rtl .xnmain_slogan .m_slogan,
    body:not(:lang(ko)) .xnmain_slogan .m_slogan {
        font-size: 4.5vw !important;
    }
    body.translated-ltr .xnmain_slogan .s_slogan,
    body.translated-rtl .xnmain_slogan .s_slogan,
    body:not(:lang(ko)) .xnmain_slogan .s_slogan {
        font-size: 2.6vw !important;
    }
    .xnmain_slogan ul{
        margin-top:3vw !important;
    }
    .xnmain_slogan ul li{
        font-size: 3vw;
        padding:5px 10px;
    }
    .xnmain_cnt_wrap{
        margin-top:53.57vw;
    }
    .link_wrap .title{
        font-size: 6.5vw;
    }
    .link_wrap .link_btn .link_icon{
        width:60px;
        height:60px;
        background-size:cover;
    }
    .link_wrap .link_txt span{
        font-size:16px;
    }
    .link_wrap .link_txt strong{
        font-size:20px;
    }
    .search_box_form .search_title{
       display:none;
    }
    .search_box_form .btn_search{
        min-width: 60px;
        padding:10px;
    }
    .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-studydate-wrap .xncwi-status,
    .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-date{
        font-size:13px;
        letter-spacing: -0.5px;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-sub-title{
        font-size: 16px;
    }
    .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title{
        font-size:6.79vw;
    }
    .cnt_board .board_sub_title{
        font-size: 6.79vw !important;
        margin-top:6.79vw;
    }
    /* 한국어가 아닐 때 board_sub_title 숨김 */
    body.translated-ltr .cnt_board .board_sub_title,
    body.translated-rtl .cnt_board .board_sub_title,
    body:not(:lang(ko)) .cnt_board .board_sub_title {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-title{
        font-size:16px !important;
        margin-bottom:23.21vw;
    }
    .xnmain_footer .scrollTop{
        right:inherit;
        left:50%;
        margin-left:-30px;
        z-index:999;
        pointer-events: auto;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }
    
}
@media (max-width:360px){
    #header.xnmain .xn-main-catalog-header-logo-wrap{
        max-width: calc(100% - 90px);
    }
    #header.xnmain .xn-main-catalog-header-logo-wrap a,
    #header.xnmain .xn-main-catalog-header-logo-wrap a .xn-main-catalog-header-logo,
    #header.xnmain .xn-main-catalog-header-logo-image{
        max-width: 100%;
        height: auto;
    }
    #header.xnmain .navbar-static-top .container .xn-main-menu-wrap .desktop{
        float: unset;
    }
    #header.xnmain .top_search{
        /* display:none; */
    }
    .xnmain-widget-course .xncwi-container .xncwi-background{
        height:51vw !important;
    }
    .xnmain-widget-course .xnbw-item-container {
        width: 100%;
        margin-bottom:8% !important;
    }
    .xnmain-widget-course .xnbw-item-container:nth-of-type(-n+2){
        margin-bottom: 8%;
    }
    .xnmain-widget-course .xncwi-container .xncwi-info-container{
        height:inherit;
    }
    .xnmain-widget-board .xn-widget-container .xnbw-board-post-list{
        gap:0 !important;
    }
    .xn-widget .xn-widget-container.board_v2 .xnbw-post-list-title{
        width: calc(100% - 88px);
    }
    .xnmain-widget-board .xn-widget-container .xnbw-post-list-created{
        position: absolute;
        right: 0;
        top:30px;
        transform: translateY(50%);
    }
}

/* Google Translate 스타일 보호 - font 태그 및 인라인 스타일 제거 */
/* 구글 번역이 추가하는 font 태그 스타일 제거 */
body.translated-ltr font,
body.translated-rtl font,
body:not(:lang(ko)) font {
    font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    font-size: inherit !important;
    color: inherit !important;
    background: transparent !important;
    font-weight: inherit !important;
    font-style: normal !important;
    text-decoration: none !important;
    word-break: break-all !important;
}
font {
    font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    font-size: inherit !important;
    color: inherit !important;
    background: transparent !important;
    font-weight: inherit !important;
    font-style: normal !important;
    text-decoration: none !important;
    line-height: inherit !important;
    display: inline !important;
}

/* 구글 번역이 추가하는 모든 인라인 스타일 오버라이드 */
body.translated-ltr [style],
body.translated-rtl [style] {
    font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* 구글 번역이 적용된 경우에도 폰트 패밀리 유지 */
body.translated-ltr,
body.translated-rtl,
body.translated-ltr *,
body.translated-rtl * {
    font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* 구글 번역 UI 요소 완전히 숨기기 */
#google_translate_element,
.goog-te-banner-frame,
.goog-te-balloon-frame,
.goog-te-spinner-pos,
.goog-te-gadget,
.goog-te-gadget-simple,
.skiptranslate,
.goog-te-combo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}

/* 구글 번역 프레임 숨기기 */
iframe[name="google_translate_element"],
iframe[name="votingFrame"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
}

/* 헤더 스타일 보호 */
body.translated-ltr #header.xnmain,
body.translated-rtl #header.xnmain {
    font-family: "Pretendard" !important;
}

body.translated-ltr #header.xnmain *,
body.translated-rtl #header.xnmain * {
    font-family: "Pretendard" !important;
}

body.translated-ltr #header.xnmain .xn-header-menu > li > a,
body.translated-rtl #header.xnmain .xn-header-menu > li > a {
    font-family: "Pretendard" !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

/* 메뉴 항목 번역 시 레이아웃 보호 */
body.translated-ltr #header.xnmain .xn-header-menu,
body.translated-rtl #header.xnmain .xn-header-menu {
    flex-wrap: nowrap;
}

body.translated-ltr #header.xnmain .xn-header-menu > li,
body.translated-rtl #header.xnmain .xn-header-menu > li {
    min-width: fit-content;
    max-width: 200px;
    overflow: hidden;
}

/* 언어 선택 박스 스타일 유지 */
body.translated-ltr #header.xnmain .xn-translate_language-select_box,
body.translated-rtl #header.xnmain .xn-translate_language-select_box {
    font-family: "Pretendard" !important;
    white-space: nowrap;
}

/* 비주얼 영역 스타일 보호 */
body.translated-ltr #visual.xnmain,
body.translated-rtl #visual.xnmain,
body.translated-ltr #visual.xnmain *,
body.translated-rtl #visual.xnmain * {
    font-family: "Pretendard" !important;
}

body.translated-ltr .xnmain-btn,
body.translated-rtl .xnmain-btn,
body.translated-ltr .xnmain-btn *,
body.translated-rtl .xnmain-btn * {
    font-family: "Pretendard" !important;
    word-break: break-word;
    overflow-wrap: break-word;
}

/* 슬로건 스타일 보호 */
body.translated-ltr .xnmain_slogan,
body.translated-rtl .xnmain_slogan,
body.translated-ltr .xnmain_slogan *,
body.translated-rtl .xnmain_slogan * {
    font-family: "Pretendard" !important;
    word-break: break-word;
    overflow-wrap: break-word;
}

/* 링크 텍스트 스타일 보호 */
body.translated-ltr .link_wrap,
body.translated-rtl .link_wrap,
body.translated-ltr .link_wrap *,
body.translated-rtl .link_wrap * {
    font-family: "Pretendard" !important;
}

body.translated-ltr .link_wrap .link_txt,
body.translated-rtl .link_wrap .link_txt {
    word-break: break-word;
    overflow-wrap: break-word;
}

body.translated-ltr .link_wrap .link_txt strong,
body.translated-rtl .link_wrap .link_txt strong {
    word-break: break-word;
    overflow-wrap: break-word;
    display: block;
}

/* 코스 위젯 스타일 보호 */
body.translated-ltr .xnmain-widget-course,
body.translated-rtl .xnmain-widget-course,
body.translated-ltr .xnmain-widget-course *,
body.translated-rtl .xnmain-widget-course * {
    font-family: "Pretendard" !important;
}

body.translated-ltr .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-title,
body.translated-rtl .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-title,
body:not(:lang(ko)) .xnmain-widget-course .xncwi-container .xncwi-info-container .xncwi-title {
    /* 말줄임 처리 (1줄) */
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    line-height: 1.4 !important;
    max-height: 1.4em !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

/* 카탈로그 타이틀 말줄임 (구글 번역 시 유지) */
body.translated-ltr .xnmain-widget-course .xncwi-container .xncwi-catalog-info-container .xncwi-catalog-wrap .xncwi-catalog-title,
body.translated-rtl .xnmain-widget-course .xncwi-container .xncwi-catalog-info-container .xncwi-catalog-wrap .xncwi-catalog-title,
body:not(:lang(ko)) .xnmain-widget-course .xncwi-container .xncwi-catalog-info-container .xncwi-catalog-wrap .xncwi-catalog-title {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
}

body.translated-ltr .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title,
body.translated-rtl .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title,
body:not(:lang(ko)) .xnmain-widget-course .xncw-top-container .xncw-title-wrap .xncw-title {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    /* 말줄임 처리 (2줄) */
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-height: calc(1.4em * 2) !important;
}

/* 보드 위젯 스타일 보호 */
body.translated-ltr .xnmain-widget-board,
body.translated-rtl .xnmain-widget-board,
body.translated-ltr .xnmain-widget-board *,
body.translated-rtl .xnmain-widget-board * {
    font-family: "Pretendard" !important;
}

body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-post-list-title,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-post-list-title,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-post-list-title {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    /* 말줄임 처리 (1줄) */
    display: -webkit-box !important;
    -webkit-line-clamp: 1 !important;
    line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    line-height: 1.4 !important;
    max-height: 1.4em !important;
    white-space: nowrap !important;
}

/* 게시글 날짜 및 카테고리 - 한국어가 아닐 때 영역 넘침 방지 */
body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-post-list-created,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-post-list-created,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-post-list-created {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
}

body.translated-ltr .xnmain-widget-board .xn-widget-container .xnbw-post-list-category,
body.translated-rtl .xnmain-widget-board .xn-widget-container .xnbw-post-list-category,
body:not(:lang(ko)) .xnmain-widget-board .xn-widget-container .xnbw-post-list-category {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
}

body.translated-ltr .cnt_board .board_sub_title,
body.translated-rtl .cnt_board .board_sub_title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 검색 박스 스타일 보호 */
body.translated-ltr .search_box_form,
body.translated-rtl .search_box_form,
body.translated-ltr .search_box_form *,
body.translated-rtl .search_box_form * {
    font-family: "Pretendard" !important;
}

/* 푸터 스타일 보호 */
body.translated-ltr .xnmain_footer,
body.translated-rtl .xnmain_footer,
body.translated-ltr .xnmain_footer *,
body.translated-rtl .xnmain_footer * {
    font-family: "Pretendard" !important;
}

/* 버튼 스타일 보호 */
body.translated-ltr .btn,
body.translated-rtl .btn,
body.translated-ltr button,
body.translated-rtl button,
body.translated-ltr .btn *,
body.translated-rtl .btn *,
body.translated-ltr button *,
body.translated-rtl button * {
    font-family: "Pretendard" !important;
}

/* 모든 텍스트 요소에 폰트 강제 적용 */
body.translated-ltr p,
body.translated-rtl p,
body.translated-ltr span,
body.translated-rtl span,
body.translated-ltr div,
body.translated-rtl div,
body.translated-ltr a,
body.translated-rtl a,
body.translated-ltr h1,
body.translated-rtl h1,
body.translated-ltr h2,
body.translated-rtl h2,
body.translated-ltr h3,
body.translated-rtl h3,
body.translated-ltr h4,
body.translated-rtl h4,
body.translated-ltr h5,
body.translated-rtl h5,
body.translated-ltr h6,
body.translated-rtl h6,
body.translated-ltr li,
body.translated-rtl li,
body.translated-ltr td,
body.translated-rtl td,
body.translated-ltr th,
body.translated-rtl th {
    font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* Material Icons 보호 - 구글 번역이 아이콘을 텍스트로 변환하지 않도록 */
/* Material Icons는 아이콘 폰트이므로 번역되지 않아야 함 */
/* notranslate 클래스가 추가된 경우 강제 보호 */
.notranslate.material-icons,
.notranslate.material-icons-sharp,
.notranslate.material-symbols-outlined,
body.translated-ltr .material-icons,
body.translated-rtl .material-icons,
body.translated-ltr .material-icons-sharp,
body.translated-rtl .material-icons-sharp,
body.translated-ltr .material-symbols-outlined,
body.translated-rtl .material-symbols-outlined,
.material-icons,
.material-icons-sharp,
.material-symbols-outlined {
    font-family: 'Material Icons Sharp', 'Material Icons', 'Material Symbols Outlined' !important;
    font-weight: normal !important;
    font-style: normal !important;
    font-size: 24px !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    display: inline-block !important;
    white-space: nowrap !important;
    word-wrap: normal !important;
    direction: ltr !important;
    font-feature-settings: 'liga' !important;
    -webkit-font-feature-settings: 'liga' !important;
    -webkit-font-smoothing: antialiased !important;
    /* 구글 번역이 번역하지 않도록 */
    unicode-bidi: bidi-override !important;
    /* 텍스트가 아닌 아이콘으로 표시 */
    text-rendering: optimizeLegibility !important;
    /* 구글 번역이 텍스트를 추가해도 숨기기 */
    color: inherit !important;
    background: transparent !important;
    text-decoration: none !important;
    /* 텍스트 내용을 숨기고 아이콘만 표시 */
    text-indent: 0 !important;
    overflow: visible !important;
    /* 구글 번역이 추가한 텍스트 노드 숨기기 */
    font-variant: normal !important;
    text-shadow: none !important;
}

/* Material Icons 내부 텍스트가 번역되지 않도록 - 완전히 숨김 */
body.translated-ltr .material-icons *,
body.translated-rtl .material-icons *,
body.translated-ltr .material-icons-sharp *,
body.translated-rtl .material-icons-sharp *,
body.translated-ltr .material-symbols-outlined *,
body.translated-rtl .material-symbols-outlined * {
    font-family: 'Material Icons Sharp', 'Material Icons', 'Material Symbols Outlined' !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}

/* 구글 번역이 material-icons를 감싸는 font 태그 스타일 제거 */
body.translated-ltr font .material-icons,
body.translated-rtl font .material-icons,
body.translated-ltr font .material-icons-sharp,
body.translated-rtl font .material-icons-sharp,
body.translated-ltr font .material-symbols-outlined,
body.translated-rtl font .material-symbols-outlined {
    font-family: 'Material Icons Sharp', 'Material Icons', 'Material Symbols Outlined' !important;
    font-size: 24px !important;
    color: inherit !important;
    background: transparent !important;
    font-weight: normal !important;
    font-style: normal !important;
}

/* material-icons가 포함된 요소 보호 */
body.translated-ltr [class*="material-icons"],
body.translated-rtl [class*="material-icons"],
body.translated-ltr [class*="material-symbols"],
body.translated-rtl [class*="material-symbols"] {
    font-family: 'Material Icons Sharp', 'Material Icons', 'Material Symbols Outlined' !important;
    font-size: inherit !important;
}

/* material-icons 내부의 번역된 텍스트 완전히 숨기기 */
body.translated-ltr .material-icons font,
body.translated-rtl .material-icons font,
body.translated-ltr .material-icons-sharp font,
body.translated-rtl .material-icons-sharp font,
body.translated-ltr .material-symbols-outlined font,
body.translated-rtl .material-symbols-outlined font {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* 구글 번역이 material-icons 텍스트를 span 등으로 감싼 경우 */
body.translated-ltr .material-icons > span,
body.translated-rtl .material-icons > span,
body.translated-ltr .material-icons-sharp > span,
body.translated-rtl .material-icons-sharp > span,
body.translated-ltr .material-symbols-outlined > span,
body.translated-rtl .material-symbols-outlined > span {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* material-icons 자체는 항상 표시되도록 */
body.translated-ltr .material-icons:not(font),
body.translated-rtl .material-icons:not(font),
body.translated-ltr .material-icons-sharp:not(font),
body.translated-rtl .material-icons-sharp:not(font),
body.translated-ltr .material-symbols-outlined:not(font),
body.translated-rtl .material-symbols-outlined:not(font) {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 구글 번역이 material-icons의 텍스트 내용을 직접 변경한 경우 처리 */
/* material-icons 내부의 모든 텍스트 노드 숨기기 */
body.translated-ltr .material-icons,
body.translated-rtl .material-icons,
body.translated-ltr .material-icons-sharp,
body.translated-rtl .material-icons-sharp {
    position: relative !important;
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
}

/* material-icons의 직접 자식 텍스트 노드를 숨기기 위한 가상 요소 사용 */
body.translated-ltr .material-icons::after,
body.translated-rtl .material-icons::after,
body.translated-ltr .material-icons-sharp::after,
body.translated-rtl .material-icons-sharp::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: inherit !important;
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
}

/* 구글 번역이 추가한 모든 래퍼 요소 제거 */
body.translated-ltr .material-icons > *:not(.material-icons):not(.material-icons-sharp),
body.translated-rtl .material-icons > *:not(.material-icons):not(.material-icons-sharp),
body.translated-ltr .material-icons-sharp > *:not(.material-icons):not(.material-icons-sharp),
body.translated-rtl .material-icons-sharp > *:not(.material-icons):not(.material-icons-sharp) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-indent: -9999px !important;
}

/* 구글 번역이 material-icons를 완전히 텍스트로 바꾼 경우 - 원본 아이콘 이름 복원 시도 */
body.translated-ltr .material-icons[class*="arrow"],
body.translated-rtl .material-icons[class*="arrow"],
body.translated-ltr .material-icons-sharp[class*="arrow"],
body.translated-rtl .material-icons-sharp[class*="arrow"] {
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
}

/* 모든 material-icons 요소에 대해 텍스트 내용을 숨기고 아이콘만 표시 */
body.translated-ltr .material-icons,
body.translated-rtl .material-icons,
body.translated-ltr .material-icons-sharp,
body.translated-rtl .material-icons-sharp {
    text-indent: 0 !important;
    overflow: visible !important;
}

/* 구글 번역이 추가한 인라인 스타일 오버라이드 */
body.translated-ltr .material-icons[style],
body.translated-rtl .material-icons[style],
body.translated-ltr .material-icons-sharp[style],
body.translated-rtl .material-icons-sharp[style] {
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: inherit !important;
    background: transparent !important;
    text-decoration: none !important;
}

/* 구글 번역이 material-icons의 텍스트를 직접 변경한 경우 처리 */
/* material-icons 클래스를 가진 요소는 항상 아이콘 폰트 사용 */
body.translated-ltr [class*="material-icons"],
body.translated-rtl [class*="material-icons"],
body.translated-ltr [class*="material-icons-sharp"],
body.translated-rtl [class*="material-icons-sharp"] {
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
    /* 구글 번역이 추가한 텍스트를 최대한 숨기기 */
    text-indent: 0 !important;
    overflow: visible !important;
}

/* 푸터의 material-icons - 한국어가 아닐 때 숨기기 */
body.translated-ltr .xnmain_footer .material-icons,
body.translated-rtl .xnmain_footer .material-icons,
body.translated-ltr .xnmain_footer .material-icons-sharp,
body.translated-rtl .xnmain_footer .material-icons-sharp,
body:not(:lang(ko)) .xnmain_footer .material-icons,
body:not(:lang(ko)) .xnmain_footer .material-icons-sharp {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 푸터의 material-icons 내부 텍스트 숨기기 */
body.translated-ltr .xnmain_footer .material-icons > *,
body.translated-rtl .xnmain_footer .material-icons > *,
body.translated-ltr .xnmain_footer .material-icons-sharp > *,
body.translated-rtl .xnmain_footer .material-icons-sharp > *,
body:not(:lang(ko)) .xnmain_footer .material-icons > *,
body:not(:lang(ko)) .xnmain_footer .material-icons-sharp > * {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* 구글 번역이 material-icons 내부에 추가한 모든 텍스트 노드 숨기기 */
body.translated-ltr .material-icons,
body.translated-rtl .material-icons,
body.translated-ltr .material-icons-sharp,
body.translated-rtl .material-icons-sharp {
    /* 텍스트 내용을 숨기고 아이콘만 표시하기 위한 추가 처리 */
    position: relative !important;
    display: inline-block !important;
}

/* 구글 번역이 추가한 텍스트를 완전히 숨기기 위한 최종 보호 */
body.translated-ltr .material-icons:not(:empty),
body.translated-rtl .material-icons:not(:empty),
body.translated-ltr .material-icons-sharp:not(:empty),
body.translated-rtl .material-icons-sharp:not(:empty) {
    /* 아이콘 폰트가 제대로 로드되도록 강제 */
    font-family: 'Material Icons Sharp', 'Material Icons' !important;
    font-size: 24px !important;
    line-height: 1 !important;
}

.xn-main-login-info-wrap{
    display: none !important;
}
#content #visual .xn-main-login-container{
    min-height: unset !important;
}