@charset "utf-8";

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

/* Common Layout */
.body_wrap { position: relative; min-width: 1220px; overflow: hidden;}

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

.wrapper { position: relative; width: 100%; min-width: 1220px;}
.wrapper > div { position: relative; max-width: 1140px; margin: 0 auto; padding: 0 40px;}

.line_bg { border-top: 1px solid #dedede; background: url(../bg/bg_line_cen.png) repeat-y 58.53% 0;}
.line_bg > div { padding-top: 20px;}

/* 상단 네비게이션 */
.top_nav { background: #fff; font-size: 13px; color: #808080; 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?2202) 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: #222;}

/* 날짜 */
.today_txt { font-weight: bold; font-size: 16px; color: #222; margin-right: 15px; letter-spacing: 0;}
 
/* Header */
#header { position: relative; z-index: 1000; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif; background: #bf202d; background: rgba(191,32,45,.9); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); z-index: 1220;}
#header > div { position: static; padding: 0; max-width: 1220px;}

.head_cen { display: flex; align-items: center; padding: 0 calc(40px + 60px) 0 40px;}
.head_cen .head_wrap { flex: 1;}
.head_cen h1 { background: #fff; display: flex; align-items: center; text-align: center; padding: 5px 40px; height: 76px; margin: 0 15px 0 -40px;}
.head_cen h1 img { max-height: 50px;}

#gnb { text-align: center; display: flex; flex-wrap: wrap; align-items: center;}
#gnb > li > a { position: relative; display: block; font-size: 18px; padding: 0 15px; height: 86px; line-height: 86px; transition: .3s all ease; color: #fff; font-weight: bold; z-index: 1000;}
#gnb > li > a > span { position: absolute; bottom: -5px; left: 50%; display: block; width: 10px; height: 10px; transform: rotate(-45deg); margin-left: -5px;}
#gnb > li > a:hover > span,
#gnb > li > a.on > span { background: #fff;}
#gnb > li > a.active { text-shadow: 0 0 7px rgba(0,0,0,1);}
#gnb:hover > li > a { opacity: .6;}
#gnb > li > a:hover,
#gnb > li > a.on { opacity: 1;}

#gnb.horizontal .sub_wrap { position: absolute; left: 0; top: 86px; box-shadow: 0 5px 10px rgba(255,255,255,.3); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); background: rgba(0,0,0,.85); z-index: 1230;}
#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: rgba(255,255,255,.3); 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: 17px; 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: 0; background: rgba(0,0,0,.85); -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; z-index: 1230;}
#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: 17px;}
#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: #bf202d;}

/* Footer */
#footer { font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
#footer > div { max-width: 1140px; background: #fff; border-top: 1px solid #ddd;}
.foot_wrap { position: relative; padding: 20px 0 40px;}
.foot_wrap:after { content: ""; display: block; clear: both;}
.foot_wrap h6 { position: absolute; left: 0; top: 20px; display: table; margin-right: 40px; margin-left: 10px; margin-top: 5px; text-align: center;}
.foot_wrap h6 b { display: table-cell; vertical-align: middle; text-align: center;}
.foot_wrap > div { padding-left: 190px;}

.foot_nav { position: relative; padding: 25px 0 20px; border-bottom: 1px solid #ddd; font-size: 0;}
.foot_nav:after { content: ""; display: block; clear: both;}
.foot_nav li { float: left; padding-left: 10px; margin-left: 10px; background: url(../icon/icon_line01.png) no-repeat 0 center;}
.foot_nav li:first-child { background: none; padding-left: 0; margin-left: 0;}
.foot_nav li a { display: block; height: 16px; line-height: 14px; font-size: 15px; color: #444;}
.foot_nav li a:hover { text-decoration: underline;}

.foot_con > p { font-size: 13px; color: #666; line-height: 1.7; letter-spacing: -0.04em;}
.foot_con > p * { font-style: normal; font-weight: normal; color: #666; margin-right: 10px; letter-spacing: 0;}
.foot_con > b { position: absolute; right: 0; bottom: 40px;}
.foot_con .update { letter-spacing: 0; color: #999;}
.foot_con .update > b { font-weight: bold;}

/* Search */
.search_box { position: absolute; right: 0; top: 13px; height: 61px; overflow: hidden; padding-left: 40px; z-index: 1001;}
.search_con { position: absolute; width: 240px; padding: 11px 7px 12px 13px; z-index: 10; background: rgba(0,0,0,.7); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); border-radius: 7px;}
.search_con:after { content: ""; display: block; clear: both;}
.search_con input { border: 0; font-size: 13px; padding: 7px 10px 8px; height: 22px; width: 150px; border-radius: 4px; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.search_con .i_label { top: 17px; left: 17px; font-size: 13px; color: #bbb;}
.search_box .btn_search_submit { position: absolute; right: 32px; top: 10px; display: block; width: 40px; height: 40px; text-indent: -9999px; background: url(../btn/btn_search_w.svg) no-repeat center center;}
.search_box .head_search::placeholder { color: #999;}

.search_box .btn_search_close { position: absolute; right: 10px; top: 9px; display: block; width: 25px; height: 40px; text-indent: -9999px; background: url(../btn/btn_close_w.svg) no-repeat center center; z-index: 12; transition: none;}

.search_box .btn_all_search { position: absolute; right: 0; top: 15px; display: block; width: 40px; height: 30px; text-indent: -9999px; background: url(../btn/btn_search.svg) no-repeat center center; z-index: 12; transition: none;}

/* Content */
#container { padding-top: 30px; padding-bottom: 20px; background: #fff;}
.container_solo { clear: both; position: relative; padding-bottom: 0 !important;}
#container > div { margin-bottom: 30px;}
.column_tit { font-size: 22px; font-weight: bold; color: #222; line-height: 1.2; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}

.page_tit { position:relative; font-size: 26px; padding-bottom: 17px; line-height: 1.2; margin-left: -2px;}

.btn_mobile { position: relative; text-align: center; padding: 20px 0;}

/* add */
.arv_005 .fix_art_top.fix { top: 86px !important;}

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

.all_nav { position: absolute; right: 45px; top: 29px; display: block; width: 26px; height: 26px; z-index: 10;}
.all_nav > span { display: block; text-indent: -9999em; width: 26px; height: 26px; background: url(../btn/btn_menu.svg) no-repeat center center;}

.allnav_wrap { position: fixed; right: -240px; top: 0; width: 220px; height: 100%; background: #fff; z-index: 10010; box-shadow: 0 0 20px rgba(0,0,0,.45); transition: right .3s ease-out; overflow: hidden; font-family: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', Pretendard, Apple SD Gothic Neo, 맑은고딕, Malgun Gothic, Droid Sans, sans-serif;}
.allnav_wrap.active { right: 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: #bf202d; 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: #880400;}

.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);}