@charset 'utf-8';


.body_hidden {height:100%; min-height:100%; overflow:hidden; touch-action:none;}

#wrap { min-height:calc(100vh - 280px); position:relative; background-color:#fff; }
@media screen and (max-width:1008px){
	#wrap { min-height:100%; }
}

.inner { max-width:1600px; width:100%; margin:0 auto; }
.inner:after {content:""; display:block; visibility:hidden; clear:both; height:0; }
@media screen and (max-width:1640px){
	.inner { padding:0 20px; }
}

.font_Pop,
.font_Pop * { font-family:'Poppins'; }

@media screen and (max-width:1024px){
    span.m_br { display:block; }
}

/* header */
header { position:absolute; top:0; left:0; width:100%; z-index:999; }
header:before { content:""; display:block; opacity:0; width:100%; height:100px; background-color:#fff; position:absolute; left:0; top:0; transition:all 0.5s ease-in-out; }
header.over:before,
header.s-over:before{ opacity:1; }
header:after { content:""; display:block; opacity:0; width:100%; height:0; background-color:#fff; position:absolute; left:0; top:100px; transition:all 0.5s ease-in-out; }
header.over:after,
header.s-over:after{ opacity:1; height:300px; }
header.s-over:before,
header.s-over:after { z-index:10 }
header .topbox { position:relative; top:0; left:0; width:100%; }
header h1 { position:absolute; left:160px; text-align:left; padding:40px 0 0 0; z-index:999; transition:all 0.3s ease-in-out; filter:brightness(0) invert(1); }
header h1 a { display:inline-block; transition:all 0.3s ease-in-out; }
header h1 a svg { width:263px; }
header.over h1,
.web header.ov h1,
header.s-over h1,
.body13 header h1 { filter:brightness(1) invert(0); }

@media screen and (max-width:1780px){
    header h1 { left:80px; }
}
@media screen and (max-width:1560px){
    header h1 { left:20px; }
}
@media screen and (max-width:1300px){
    header h1 { padding:30px 0 0 0; }
    header h1 a svg { width:220px; }
}
@media screen and (max-width:640px){
    header h1 { padding:10px 0 0 0; }
    header h1 a svg { width:190px; }
    header.over:after,
    header.s-over:after{ opacity:1; height:200px; }
}
@media screen and (max-width:480px){
    /* header h1 { left:0; text-align:center; width:100%; } */
}


header #navi { position:relative; margin-right:360px; z-index:2; }
header #navi #gnb { position:relative; z-index:2; text-align:right; }
header #navi #gnb > ul { display:inline-block; }
header #navi #gnb > ul > li { position:relative; display:inline-block; }
header #navi #gnb > ul > li > a { position:relative; z-index:3; font-weight:400; font-size:18px; color:#fff; font-family:'Poppins', 'Pretendard', sans-serif; letter-spacing:-0.02em; padding:55px 25px 45px; display:block; text-align:center; }
header #navi #gnb > ul > li > a > span { font-family:'Poppins', 'Pretendard', sans-serif; font-weight:400; }
header #navi.ov #gnb > ul > li > a,
.body13 header #navi #gnb > ul > li > a { color:#222; }
header #navi.ov #gnb > ul > li > a:hover,
header #navi.ov #gnb > ul > li.on > a { color:#004190; font-weight:600; }
header #navi.ov #gnb > ul > li.on > a > span { font-weight:600; }
header #navi.ov #gnb > ul > li:nth-child(3) > a:hover,
header #navi.ov #gnb > ul > li:nth-child(3).on > a { letter-spacing:-0.040em; }
header #navi.ov #gnb > ul > li:nth-child(4) > a:hover,
header #navi.ov #gnb > ul > li:nth-child(4).on > a { letter-spacing:-0.03em; }
header #navi #gnb > ul > li > .subDepth { display:none; z-index:5; position:absolute; left:50%; transform:translateX(-50%); top:100px; width:100%; }
header #navi.ov #gnb > ul > li > .subDepth { display:block; } 
header #navi #gnb > ul > li > .subDepth > ul { opacity:0; text-align:center; padding:20px 12px; }
header #navi.ov #gnb > ul > li > .subDepth > ul { animation:ani_5 0.8s 0.3s; animation-fill-mode:both;  }
header #navi #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-bottom:25px; }
header #navi #gnb > ul > li > .subDepth > ul > li > a { position:relative; font-size:16px; color:#222; font-weight:300; line-height:130%; letter-spacing:-0.02em; transition:all 0.3s ease; }
header #navi #gnb > ul > li > .subDepth > ul > li a:hover{ color:#004190; font-weight:400; }
header #navi #gnb > ul > li > .subDepth > ul > li a:before { content:""; display:block; width:0; height:1px; background-color:#004190; position:absolute; left:50%; transform:translateX(-50%); bottom:-1px; transition:all 0.3s ease-in-out; }
header #navi #gnb > ul > li > .subDepth > ul > li a:hover:before { width:100%; }
header #navi .top_img { position:absolute; top:122px; left:160px; z-index:-1; overflow:hidden; transition:all 0.3s ease; }
header #navi .box { opacity:0; border-radius:20px; width:460px; height:240px; transition:all 0.3s ease; }
header #navi.ov .top_img .box { animation:ani_3 0.7s 0.5s; animation-fill-mode:both;}
header #navi .top_img.bg1 .box { background:url(/img/common/top_img1.jpg) left center no-repeat; }
header #navi .top_img.bg2 .box { background:url(/img/common/top_img2.jpg) left center no-repeat; }
header #navi .top_img.bg3 .box { background:url(/img/common/top_img3.jpg) left center no-repeat; }
header #navi .top_img.bg4 .box { background:url(/img/common/top_img4.jpg) left center no-repeat; }
header #navi .top_img.bg5 .box { background:url(/img/common/top_img5.jpg) left center no-repeat; }
header #navi .top_img.bg6 .box { background:url(/img/common/top_img6.jpg) left center no-repeat; }
header #navi .top_img.bg10 .box,
header #navi .top_img.bg11 .box,
header #navi .top_img.bg12 .box { background:url(/img/common/top_img6.jpg) left center no-repeat; }

header .gnb_bg { position:absolute; top:0; left:0; width:100%; height:0; background-color:#fff; transition:all 0.5s ease-in-out; }

@media screen and (max-width:1780px){
    header #navi { margin-right:250px; }
    header #navi #gnb > ul > li > a { padding:55px 20px 45px; }
    header #navi .top_img { left:80px; }
}
@media screen and (max-width:1560px){
    header #navi { margin-right:200px; }
    header #navi .top_img { left:20px; }
}
@media screen and (max-width:1440px){
    header #navi { margin-right:180px; }
    header #navi #gnb > ul > li > a { padding:55px 14px 45px; }
}
@media screen and (max-width:1300px){
    header #navi { margin-right:140px; }
    header #navi #gnb > ul > li > a { padding:48px 14px 45px; }
}
@media screen and (max-width:1220px){
    header #navi { display:none !important }
}



header .topmenuBox { position:absolute; right:160px; top:50px; z-index:8; display:flex; gap:0 20px; }
@media screen and (max-width:1780px){
    header .topmenuBox { right:80px; gap:0 10px; }
}
@media screen and (max-width:1560px){
    header .topmenuBox { right:20px; gap:0 10px; }
}
@media screen and (max-width:1300px){
    header .topmenuBox { top:40px; }
}
@media screen and (max-width:640px){
    header .topmenuBox { top:20px; }
}


header .toplogin { position:relative; display:flex; gap:0 30px; } 
header .toplogin .btn_log { overflow:hidden; text-indent:-9999em; width:30px; height:30px; display:block; filter:brightness(0) invert(1); }
header.over .toplogin .btn_log,
.body13 header .toplogin .btn_log { filter:brightness(1) invert(0); }
header .toplogin .btn_log.login { background:url(/img/common/login_icon.png) center center no-repeat; }
header .toplogin .btn_log.logout { background:url(/img/common/logout_icon.png) center center no-repeat; }
header .toplogin .info { position:relative; }
header .toplogin .info .box { padding-top:20px; position:absolute; left:50%; top:25px; transform:translateX(-50%); opacity:0; visibility:hidden; z-index:-111; }
/* header.over .toplogin .info.on .box { opacity:0; visibility:hidden; z-index:-111; } */
header .toplogin .info.on .box,
header.over .toplogin .info .box { opacity:1 !important; visibility:visible !important; z-index:999; display:block !important; }
header .toplogin .info .box ul { position:relative; display:flex; background:#fff; border-radius:10px; padding:11px 20px 12px; }
header .toplogin .info .box ul:after { content:""; display:block; width:14px; height:12px; background:url(/img/common/login_arr.png) center center no-repeat;  position:absolute; left:50%; top:-12px; transform:translateX(-50%);}
header .toplogin .info .box li:not(:last-child) { margin-right:20px; }
header .toplogin .info .box li { position:relative; }
header .toplogin .info .box li:not(:last-child):before { content:""; display:block; width:1px; height:8px; transform:translateY(-50%); background:rgba(34, 34, 34, 0.4); position:absolute; right:-10px; top:50%; }
header .toplogin .info .box li a { font-size:16px; color:#222; font-weight:300; letter-spacing:-0.02em; }
header .toplogin .info .box li a:hover { font-weight:700; }
header.over .toplogin .info .box { background:none; }
header.over .toplogin .info .box ul { background:none; display:block; padding-top:26px; text-align:center; animation:ani_5 0.8s 0.3s; animation-fill-mode:both;}
header.over .toplogin .info .box ul:after { display:none }
header.over .toplogin .info .box li a { position:relative; font-size:16px; color:#222; font-weight:300; line-height:130%; letter-spacing:-0.02em; transition:all 0.3s ease; }
header.over .toplogin .info .box li a:hover{ color:#004190; font-weight:400; }
header.over .toplogin .info .box li a:before { content:""; display:block; width:0; height:1px; background-color:#004190; position:absolute; left:50%; transform:translateX(-50%); bottom:-1px; transition:all 0.3s ease-in-out; }
header.over .toplogin .info .box li a:hover:before { width:100%; }
header.over .toplogin .info .box li:not(:last-child):before { display:none }
header.over .toplogin .info .box li:not(:last-child){ margin-bottom:25px; margin-right:0; }
.body13 header .toplogin .info .box ul { background:#004190 }
.body13 header .toplogin .info .box ul:after { background:url(/img/common/login_arr_on.png) center center no-repeat; }
.body13 header .toplogin .info .box li a{ color:#fff }
.body13 header.over .toplogin .info .box ul { background:none }
.body13 header.over .toplogin .info .box ul:after { display:none }
.body13 header.over .toplogin .info .box li a{ color:#222 }
@media screen and (max-width:1280px){
    header.over .toplogin .info .box ul { padding-top:35px; }
}
@media screen and (max-width:1024px){
    header .toplogin { display:none }
}

header .search_box { position:relative; width:30px; height:30px; display:flex; align-items:center; justify-content:center; filter:brightness(0) invert(1); }
header.over .search_box,
.body13 header .search_box { filter:brightness(1) invert(0); }
header .searchCont { position:absolute; width:100%; left:0; top:160px; text-align:center; z-index:-11; opacity:0; visibility:hidden; transition:all 0.8s; }
header .searchCont.on { opacity:1; z-index:999; visibility:visible; }
header .searchCont .ipbox { opacity:0; position:relative; max-width:700px; margin:0 auto; box-shadow:0px 0px 2px rgba(0, 0, 0, 0.2); border-radius:100px; }
header .searchCont.on .ipbox { animation:ani_5 0.5s 0.1s; animation-fill-mode:both; }
header .searchCont .ipbox input[type="text"] { width:100%; height:72px; background:none; outline:none; border:none; padding:0 120px 0 40px; color:#111; font-size:22px; font-weight:400; }
header .searchCont .ipbox .btn { position:absolute; right:40px; top:50%; transform:translateY(-50%); width:32px; height:32px; display:flex; align-items:center; justify-content:center; outline:none; border:none; background:url(/img/common/btn_search.png) center center no-repeat; }
header .searchCont .keyword { opacity:0; margin-top:25px; text-align:center; display:inline-block; overflow:hidden; }
header .searchCont.on .keyword { animation:ani_5 0.5s 0.5s; animation-fill-mode:both; }
header .searchCont .keyword ul { display:flex; flex-wrap:wrap; justify-content:center; margin:0 -17px; gap:10px 0 }
header .searchCont .keyword ul li { position:relative; padding:0 17px;  }
header .searchCont .keyword ul li:before { content:""; display:block; width:1px; height:12px; background-color:#e0e0e0; position:absolute; left:0; transform:translateY(-50%); top:50%; }
header .searchCont .keyword ul li a { font-size:16px; color:#222; font-weight:300; transition:all 0.3s }
header .searchCont .keyword ul li a:hover { color:#004190; }
header .searchCont .btn_close { position:absolute; right:210px; top:-110px; }
header .searchCont .btn_close a { position:relative; width:30px; height:30px; display:flex; align-items:center; justify-content:center; text-indent:-9999em; overflow:hidden; }
header .searchCont .btn_close a span { position:relative; display:block; width:18px; height:2px; transform:rotate(45deg); background:#222; border-radius:5px; }
header .searchCont .btn_close a span:before { content:""; display:block; width:9px; height:2px; transform:translate(-50%) rotate(-90deg); background:#222; position:absolute; right:0; top:-5px; border-radius:5px;}
header .searchCont .btn_close a span:after { content:""; display:block; width:6px; height:2px; transform:translate(-50%) rotate(-90deg); background:#222; position:absolute; left:9px; top:7px; border-radius:5px;}

@media screen and (max-width:1780px){
    header .searchCont .btn_close { right:120px; }
}
@media screen and (max-width:1560px){
    header .searchCont .btn_close { right:60px; }
}
@media screen and (max-width:1300px){
    header .searchCont .btn_close { top:-110px; }
    header .searchCont { padding:0 20px; top:150px; }
    header .searchCont .ipbox input[type="text"] { height:60px; padding:0 120px 0 40px; font-size:20px; }
}
@media screen and (max-width:640px){
    header .searchCont .btn_close { right:60px; top:-95px; }
    header .searchCont { padding:0 20px; top:115px; }
    header .searchCont .ipbox input[type="text"] { height:50px; padding:0 60px 0 30px; font-size:17px; }
    header .searchCont .ipbox .btn { right:20px; }
    header .searchCont .keyword ul li a { font-size:15px; }
}


.allBox { position:relative; z-index:8; transition:all 0.8s; }
.allBox.on { z-index:999999; }
.allBox.on .allmenu { z-index:999; }
.allmenu { position:relative; }
.allmenu a { position:relative; width:30px; height:30px; display:flex; align-items:center; justify-content:center; z-index:2; }
.allmenu a span { position:relative; display:block; width:18px; height:2px; background:#fff; border-radius:5px; transition:all 0.5s ease; }
.allmenu a span:before {  content:""; display:block; width:10px; height:2px; background-color:#fff; position:absolute; right:0; top:-5px; transition:all 0.3s ease }
.allmenu a span:after { content:""; display:block; width:10px; height:2px; background-color:#fff; position:absolute; left:0; top:5px; border-radius:5px; transition:all 0.5s ease }
.allBox.on .allmenu a:before { width:0; left:unset; right:0; }
.allBox.on .allmenu a span,
.allBox.on .allmenu a span:before,
.allBox.on .allmenu a span:after { background-color:#222; }
.allBox.on .allmenu a span { transform:rotate(45deg); }
.allBox.on .allmenu a span:before { transform:translate(-50%) rotate(-90deg); width:9px; right:0; top:-5px; }
.allBox.on .allmenu a span:after { transform:translate(-50%) rotate(-90deg); width:6px; left:9px; top:7px; }
header.over .allmenu a span,
header.over .allmenu a span:before,
header.over .allmenu a span:after,
.body13 header .allmenu a span,
.body13 header .allmenu a span:before,
.body13 header .allmenu a span:after { background-color:#222; }
@media screen and (max-width:1024px){
    .allBox.on .allmenu a span,
    .allBox.on .allmenu a span:before,
    .allBox.on .allmenu a span:after { background-color:#fff; }
}



.web #allmenuBox { opacity:0; visibility:hidden; position:fixed; left:0; top:0; z-index:-11111; background:#fff; transition:all 1.0s ease-in-out; }
.web #allmenuBox .allCont { opacity:0; position:absolute; width:100%; height:100%;	}
.web #allmenuBox.on { opacity:1; width:100vw; height:100vh; visibility:visible; z-index:10000; }
.web #allmenuBox.on .allCont { opacity:1; animation:allBox 1.0s 0.2s; animation-fill-mode:both; }
.web #allmenuBox.off { animation:allBox_s 0.5s 0.1s; animation-fill-mode:both;	}
.web #allmenuBox .btn_close { border:1px solid #000 }
.web #allmenuBox .menuCont { height:100%; }
.web #allmenuBox .menuBox { position:relative; display:flex; align-items:center; width:100%; height:100%; }
.web #allmenuBox .menuBox:before { content:""; display:block; position:absolute; left:0; top:0; width:40%; height:100%; background:url(/img/common/allmenu_bg.jpg) center/cover no-repeat;}
.web #allmenuBox .menuBox .menuTop { width:100%; }
.web #allmenuBox .menuBox .menuTop #gnb {  position:absolute; left:50%; top:50%; width:calc(50% + 60px); margin-left:-60px; transform:translate(0, -50%); }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li { position:relative; width:100%; transition:all 0.3s ease-in-out; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li:not(:last-child) { margin-bottom:60px; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > a { position:relative; color:#222; font-family:'Poppins', 'Pretendard', sans-serif; font-size:50px; font-weight:700; letter-spacing:-0.02em; transition:all 0.3s ease-in-out; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > a > span { font-family:'Poppins', 'Pretendard', sans-serif; font-weight:600;}
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > a:before { content:""; display:block; position:absolute; right:120px; top:50%; transform:translateY(-50%); opacity:0; width:11px; height:19px; background:url(/img/common/allmenu_arr.png) no-repeat center center; transition:all 0.3s ease-in-out; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li.hover > a,
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > a:hover { color:#004190; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth { position:relative; display:none }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul { padding-top:20px; display:flex; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li { position:relative; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li:not(:last-child) { margin-right:20px; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li > a { position:relative; color:#222; letter-spacing:-0.02em; font-size:20px; font-weight:300; white-space:nowrap; transition:all 0.3s ease-in-out;}
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li > a:hover  { color:#004190; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li > a:before { content:""; display:block; width:0; height:1px; background-color:#004190; position:absolute; left:50%; transform:translateX(-50%); bottom:-1px; transition:all 0.3s ease-in-out; }
.web #allmenuBox .menuBox .menuTop #gnb > ul > li > .subDepth > ul > li > a:hover:before { width:100%; }
.web .m-info { display:none }
@media screen and (max-width:1560px){
    .web #allmenuBox .menuBox .menuTop #gnb > ul > li:not(:last-child) { margin-bottom:40px; }
    .web #allmenuBox .menuBox .menuTop #gnb > ul > li > a { font-size:38px; }
}

/* animation */
.web #allmenuBox .menuBox .menuTop { opacity:0; }
.web #allmenuBox.on .menuBox .menuTop { animation:ani_2 1.0s 0.5s; animation-fill-mode:both; }


.mobile #allmenuBox { position:fixed; right:-480px; top:0; max-width:480px; width:100%; height:100%; background:#1e1e1e; z-index:10000; transition:all 0.3s 0.1s ease-in-out; }
.mobile #allmenuBox.on { right:0; }
/* .mobile #allmenuBox:before { content:""; display:block; position:absolute; right:0; top:0; width:100%; height:100%; background:url(/img/common/allmenu_bg.png) no-repeat right bottom; background-size:50% auto; } */
.mobile #allmenuBox .allCont .lang { position:absolute; right:35px; top:35px; z-index:33; }
.mobile #allmenuBox .allCont .lang ul { height:auto !important; display:flex; width:auto; }
.mobile #allmenuBox .allCont .lang li { position:relative; margin-left:15px; padding-left:15px; }
.mobile #allmenuBox .allCont .lang li:first-child { margin-left:0; padding-left:0; }
.mobile #allmenuBox .allCont .lang li:before { content:""; display:block; position:absolute; left:0; top:50%; transform:translateY(-50%); width:1px; height:10px; background:#fff; } 
.mobile #allmenuBox .allCont .lang li:first-child:before { display:none }
.mobile #allmenuBox .allCont .lang li a { font-size:14px; font-weight:700; color:#555; }
.mobile #allmenuBox .allCont .lang li.on a { color:#fff; }
.mobile #allmenuBox .allCont .aFooter { position:absolute; left:0; bottom:80px; width:100%; z-index:33; text-align:center; }
.mobile #allmenuBox .allCont .aFooter ul { display:flex; flex-wrap:wrap; justify-content:center; }
.mobile #allmenuBox .allCont .aFooter ul li { position:relative; width:100%; color:#fff; font-weight:300; font-size:14px; opacity:0.8; }
.mobile #allmenuBox .allCont .aFooter ul li:not(last-child) { margin-bottom:12px }
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(2),
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(4) { display:none }
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(1),
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(3) { width:auto; }
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(3) { margin-left:10px; padding-left:10px; }
.mobile #allmenuBox .allCont .aFooter ul li:nth-child(3):before { content:""; display:block; position:absolute; left:0; top:50%; transform:translateY(-50%); width:1px; height:12px; background:rgba(255,255,255,0.8); } 
.mobile #allmenuBox .allCont .aFooter ul li span.s { display:inline-block; margin:0 2px; }
.mobile #allmenuBox .menuBox { height:100%; }
.mobile #allmenuBox #gnb { position:absolute; top:110px; left:0; width:100%; padding:0 40px; height:calc(100% - 110px - 160px); overflow:auto; text-align:left; }
.mobile #allmenuBox #gnb > ul > li { position:relative; margin-top:40px; }
.mobile #allmenuBox #gnb > ul > li:first-child { margin-top:0; }
.mobile #allmenuBox #gnb > ul > li > a { position:relative; font-family:'Poppins', 'Pretendard', sans-serif; color:#fff; font-weight:700; font-size:26px; display:inline-block; }
.mobile #allmenuBox #gnb > ul > li > a > span { font-family:'Poppins', 'Pretendard', sans-serif; font-weight:600 }
.mobile #allmenuBox #gnb > ul > li > .subDepth { position:relative; display:none; padding:25px 0 10px 0; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li { position:relative; margin-top:15px; padding-left:10px; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li:first-child { margin-top:0; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li > a { position:relative; color:#fff; font-weight:400; font-size:17px; display:inline-block; padding-right:20px; }
.mobile #allmenuBox #gnb > ul > li .sub-menu > li.sm > a:after { content:"\e914"; display:block; position:absolute; right:0; top:1px; color:#777; font-family:xeicon; font-size:13px; font-weight:300; }
.mobile #allmenuBox #gnb > ul > li .sub-menu > li.sm.active > a:after { content:"\e91b"; color:#000; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul { padding:8px 0 20px 15px; display:none; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul li { margin-top:10px; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul li a { font-size:14px; }
.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul li a:hover { color:#666; }
.mobile .m-info { position:absolute; bottom:0; left:0; width:100%; z-index:22; }
.mobile .m-info ul { position:relative; display:flex; background:#fff;}
.mobile .m-info li { position:relative; width:50% }
.mobile .m-info li:not(:last-child):before { content:""; display:block; width:1px; height:10px; transform:translateY(-50%); background:rgba(34, 34, 34, 0.4); position:absolute; right:-10px; top:50%; }
.mobile .m-info li a { font-size:16px; color:#222; font-weight:400; letter-spacing:-0.02em; height:50px; display:flex; align-items:center; justify-content:center; }
@media screen and (max-width:1024px){
    .mobile #allmenuBox .allCont .lang { right:100px; top:40px; }
}
@media screen and (max-width:640px){
    .mobile #allmenuBox .allCont .lang { right:80px; top:30px; }
	.mobile #allmenuBox #gnb { top:100px; padding:0 20px; }
	.mobile #allmenuBox #gnb > ul > li { margin-top:25px; }
	.mobile #allmenuBox #gnb > ul > li > a { font-size:22px; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth { padding:20px 0 10px 0; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li { margin-top:12px; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li > a { font-size:16px; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul { padding:0px 0 10px 15px; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul li { margin-top:8px; }
	.mobile #allmenuBox #gnb > ul > li > .subDepth > ul > li ul li a { font-size:13px; }
}

footer { position:relative; background:#141414; overflow:hidden }
footer:before { content:""; display:block; position:absolute; right:0; top:0; width:450px; height:100%; background:url(/img/common/footer_bg.png) right -10% no-repeat;} 
footer .footer_box { position:relative; padding:80px 100px 0; } 
footer .footer_box .flogo { filter:brightness(0) invert(1); width:264px; }
footer .footer_box .infobox { margin-top:70px; }
footer .footer_box .infobox .tit { font-weight:700; color:#fff; font-size:16px; letter-spacing:-0.02em; }
footer .footer_box .infobox ul { max-width:760px; }
footer .footer_box .infobox li { font-family:'Poppins', 'Pretendard', sans-serif; font-weight:300; color:#7c7c7c; font-size:15px; letter-spacing:-0.02em; display:inline-block; margin:10px 40px 0 0; line-height:1.3 }
footer .footer_box .infobox li:nth-child(2) { padding-right:100px; }
footer .footer_box .infobox li strong { font-weight:500; color:#fff; display:inline-block; margin-right:10px;}
footer .footer_box .infobox .txt_b { margin-top:20px; font-weight:400; color:#7c7c7c; font-size:15px; letter-spacing:-0.02em; line-height:1.3 }
footer .footer_box .r_box { position:absolute; bottom:120px; right:100px; display:flex; gap:0 10px; }
footer .footer_box .r_box .fmenu li:not(:last-child) { margin-right:10px; } 
footer .footer_box .r_box .txt { padding:0 30px; width:250px; height:60px; background:#232323; color:#ccc; font-size:15px; letter-spacing:-0.02em; border-radius:20px 10px; display:flex; align-items:center; }
footer .footer_box .r_box .txt span { position:relative; width:100%; }
footer .footer_box .r_box .txt span:before { content:""; display:block; position:absolute; right:0; top:50%; transform:translateY(-50%); width:7px; height:12px; background:url(/img/common/footer_arr.png) center no-repeat;} 
footer .footer_box .r_box .family .txt span:before { transform:translateY(-50%) rotate(90deg); transition:all 0.3s 0.1s ease-in-out; }
footer .footer_box .r_box .family .txt.on span:before { transform:translateY(-50%) rotate(-90deg); }
footer .footer_box .r_box .family .txt { cursor:pointer;  }
footer .footer_box .r_box .family .subBox { position:absolute; top:60px; display:none; }
footer .footer_box .r_box .family .subBox .txt { background:#333; border-radius:10px; }
footer .footer_box .r_box .family .subBox .txt span:before { transform:translateY(-50%) rotate(0); }
footer .footer_box .r_box .family .subBox i { }
footer .copyright { font-family:'Poppins', 'Pretendard', sans-serif;  margin-top:60px; height:59px; font-weight:300; color:#7c7c7c; font-size:14px; letter-spacing:-0.02em; border-top:1px solid rgba(217,217,217,0.2); display:flex; align-items:center; }

@media screen and (max-width:1560px){
    footer .footer_box { position:relative; padding:80px 40px 0; }
    footer .footer_box .infobox ul { max-width:630px; }
    footer .footer_box .infobox li { margin:10px 20px 0 0; }
    footer .footer_box .r_box { right:40px; }
    footer .footer_box .r_box .txt { padding:0 20px; width:200px; height:55px; }
    footer .footer_box .r_box .family .subBox { top:55px; }
}
@media screen and (max-width:1300px){
    footer .footer_box { position:relative; padding:60px 20px 0; }
    footer .footer_box .r_box { right:20px; }
}
@media screen and (max-width:1024px){
    footer .footer_box { position:relative; padding:40px 20px 0; }
    footer .footer_box .flogo { text-align:center; width:100%; }
    footer .footer_box .flogo svg { width:220px; }
    footer .footer_box .infobox { margin-top:50px; text-align:center; }
    footer .footer_box .infobox ul { margin:0 auto;}
    footer .footer_box .infobox li:nth-child(2) { padding-right:0; }
    footer .footer_box .r_box { bottom:unset; right:unset; position:relative; margin-top:30px; justify-content:center;  }
    footer .copyright { margin-top:40px; justify-content:center; }
}
@media screen and (max-width:640px){
    footer { padding-bottom:70px; }
    footer .footer_box { position:relative; padding:30px 20px 0; }
    footer .footer_box .flogo svg { width:190px;  }
    footer .footer_box .infobox { margin-top:40px; }
    footer .copyright { margin-top:30px; }
    footer .footer_box .r_box .txt { padding:0 15px; width:180px; height:50px; }
    footer .footer_box .r_box .family .subBox { top:50px; }
}



#btn_top { position:fixed; right:15px; bottom:40px; z-index:100; cursor:pointer; }
#btn_top .box { display:flex; align-items: center; justify-content:center; flex-direction:column; font-family:'Poppins', sans-serif; font-weight:600; font-size:14px; color:#004190; width:70px; height:70px; border-radius:50%; background:#fff; box-shadow:0 0 15px rgba(0,65,144,0.2); }
#btn_top .box span { font-weight:600; display:block; margin-top:4px; }
@media screen and (max-width:1024px){
    #btn_top { right:10px; bottom:20px; }
    #btn_top .box { width:60px; height:60px; }
}
@media screen and (max-width:640px){
    #btn_top { bottom:70px; }
    #btn_top .box { width:50px; height:50px; font-size:12px; }
    #btn_top .box span { margin-top:2px; }
}






.top_menu { position:fixed; bottom:240px; right:108px; z-index:5; }
.subBody .top_menu { top:50%; transform:translateY(-50%); } 
.top_menu li:not(:last-child) { margin-bottom:6px; }
.top_menu li a { width:195px; height:62px; display:flex; align-items:center; justify-content:flex-end; padding:0 10px; border-radius:60px; filter:drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.1));}
.top_menu li .icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; border:1px solid #fff; border-radius:50%; margin-left:20px; }
.top_menu li .txt { color:#fff; font-size:17px; font-weight:500; margin-right:-5px;}
.top_menu li a:hover { background:#fff; transition:all 0.3s ease-in-out; }
.top_menu li a:hover .txt { color:#004190; margin-right:5px; transition:all 0.3s ease-in-out; }
.top_menu li a:hover .icon { background-color:#004190; border:1px solid #004190;  transition:all 0.3s ease-in-out; }
.top_menu li:nth-child(2) a:hover .txt { color:#8fc31f; }
.top_menu li:nth-child(2) a:hover .icon { background-color:#8fc31f; border:1px solid #8fc31f; }

body.active .top_menu { bottom:130px; right:10px; }
body.active .top_menu li a { background:#fff; }
body.active .top_menu li a .txt { color:#004190; }
body.active .top_menu li a .icon { background-color:#004190; border:1px solid #004190; }
body.active .top_menu li:nth-child(2) a .txt { color:#8fc31f; }
body.active .top_menu li:nth-child(2) a .icon { background-color:#8fc31f; border:1px solid #8fc31f; }

.scrolldown { position:absolute; right:145px; bottom:60px; z-index:1; transform:rotate(90deg); transform-origin:right bottom; }
.scrolldown .box { display:flex; align-items:center;}
.scrolldown .txt { padding-right:15px; display:block; text-transform:uppercase; font-size:11px; font-weight:300; color:#fff; opacity:0.9; }
.scrolldown .txt:after { content:""; display:block; position:absolute; right:0; bottom:0; transform:rotate(-90deg) scale(0.7); font-size:10px; color:#fff; }
.scrolldown .bar { position:relative; width:67px; height:1px; background:rgba(255,255,255,0.2); display:block; }
.scrolldown .bar:before{ content:""; display:block; color:#fff; position:absolute; top:0; left:0; width:13px; height:1px; background:#fff; animation:scroll 1.5s 0.3s linear infinite;  }
.scrolldown .bar:after{ content:""; display:block; color:#fff; position:absolute; top:-2px; right:-5px; width:5px; height:5px; background:rgba(255,255,255,0.2); border-radius:5px; }
@media screen and (max-height:720px){
.subBody .top_menu { top:56%; } 
}
@media screen and (max-width:1560px){
    .top_menu { right:40px; }
    .subBody .top_menu { top:unset; bottom:220px; transform:translateY(0);} 
    .scrolldown { right:78px; }
}
@media screen and (max-width:1300px){
    .top_menu { right:20px; }
    .scrolldown { right:58px; }
}
@media screen and (max-width:1024px){
    .top_menu { right:20px; bottom:100px; }
    .subBody .top_menu { bottom:30%; } 
    body.active .top_menu { bottom:100px; }
    .scrolldown { display:none}
}
@media screen and (max-width:640px){
    .top_menu,
    .subBody .top_menu,
    body.active .top_menu { bottom:0; right:0; width:100%; } 
    .top_menu ul { display:flex; justify-content:center; gap:0 0; }
    .top_menu li { width:50%; }
    .top_menu li:not(:last-child) { margin-bottom:0; }
    .top_menu li a { background:#fff; border-radius:0; width:100%; justify-content:center; }
    .top_menu li a .txt { color:#004190; margin-right:0; }
    .top_menu li a .icon { background-color:#004190; border:1px solid #004190; }
    .top_menu li:nth-child(2) a .txt { color:#8fc31f; }
    .top_menu li:nth-child(2) a .icon { background-color:#8fc31f; border:1px solid #8fc31f; }
    .top_menu li .txt { color:#fff; font-size:17px; font-weight:500; margin-right:-5px;}
    .top_menu li a:hover .txt { margin-right:0; }
}







/* privacy */
.privacy { color:#666; width:100%; overflow:hidden; box-sizing:border-box; padding:0; font-size:18px; line-height:140%; word-break:break-all; }
.privacy h2 { font-size:18px; font-weight:bold; color:#000; text-align:left; margin:50px 0 30px; }
.privacy h2:first-child { margin-top:0; }
.privacy > p { margin:15px 0; }
.privacy > p+dl { margin-top:30px; }
.privacy > dl { padding-bottom:20px;}
.privacy > dl > dt{ font-size:17px;color:#222;font-weight:700;padding-bottom:5px;}
.privacy > dl > dd{ padding-bottom:10px;text-align:justify; font-size:17px; line-height:140%;}
.privacy > dl > dd ul{ padding:10px; }
.privacy > dl > dd ul li{ line-height:120%; margin-top:10px; }
.privacy > dl > dd ul li:first-child { margin-top:0; }
.privacy > dl > dd ul li p { margin:0 10px 5px; line-height:140%; margin-top:8px;}
.sTxt h3 { font-size:18px; color:#333; font-weight:700; margin:20px 0 10px; }
.sTxt p { margin-top:10px; }
.sTxt dt { margin-top:10px; }
.sTxt dd { margin:0 8px; }
.privacy .content_lv1{ margin-bottom:10px; font-size:18px; line-height:170%; color:#333; }
.privacy .content_lv2 { margin-bottom:10px; font-size:17px; line-height:170%; color:#333; padding-left:20px; }
.privacy table { }
.privacy th { padding:12px 20px; border:1px solid #ddd; background-color:#fafafa; font-weight:700; color:#333 }
.privacy td { padding:12px 20px; border:1px solid #ddd }
@media screen and (max-width:640px){
    .privacy { font-size:16px; }
    .privacy h2 { font-size:16px; }
    .privacy > dl > dt{ font-size:15px; }
    .privacy > dl > dd{ font-size:15px; }
    .sTxt h3 { font-size:16px; }
    .privacy .content_lv1{ font-size:16px; }
    .privacy .content_lv2 { font-size:15px; }
}

/* slick-slider 필수 css */
/* .slick-slider{position:relative; display:block; box-sizing:border-box; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; -webkit-touch-callout:none; -khtml-user-select:none; -ms-touch-action:pan-y; touch-action:pan-y; -webkit-tap-highlight-color:transparent;} */
.slick-slider{position:relative; display:block; user-select:text !important; }
.slick-list{position:relative; display:block; overflow:hidden; margin:0; padding:0;}
.slick-list:focus{outline:none;}
.slick-list.dragging{cursor:pointer; cursor:hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0, 0, 0); -moz-transform:translate3d(0, 0, 0); -ms-transform:translate3d(0, 0, 0); -o-transform:translate3d(0, 0, 0); transform:translate3d(0, 0, 0);}
.slick-track{position:relative; top:0; left:0; display:block;}
.slick-track:before,.slick-track:after{display:table; content:'';}
.slick-track:after{clear:both;}
.slick-loading .slick-track{visibility:hidden;}
.slick-slide{display:none; float:left; height:100%; min-height:1px; -webkit-transform:translate3d(0,0,0);}
.slick-slide img{display:block; margin:0 auto;}
.slick-slide.slick-loading img{display:none;}
.slick-slide.dragging img{pointer-events:none;}
.slick-initialized .slick-slide{display:block;}
.slick-loading .slick-slide{visibility:hidden;}
.slick-vertical .slick-slide{display:block;height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden{display:none;}

.slick-slider .slick-track,
.slick-slider .slick-list { transform:translate3d(0, 0, 0); }
.slick-slide { transform:translate3d(0,0,0); }


/* login */
.f-loginBox * { word-break:keep-all }
.f-loginBox { width:100%; height:100vh; background:url(/img/common/login_bg.jpg) no-repeat center / cover; }
.f-loginBox .bg { position:fixed; top:0; left:0; width:0; height:0; background:rgba(255,255,255,0.001) }
.f-loginBox.on .bg { width:100%; height:100%; z-index:3; }
.f-loginBox .login-txtbox { z-index:1; display:flex; align-items:center; justify-content:center; width:100%; height:100%; text-align:center; transition:all 0.3s; opacity:1; }
.f-loginBox.on .login-txtbox { opacity:0; }
.f-loginBox .login-txtbox .txt { margin-top:50px; color:#fff; font-size:24px; text-align:center; line-height:1.5; }
.f-loginBox .login-txtbox .btn { margin-top:70px; display:flex; align-items:center; justify-content:center; gap:10px; }
.f-loginBox .login-txtbox .btn a { transition:all 0.3s; border:1px solid rgba(224, 224, 224, 0.3); width:200px; height:55px; display:flex; justify-content:center; align-items:center; color:#fff; font-size:18px; border-radius:50px; }
.f-loginBox .login-txtbox .btn a:hover { background:#fff; color:#004190; }

.f-loginBox .popupCont { position:fixed; top:50%; left:50%; transform:translate(-50%, -50%); visibility:hidden; z-index:-1; padding:0; width:100%; max-width:880px; opacity:0; transition:all 0.5s }
.f-loginBox .popupCont .popup-body { padding:70px 140px; width:100%; height:100%; background:#fff; border-radius:20px; }
.f-loginBox .popupCont .popup-body .logo { text-align:center }
.f-loginBox .popupCont.on { opacity:1; z-index:99; visibility:visible; }

.f-loginBox .loginBox .txt { margin-top:40px; font-size:16px; font-weight:300; text-align:center; }
.f-loginBox .loginBox ul { margin-top:30px; }
.f-loginBox .loginBox ul > li:not(:last-child) { margin-bottom:15px; }
.f-loginBox .loginBox ul > li { position:relative; border:1px solid #E0E0E0; outline:none; background:#fff; border-radius:60px; }
.f-loginBox .loginBox ul > li label.tit { position:absolute; left:30px; top:50%; transform:translateY(-50%); font-size:16px; color:#aaa; font-weight:300; line-height:1.6; display:inline-block; transition:all 0.3s }
.f-loginBox .loginBox ul > li label.tit span { font-weight:300; }
.f-loginBox .loginBox ul > li input[type="text"],
.f-loginBox .loginBox ul > li input[type="password"] { position:relative; z-index:1; height:66px; padding:0 30px; width:100%; font-size:18px; color:#111; font-weight:400; border:none; outline:none; background:none; border-radius:60px; }
.f-loginBox .loginBox ul > li .sel-focus:focus ~ .tit,
.f-loginBox .loginBox ul > li.on label.tit { opacity:0; z-index:-1 }
.f-loginBox .loginBox .btn { margin-top:70px; text-align:center; }
.f-loginBox .loginBox .btn button { width:220px; height:55px; border:none; outline:none; background:#004190; border-radius:60px; font-size:16px; color:#fff; font-weight:500; }
.f-loginBox .loginBox .txt_b { margin-top:20px; text-align:center }
.f-loginBox .loginBox .txt_b a { font-size:16px; color:#aaa; font-weight:300; }

.f-loginBox .joinBox .txt { margin-top:60px; font-size:18px; font-weight:300; color:#222; text-align:center; line-height:1.7 }
.f-loginBox .joinBox .btn { margin-top:70px; text-align:center; display:flex; justify-content:center; gap:0 10px;  }
.f-loginBox .joinBox .btn a { display:flex; align-items:center; justify-content:center; width:220px; height:55px; background:#004190; border-radius:60px; font-size:16px; color:#fff; font-weight:500; }
.f-loginBox .joinBox .btn a.w { background:#fff; color:#004190; border:1px solid #004190 }
/* animation */
.f-loginBox .login-txtbox .logo { animation:ani_3_2 .8s 0.3s; animation-fill-mode:both;   }
.f-loginBox .login-txtbox .txt,
.f-loginBox .login-txtbox .btn { opacity:0; }
.f-loginBox .login-txtbox .txt,
.f-loginBox .login-txtbox .btn { animation:ani_5 .8s 1.0s; animation-fill-mode:both; }
@media screen and (max-width:1024px){
    .f-loginBox .login-txtbox { padding:0 20px; }
    .f-loginBox .login-txtbox .logo img { max-width:100%; }
    .f-loginBox .login-txtbox .txt { font-size:18px; }
    .f-loginBox .login-txtbox .btn { margin-top:60px; gap:5px; }
    .f-loginBox .loginBox .btn { margin-top:60px; }
    .f-loginBox .loginBox ul > li input[type="text"],
    .f-loginBox .loginBox ul > li input[type="password"] { height:60px; }
}
@media screen and (max-width:960px){
    .f-loginBox .popupCont { left:20px; width:calc(100% - 40px); transform:translate(0, -50%); }
    .f-loginBox .popupCont .popup-body { padding:60px 60px; }
    .f-loginBox .popupCont .logo img { max-width:100%; }
    .f-loginBox .loginBox ul > li input[type="text"],
    .f-loginBox .loginBox ul > li input[type="password"] { height:55px; }
    .f-loginBox .joinBox .txt .m_br { display:block }
}
@media screen and (max-width:640px){
    .f-loginBox .login-txtbox .txt { font-size:15px;}
    .f-loginBox .login-txtbox .btn a,
    .f-loginBox .loginBox .btn button { width:160px; height:50px; } 
    .f-loginBox .loginBox .txt_b { margin-top:20px; text-align:center }
    .f-loginBox .loginBox .txt_b a { font-size:16px; color:#aaa; font-weight:300; }
    .f-loginBox .popupCont .popup-body { padding:50px 20px; }
    .f-loginBox .loginBox ul { padding:0 30px; }
    .f-loginBox .loginBox ul > li:not(:last-child) { margin-bottom:10px; }
    .f-loginBox .loginBox ul > li input[type="text"],
    .f-loginBox .loginBox ul > li input[type="password"] { height:50px; }
    .f-loginBox .loginBox .txt { font-size:13px; }
    .f-loginBox .joinBox .txt { margin-top:30px; font-size:16px; }
    .f-loginBox .loginBox .btn { margin-top:50px; }
    .f-loginBox .joinBox .btn { margin-top:50px; }
}
@media screen and (max-width:420px){
    .f-loginBox .login-txtbox .txt { font-size:14px;}
    .f-loginBox .login-txtbox .btn a,
    .f-loginBox .loginBox .btn button{ width:160px; height:50px; font-size:16px;} 
    .f-loginBox .joinBox .txt { font-size:15px; }
}