﻿@charset "utf-8";

@import "reset_cache.css";
@import "module_cache.css";
@import "company_cache.css";

/* Common Layout */
.body_wrap { position: relative; min-width: @body_width@px;}

#header *,
#footer *,
.top_nav *,
.head_cen * { letter-spacing: -0.03em;}

.wrapper { position: relative; width: 100%; min-width: @body_width@px;}
.wrapper > div { position: relative; max-width: @wrap_width@px; margin: 0 auto; padding: 0 @wrap_margin_left_right@px;}

/*
.col_headline { padding: 0 0 40px;}
.line_box { border-top: 2px solid #222; padding: 40px 0;}
.line_box .comlay { background: url(../bg/bg_line_cen.png) repeat-y 66.8% 0;}
.line_box > .col03 { background: url(../bg/bg_line_col03.png) repeat-y 26px 0;}
*/

/* 상단 네비게이션 */
.top_nav { font-size: 13px; color: @txt_sub_color@; background: #f3f3f3; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.top_nav > div { display: flex; align-items: center; justify-content: space-between;}
.top_nav > div > div { display: flex; align-items: center; padding: 7px 0;}
.top_nav a { color: #888;}
.top_nav .sns_link { display: flex; align-items: center; margin: 0 12px;}
.top_nav .sns_link a { display: flex; width: 30px; height: 30px; background: url(../btn/btn_sns.png?2508) no-repeat 0 0; background-size: 300px 60px; text-indent: -9999em;}
.top_nav .sns_link a.sl01 { background-position: 0 0;}		/* 유튜브 */
.top_nav .sns_link a.sl02 { background-position: -30px 0;}	/* 페이스북 */
.top_nav .sns_link a.sl03 { background-position: -60px 0;}	/* 트위터 */
.top_nav .sns_link a.sl04 { background-position: -90px 0;}	/* 인스타그램 */
.top_nav .sns_link a.sl05 { background-position: -120px 0;}	/* 네이버 */
.top_nav .sns_link a.sl06 { background-position: -150px 0;}	/* 포스트 */
.top_nav .sns_link a.sl07 { background-position: -180px 0;}	/* rss */
.top_nav .sns_link a.sl08 { background-position: -210px 0;}	/* 카카오톡 */
.top_nav .sns_link a.sl09 { background-position: -240px 0;}	/* 카카오채털 */
.top_nav .sns_link a.sl10 { background-position: -270px 0;}	/* 카카오스토리 */
.top_nav .sns_link a:hover { background-position-y: -30px;}

.top_nav .tn_right { display: flex; align-items: center;}
.top_nav .tn_right li { position: relative; padding-left: 8px; margin-left: 8px;}
.top_nav .tn_right li:after { position: absolute; left: 0; top: 50%; margin-top: -5px; content: ""; display: block; width: 1px; height: 12px; background: rgba(0,0,0,.15);}
.top_nav .tn_right li:first-child:after { display: none;}
.top_nav .tn_right li a { display: block;}
.top_nav .tn_right li a:hover { color: @black@;}

/* 날짜 */
.today_txt { font-weight: bold; font-size: 16px; color: #222; margin-right: 15px; letter-spacing: 0;}

/* Header */
#header { z-index: 100; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
#header > div { padding: 0; max-width: @body_width@px;}
.head_top { position: relative; padding: 0 @wrap_margin_left_right@px;}
.head_top > div { display: flex; justify-content: space-between; align-items: center; min-height: 140px;}
.head_top > div h1 { max-width: 400px; text-align: center; padding: 20px 0;}
.head_top .ht_left { width: 260px; padding: 30px 0;}
.head_top .ht_right { width: 260px; padding: 30px 0;}

.head_cen { position: relative; z-index: 120; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.head_cen > div { position: static;}

#gnb { background: @main_color@; text-align: center; display: flex; flex-wrap: wrap; align-items: center; padding: 0 60px 0 0;}
#gnb > li { border-right: 1px solid @over_main_color@;}
#gnb > li > a { display: block; font-size: 20px; padding: 0 15.5px; height: 60px; line-height: 58px; transition: .3s all ease; color: #fff; font-weight: bold;}
#gnb > li > a:hover,
#gnb > li > a.on,
#gnb > li > a.active { background: @over_main_color@; opacity: 1;}

#gnb.horizontal .sub_wrap { position: absolute; left: 0; width: 100%; box-shadow: 0 5px 10px rgba(255,255,255,.3); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); background: rgba(0,0,0,.8); border-radius: 0 0 10px 10px;}
#gnb.horizontal .sub_wrap > div { display: flex; align-items: center; justify-content: center;}
#gnb.horizontal .sub_wrap h2 { position: relative; margin-right: 40px; padding: 20px 0;}
#gnb.horizontal .sub_wrap h2:after { position: absolute; right: -30px; top: 50%; margin-top: -3px; content: ""; display: block; width: 6px; height: 6px; background: @main_color@; border-radius: 50%;}
#gnb.horizontal .sub_wrap h2 a { font-size: 22px; color: #fff; white-space: nowrap; opacity: .5;}
#gnb.horizontal .sub_wrap ul { display: flex; flex-wrap: wrap; padding: 20px 0;}
#gnb.horizontal .sub_wrap ul li { margin: 10px 15px;}
#gnb.horizontal .sub_wrap ul li a { color: #fff; font-weight: bold; font-size: 19px; transition: all .3s ease; border-top: 1px solid transparent; border-bottom: 1px solid transparent;}
#gnb.horizontal .sub_wrap ul li a:hover { border-bottom: 1px solid #fff;}

#gnb.vertical > li { position: relative;}
#gnb.vertical > li > ul { position: absolute; left: -1px; top: 60px; background: rgba(0,0,0,.8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); text-align: left; box-shadow: 2px 2px 10px rgba(255,255,255,.3); padding: 15px 0; border-radius: 0 0 12px 12px;}
#gnb.vertical > li > ul li { float: none; display: block; padding: 0; background: none; text-align: left;}
#gnb.vertical > li > ul li:first-child { padding-left: 0; margin-left: 0;}
#gnb.vertical > li > ul li a { display:block; padding: 12px 40px 12px 20px; color: #eee; font-weight: bold; font-size: 19px;}
#gnb.vertical > li > ul li a span { display: inline-block; white-space: nowrap;}
#gnb.vertical > li > ul li a:hover, #gnb > li > ul li a.active { color: #fff; background: @over_main_color@;}

/* Search */
.btn_all_search { position: absolute; right: 5px; top: 0; z-index: 100;}
.btn_all_search > span { position: relative; display: block; width: 41px; height: 60px; text-indent: -9999px; transition: all .3s ease; transform: scale(0);}
.btn_all_search > span:after, 
.btn_all_search > span:before { position: absolute; left: 7px; top: 50%; margin-top: -1px; content: ""; display: block; width: 26px; height: 0.21em; background: #fff;}
.btn_all_search > span:after { transform: rotate(45deg);}
.btn_all_search > span:before { transform: rotate(-45deg);}
.btn_all_search > i { position: absolute; left: 0; top: 0; display: block; width: 41px; height: 60px; background: url(../btn/btn_search.svg) no-repeat center center; text-indent: -9999em; transition: all .3s ease; transform: scale(1);}
.btn_all_search.on > i { transform: scale(0);}
.btn_all_search.on > span { transform: scale(1);}

.search_con { position: absolute; left: 0; top: 60px; width: 100%; background: rgba(0,0,0,.8); -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px); z-index: 1500; border-radius: 0 0 10px 10px;}
.search_con > div { position: relative; margin: 30px auto; width: 468px; border: 2px solid rgba(255,255,255,.3); border-radius: 10px;}
.search_con > div:after { content: ""; display: block; clear: both;}
.search_con input { float: left; border: 0; font-size: 17px; padding: 15px 15px; width: 400px; background: transparent; color: #fff; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.search_con .i_label { top: 10px; left: 13px; font-size: 17px; color: #fff;}
.search_box .btn_search { position: absolute; right: 0; top: 0; width: 43px; height: 100%; background:url(../btn/btn_search.svg) no-repeat center center; text-indent: -9999px;}
.head_search::placeholder { color: #fff;}

/* 전체메뉴 */
.hidden { overflow: hidden; height: 100%;}

.all_nav { display: block; width: 23px; height: 60px; z-index: 10;}
.all_nav > span { position: relative; top: 29px; display: block; text-indent: -9999em; width: 19px; height: 2px; background: #fff; margin: 0 auto;}
.all_nav > span:before { position: absolute; left: 0; top: -8px; content: ""; display: block; width: 19px; height: 2px; background: #fff;}
.all_nav > span:after { position: absolute; left: 0; bottom: -8px; content: ""; display: block; width: 19px; height: 2px; background: #fff;}

.allnav_wrap { position: fixed; left: -240px; top: 0; width: 220px; height: 100%; background: rgba(255,255,255,.9); z-index: 10010; box-shadow: 0 0 20px rgba(0,0,0,.45); transition: left .3s ease-out; overflow: hidden; -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.allnav_wrap.active { left: 0;}

.allnav_wrap .swiper-container { width: 220px; height: 100%;}
.allnav_wrap .swiper-slide { height: auto;}
.allnav_wrap .swiper-container-vertical > .swiper-scrollbar { right: 0 !important; top: 0 !important; height: 100% !important;}
.allnav_wrap .swiper-scrollbar-drag { border-radius: 0 !important; background: #777 !important;}

.allnav_close { position: absolute; right: 10px; top: 10px; display: block; width: 25px; height: 25px; background: url(../btn/btn_aside_close.png) no-repeat center center; text-indent: -9999em;}

.allnav { padding: 50px 0 20px;}
.allnav > li { border-top: 1px solid #d3d3d3;}
.allnav > li > a { position: relative; display: block; padding: 10px 35px 10px 20px; font-size: 17px; font-weight: bold; background: rgba(0,0,0,.07); transition: all .3s ease;}
.allnav > li > a:after { position: absolute; right: 20px; top: 50%; margin-top: -5px; content: ""; display: block; width: 6px; height: 10px; background: url(../btn/btn_aside_arrow.png) no-repeat 0 0;}
.allnav > li > ul { padding: 7px 0 10px; overflow: hidden; margin-left: 20px;}
.allnav > li > ul > li > a { position: relative; display: block; font-size: 15px; font-weight: bold; padding: 4px 13px; color: #808080; transition: color .3s ease;}
.allnav > li > ul > li > a:after { position: absolute; left: 0; top: 50%; content: ""; display: block; width: 8px; height: 1px; background: #dedede;}
.allnav > li > ul > li > a:before { position: absolute; left: 0; bottom: 50%; content: ""; display: block; width: 1px; height: 60px; background: #dedede;}
.allnav > li > a.active, .allnav > li:hover > a { background-color: @main_color@; color: #fff;}
.allnav > li > a.active:after, .allnav > li:hover > a:after { background-position-y: -15px;}

.allnav > li > ul > li > a.active, .allnav > li > ul > li > a:hover { color: @sub_color@;}

.allnav_mask { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,.3); z-index: 10009; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);}

/* Footer */
#footer { background: #e3e3e3;}
#footer .wrapper > div { max-width: @wrap_width@px;}

.foot_wrap { position: relative; padding: 30px 0 80px; display: flex;}
.foot_wrap h6 { margin-right: 50px;}

.foot_box { display: flex; flex-grow: 1;}

.foot_con { margin-right: 30px; width: 45%;}
.foot_con > p { font-size: 14px; line-height: 1.7;}
.foot_con > p * { font-style: normal; font-weight: normal; letter-spacing: 0;}

.foot_nav { flex-grow: 1; border-left: 1px solid #999; margin-bottom: 20px; padding-left: 30px;}
.foot_nav .fnt { font-size: 17px; margin-bottom: 10px;}
.foot_nav .fnl li { margin-top: 7px;}
.foot_nav .fnl li a { font-size: 14px;}
.foot_nav .fnl li a:hover { text-decoration: underline;}
.foot_nav .fnl_h { display: flex;}
.foot_nav .fnl_h li { margin-right: 20px;}
.sponsor { position: absolute; right: 0; bottom: 25px;}
/* .foot_bot_txt { position: absolute;} */

/* Content */
#container { position: relative;}
#container > div { padding: 35px 0 70px;}

.main_con { padding: 45px 0;}
.main_con.bg_gray { background: #f6f6f6; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0;}

.page_tit { position:relative; font-size: 26px; padding-bottom: 17px; line-height: 1.2; margin-left: -2px; border-bottom: 1px solid @border_main_color@; margin-bottom: 20px;}

.btn_mobile { position: relative; text-align: center; padding: 15px 0;}
.sublay { background: url(../bg/bg_linewrap.png) repeat-y 800px 0;}
.aside_box { position: relative; padding-left: 60px; padding-bottom: 65px;}

.scroll-in01, .scroll-in02 { z-index: 10;}

.ff_wrap { font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}

.site_link { position: relative; display: flex; flex-wrap: wrap; margin: 0 -5px -10px;}
.site_link li { width: 50%; display: flex; margin-bottom: 10px;}
.site_link li a { flex-grow: 1; display: block; text-align: center; display: flex; flex-direction: column; margin: 0 5px;
	background-image: linear-gradient(144deg,#AF40FF, #5B42F3 50%,#00DDEB);
	border-radius: 8px;
	box-sizing: border-box;
	padding: 3px;
	transition: all .3s ease;
}
.site_link li a .text { display: block; font-size: 18px; font-weight: bold; height: 100%;
	background-color: #fff;
	border-radius: 6px;
	display: block;
	padding: 15px 0;
}

.site_link li a .text span { display: block; margin-top: 10px;}
.site_link li a .icons { display: block; width: 44px; height: 42px; margin: 0 auto; background-size: 100% !important;}
.site_link li a .icons.ico01 { background: url(/data/images/s_icon01.png) no-repeat center center;}
.site_link li a .icons.ico02 { background: url(/data/images/s_icon02.png) no-repeat center center;}
.site_link li a .icons.ico03 { background: url(/data/images/s_icon03.png) no-repeat center center;}
.site_link li a .icons.ico04 { background: url(/data/images/s_icon04.png) no-repeat center center;}
.site_link li a .icons.ico05 { background: url(/data/images/s_icon05.png) no-repeat center center;}
.site_link li a .icons.ico06 { background: url(/data/images/s_icon06.png) no-repeat center center;}
.site_link li a .icons.ico07 { background: url(/data/images/s_icon07.png) no-repeat center center;}
.site_link li a .icons.ico08 { background: url(/data/images/s_icon08.png) no-repeat center center;}

.site_link li a:active,
.site_link li a:hover {
	transform: translateY(-1px);
	box-shadow: rgba(0,0,0,.2) 0 15px 30px -5px;
}

.mgb_wrap { border-top: 1px solid #eee; border-bottom: 1px solid #eee; display: flex; margin-bottom: 15px;}
.mgb_wrap * { color: @main_color@; font-weight: bold; text-align: center;}
.mgb_wrap h3 { background: #eee; font-size: 21px; padding: 12px 20px;}
.mgb_wrap .mgb { display: flex; flex-grow: 1; align-items: center; padding: 0 10px;}
.mgb_wrap .mgb li { flex-grow: 1;}
.mgb_wrap .mgb li a { display: block; font-size: 17px; transition: all .3s ease; padding: 15px 0;}
.mgb_wrap .mgb:hover a { opacity: .5;}
.mgb_wrap .mgb li a:hover { opacity: 1; transform: translateY(-1px);}

.recomm_list { display: flex; border: 1px solid #ddd; margin-bottom: 30px;}
.recomm_list li { flex: 1;}
.recomm_list li a { font-weight: bold; font-size: 19px; border: 1px solid #ddd; display: block; padding: 20px 10px; text-align: center; transition: all .3s ease;}
.recomm_list li a b { color: @main_color@; margin-right: 5px;}
.recomm_list li a:hover { box-shadow: 0 0 20px rgba(0,0,0,.2);}