@charset 'utf-8';
.body_hidden {height:100%; min-height:100%; overflow:hidden; touch-action:none;}

body {}

#wrap { position:relative; }
.inner1720 { max-width:1720px; width:100%; margin:0 auto; }
@media screen and (max-width:1760px){
	.inner1720 { padding:0 20px; }
}
.inner1300 { max-width:1300px; width:100%; margin:0 auto; }
@media screen and (max-width:1340px){
	.inner1300 { padding:0 20px; }
}
:root { 
    --mainFont:Pretendard;
    --subFont:Poppins; 
    --mainColor:#4774B9; 
    --mainColor1:#00348c; 
    --subColor:#000; 
}

/* header */
header { position:absolute; top:0; left:0; width:100%; z-index:999; transition:all .5s; }
header .inner1720 { position:relative; z-index:10 }
header h1 { position:absolute; left:0; text-align:left; padding:22px 0 0 0; z-index:999; transition:all 0.3s ease-in-out;  }
header h1 a { display:block; transition:all 0.3s ease-in-out; }
header h1 a svg path { transition:all 0.3s ease-in-out; }
header h1 a svg path.color1 { fill:var(--mainColor1); fill-opacity:1 }
header h1 a svg path.color2 { fill:var(--mainColor); }
@media screen and (max-width:1760px){
	header h1 { left:20px; }
}
@media screen and (max-width:1280px){
	header h1 a svg { width:220px; }
}
@media screen and (max-width:1024px){
	header { height:80px; background:#fff; }
	header h1 a svg { width:220px; }
	header { position:fixed; }
	header:before { display:none; }
	header h1 { padding:15px 0 0 0; }
	header h1 a svg path.color1 { fill:var(--mainColor1); fill-opacity:1 }
	header h1 a svg path.color2 { fill:var(--mainColor); }
	header h1 a svg path.color3 { fill:var(--mainColor1); }
}



header #navi { position:relative; z-index:2; }
header #navi #gnb { position:relative; text-align:center; display:flex; justify-content:center; }
header #navi #gnb > ul:before { content:""; display:block; position:absolute; left:50%; transform:translateX(calc(-50% - 0.5px)); top:90px; width:calc(100vw - 16px); height:1px; background:rgba(255,255,255,0.2); z-index:10 }
header #navi #gnb > ul { display:flex; justify-content:center; }
header #navi #gnb > ul > li { position:relative; }
header #navi #gnb > ul > li > a { position:relative; z-index:3; display:flex; justify-content:center; align-items:center; font-weight:500; font-size:18px; color:#fff; line-height:1.3; width:220px; height:90px; }
header #navi #gnb > ul > li.on { z-index:3; }
header #navi #gnb > ul > li.on { }
header #navi #gnb > ul > li > .subDepth { z-index:-11; opacity:0; visibility:hidden; position:absolute; left:50%; transform:translateX(-50%); top:0; padding-top:90px; width:100%; }
header #navi #gnb > ul > li > .subDepth:before { content:""; display:block; width:100%; height:0; background:var(--mainColor); position:absolute; left:0; top:0; z-index:1; transition:all 0.5s;  }
header.over #navi #gnb > ul > li > .subDepth { opacity:1; visibility:visible; z-index:2; } 
header.over #navi #gnb > ul > li.on > .subDepth:before { display:block; height:100%; transition:all 0.5s; }
header #navi #gnb > ul > li > .subDepth { opacity:1; z-index:3; }
header #navi #gnb > ul > li > .subDepth > ul { position:relative; z-index:4; text-align:center; padding:35px 20px 55px; }
header #navi #gnb > ul > li > .subDepth > ul > li { overflow:hidden }
header #navi #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-bottom:20px; }
header #navi #gnb > ul > li > .subDepth > ul > li > a { opacity:0; display:block; position:relative; font-family:var(--mainFont); font-size:18px; color:rgba(255, 255, 255, 0.7); font-weight:300; line-height:1.3; transition:all 0.2s;}
header #navi #gnb > ul > li > .subDepth > ul > li.on > a { color:rgba(255, 255, 255, 0.5); }
header #navi #gnb > ul > li > .subDepth > ul > li > a:hover{ color:rgba(255, 255, 255, 1); }
header.over #navi #gnb > ul > li > .subDepth > ul > li > a { animation:ani_3 0.5s 0.1s; animation-fill-mode:forwards; }
header .gnb_bg { height:0; position:absolute; top:0; left:0; width:100%; transition:initial; z-index:5; background:rgba(0, 0, 0, 0.1); backdrop-filter:blur(20px); transition:all 0.5s; }
@media screen and (max-width:1440px){
	header #navi #gnb > ul > li > a { width:180px; }
}
@media screen and (max-width:1280px){
	header #navi #gnb { margin-left:10% }
	header #navi #gnb > ul:before { left:40%; width:calc(100vw + 10%); } 
	header #navi #gnb > ul > li > a { width:150px; }
	header #navi #gnb > ul > li > .subDepth > ul { padding:30px 5px 40px; }
	header #navi #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-bottom:13px; }
	header #navi #gnb > ul > li > .subDepth > ul > li > a { font-size:16px; }
}
@media screen and (max-width:1024px){
    header #navi { display:none }
}

header .btnTop { position:absolute; right:0; top:0; display:flex; align-items:center; justify-content:center; height:90px; z-index:15; }
header .language { position:relative; margin-right:25px; padding-left:32px; background:url(/img/common/lang_icon.svg) left center no-repeat; }
header .language > a { position:relative; padding:3px 20px 3px 0; font-size:14px; display:inline-block; color:#fff; font-weight:400; line-height:1.3; }
header .language > a i { transition:all 0.3s; position:absolute; right:0; top:50%; width:10px; height:6px; margin-top:-2px; text-indent:-9999em; overflow:hidden; background:url(/img/common/lang_arr.png) center center no-repeat; }
header .language > a.on i { transform:rotate(180deg); }
header .language .box { position:absolute; top:30px; left:0; width:100%; display:none }
header .language ul { padding:15px 2px; text-align:center; width:100%; background:rgba(255,255,255,1); border-radius:5px; backdrop-filter:blur(5px); }
header .language ul li:not(:last-child) { margin-bottom:10px; }
header .language ul li a { font-size:16px; color:rgba(34, 34, 34, 0.50); font-weight:500; line-height:1.3; }
header .language ul li.on { display:none }
header .language ul li.on a,
header .language ul li a:hover { color:var(--mainColor); }
header.on .language > a { color:#666; }
header.on .language > a i { background:url(/img/common/lang_arr_on.png) center center no-repeat; }
header.on .language ul { background:rgba(0,0,0,0.1); }
header.on .language ul li a { color:var(--mainColor); }
@media screen and (max-width:1760px){
	header .btnTop { right:20px; }
}
@media screen and (max-width:1024px){
	header .language { display:none }
	header .btnTop { right:0; height:80px; }
}


.allBox { position:relative; transition:all 0.8s; display:block; z-index:9;  }
.subBody .allBox { }
.allBox.on { z-index:999999; }
.allBox.on .allmenu { z-index:999; }
.allmenu { position:relative; width:40px; height:20px; display:flex; justify-content:center; align-items:center; }
.allmenu a { font-size:15px; font-weight:300; color:var(--mainColor); width:40px; height:20px; position:relative; display:block; margin:0 auto; z-index:2; }
.allmenu a > span { position:relative; display:block; background-color:var(--mainColor); width:40px; height:1px; transition:all 0.5s ease; text-align:center; }
.allmenu a > span:before { content:""; display:block; width:100%; height:1px; background-color:#fff; position:absolute; left:0; top:9px; transition:all 0.3s ease; }
.allmenu a > span:after { content:""; display:block; width:100%; height:1px; background-color:#fff; position:absolute; left:0; top:19px; transition:all 0.5s ease; }
.allmenu .stxt { font-size:12px; display:none; transition:all 0.3s; color:var(--mainColor); position:absolute; left:50%; top:50%; padding-top:5px; transform:translate(-50%, -50%); }
@media screen and (max-width:1024px){
	.allmenu { width:80px; height:80px; background:var(--mainColor1);  }
	.allmenu a { width:100%; height:100%; display:flex; justify-content:center; align-items:center; }
	.allmenu a > span { background:var(--mainColor); margin-top:-20px; }
}

.web #allmenuBox { z-index:-11; opacity:0; visibility:hidden; position:fixed; top:0; left:0; width:100%; height:100vh; transition:all 0.3s; }
.web #allmenuBox.on { opacity:1; visibility:visible; z-index:9999; background:rgba(255, 255, 255, 0.01); backdrop-filter:blur(25px); }
.web #allmenuBox #gnb { }
.web #allmenuBox #gnb > ul { height:100vh; display:flex; padding:0 12%; }
.web #allmenuBox #gnb > ul > li { position:relative; width:25%; text-align:center; padding-top:15%; }
.web #allmenuBox #gnb > ul > li:before { content:""; display:block; width:0; height:100vh; position:absolute; left:0; top:0; transition:all 0.5s; background:rgba(71, 116, 185, 0.70) url(/img/common/allgnb_bg.svg) left bottom no-repeat;}
.web #allmenuBox #gnb > ul > li:hover:before { width:100%; }
.web #allmenuBox #gnb > ul > li > a { position:relative; color:#fff; font-weight:700; font-size:40px; line-height:1.3; letter-spacing:-0.05em }
.web #allmenuBox #gnb > ul > li .subDepth { position:relative; margin-top:60px; }
.web #allmenuBox #gnb > ul > li .subDepth> ul > li:not(:last-child) { margin-bottom:30px; }
.web #allmenuBox #gnb > ul > li .subDepth> ul > li a { color:#fff; font-weight:400; font-size:18px; transition:all 0.5s; }
.web #allmenuBox #gnb > ul > li:hover .subDepth> ul > li a { opacity:0.5; }
.web #allmenuBox #gnb > ul > li:hover .subDepth> ul > li:hover a { opacity:1; }
.web #allmenuBox .lang { display:none }
.web #allmenuBox .btnClose { opacity:0; transition:all 0.7s; }
.web #allmenuBox.on .btnClose { opacity:1; position:absolute; top:90px; right:130px; width:40px; height:40px; cursor:pointer; }
.web #allmenuBox.on .btnClose:hover { transform:rotate(-180deg);}
.web #allmenuBox.on .btnClose:before { content:""; display:block; width:34px; height:3px; background-color:#fff; position:absolute; left:3px; top:18px; transform:rotate(45deg); border-radius:3px; }
.web #allmenuBox.on .btnClose:after { content:""; display:block; width:34px; height:3px; background-color:#fff; position:absolute; left:3px; top:18px; transform:rotate(-45deg); border-radius:3px; }
@media screen and (max-width:1440px){
	.web #allmenuBox.on .btnClose { top:90px; right:60px; }
	.web #allmenuBox #gnb > ul { padding:0 10%; }
	.web #allmenuBox #gnb > ul > li > a { font-size:30px; }
	.web #allmenuBox #gnb > ul > li .subDepth { margin-top:50px; }
	.web #allmenuBox #gnb > ul > li .subDepth> ul > li:not(:last-child) { margin-bottom:25px; }
	.web #allmenuBox #gnb > ul > li .subDepth> ul > li a { font-size:16px; }
}

/* animation */
.web #allmenuBox #gnb > ul > li { opacity:0; }
.web #allmenuBox.on #gnb > ul > li:nth-child(1) { animation:ani_1 0.5s 0.3s; animation-fill-mode:both; }
.web #allmenuBox.on #gnb > ul > li:nth-child(2) { animation:ani_1 0.5s 0.5s; animation-fill-mode:both; }
.web #allmenuBox.on #gnb > ul > li:nth-child(3) { animation:ani_1 0.5s 0.7s; animation-fill-mode:both; }
.web #allmenuBox.on #gnb > ul > li:nth-child(4) { animation:ani_1 0.5s 0.9s; animation-fill-mode:both; }
.web #allmenuBox.on #gnb > ul > li:nth-child(5) { animation:ani_1 0.5s 1.1s; animation-fill-mode:both; }
.web #allmenuBox.on #gnb > ul > li:nth-child(6) { animation:ani_1 0.5s 1.3s; animation-fill-mode:both; }

@media screen and (max-width:1024px){
    #allmenuBox { position:fixed; top:0; right:-520px; max-width:520px; width:100%; height:100vh; background:#fff; transition:all 0.3s 0.1s ease-in-out; z-index:10000; }
	#allmenuBox.on:before { content:""; display:block; width:100%; height:100vh; background-color:rgba(0, 0, 0, 0.50); position:fixed; left:0; top:0; }
    #allmenuBox.on { right:0; z-index:10000; opacity:1; visibility:visible; transition:all 0.3s 0.1s ease-in-out; }
    #allmenuBox .menuCont { position:relative; z-index:5; height:100vh; justify-content:flex-start; background:#fff; } 
    #allmenuBox .menuBox { height:100%; }
    #allmenuBox #gnb { position:absolute; top:80px; left:0; width:100%; padding:30px 0 80px; height:calc(100% - 80px); overflow:auto; }
    #allmenuBox #gnb > ul > li { position:relative; text-align:left; margin-top:0; }
    #allmenuBox #gnb > ul > li > a { position:relative; color:#222; font-weight:500; font-size:28px; line-height:1.3; padding:30px 35px; display:block }
	#allmenuBox #gnb > ul > li > a:before { content:""; display:block; width:25px; height:25px; position:absolute; right:35px; top:50%; transform:translateY(-50%); transition:all 0.5s; background:url(/img/common/gnb_m_arr.svg) center center no-repeat;}
	#allmenuBox #gnb > ul > li > a.hover:before { transform:translateY(-50%) rotate(180deg); }
    #allmenuBox #gnb > ul > li > .subDepth { position:relative; display:none; }
    #allmenuBox #gnb > ul > li > .subDepth > ul { padding:40px 0; display:block; background:#f4f4f4; }
    #allmenuBox #gnb > ul > li > .subDepth > ul > li:not(:last-child) { margin-bottom:25px; }
    #allmenuBox #gnb > ul > li > .subDepth > ul > li { padding:0 35px; }
    #allmenuBox #gnb > ul > li > .subDepth > ul > li > a { position:relative; color:#403f3f; font-weight:500; font-size:24px; }
    #allmenuBox #gnb > ul > li > .subDepth > ul > li > a:hover { color:var(--mainColor1); }
	#allmenuBox .lang ul { height:80px; display:flex; align-items:center; padding-left:40px; }
	#allmenuBox .lang ul li:not(:last-child) { margin-right:45px; }
	#allmenuBox .lang ul li { position:relative; }
	#allmenuBox .lang ul li:not(:last-child):before { content:""; display:block; width:6px; height:6px; background-color:#e4e4e4; position:absolute; right:-22px; top:50%; transform:translateY(-50%); border-radius:5px; }
	#allmenuBox .lang ul li a { font-family:var(--subFont); color:#9d9d9d; font-size:22px; font-weight:500; line-height:1.3; }
	#allmenuBox .lang ul li.on a { color:var(--mainColor1); }
	#allmenuBox .btnClose { position:absolute; top:0; right:0; width:80px; height:80px; cursor:pointer; background:var(--mainColor1); }
	#allmenuBox .btnClose:before { content:""; display:block; width:30px; height:1px; background-color:#fff; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%) rotate(45deg); }
	#allmenuBox .btnClose:after { content:""; display:block; width:30px; height:1px; background-color:#fff; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%) rotate(-45deg); }

}
@media screen and (max-width:640px){
    #allmenuBox #gnb > ul > li > .subDepth > ul { padding:25px 0; }
    #allmenuBox #gnb > ul > li > a { font-size:24px; padding:25px 30px; }
    #allmenuBox #gnb > ul > li > .subDepth > ul > li > a { font-size:20px; }
}


footer { position:relative; position:relative; z-index:100; background:#111 }
footer .footer-box { position:relative; padding:125px 0 40px; }
footer .footer-box .info {}
footer .footer-box .info .flogo svg { }
footer .footer-box .info .flogo svg path.color1,
footer .footer-box .info .flogo svg path.color2 { fill:#fff; }
footer .footer-box .fbox .sbox { margin-top:50px; }
footer .footer-box .fbox ul:not(:last-child) { margin-bottom:15px; }
footer .footer-box .fbox li { font-weight:300; color:rgba(255,255,255,0.5); font-size:16px; line-height:1.3; }
footer .footer-box .fbox li strong { font-weight:600; color:#fff; display:inline-block; margin-right:10px; }
footer .footer-box .fbox ul:nth-child(2) { display:flex; flex-wrap:wrap;}
footer .footer-box .fbox ul:nth-child(2) li:not(:last-child) { margin-right:60px; }
footer .footer-box .all-menu { position:absolute; top:125px; right:0; }
footer .footer-box .all-menu > ul { display:flex } 
footer .footer-box .all-menu > ul > li { width:130px; }
footer .footer-box .all-menu > ul > li:nth-child(3) { order:4 }
footer .footer-box .all-menu > ul > li:nth-child(4) { order:3 }
footer .footer-box .all-menu > ul > li > a { position:relative; font-weight:600; color:#fff; font-size:18px; line-height:1.3; }
footer .footer-box .all-menu > ul > li .subDepth { margin-top:30px; }
footer .footer-box .all-menu > ul > li .subDepth li:not(:last-child) { margin-bottom:20px; }
footer .footer-box .all-menu > ul > li .subDepth li a { font-weight:300; color:rgba(255, 255, 255, 0.5); font-size:16px; line-height:1.3; word-break:keep-all  }
footer .footer_b { margin-top:60px; padding-top:40px; border-top:1px solid rgba(255, 255, 255, 0.10); display:flex; justify-content:space-between; align-items:center; }
footer .copyright { font-weight:300; color:#fff; font-size:16px; line-height:1.3 }
footer .fmenu ul { display:flex;}
footer .fmenu ul li:not(:last-child) { margin-right:10px; }
footer .fmenu ul li a { font-weight:500; color:rgba(255, 255, 255, 0.50); font-size:14px; line-height:1.3; text-align:center; width:250px; padding:0 10px; height:60px; display:flex; justify-content:center; align-items:center; border-radius:7px; background:rgba(255, 255, 255, 0.05); }
@media screen and (max-width:1760px){
    footer .footer-box { padding:125px 20px 40px; }
	footer .footer-box .all-menu > ul > li { width:120px; }
}
@media screen and (max-width:1560px){
	footer .footer-box .fbox ul:nth-child(1) strong { display:block; margin-bottom:4px; }
}
@media screen and (max-width:1024px){
    footer .footer-box { padding:80px 20px 40px; }
	footer .footer-box .all-menu { display:none; }
	footer .footer-box .info .flogo { text-align:center }
	footer .footer-box .fbox .sbox { margin-top:30px; }
	footer .footer-box .fbox ul:not(:last-child) { margin-bottom:15px; }
	footer .footer-box .fbox ul:nth-child(2) { display:flex; flex-wrap:wrap;}
	footer .footer-box .fbox ul:nth-child(2) li:not(:last-child) { margin-right:30px; }
	footer .footer_b { flex-direction:column; margin-top:40px; padding-top:30px; }
	footer .copyright { margin-top:20px; text-align:center }
	footer .fmenu ul li a {  width:180px; height:55px; }
}



#btn_top { position:absolute; top:0; right:0; z-index:2; text-align:center;	}
#btn_top a { display:flex; justify-content:center; align-items:center; width:65px; height:65px; background:var(--mainColor); border-radius:0px 0px 7px 7px; }
#btn_top span { overflow:hidden; width:0; height:0; text-indent:-9999em; }
@media screen and (max-width:1024px){
	#btn_top a { width:55px; height:55px; }
}





/* privacy */
.privacy { color:#666; width:100%; overflow:hidden; box-sizing:border-box; padding:0; font-size:16px; line-height:140%; word-break:break-all; }
.privacy h2 { font-size:20px; 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:20px;color:#111;font-weight:700;padding-bottom:10px;}
.privacy > dl > dd{ padding-bottom:10px;text-align:justify; font-size:16px; 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;}
.privacy .sTxt h3 { font-size:18px; color:#333; font-weight:500; margin:20px 0 10px; }
.privacy .sTxt p { margin-top:10px; }
.privacy .sTxt dt { margin-top:10px; }
.privacy .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; }
    .privacy .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; }
.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); }

/* 게시글 동영상 반응형 */
.video-container { position:relative; overflow:hidden; max-width:1000px; margin:0 auto; }
.video-container:before { content:''; display:block; padding-bottom:56.25%; /* 16:9 비율 */ }
.video-container video,
.video-container iframe { position:absolute; top:0; left:0; width:100%; height:100%; border:0; }