@charset "utf-8";

/* ============================= 기존 default. css / module.css ================================= */
/* 팝업레이어 */
#hd_pop {z-index:999999;position:relative;margin:0 auto;width:970px;height:0}
#hd_pop .sound_only {display:none;}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #636363;background:#fff}
.hd_pops p {margin:0;}
.hd_pops p img {vertical-align:middle;}
.hd_pops_footer {padding:10px 0;background:#fff;color:#000;text-align:right}
.hd_pops_footer button {margin-right:5px;padding:5px 10px;border:0;background:#f3f3f3;color:#636363}


/* 기존 */
.wrapper{ margin-left: auto; margin-right: auto; width: 1260px;}

/* 버튼 */
.btn_box {display: flex; align-items: center; justify-content: center; gap: 10px;}
.btn_box li{width: 30%; max-width: 350px; text-align: center;}
.btn_box .btn_big{display: block; width: 100%; padding: 15px; border: 1px solid #eee; font-weight: 500; background-color: #222; color: #fff; max-height: 50px; text-align: center; line-height: 1;}
.btn_box .btn_big_00{color: #fff; background-color: var(--color-basic); border-color: var(--color-basic);}
.btn_box .btn_big_01{color: #888; background-color: #fbfbfb;}
.btn_box .btn_big_02{color: #fff; background-color: #222; }
.btn_box .btn_big:hover{border: 1px solid var(--color-basic); color: var(--color-basic); background-color: #fff; transition-duration: 100ms;}

.btn{display: block; padding: 6px 8px; font-size: 12px; border: 1px solid #eee; width: fit-content;}
.btn.btn_b01{background-color: #333; border-color: #333; color: #fff;}
.btn.btn_b02{background-color: var(--color-basic); border-color: var(--color-basic); color: #fff;}
.btn.btn_b03{background-color: #fbfbfb; border-color: var(--color-basic); color: var(--color-basic);}
.btn.btn_admin{float: right; color: #fff; background-color: #ff0000;}

/* POP To TOP */
.btn_top_wrap { position:fixed; right:3%; bottom: 50px; z-index:100;}
.btn_top {display: block; width: 50px; height: 50px; text-indent: -9999px; transition: none; background: #a8a9aa url(../btn/btn_top.png) no-repeat center / contain; background: rgba(82,84,86,.5) url(../img/btn/btn_top.png) no-repeat center / contain; border-radius: 50%;box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.1);}
.btn_top:hover { background-color: var(--color-basic); opacity: 0.95;}


/* 캡챠 */
.captcha_wrap{display: flex; align-items: center; border: 1px solid #eee; border-radius: 5px; overflow: hidden; background-color: #fbfbfb;}
.captcha_wrap .c_img img{display: block; width: auto !important; height: 40px !important;}
.captcha_wrap .c_btn > button{display: block; width: 20px; height: 20px; background-color: #eee; padding: 2px;}
.captcha_wrap .c_btn > button img{width: 100%;}

.captcha_wrap .c_input input{border-radius: 0; border: none;}


/* paging */
.paging { position: relative; text-align: center; margin-top: 60px; margin-bottom: 60px; font-size: 0; vertical-align: middle;}
.paging .btn_pagenum { display: inline-block; vertical-align: middle;}
.paging .btn_pagenum a { position: relative; display: inline-block; line-height: 1; font-size: 15px; color: #808080; height: 23px; line-height: 20px; margin: 0 12px;}
.paging .btn_pagenum a:after { position: absolute; left: -13px; top: 10px; content: ""; display: block; width: 2px; height: 2px; background: #dedede;}
.paging .btn_pagenum a:first-child:after { display: none;}
.paging .btn_pagenum a:hover { color: var(--color-basic);} /* 공통 컬러 적용 */
.paging .btn_pagenum a.on { color: var(--color-basic); font-weight: bold;} /* 공통 컬러 적용 */
.paging a.btn_p {position: relative;display: inline-block;width: 23px;height: 23px;background: url("../img/default/btn_page.png") no-repeat 0 0;text-indent: -9999px;overflow: hidden;vertical-align: middle;transition: none;opacity: 0.5;}
.paging a.btn_p:after { display: none;}
.paging a.btn_p.pg_start { background-position: 0 0;}
.paging a.btn_p.prev { background-position: -23px 0;}
.paging a.btn_p.next { background-position: -46px 0;}
.paging a.btn_p.pg_end { background-position: -66px 0;}
.paging a.btn_p.pg_start:hover { background-position: 0 -23px;}
.paging a.btn_p.prev:hover { background-position:-23px -23px;}
.paging a.btn_p.next:hover { background-position: -46px -23px;}
.paging a.btn_p.pg_end:hover { background-position: -66px -23px;}


/* 배너 */
.ba_img {text-align:center;}
.ba_img + .ba_img, .ba_img + *{margin-top: 10px;}
.ba_img img{display: block; max-width: 100%; height: auto !important;}
.ba_list .list {margin-bottom:10px;}
.ba_list .list:last-child {margin-bottom:0;}
.banner_box{margin-bottom: 20px;}
.banner_box li + li{margin-top: 10px;}
.between_banner{margin: 20px auto;}
.bottom_banner_swiper img{display: block; width: 100% !important; height: auto !important;}
.ba_img img, .banner_box img{display: block;}
.banner_box > div + div{margin-top: 10px;}


/* Sticky banner */
.top_banner { position: sticky; top: 50px; width: 100%; z-index: 100;}
.banner_wrap { position: relative; width: 1280px; height: 0; margin:0 auto;}
.banner_wrap > div { position: absolute; width: 160px; transition: 0.5s; margin-top: 20px;}
.banner_wrap .banner_left { width:500px; left:-510px;}
.banner_wrap .banner_right { width:500px; right:-510px;}
.banner_wrap a {display: block;}
.banner_wrap a > img{display: block;}
.banner_wrap .banner_left .com_ban{display:flex;flex-direction:column;width:100%;}
.banner_wrap .banner_left .com_ban div,.banner_wrap .banner_left .com_ban iframe{margin-left: auto !important;margin-bottom:10px;}
.banner_wrap .banner_left .com_ban iframe{float:right;}
.banner_wrap .banner_left .com_ban .swiper-container {position:relative;float:right;width:100%;}
.banner_wrap .com_ban div + div{margin-top:10px;}

.banner_wrap .com_ban .swiper-wrapper{position: relative;overflow: hidden;}
.banner_wrap .com_ban .swiper-wrapper .swiper-slide{width:100%;height:100%;background: #fff;}

.banner_wrap .banner_left .com_ban .swiper-wrapper img{margin-left: auto !important;}
.banner_wrap .banner_right .com_ban .swiper-wrapper img{margin-right: auto !important;}
.banner_wrap .banner_right .com_ban div,.banner_wrap .banner_right .com_ban iframe{margin-right: auto !important;margin-bottom:10px;}
.banner_wrap .banner_right .com_ban iframe{float:left;}

.bottom_banner {width:100%;position:relative;border-top:1px dashed #666; margin:20px 0 0 0;padding-top:20px;}
.bottom_banner .bottom_banner_swiper {width:1010px;}
.bottom_banner .swiper_btn_l {left:-3px;background:url(/img/slider_l.png) no-repeat; }
.bottom_banner .swiper_btn_r {right:-5px;background:url(/img/slider_r.png) no-repeat;}


/* Mobile화면으로 */
#device_change {border:1px solid #666;border-radius:2em; font-size:2em;text-decoration:none;text-align:center;}
#device_change a{display:block; padding:0.5em 0; color:#fff;}
#device_change:hover{background-color: rgba(256,256,256,0.1); transition-duration: 100ms; border-color: #eee;}



/* 헤더 다시 */
.standard_wrapper { margin: 0 auto; width: 1260px; }


/* --- 최상단 : 날씨 + 관리자 메뉴 등 --- */
.top_util {display: flex; padding: 5px 0; align-items: center; justify-content: space-between; border-bottom: 1px solid #eee;}
.top_util p {font-size: 12px; line-height: 1; text-align: left;}
.top_util_right{display: flex; gap: 10px; align-items: center;}
.admin-link {background-color: var(--color-invert); color:#fff; padding: 6px 10px; font-size: 13px; font-weight: 600; z-index:9999;}
.admin-link:hover{background-color: var(--color-basic); transition-duration: 100ms;}

/* 날씨 */
.weather_box{position: relative; width: 140px; font-size: 14px;}
.weather_box > a{position: absolute; right: 0; top: -2px; display: block; font-size: 10px; color: #999; text-align: right;}
.weather_box li{display: flex; gap: 5px; align-items: flex-end; justify-content: space-between;}
.weather_box .area{}
.weather_box .temperature{font-weight: 800; font-size: 1.2em;}

.right_top {color: #fff; text-align: right; line-height: 1; position: relative; font-size: 13px;}
.right_li {display: flex;}
.right_li li{text-align: center;}
.right_li li a {padding:8px 10px; display:block; font-weight: 500;}

.right_sns {display:inline-block; margin-left:8px;}
.right_sns li {float:left; width: auto; padding:8px; top:0; height: 14px; position:relative;text-align: center;}
.right_sns li a i {display:inline-block; width:12px; height:12px; background:url('../img/top_sns_icon.png') no-repeat;}
.right_sns li a i.naver {background-position: -12px 0;}


/* --- 상단 로고 + 배너 --- */
#head_logo{padding: 15px 0;}
#head_logo > div{display: flex; min-height: 90px; align-items: center; justify-content: center;}
#nav_wrapper {position: relative;}

.pos_top_ad{max-width: 260px;}
.logo_container{flex: 1; text-align: center;}
.pos_top_ad .swiper-slide{visibility: hidden;}
.pos_top_ad .swiper-slide.swiper-slide-visible{visibility: initial;}
.pos_top_ad.leftSide li > div{text-align: left;}
.pos_top_ad.rightSide li > div{text-align: right;}

.sticky{position: sticky; top: 0; z-index: 999;}
#menu_wrapper {background-color: #fff; border-bottom: 1px solid #eee; box-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.02);}
#menu_wrapper > div{display: flex; align-items: center; justify-content: space-between;}

#main_menu{display: flex; gap: 10px; align-items: center;}
#main_menu > li{position: relative; font-size: 16px;}
#main_menu .nav::before{content: ''; position: absolute; left: 0; top: -3px; width: 100%; height: 3px;}
#main_menu a{position: relative; display: block; padding: 15px 10px; font-weight: 500;}
#main_menu > li > a::after{position: absolute; bottom: 0; left: 0; width: 0; height: 3px; background-color: var(--color-basic); content:""; display: block; clear: both; transition-duration: 300ms; z-index: 10; border-radius: 2px;}
#main_menu li:hover > a{color: var(--color-basic); font-weight: 600;}
#main_menu > li:hover > a::after{width: 100%;}
#main_menu .nav li:hover > a{background-color: #fbfbfb;}
#main_menu > li > ul.nav {display: none; background: #fff; position: absolute; 
padding: 0 0 0 0; width: 180px; height: auto; z-index: 10; margin: 0; 
margin-top: 0; z-index: 9; border: 0; box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 
0.1); font-size: 15px;}
#main_menu > li:hover > ul.nav{display: block;}



#gnb_first a{font-weight: 600; width: 100px; color: var(--color-basic); white-space: nowrap;}
#gnb_first a img{margin-top: 0 !important;}

#menu_right{display: flex; align-items: center;}
#menu_right li{position: relative;}
#menu_right a{padding: 15px; font-size: 14px;}
#menu_right li + li::before{position: absolute; top: 50%; left: 0; width: 1px; height: 0.8em; transform: translateY(-50%); display: block; clear: both; background-color: #ddd; content:"";}


/* 상단 검색창 */
#main_menu li.search{}
#main_menu .search {position:relative; }
#main_menu .search a {display: block; display: flex; width: 36px; height: 36px; background-color: #f2f2f2; border-radius: 50%; align-items: center; justify-content: center;}
#main_menu #search_icon.on .i_on{display: block;}
#main_menu #search_icon.on .i_off{display: none;}

#main_menu #search_icon .i_on{display: none;}
#main_menu #search_icon .i_off{display: block;}

#main_menu > li.search > a::after{display: none;}
.search a > i{font-size: 15px;}
.search .search_box {position: absolute; bottom: -62px; left: 0; display: none; background-color: #fff; padding: 10px; z-index: 1; border-radius: 0 0 10px 10px; box-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.1);}
.search .search_box form{position: relative;}
.search .search_box form input {width: 280px; padding: 0 10px; height: 36px; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; background-color: #f2f2f2; box-shadow: none;}
.search .search_box form button{position: absolute; top: 50%; right: 10px; transform: translateY(-50%); background-color: transparent; color: #666;}


/* ----- 헤더 디자인 01 ----- */
.header01 #head_mypage{background-color: var(--color-darkgry); color: #fff;}
.header01 #head_mypage a{color: #fbfbfb;}
.header01 .top_util{border-bottom: none;}
.header01 .weather_box li img{filter: invert(1);}


/* ----- 헤더 디자인 02 ----- */
.header02 #head_mypage > div{}
#menu_wrapper.header02{border-bottom: none; box-shadow: none;}
#menu_wrapper.header02 .standard_wrapper{position: relative; box-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.02);}
#menu_wrapper.header02 .standard_wrapper::after{position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background-color: var(--color-basic); content:""; display: block; clear: both; border-radius: 2px; z-index: 2;}
#menu_wrapper.header02 #main_menu > li > a::after{display: none;}


/* ----- 헤더 디자인 03 ----- */
#menu_wrapper.header03{background-color: var(--color-basic); border-bottom: none;}
.header03 #main_menu > li > a{color: #fff;}
.header03 #main_menu > li:not(.search):hover > a{opacity: 0.7;}
.header03 .search a{color: var(--color-basic) !important;}
.header03 #menu_right a{color: #fff;}



/* ----- 헤더 디자인 04 ----- */
.header04 #head_mypage > div{border-bottom: 1px solid #eee;}
.header04 #head_logo > div{gap: 10px;}
.header04 #head_logo .logo_container .logo_align{text-align: left;}
.header04 #head_logo .standard_wrapper .leftSide{order: 2;}
.header04 #head_logo .standard_wrapper .rightSide{order: 3;}
.header04 .pos_top_ad.leftSide li > div{text-align: right;}


/* ----- 헤더 디자인 05 ----- */
.header05 #head_mypage > div{border-bottom: 1px solid #eee;}
.header05 #head_logo > div{gap: 10px;}
.header05 #head_logo .logo_container .logo_align{text-align: left;}
.header05 #head_logo .standard_wrapper .leftSide{order: 2;}
.header05 #head_logo .standard_wrapper .rightSide{order: 3;}
#menu_wrapper.header05{border-bottom: none; box-shadow: none;}
#menu_wrapper.header05 .standard_wrapper::after{position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background-color: var(--color-basic); content:""; display: block; clear: both; border-radius: 2px;}
.header05 .pos_top_ad.leftSide li > div{text-align: right;}


/* --- 배너 --- */
.siver_bn_body li + li{margin-top: 10px;}
.siver_bn_body a{display: block;}
.siver_bn_body a > img{max-width: 100%; height: auto !important;}


/* --- 내용관리 페이지 --- */
.subTitle{padding: 15px 0; border-bottom: 1px solid #eee; position: relative; /*font-family: 'KoPubWorld Batang', serif;*/ font-size: 32px; font-weight: 600; color: #161616;}
.content_page{display: flex; gap: 30px; /* margin-top: 20px; */}
.company_lnb{width: 220px;}
.company_lnb li{border-bottom: 1px solid #eee;}
.company_lnb li a {display: block; padding: 15px 10px; font-weight: 500; color: #999; font-size: 16px;}
.company_lnb li a.on{color: var(--color-basic); font-weight: 600; background-color: #fafafa;}
.content{flex: 1;}


/* --- mouse over --- */
a:hover .h_tit, a:hover .subject,
.most_view_news a:hover, .list_text a:hover, .plan_list a:hover, .latest_vertical a:hover,
a:hover .big_tit, a:hover .ofe, a:hover .tit, .art_list_all a:hover h2, .list_img a:hover h2, .search_wrap a:hover h2
 {opacity: 0.6; transition-duration: 100ms;}








/* ======================================================================= */
/* .layout_121, .layout_21, .layout_12, .layout_11{display: flex; align-items: flex-start; gap: 30px;}

.layout_121 > .part_1{width: 300px;}
.layout_121 > .part_2{width: 600px;}
.layout_121 > .part_3{flex: 1;}

.layout_21 > .part_1{width: 930px; flex: 1;}
.layout_21 > .part_2{width: 300px;}

.layout_12 > .part_1{width: 300px;}
.layout_12 > .part_2{width: 600px;}


.layout_11 > .part_1{width: 450px;}
.layout_11 > .part_2{flex: 1;} */

.inner_box + .inner_box{margin-top: 60px;}
.inner_box.side_banner + .inner_box{margin-top: 20px;}

/* - 01 이미지형 - */
.image_box .img {aspect-ratio: 3/2;}
.image_box .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.image_box .text{margin: 15px 0;}
.image_slide .swiper-pagination{width: fit-content; top: 10px; right: 10px; left: initial; bottom: initial; font-size: 13px; color: #999; text-align: right; letter-spacing: 1px;}
.image_slide .swiper-pagination .swiper-pagination-current{font-weight: 600; color: initial;}

.image_box .video{position: relative;}
.image_box .video::after{position: absolute; right: 20px; bottom: 20px; content: ""; display: block; clear: both; width: 30px;    height: 30px; background: url('../img/play_icon.png') no-repeat center / contain;}

.card_news .tab_content_box{margin-top: 5px;}

/* - 03 텍스트형 - */
.list_text li{border: 1px solid #eee; border-style: solid none;}
.list_text li + li{border-top: none;}
.list_text li:not(.no_data_list){padding: 10px 0; color: inherit;}
.no_data_list,
.most_view_news .tab_content .no_data_list,
.list_text .no_data_list,
.image_slide .no_data_list,
.image_box .no_data_list{padding: 80px 0px; text-align: center; color: #999; font-size: 15px;}




/* 타이틀 디자인 */
.ar_title{position: relative; display: flex; align-items: center; gap: 15px; padding: 13px 0 10px 0; }
.ar_title::before{position: absolute; top: 0; left: 0; right: 0; height: 3px; border-radius: 3px; background-color:  var(--color-basic); content:""; display: block; clear: both; z-index: 1;}
.ar_title .tit{font-size: 26px; font-weight: 600; color: var(--color-basic); letter-spacing: -0.02em; /*font-family: 'KoPubWorld Batang', serif;*/}
.ar_more{font-size: 16px; color: var(--color-basic);}

.ar_title.basic{padding: 5px 0;}
.ar_title.basic::before{display: none;}
/* .ar_title.basic .tit, .ar_title.basic .ar_more{color: #111;} */

.pg_title{position: relative; display: flex; align-items: flex-end; justify-content: space-between; gap: 15px; padding-bottom: 20px; margin-bottom: 30px;}
.pg_title::before{position: absolute; bottom: 0; left: 0; right: 0; height: 3px; border-radius: 3px; background-color: #eee; content:""; display: block; clear: both; z-index: 1;}
.pg_title .tit{ position:relative; font-size: 36px; line-height: 1.2; font-weight: 600; letter-spacing: -0.02em;}




/* 탭 디자인 */
.tab_box{}
.tab_menu, .t_menu{display: flex; margin-bottom: 15px;}
.tab_menu{align-items: flex-end;}
.tab_menu li:hover, .basic_tab li:hover{cursor: pointer;}

.color_tab{margin: 10px 0; gap: 5px; justify-content: center;}
.color_tab li{padding: 6px 10px; background-color: var(--color-light); color: var(--color-basic); font-size: 14px; font-weight: 600;}
.color_tab li.on{background: var(--color-basic); color: #fff;}

/*
.basic_tab li{flex:1; border-top: 3px solid #eee; background-color: #fbfbfb; color: #999; font-weight: 500; text-align: center; padding: 15px 5px; line-height: 1;}
.basic_tab li + li{border-left: 1px solid #eee;}
.basic_tab li.on{border-top-color: var(--color-basic); color: var(--color-basic); background-color: #fff; font-weight: 600;}
 */


.basic_tab li{/*font-family: 'KoPubWorld Batang', serif;*/ font-size: 22px; font-weight: 600; color: #999}
.basic_tab li.on{color: #222; font-size: 28px; font-weight:800;} 
.basic_tab li + li{position: relative; padding-left: 20px; margin-left: 20px;}
.basic_tab li + li::before{position: absolute; left: 0; bottom: 10px; width: 5px; height:5px; background-color: #ddd; border-radius: 50%; content:""; display: block; clear: both;}

.tab_content{display: none;}
.tab_content.on{display: block;}
.t_slide{margin-top: 5px;}



/* 가장 많이 본 뉴스 */
.most_view_news {padding: 15px; padding-top: 20px; border: 1px solid #eee; border-radius: 10px;box-shadow: 0 0 6px 0 rgba(0, 0, 0, .15);}
.most_view_news .side_title{padding: 0; border-top: none;}
.most_view_news .tab_content li {padding: 15px 0; border-top: 1px solid #eee;}


/* 카드뉴스 */
.card_news .photo_box .text .text_over{font-size: 17px; color: inherit;}
.card_news .t_menu{padding-top: 15px; border-top: 5px solid var(--color-basic); justify-content: center; text-align: center;}
.card_news .t_menu > li{flex: 1;}
.card_news .basic_tab li{font-size: 26px; margin-left: 0; padding-left: 0;}
.card_news .basic_tab li + li::before{top: 50%; bottom: initial; transform: translateY(-50%); left: -2px;}


/* Sitemap */
#box_bottom{background-color: #fafafa; padding: 30px 0 60px 0;}
#box_bottom .ar_title{border-bottom: 1px solid #eee; margin-bottom: 20px; padding-bottom: 10px;}
#box_bottom .ar_title .tit{color: #111;}

.sitemap{display: flex; flex-wrap: wrap; gap: 30px 0; margin-bottom: 60px;}
.sitemap li{line-height: 2;}
.sitemap > li{min-width: 200px;}
.sitemap > li + li{padding: 0 12px; border-left: 1px solid #eee;}
.sitemap > li > a{font-weight: 600;}
.sitemap_nav > li > a{color: #666; font-size: 14px;}

#box_bottom .swiper-slide{border: 1px solid #eee;}

/* Footer */
#footer {background-color: #262323; color: #fff;}
.footer_nav {border-bottom: 1px solid rgba(102, 102, 102, .5)}
.footer_nav ul{display: flex; align-items: center;}
.footer_nav ul > li{flex: 1; text-align: center;}
.footer_nav ul > li > a{display: block; color: #fff; padding: 1em 5px; font-size: 14px; font-weight: 500;}

#footer > div.wrapper{padding: 30px 0;}
.footer_logo {max-width: 220px;}
.footer_logo img{max-width: 100%;}
.foot_con {position: relative; flex: 1;}
.foot_con > p { font-size: 13px; color: #ccc;}
.foot_con > p + p{margin-top: 10px;}
.foot_con > p > b{display: block; margin-top: 10px; color: #999;}
.foot_con > b { position: absolute; right: 0; bottom: 0; filter: invert(1);}

#footer .part_1{display: flex; gap: 30px; margin-bottom: 30px;}

.btn_mobile { position: relative; text-align: center; padding: 20px 0;}







/* ============================= 기존 index. css에서 가져옴 ================================= */
/* 스와이퍼 기본 설정 변경 */
.swiper-pagination-bullet-active{background-color: var(--color-basic);}
.swi_vertical{height: 880px; margin: 15px auto 40px auto;}

/* 분할 레이아웃 */
.split{display: flex; gap: 30px;}
.split.type_1 .part_1{width: 600px;}
.split.type_1 .part_2, .split.type_1 .part_3{width: calc((100% - 660px)/2);}

.split.type_2 .part_1{flex: 1;}
.split.type_2 .part_2{width: calc(33.334% - 20px);}

.split.type_3{gap: 0;}
.split.type_3 .part_1, .split.type_3 .part_2{width: 50%;}

.cube .img{position: relative; width: 100%; aspect-ratio: 4/3;}
.cube .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.cube .img + div{padding: 15px 0;}
.cube .subject{-webkit-line-clamp: 2; height: 2.6em; box-sizing: content-box;}



/* - 01 이미지형 - */
.image_wrapper .img_box{width: 100%; aspect-ratio: 4/3;}
.image_wrapper .img_box img{display: block; width: 100%; height: 100%; object-fit: cover;}
.only_image{margin-top: 5px;}
.only_image .subject{-webkit-line-clamp: 2; padding: 20px 0;}

.list_box li + li{border-top: 1px solid #eee;}
.list_box a{display: block; padding: 10px 0;}



/* - 02 웹진형 - */
/*
.webjin a, .web_form{display: flex; gap: 15px; align-items: center;}
.webjin .thum_img, .web_form .thum_img{width: 120px; height: 80px; overflow: hidden;}
.thum_img img{width: 100%; height: 100%; object-fit: cover;}
.webjin .content_box, .web_form .content_box{flex: 1;}
.webjin > li + li{margin-top: 10px}
.web_form p.text_over, .webjin p.text_over{font-size: 14px;}
 */

.webjin_news_wrapper > div{padding: 15px 0; border-bottom: 1px solid #eee;}
.webjin_news_wrapper .flex{display: flex; gap: 15px; align-items: center;}
.webjin_news_wrapper .img{width: 120px; aspect-ratio: 3/2;}
.webjin_news_wrapper .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.webjin_news_wrapper .text{flex: 1}

.grid2 > div:nth-last-child(2), .grid2 > div:last-child{border-bottom: none;}
.grid3 > div:nth-last-child(3), .grid3 > div:nth-last-child(2), .grid3 > div:last-child{border-bottom: none;}


/* - 03 텍스트형 - */
.list_section{display: block; color: var(--color-basic); font-weight: 600; margin-bottom: 5px;}
.text_news_wrapper > div{padding: 20px 0; border-bottom: 1px solid #eee;}


/* - 04 와이드형 - */
.wide_type + .wide_type{margin-top: 50px;}
.wide_first .img{width: 100%; aspect-ratio: 2/1; max-height: 340px;}
.wide_first .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.wide_first .text{padding: 30px 10px;}
.wide_first .text .tit{text-align: center; font-size: 28px; font-weight: 600; line-height: 1.3; /*font-family: 'KoPubWorld Batang', serif;*/}
.wide_first .text .sub_tit{color: #666; text-align: center; font-weight: 400;  margin-top: 10px; font-size: 18px;}

.wide_type .list_box{flex: 1;}
.wide_type .list_box li:first-child a{padding-top: 0;}
.wide_type:nth-of-type(even) .form_wide{flex-direction: row-reverse;}
.wide_type .pagination{position: absolute; width: fit-content; left: 50%; bottom: 0; transform: translateX(-50%); z-index: 1;}


/* - 서브 심플형 - */
.simple_news_wrapper > div{padding: 20px 0; border-bottom: 1px solid #eee;}
.simple_news_wrapper > div:first-child{border-top: 1px solid #eee;}
.simple_news_wrapper > div > a{display: flex; gap: 30px; align-items: center;}
.simple_news_wrapper .img{width: 30%; aspect-ratio: 1/1;}
.simple_news_wrapper .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.simple_news_wrapper .text{flex: 1;}
.simple_news_wrapper .text .content{color: #888;}
.simple_news_wrapper .art_info{margin-top: 15px;}
.simple_news_wrapper .label_box{margin-bottom: 10px;}
.simple_news_wrapper .news_label{font-size: 13px; padding: 7px 10px;}


/* - 서브 포토형 - */
.photo_news_wrapper.grid{gap: 10px;}
.photo_news_wrapper .img{position: relative; width: 100%; aspect-ratio: 4/3; }
.photo_news_wrapper .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.photo_news_wrapper .img .quick_icon{position: absolute; left: 0; top: 8px;}
.photo_news_wrapper .text{padding: 15px 0;}


/* - 서브 비디오 - */
.video_news_wrapper .text{display: none;}
.video_news_wrapper .img{position: relative; width: initial;}
.video_news_wrapper .img::before{position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.25); content:""; display: block; clear: both;}
.video_news_wrapper .img::after{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 2.5em; height: 2.5em; background: url('../img/icon/btn_play.svg') no-repeat center / contain; filter: invert(1); content:""; display: block; clear: both; z-index: 1;}


/* 기자명 + 날짜 등 세부사항 */
.art_info{display: flex; gap: 10px; font-size: 13px; line-height: 10px; align-items: center;}
.art_info li + li{border-left: 1px solid #eee; padding-left: 10px;}
.art_info .name{font-weight: 500;}


/* - 05 포토뉴스 - */
.form_photo .img{aspect-ratio: 4/3;}
.form_photo .img img{display: block; width: 100%; height: 100%; object-fit: cover;}
.form_photo .text{padding: 15px 0;}

.banner_box img{max-width: 100%; height: auto !important;}






/* ============================= 2025-05-13 다시 ================================= */

.layout{display: flex; gap: 30px; align-items: flex-start;}
.layout > div, .layout > section{max-width: 100%; padding-bottom: 30px;}
.layout .left_section{flex: 1;}
.layout .right_section{width: 300px;}



.layout.type_basic{}
.layout.type_basic .left_section{}


.layout.type_half > div{flex: 1;}
.layout.type_half > div.banner_box{max-width: 450px;}


.layout.type_multi .large_section{flex: 1; max-width: calc(100% - 430px);}
.layout.type_multi .small_section{position: relative; width: 400px;}



/* ============================================================= */
.grid{display: grid; gap: 0 30px;}
.grid2{grid-template-columns: repeat(2,1fr);}
.grid3{grid-template-columns: repeat(3,1fr);}
.grid4{grid-template-columns: repeat(4,1fr);}
.grid5{grid-template-columns: repeat(5,1fr);}

.grid img{max-width: 100%;}




/* ============================================================= */
.line1, .line2, .line3, .line4, .line5{display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-box-orient: vertical; word-break: break-all; text-align: justify; line-height: 1.4;}
.line1{-webkit-line-clamp: 1; line-height: 1.2;}
.line2{-webkit-line-clamp: 2;}
.line3{-webkit-line-clamp: 3;}
.line4{-webkit-line-clamp: 4;}
.line5{-webkit-line-clamp: 5;}
.tit.line1, .tit.line2, .tit.line3, .tit.line4, .tit.line5{word-break: keep-all; text-align: left;}


/* 뉴스 리스트 폰트 사이즈 */
.news_tit{font-size: 20px; margin-bottom: 8px; font-weight: 600; word-break: keep-all; text-align: left;}
.news_sub_tit{font-size: 17px; margin-bottom: 8px; color: #666; font-weight: 500;}
.news_text > p{font-size: 15px; color: #888;}



/* 뉴스 큰글씨 */
.label_box{display: flex; margin-bottom: 15px; gap: 5px;}
.news_label{display: block; width: fit-content; color: #fff; background-color: var(--color-basic); padding: 8px 12px; font-weight: 600;  font-size: 14px; line-height: 1;}
.news_big_text .more{display: block; text-align: right; color: #999; margin-top: 20px;}

.news_big_text .tit{font-size: 28px; font-weight: 600; line-height: 1.3; /*font-family: 'KoPubWorld Batang', serif;*/}
.news_big_text .sub_tit{font-size: 20px;}
.news_big_text .content{font-size: 17px; margin-top: 30px; color: #444;}



/* 뉴스 섹션 타이틀 공통 */
.section_title{padding: 15px 0; margin-bottom: 15px; border-top: 5px solid var(--color-basic); border-bottom: 1px solid #eee;}
.section_title > a, .section_title > .tit{position: relative; display: block; /*font-family: 'KoPubWorld Batang', serif;*/ font-size: 28px; font-weight: 800; color: #161616; padding-right: 15px;}
.section_title > a::after{position: absolute; right: 5px; top: 50%; transform: translateY(-50%); display: block; clear: both; content:"+"; color: #999; font-size: 16px; font-weight: 700; transition-duration: 200ms; overflow: hidden; white-space: nowrap; width: 1em;}
.section_title > a:hover::after{ content:"더보기"; font-family: 'Pretendard Variable', sans-serif; width: 3em; font-weight: 500;}
.section_title > .tit > small{display: inline-block; color: #999; font-size: 14px; font-family: 'Pretendard Variable', sans-serif; margin-left: 5px; font-weight: 400; vertical-align: bottom; line-height: 1;}
.section_title.flex {display: flex; align-items: center; justify-content: space-between;}

.side_title{padding: 15px 0; border-top: 5px solid var(--color-basic);}
.side_title .tit{display: block; /*font-family: 'KoPubWorld Batang', serif;*/ font-size: 26px; font-weight: 800; text-align: center;}
.side_title .tit > a{position: relative; display: block;}
.side_title .tit > a::after{position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: block; clear: both; content:"+"; color: #999; font-size: 13px; font-weight: 700; transition-duration: 200ms; overflow: hidden; white-space: nowrap; width: 1em;}
.side_title .tit:hover > a::after{ content:"더보기"; font-family: 'Pretendard Variable', sans-serif; width: 3em; font-weight: 500;}



/* --- 로그인 --- */
.re_wrap{display: flex;justify-content: center; max-width: 480px; min-height: 100vh; margin: 0 auto;}
.re_wrap .mr4_001{margin-top: 50px; margin-bottom: 50px;}
.re_wrap > div{width: 100%;}
.re_wrap input[type="text"], .login_wrap input[type="password"]{padding: 12px;}
.re_wrap .btn_box{margin: 30px 0 100px 0;}
.login_wrap .btn_box{margin-bottom: 30px;}
.re_wrap .btn_box .btn_big {max-width: initial; font-size: 14px; padding: 1em;}


.login_wrap{align-items: center; }
.login_top{text-align: center;}
.login_top strong{display: block; margin: 20px 0; font-size: 20px; font-weight: 700;}
.login_input {margin: 20px 0;}
.login_input li + li{margin-top: 5px !important;}
.login_bottom{display: flex; text-align: center; margin: 30px auto;}
.login_bottom li{flex: 1; font-size: 14px; font-weight: 500;}
.login_bottom li a{color: #444;}
.login_bottom li + li{border-left: 1px solid #ddd;}

.re_wrap input[type='text'], .re_wrap input[type='email'], .re_wrap input[type='password']{width: 100%;}


/* --- 회원가입 동의 --- */
.login_tit {display: flex; padding: 12px 0; border-bottom: 1px solid #eee; align-items: center; justify-content: space-between;}
.page_btn{display: block; width: 24px; height: 24px;}
.page_btn img{display: block; width: 100%; height: 100%; object-fit: contain;}
.page_btn:hover{cursor: pointer;}

.login_tit strong{display: block; font-size: 20px; text-align: center; font-weight: 600;}
.login_tit .page_back{color: #999;}

.register_wrap{}
.terms_tit{display: block; font-size: 17px; margin: 15px 0 10px 0;}
.terms_text{height: 200px; overflow-y: scroll; font-size: 13px; line-height: 1.5; text-align: justify; padding: 15px; background-color: #fafafa;}
.terms_text::-webkit-scrollbar {width: 5px;}
.terms_text::-webkit-scrollbar-track {background: transparent;}
.terms_text::-webkit-scrollbar-thumb {background: #ddd; border-radius: 5px;}
.re_wrap .terms_agree{margin: 0}

/* --- 회원가입 --- */
.form_box dl{}
.form_box dl + dl{margin-top: 5px;}
.form_box dl.chk_box{border-top: 1px solid #eee; margin-top: 10px;}
.form_box dt{padding: 10px 0; font-size: 16px; font-weight: 600;}

.form_box .require{display: inline-block; width: 5px; height: 5px; background-color: var(--color-basic); margin-left: 5px; vertical-align: text-top; border-radius: 50%;}
.form_box > p {text-align: right; font-size: 13px; color: var(--color-basic); font-weight: 500; padding-top: 15px;}
.form_box > p > .require{margin-left: 0; margin-right: 5px;}

.form_box dd{position: relative;}
.form_box .frm_info{display: block; font-size: 11px; margin-top: 8px; color: #666;}
.form_box .btn_grays{position: absolute; top: 50%; right: 10px; transform: translateY(-50%); display: block; padding: 5px 10px; font-size: 13px; background-color: #222; color: #fff; font-weight: 500; border: 1px solid #222;}
.form_box .btn_grays:hover{color: var(--color-basic); border-color: var(--color-basic); background-color: #fff;}

#footer_member{text-align: center; padding: 30px 4%; border-top: 5px solid #eee; font-size: 13px;}
.footer_member_wrap{max-width: 480px; margin: auto;}
.footer_member_wrap .bar_list{display: flex; justify-content: center; flex-wrap: wrap; gap: 5px 10px; margin-bottom: 15px;}
.footer_member_wrap .bar_list li + li{padding-left: 10px; border-left: 1px solid #eee;}
.footer_member_wrap .bar_list li a{color:#222}
.footer_member_wrap .text{color: #999;}
.footer_member_wrap .text b{display: block; margin-top: 15px; color: #333;}
.change_btn{display: block; padding: 10px; background-color: #ddd; color: #999; font-weight: 600; border-radius: 2em; margin-top: 15px;}


.company_form .info_wrap { padding: 15px; background: #f3f3f3;}
.company_form .info_wrap b { color: #495da7; display: block; margin-bottom: 7px; font-size: 15px;}

.company_form .form_box { position: relative;}

.company_form .form_box dl {display: flex; gap: 10px; align-items: center;}
.company_form .form_box dl dt {position: relative; width: 140px;}
.company_form .form_box dl dt span, .c011_myp .form_box dl dt label { color: #808080;}
.company_form .form_box dl dd {position: relative; flex: 1;}
.company_form .form_box dl dd > span { position: relative; display: block; margin: 10px 0;}

.company_form .i_label { left: 7px; top: 8px; color: #bbb;}
.company_form .require_txt {font-size: 14px; padding: 15px 0; text-align: right;}
.company_form .f_side{display: flex; gap: 10px;}
.company_form .f_side select{width: 140px;}
.company_form .f_side input{flex: 1;}
.company_form .f_side input[type='button']{width: 30%; max-width: 180px; flex: initial; font-size: 14px; color: #fff; text-align: center;}
.company_form .f_address > div + div{margin-top: 10px;}
.company_form .f_address button{padding: 10px 15px; font-size: 13px; background-color: #929292; color: #fff; font-weight: 500;}
.company_form .f_address button:hover{background-color: #eaeaea; color: #222;}

.company_form input[type=text], .company_form textarea { width: 100%;}
.company_form textarea { height: 200px;}

.company_form input { vertical-align: middle;}
.company_form .btn_gray {background-color: #929292; font-weight: 500;}
.company_form .btn_gray:hover {color: #222;}

.company_form .btn_blue { display: inline-block; padding: 13px 35px; height: 47px; line-height: 1; color: #fff; vertical-align: middle; margin-left: 5px; font-size: 19px;}

.company_form .btn_center { position: relative; text-align: center; padding: 20px 0;}

.company_form .float_list { position: relative;}
.company_form .float_list:after { content: ""; display: block; clear: both;}
.company_form .float_list li { position: relative; float: left;}
.company_form .float_list li:before { content: "-"; text-align: center; float: left; display:block; width: 15px; height: 38px; line-height: 38px;}
.company_form .float_list li:first-child:before { display: none;}
.company_form .float_list li input { width: 64px;}
.company_form .btn_big{max-width: 300px;}





















