@import url("common.css");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..500,0..1,-50..200");

.wrapper {overflow: initial;}

/* 비주얼 */
#visual{position:relative; width:100%; height:700px; background:#000; z-index: 9999;}
#visual .visual_in{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:9999;}
#visual .v_txt{text-align:left; padding: 50px 0 0;}
#visual .v_txt h2{transform:translateY(60px); opacity:0; animation:v_txt 1.0s 0.5s; animation-fill-mode:both; padding: 10px 0 20px;}
#visual .v_txt p{transform:translateY(60px); opacity:0; animation:v_txt 1.0s 0.3s; animation-fill-mode:both;}

#visual .v_txt p.eng {text-transform: uppercase;}
#visual .v_txt p.subtit {animation-delay: 0.6s; margin-bottom: 5px;}
#visual .v_txt p.desc {animation-delay: 0.7s;}

#visual .v_bg{position:absolute; left:0; top:0; width:100%; height:100%; overflow: hidden;}
#visual .v_bg .bg{position:absolute; left:0; top:0; width:100%; height:100%; transform: scale(1); animation: m_vsImg 1.8s;}

#visual br {display: block;}

@keyframes m_vsImg {
	0% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	20% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	100% { -webkit-transform:scale(1); -ms-transform:scale(1); transform:scale(1); }
}
@keyframes v_txt {
	0% { transform:translateY(60px); opacity:0; }
	100% { transform:translateY(0); opacity:1; }
}

#visual.visual_view {height: auto; padding: 120px 0 52px; background: transparent;}
#visual.visual_view .visual_lnb {position: static;}

#visual.visual_view .visual_lnb dl dt a svg path {stroke: var(--basic);}
#visual.visual_view .visual_lnb dl dd:before {background: var(--border); opacity: 1;}
#visual.visual_view .visual_lnb dl dd .txt {color: var(--basic);}
#visual.visual_view .visual_lnb dl dd .txt:after {color: var(--basic);}


body:has(#visual.visual_view) .header h1 a img {opacity: 0;}
body:has(#visual.visual_view) .header h1 a::before {opacity: 1;}
body:has(#visual.visual_view) .header .top_util li a svg path {stroke: var(--black);}
body:has(#visual.visual_view) .header .top_util li.menu_btn a i {background: var(--black); border-color: var(--black);}
body:has(#visual.visual_view) .header .gnb ul li > a {color: var(--black);}



/* 비주얼 lnb */
#visual .visual_lnb{position: absolute; left: 0; right: 0; bottom: 50px; z-index: 99999; display: flex; align-items: center; justify-content: space-between; gap: 20px;}
#visual .visual_lnb .visual_tab{display: flex; flex-wrap: wrap; gap: 2px;}
#visual .visual_lnb .visual_tab li a{display: flex; align-items: center; justify-content: center; min-width: 110px; height: 44px; padding: 0 16px; border-radius: 5px; border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.1); color: rgba(255, 255, 255, 0.7)}
#visual .visual_lnb .visual_tab li.active a{border-color: var(--white); background: transparent; font-weight: 600; color: var(--white);}
#visual .visual_lnb .visual_tab li a:hover {border-color: var(--white); color: var(--white);}
#visual .visual_lnb dl{display: flex; align-items: center; margin-left: auto;}
#visual .visual_lnb dl dt{padding: 0 20px 0 0;}
#visual .visual_lnb dl dt a{display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; font-size: 0; color: var(--white); transition: opacity .3s linear;}
#visual .visual_lnb dl dt a:hover{opacity: 0.7;}
#visual .visual_lnb dl dt a svg{width: 100%; height: 100%; display: block;}
#visual .visual_lnb dl dd{position: relative; padding: 0 20px;}
#visual .visual_lnb dl dd:before{content: ''; display: block; width: 1px; height: 15px; background: var(--white); position: absolute; left: 0; top: 50%; transform: translateY(-50%); opacity: 0.5;}
#visual .visual_lnb dl dd .txt{padding: 0 28px 0 0; position: relative; color: var(--white); text-overflow: ellipsis; overflow: hidden; white-space: nowrap; display: block;}
#visual .visual_lnb dl dd .txt:after{content: '\e5cf'; font-family: var(--icon); font-weight: 400; font-style: normal; font-size: 18px; line-height: 1; color: var(--white); position: absolute; right: 0; top: 50%; transform: translateY(-50%); transition: transform .3s linear;}
#visual .visual_lnb dl dd .txt.on:after{transform: translateY(-50%) rotate(180deg);}
#visual .visual_lnb dl dd .dlst{position: absolute; z-index: 999; margin: 10px 0 0; left: 0; min-width: 100%; background-color: var(--white); padding: 15px 20px; display: none; box-shadow: 5px 5px 15px rgba(0,0,0,0.05);}
#visual .visual_lnb dl dd .dlst.on{display: block;}
#visual .visual_lnb dl dd .dlst ul li{padding: 0 0 4px;}
#visual .visual_lnb dl dd .dlst ul li:last-child{padding: 0;}
#visual .visual_lnb dl dd .dlst ul li a{font-size: 15px; transition: all .2s linear; line-height: 160%; letter-spacing: var(--letter-spacing-default);}
#visual .visual_lnb dl dd .dlst ul li a:hover,
#visual .visual_lnb dl dd .dlst ul li a.on{color: var(--main);}
#visual .visual_lnb dl dd .dlst ul li a:hover {text-decoration: underline;}
#visual .visual_lnb dl dd .dlst ul li a.on {font-weight: 600;}


/* 모바일 lnb */
.mobile_snb {display:none;}

/* 서브타이틀 */
#subtitle{padding: 70px 0 50px; text-align:center;}
#subtitle h3{font-weight: 700;}




/*** 공통 css ***/
.page_wrap {padding-top: 100px;}

.basic_cont{max-width:1590px; width: 90%; margin:0 auto;}
.contents_in {margin-bottom: 200px;}

/* 페이지 LNB */
.page_lnb_wrap{position:relative;}
.page_lnb{position:relative; z-index:50; padding: 10px 0;}
.page_lnb .page_lnb_in{display:flex; align-items:center; justify-content:space-between; gap:20px;}
.page_lnb .page_lnb_tit{display:none; flex:0 0 auto; white-space:nowrap;}
.page_lnb .page_lnb_tabs{flex:1; min-width:0; background:var(--grayBg); border-radius:5px; overflow:hidden;}
.page_lnb .page_lnb_tabs .swiper-wrapper{display:flex; box-sizing:border-box;}
.page_lnb .page_lnb_tabs .swiper-slide{width:auto; height:auto; flex-shrink:0; display:flex; box-sizing:border-box; flex:1}
.page_lnb .page_lnb_tabs .swiper-slide a{display:flex; align-items:center; justify-content:center; width:100%; padding:15px 20px; box-sizing:border-box; border-right:1px solid var(--border); color:var(--basic); font-size:1rem; font-weight:400; line-height:177.778%; letter-spacing:var(--letter-spacing-body); transition:color .25s ease, background .25s ease, border-color .25s ease; text-align:center; white-space:nowrap;}
.page_lnb .page_lnb_tabs .swiper-slide:last-child a{border-right:0;}
.page_lnb .page_lnb_tabs .swiper-slide.active a{background:var(--gra); border-right:0; color:var(--white); font-weight:600;}
.page_lnb .page_lnb_tabs .swiper-slide a:hover{color:var(--black);}
.page_lnb .page_lnb_tabs .swiper-slide.active a:hover{color:var(--white);}
/* 탭이 컨테이너에 다 들어갈 때(스와이프 불필요) 균등 분배 */
.page_lnb .page_lnb_tabs.swiper-initialized.swiper-locked .swiper-wrapper{width:100% !important; transform:none !important;}
.page_lnb .page_lnb_tabs.swiper-initialized.swiper-locked .swiper-slide:not(.is-content){flex:1 1 0; width:auto !important; min-width:0;}
.page_lnb .page_lnb_tabs.swiper-initialized.swiper-locked .swiper-slide.is-content{flex:0 0 auto; width:auto !important;}
.page_lnb .page_lnb_btn{display:none; flex:0 0 auto; margin-left:auto;}
.page_lnb .page_lnb_contact{display:inline-flex; align-items:center; justify-content:center; min-width:150px; padding:10px 28px; border-radius:50px; background:var(--gra); color:var(--white); font-weight:600; position:relative; overflow:hidden; transition:color .3s ease; font-size: 0.889rem; line-height: 175%; letter-spacing: var(--letter-spacing-body);}
.page_lnb .page_lnb_contact::before{content:''; position:absolute; top:0; left:-80%; width:100%; height:100%; background:var(--main); transition:left .45s ease, opacity .45s ease; opacity:0;}
.page_lnb .page_lnb_contact:hover::before{left:0; opacity:1;}
.page_lnb .page_lnb_contact span{position:relative; z-index:2;}

/* page_lnb sticky (lnb1) */
.page_lnb.is-fixed{position:fixed; top:0; left:0; right:0; height:auto; background:var(--white); box-shadow:0 4px 20px rgba(0,0,0,.04); transition:top .4s linear;}
.page_lnb.is-fixed.under-header{top:var(--header-fixed-h, 90px); border-top: 1px solid var(--border);}
.page_lnb.is-fixed .page_lnb_in{height:auto;}
.page_lnb.is-fixed .page_lnb_tit{display:block; width: 300px;}
.page_lnb.is-fixed .page_lnb_tabs{flex:0 1 915px; max-width:915px; height:auto;}
.page_lnb.is-fixed .page_lnb_tabs .swiper-slide a{padding:10px 20px; font-size:0.8889rem; line-height:175%;}
.page_lnb.is-fixed .page_lnb_btn{display:block;}

/* 섹션 / 아티클 */
.sub_sec {padding: 100px 0 0;}
.sub_sec:last-child{padding-bottom:0;}
.sub_art{display:flex; align-items:flex-start; gap:30px;}
.sub_art_tit{position:sticky; top:var(--sub-art-sticky-top, 88px); flex:0 0 375px; max-width:375px; transition: all 0.3s ease;}
.sub_art_tit .eng_tit{margin:0 0 10px; text-transform:uppercase;}
.sub_art_tit .kor_tit{color:var(--black);}
.sub_art_cont{flex:1; min-width:0;}


/* 개인정보처리방침 */
.policy_cont{position:relative; overflow:hidden; font-size:1rem;}
.policy_cont br{display:block;}
.policy_cont strong{font-weight:500; color:var(--black);}
.policy_cont .cont_title{font-size:1.412rem; color:var(--black); padding-bottom:18px; letter-spacing:var(--letter-spacing-default); font-weight:500;}
.policy_cont p.cont_tit {display:block; font-size:1.2em !important; padding-bottom:10px; font-weight:500; color:var(--black) !important; letter-spacing:var(--letter-spacing-default);}
.policy_cont .cont_txt {padding:0px 0px 35px 0;}
.policy_cont .cont_txt2 {padding-bottom:35px;}
.policy_cont .cont_box {padding:25px; background:var(--grayBg); margin:7px 0px 10px 0px; display:block;  letter-spacing:var(--letter-spacing-default); line-height:1.7;}

.privacy_list {width:100%; overflow:hidden; clear:both; *zoom:1; padding:4% 4% 3% 4%; border:1px solid var(--border); box-sizing:border-box; margin-bottom:30px;}
.privacy_list li {width:50%; float:left; padding-bottom:1%;}
.privacy_list li a {font-weight:500; color:var(--black);} 


/* 서브 FAQ */
#faq {background: none;}
#faq .faq_list {margin-top: 0;}
#faq .faq_list li {border: 1px solid var(--border); border-radius: 10px; overflow: hidden;}
#faq .faq_list li + li {margin-top: 5px;}
#faq .faq_list dl dt {padding: 18px 25px; letter-spacing: var(--letter-spacing-body); line-height: 170%; display: flex; gap: 12px; align-items: flex-start; padding-right: 65px;}
#faq .faq_list dl dt::before {font-size: 16px; position: static; flex-shrink: 0;}
#faq .faq_list dl dt::after {content: '\e313'; color: var(--basic); opacity: 1;}
#faq .faq_list dl.on dt::after {content: '\e313'; transform: rotate(180deg);}

#faq .faq_list dl dd {padding: 22px 25px; display: flex; align-items: flex-start; gap: 10px; background: var(--grayBg);}
#faq .faq_list dl dd::before {font-family: var(--eng); position: static; font-size: 16px; flex-shrink: 0; background: var(--basic);}
#faq .faq_list dl dd p {letter-spacing: var(--letter-spacing-body); line-height: 177.778%;}


/* dot_list */
.dot_list_top.fs18 {margin-bottom: 5px;}

.dot_list {display: flex; flex-direction: column; gap: 4px;}
.dot_list li {position: relative; padding-left: 10px;}
.dot_list li::before {content: ''; display: block; width: 4px; height: 4px; background: var(--main); border-radius: 50%; position: absolute; left: 0; top: 11px}

.dot_list:has(li.fs18) {gap: 5px;}
.dot_list li.fs18 {padding-left: 11px;}
.dot_list li.fs18::before {top: 14px;}

.dot_list.grid {display: grid; gap: 5px 30px !important;}

/* 아티클 공통 스타일 */
.sub_art_article h4 {margin-bottom: 20px;}
.sub_art_article_header {margin-bottom: 20px;}
.sub_art_article_header h4 {margin-bottom: 5px;}
.sub_art_item + .sub_art_item {margin-top: 60px;}

.borderbox {border: 1px solid var(--border); border-radius: var(--borderR30);}
.border_txt_box {padding: 40px;}
.border_txt_box.grayBg {border-radius: var(--borderR30);}
.borderbox_flex {display: flex; gap: 40px; align-items: flex-start;}
.borderbox_flex .img_area {display: flex; flex-direction: column; gap: 20px; width: 30%; max-width: 300px; flex-shrink: 0;}
.borderbox_flex .img_area img {width: 100%; max-width: 100%;}

.icon_flexbox {border: 1px solid var(--border); border-radius: var(--borderR30); overflow: hidden;}
.icon_flexbox:not(.grid) .icon_flexbox_item {border-right: 0; border-bottom: 1px solid var(--border);}
.icon_flexbox:not(.grid) .icon_flexbox_item:last-child {border-bottom: 0;}

.icon_flexbox.icon_flexbox_count_list {counter-reset: icon_flexbox_count_list;}
.icon_flexbox.icon_flexbox_count_list .icon_flexbox_item {counter-increment: icon_flexbox_count_list; position: relative;}
.icon_flexbox.icon_flexbox_count_list .icon_flexbox_item::before {content: counter(icon_flexbox_count_list); width: 28px; aspect-ratio: 1/1; border-radius: 50%; background: var(--main); line-height: 1; font-family: var(--eng); font-size: 14px; color: var(--white); font-weight: 700; display: flex; align-items: center; justify-content: center; position: absolute; left: 20px; top: 20px;} 

.icon_flexbox_item:has(.dot_list) {align-items: flex-start;}
.icon_flexbox_item.align_center:has(.dot_list) {align-items: center;}

.icon_flexbox_item {display: flex; gap: 20px; align-items: center; padding: 30px 20px 30px 30px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border);}
.icon_flexbox_item .iconbox {display: flex; border-radius: var(--borderR20); overflow: hidden; flex-shrink: 0; width: 100px;}
.icon_flexbox_item .iconbox img {width: 100%;}

.icon_flexbox_item .txtbox {display: flex; flex-direction: column; gap: 5px;}
.icon_flexbox_item.gap10 .txtbox {gap: 10px;}

.icon_flexbox_item:nth-child(3n+1) .iconbox {background: rgba(59,149,218,0.1);}
.icon_flexbox_item:nth-child(3n+2) .iconbox {background: rgba(67,187,188,0.1);}
.icon_flexbox_item:nth-child(3n) .iconbox {background: rgba(59,83,218,0.1);}

.icon_flexbox_item .iconbox.icon_bg2 {background: rgba(67,187,188,0.1);}
.icon_flexbox_item .iconbox.icon_bg3 {background: rgba(59,83,218,0.1);}

.icon_flexbox_item:nth-child(2n) {border-right: 0;}
.icon_flexbox_item:nth-last-child(1),
.icon_flexbox_item:nth-last-child(2) {border-bottom: 0;}

.icon_flexbox_item.icon_flexbox_item_empty {background: var(--grayBg); align-items: center; justify-content: center;}
.icon_flexbox_item.icon_flexbox_item_empty::after {content: ''; background: url('/img/logo_up.svg') center / cover no-repeat; mix-blend-mode: luminosity; opacity: 0.3; width: 172px; aspect-ratio: 172 / 51; max-width: 100%;}

.sub_art_img_list {gap: 50px 30px;}
.sub_art_img_list_item {display: flex; height: 100%; flex-direction: column;}
.sub_art_img_list_item .imgbox {aspect-ratio: 375 / 240; border-radius: var(--borderR30) var(--borderR30) 0 0; overflow: hidden;}
.sub_art_img_list_item .imgbox img {width: 100%; height: 100%; object-fit: cover;}
.sub_art_img_list_item .txtbox {border-radius: 0 0 var(--borderR30) var(--borderR30); padding: 30px; display: flex; flex-direction: column; gap: 10px; flex: 1;}

.sub_art_img_list.grid2 .sub_art_img_list_item .imgbox {aspect-ratio: 578 / 300;}

.sub_art_link_list {border: 1px solid var(--border); border-radius: var(--borderR30);}
.sub_art_link_list > li {border-bottom: 1px solid var(--border);}
.sub_art_link_list > li:last-child {border-bottom: 0;}
.sub_art_link_list > li a {padding: 30px; display: flex; align-items: center;}
.sub_art_link_list > li a .imgbox {display: flex; border-radius: var(--borderR20); flex-shrink: 0; width: 100px; overflow: hidden; background: rgba(28, 44, 116, 0.05);}
.sub_art_link_list > li a .imgbox.imgbox_kms {background: rgba(59, 149, 218, 0.1);}
.sub_art_link_list > li a .imgbox.imgbox_clm {background: rgba(67, 187, 188, 0.1);}
.sub_art_link_list > li a .imgbox.imgbox_pam {background: rgba(59, 83, 218, 0.1);}
.sub_art_link_list > li a .imgbox img {transition: all 0.3s ease; max-width: 100%;}
.sub_art_link_list > li a .txtbox {padding: 0 30px; flex: 1;}
.sub_art_link_list > li a .txtbox h5 {margin-bottom: 5px;}
.sub_art_link_list > li a .iconbox {display: flex; position: relative; overflow: hidden;}
.sub_art_link_list > li a .iconbox::before {content: '\e941'; font-size: 25px; color: var(--main); position: relative; transition: all 0.3s ease; left: 0;}
.sub_art_link_list > li a .iconbox::after {content: "\e941"; font-size: 25px; line-height: 1; font-weight: 400; font-family: var(--icon); color: var(--main); position: absolute; left: -100%; top: 0; transition: all 0.3s ease;}

.sub_art_link_list > li a:hover .imgbox img {transform: scale(1.1);}
.sub_art_link_list > li a:hover .iconbox::before {left: 100%;}
.sub_art_link_list > li a:hover .iconbox::after {left: 0;}


.sub_art_link_list {border: 1px solid var(--border); border-radius: var(--borderR30);}
.sub_art_link_list > li {border-bottom: 1px solid var(--border);}
.sub_art_link_list > li:last-child {border-bottom: 0;}
.sub_art_link_list > li .sub_art_link_in {padding: 30px; display: flex; align-items: center;}
.sub_art_link_list > li .sub_art_link_in .imgbox {display: flex; border-radius: var(--borderR20); flex-shrink: 0; width: 100px; overflow: hidden; background: rgba(28, 44, 116, 0.05);}
.sub_art_link_list > li .sub_art_link_in .imgbox.imgbox_kms {background: rgba(59, 149, 218, 0.1);}
.sub_art_link_list > li .sub_art_link_in .imgbox.imgbox_clm {background: rgba(67, 187, 188, 0.1);}
.sub_art_link_list > li .sub_art_link_in .imgbox.imgbox_pam {background: rgba(59, 83, 218, 0.1);}
.sub_art_link_list > li .sub_art_link_in .imgbox img {transition: all 0.3s ease; max-width: 100%;}
.sub_art_link_list > li .sub_art_link_in .txtbox {padding: 0 30px; flex: 1; padding-right: 0 !important;}
.sub_art_link_list > li .sub_art_link_in .txtbox h5 {margin-bottom: 5px;}


.sub_art_certi_list {gap: 50px 30px;}
.sub_art_certi_item {padding: 40px; border-radius: var(--borderR30); display: flex; flex-direction: column;}
.sub_art_certi_item .imgbox {margin-bottom: 20px;}
.sub_art_certi_item .imgbox img {max-width: 100%;}
.sub_art_certi_item .txtbox {flex: 1; display: flex; flex-direction: column;}
.sub_art_certi_item .txtbox_head {display: flex; flex-direction: column; align-items: center; gap: 5px; width: 100%; flex: 1;}
.sub_art_certi_item .txtbox_tail {display: flex; flex-direction: column; align-items: center; gap: 8px; justify-content: flex-end; padding-top: 20px; margin-top: 20px; border-top: 1px dashed var(--border);}
.sub_art_certi_item .txtbox_tail .fs14 {padding: 2px 15px; border-radius: 9999px; background: var(--main);}


.added_txt_bottom {margin-top: 30px; padding-top: 30px; border-top: 1px dashed var(--border);}
.added_txt_bottom dl {display: flex; align-items: flex-start; gap: 15px;}
.added_txt_bottom dt {padding: 2px 15px; background: #8D91A1; border-radius: 9999px; text-align: center; flex-shrink: 0;}


.bg_txt_list {gap: 30px 10px;}
.bg_txt_item {position: relative; border-radius: var(--borderR30); overflow: hidden;}
.bg_txt_item .bg_txt_item_bg {position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-position: center; background-size: cover; background-repeat: no-repeat;}

.bg_txt_item .bg_txt_item_in {position: relative; z-index: 2; padding: 50px 55px; display: flex; flex-direction: column; gap: 15px;}
.bg_txt_item .dot_list li {color: rgba(255, 255, 255, 0.7);}
.bg_txt_item .dot_list li::before {background: var(--sub);}


/* 사업개요 (Overview) */
.overview_box {padding: 50px; border-radius: var(--borderR30); position: relative; padding-right: 500px;}

.overview_box p.fs28 {margin: 0 0 20px;}
.overview_box p.fs28 b {color: var(--main); letter-spacing: inherit; line-height: inherit; font-weight: inherit;}
.overview_box .overview_box_body {display: flex; flex-direction: column; gap: 20px;}
.overview_box .overview_box_list {display: flex; flex-direction: column; gap: 4px;}

.overview_box .imgbox {position: absolute; right: 60px; top: 50%; transform: translateY(-50%); width: 40%; max-width: 447px;}
.overview_box .imgbox img {width: 100%;}

/* 테이블 스타일 */
.sub_table_wrap:has(.responsive-dim) {position: relative; overflow-x: auto;}

.sub_table {width: 100%; border-collapse: separate; border-spacing: 0; text-align: center;}

.sub_table thead th {background: var(--main); border-right: 1px solid rgba(255, 255, 255, 0.15);}
.sub_table thead th.blueGray {background: #8D91A1;}
.sub_table td {border: 1px solid var(--border); border-top: 0; border-left: 0;}

.sub_table th,
.sub_table td {padding: 15px 18px;}

.sub_table thead tr:first-child th:first-child {border-radius: var(--borderR30) 0 0 0;}
.sub_table thead tr:first-child th:last-child {border-radius: 0 var(--borderR30) 0 0;}
.sub_table tbody tr:last-child td:first-child {border-radius: 0 0 0 var(--borderR30);}
.sub_table tbody tr:last-child td:last-child {border-radius: 0 0 var(--borderR30) 0;}
.sub_table tbody th:first-child,
.sub_table tbody td:first-child {border-left: 1px solid var(--border);}

.table_info_top {margin-bottom: 20px;}
.table_info_bottom {margin-top: 20px;}

.table_info_top_small {margin-bottom: 10px;}
.table_info_bottom_small {margin-top: 10px;}

.table_info_top_large {margin-bottom: 30px;}
.table_info_bottom_large {margin-top: 30px;}

/* Responsive-dim */
.responsive-dim{position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0,0,0,.6);z-index: 100; display:none;}
.responsive-dim .stock-scroll-drag-guide{position: absolute;top: 50%; left: 0;right: 0; text-align: center; transform: translate(0,-50%);}

.stock-scroll-drag-guide {display:flex; justify-content:center;}
.stock-scroll-drag-guide .stock-scroll-drag-inner { position: relative; width:50px; height: 50px; }
.stock-scroll-drag-guide .stock-scroll-drag-inner:before { position:absolute; top:4px; right:0; width:100%; height:3px; background-color:rgba(255,255,255,0.5); content:""; border-radius:5px;}
.stock-scroll-drag-guide .drag-tail { position: absolute; z-index: 1; left: 0px; top: 3px; animation:stock-drag-hand 3s both infinite; }
.stock-scroll-drag-guide .drag-tail .tail{display:block; width: 25px; height: 5px; background-color:#fff; border-radius:5px; opacity:1; }
.stock-scroll-drag-guide .drag-tail .hand-icon{margin-top: 5px; display: block;}
@keyframes stock-drag-hand {
    0% {
        left: 0;
        margin-left: 0px;
        transform: rotate(0deg);
    }
    10% {
        left: 0;
        margin-left: 0px;
        transform: rotate(0deg);
    }
    50% {
        left: 100%;
        margin-left: -25px;
    }
    100% {
        left: 0;
        margin-left: 0px;
    }
}


/*******************************************************************************
    @media 1770px
*******************************************************************************/
@media all and (max-width:1770px){
/* 사업개요 (Overview) */
.overview_box {padding-right: calc(40% + 100px);}
.overview_box br {display: none;}

/* 서브 FAQ */
#faq .faq_list li br {display: none;}

/* 아티클 공통 스타일 */
.border_txt_box br {display: none;}

.fs20 br {display: none;}
.fs18 br {display: none;}
.fs16 br {display: none;}

/* 테이블 스타일 */
.table_info_top br,
.table_info_bottom br {display: none;}

.table_info_top_small br,
.table_info_bottom_small br {display: none;}
}
/*******************************************************************************
    @media 1500px
*******************************************************************************/
@media all and (max-width:1500px){
/* Page_lnb */
.page_lnb.is-fixed .page_lnb_tit {width: 250px;}

/* 아티클 공통 */
.bg_txt_item .bg_txt_item_in {padding: 40px 45px;}

/* 사업개요 (Overview) */
.overview_box {padding-right: calc(35% + 100px);}
.overview_box .imgbox {top: 50px; transform: translateY(0); width: 35%; right: 50px;}
}
/*******************************************************************************
    @media 1300px
*******************************************************************************/
@media all and (max-width:1300px){
/* Visual */
#visual {height: 550px;}
#visual .v_txt {padding: 30px 0 0;}
#visual .v_txt h2 {padding: 8px 0 15px;}
#visual .visual_lnb {bottom: 40px; gap: 15px;}
#visual .visual_lnb .visual_tab li a {min-width: 96px; height: 40px; padding: 0 12px;}
#visual .visual_lnb dl dt {padding: 0 15px 0 0;}
#visual .visual_lnb dl dt a {width: 18px; height: 18px;}
#visual .visual_lnb dl dd {padding: 0 15px;}
#visual .visual_lnb dl dd .txt {padding: 0 24px 0 0;}
#visual .visual_lnb dl dd .txt:after {font-size: 16px;}

/* page_lnb / sub_art */
.page_lnb .page_lnb_in {flex-wrap: wrap;}
.page_lnb.is-fixed .page_lnb_tabs {flex: auto !important; max-width: calc(100% - 130px) !important;}
.page_lnb.is-fixed .page_lnb_tit {width: 100%;}
.sub_art_tit{flex-basis:280px; max-width:280px;}
.sub_art_tit br {display: none;}
.page_lnb .page_lnb_contact {padding: 10px 20px; min-width: 130px}



/* 사업개요 (Overview) */
.overview_box {padding: 40px !important;}
.overview_box .imgbox {position: static; width: 60%; display: flex; justify-content: flex-end; margin:0 auto 50px;}

/* 아티클 공통 스타일 */
.border_txt_box {padding: 30px}

.icon_flexbox_item {align-items: flex-start; padding: 20px;}
.icon_flexbox_item .iconbox {width: 80px;}
.icon_flexbox.icon_flexbox_count_list .icon_flexbox_item::before {top: 10px; left: 10px;}

.sub_art_img_list {gap: 30px 20px;}
.sub_art_img_list.grid3 {grid-template-columns: repeat(2,1fr);}
.sub_art_img_list_item .txtbox {padding: 20px;}

.sub_art_link_list > li a {padding: 20px;}
.sub_art_link_list > li a .imgbox {width: 80px;}

.sub_art_link_list > li .sub_art_link_in {padding: 20px;}
.sub_art_link_list > li .sub_art_link_in .imgbox {width: 80px;}

.sub_art_certi_list {gap: 30px 20px;}
.sub_art_certi_item {padding: 25px;}

.borderbox_flex {flex-direction: column;}
.borderbox_flex .img_area {width: 100%; max-width: 100%; flex-direction: row; justify-content: space-between;}
.borderbox_flex .img_box {flex: 1; max-width: 300px;}
.borderbox_flex .img_area img {width: 100%;}

.added_txt_bottom {margin-top: 20px; padding-top: 20px;}

.icon_flexbox_item.align_center:has(.dot_list) {align-items: flex-start;}

.bg_txt_item .bg_txt_item_in {padding: 30px 35px;}
}
/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){
/* Visual */
#visual {height: auto; min-height: 420px; display: flex; align-items: center; justify-content: center;}
#visual:has(.visual_tab) {min-height: 500px;}

#visual .v_txt h2 {padding: 5px 0 12px;}
#visual .v_txt p.subtit {margin-bottom: 3px;}
#visual .visual_in {position: static; transform: none; padding: 100px 0;}
#visual .visual_lnb {flex-direction: column; align-items: stretch; bottom: 20px;}
#visual .visual_lnb .visual_tab {width: 100%; gap: 4px;}
#visual .visual_lnb .visual_tab li {flex: 1; min-width: 0;}
#visual .visual_lnb .visual_tab li a {min-width: 0; width: 100%; height: 38px; padding: 0 10px;}
#visual .visual_lnb dl {margin-left: 0; width: 100%; justify-content: flex-end;}
#visual .visual_lnb dl dt {padding: 0 12px 0 0;}
#visual .visual_lnb dl dt a {width: 16px; height: 16px;}
#visual .visual_lnb dl dd {padding: 0 12px;}
#visual .visual_lnb dl dd:before {height: 12px;}
#visual .visual_lnb dl dd .txt {padding: 0 22px 0 0;}
#visual .visual_lnb dl dd .txt:after {font-size: 15px;}
#visual .visual_lnb dl dd .dlst {padding: 12px 15px;}
#visual .visual_lnb dl dd .dlst ul li a {font-size: 13px;}

#visual.visual_view {padding: 100px 0 40px;}

/* page_lnb / sub_art */
.page_wrap {padding-top: 60px;}
.page_lnb .page_lnb_tabs{height:auto;}
.page_lnb .page_lnb_tabs .swiper-slide a{padding:12px 10px;}
.page_lnb.is-fixed{height:auto; padding:10px 0;}
.page_lnb.is-fixed.under-header{top:var(--header-fixed-h, 90px);}
.page_lnb.is-fixed .page_lnb_in{height:auto; flex-wrap:wrap; gap:10px 20px;}
.page_lnb.is-fixed .page_lnb_tabs {max-width: calc(100% - 140px) !important;}
.page_lnb.is-fixed .page_lnb_tabs .swiper-slide a{padding:10px 12px;}
.page_lnb.is-fixed .page_lnb_tit {width: 100%;}
.page_lnb .page_lnb_contact {min-width: initial; padding: 10px 0; width: 120px; text-align: center;}
.sub_sec{padding:60px 0 0;}
.sub_art{flex-direction:column; gap:20px;}
.sub_art_tit{position:static; flex:none; max-width:none; width:100%; top:auto;}
.sub_art_cont {flex: initial; width: 100%;}
.sub_art_tit .eng_tit{margin:0 0 6px;}

/* 공통 */
.contents_in {margin-bottom: 120px;}

/* 개인정보처리방침 */
.policy_cont p.cont_tit {font-size:1.2em !important; padding-bottom:5px;}
.policy_cont .cont_txt {padding:0px 0px 25px 0; }
.policy_cont .cont_txt2 {padding-bottom:25px;}
.policy_cont .cont_box {padding:18px 18px; }

.privacy_list {margin-bottom:30px;}
.privacy_list li {width:100%;  }

/* 사업개요 (Overview) */

.overview_box {padding: 30px !important;}
.overview_box p.fs28 {margin-bottom: 15px;}
.overview_box .overview_box_body {gap: 15px;}
.overview_box .imgbox {width: 60% !important; margin: 0 auto 50px;}

/* 아티클 공통 스타일 */
.border_txt_box {padding: 20px 25px;}
.sub_art_item + .sub_art_item {margin-top: 40px;}
.sub_art_article h4 {margin-bottom: 10px;}

.sub_art_article_header {margin-bottom: 10px;}
.sub_art_article_header h4 {margin-bottom: 0px;}

.icon_flexbox_item {padding: 15px;}
.icon_flexbox_item .iconbox {width: 70px;}

.icon_flexbox_item.icon_flexbox_item_empty::after {width: 120px;}

.icon_flexbox.icon_flexbox_count_list .icon_flexbox_item::before {font-size: 13px; width: 24px; top: 7px; left: 7px;}

.sub_art_img_list {gap: 20px 10px;}

.sub_art_link_list > li a .txtbox {padding: 0 20px;}
.sub_art_link_list > li a .iconbox::before {font-size: 22px;}
.sub_art_link_list > li a .iconbox::after {font-size: 22px;}

.sub_art_link_list > li .sub_art_link_in .txtbox {padding: 0 20px;}

.sub_art_certi_list {gap: 20px 10px;}
.sub_art_certi_item {padding: 20px;}
.sub_art_certi_item .imgbox {margin-bottom: 10px;}
.sub_art_certi_item .imgbox img {width: 110px;}
.sub_art_certi_item .txtbox_head {gap: 2px;}
.sub_art_certi_item .txtbox_tail {gap: 5px; padding-top: 15px; margin-top: 15px;}

.borderbox_flex {gap: 30px; padding: 25px;}
.borderbox_flex .img_area {gap: 10px;}

.added_txt_bottom {padding-top: 15px; margin-top: 15px;}

.bg_txt_list {gap: 20px 10px;}
.bg_txt_item .bg_txt_item_in {padding: 25px 30px; gap: 10px;}

/* dot_list */
.dot_list li::before {top: 9px;}
.dot_list li.fs18::before {top: 11px;}

/* 테이블 스타일 */
.table_info_top {margin-bottom: 10px;}
.table_info_bottom {margin-top: 10px;}

.table_info_top_small {margin-bottom: 5px;}
.table_info_bottom_small {margin-top: 5px;}

.table_info_top_large {margin-bottom: 20px;}
.table_info_bottom_large {margin-top: 20px;}


.sub_table th,
.sub_table td {padding: 12px 15px;}

/* 서브 FAQ */
#faq .faq_list dl dt {padding: 15px 20px; padding-right: 50px;}
#faq .faq_list dl dt::before {margin-top: -1px; font-size: 14px;}

#faq .faq_list dl dd {padding: 18px 20px;}
#faq .faq_list dl dd::before {font-size: 14px;}
}
/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){
/* Visual */
#visual {min-height: 330px;}
#visual:has(.visual_tab) {min-height: 400px;}
#visual .v_txt h2 {padding: 4px 0 10px;}

#visual.visual_view {margin: 90px 0 0; padding: 0; min-height: initial;}

#visual .visual_lnb dl {display: none;}

/* 모바일 lnb */
.mobile_snb {display:block;}
.mobile_snb .tbox{display:flex;}
.mobile_snb .tbox .box{width:50%; box-sizing:border-box;}
.mobile_snb .tbox .box .dropLst{position: relative;}
.mobile_snb .tbox .box .dropLst .title{display:block; font-size:1rem; font-weight: 700; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; padding:0 40px 0 10%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; position: relative;}
.mobile_snb .tbox .box .dropLst .title:after{content:'\e5cf'; font-family: var(--icon); font-weight: 400; font-style: normal; font-size: 20px; line-height: 1; color: var(--white); display: flex; align-items: center; justify-content: center; position: absolute; right: 10%; top: 50%; transform: translateY(-50%); transition: transform .3s linear;}
.mobile_snb .tbox .box.dep1 .dropLst .title:after{color: var(--main);}
.mobile_snb .tbox .box.dep1 .dropLst .title{background:var(--white); color:var(--main);}
.mobile_snb .tbox .box.dep2 .dropLst .title{background:var(--main); color:var(--white);}
.mobile_snb .tbox .box .dropLst .title.on:after{transform: translateY(-50%) rotate(180deg);}
.mobile_snb .tbox .box .dropLst .dlst{display:none; position: absolute; left: 0; top:50px; width: 200%; background:var(--white); z-index: 99999; box-shadow:0 20px 20px rgba(0,0,0,.05);}
.mobile_snb .tbox .box.dep2 .dropLst .dlst{left: -100%;}
.mobile_snb .tbox .box .dropLst .dlst ul li a{display: block; padding: 0 5%; font-size:1rem; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.mobile_snb .tbox .box .dropLst .dlst ul li a.on{background:var(--main); color:var(--white);}

.search_none .mobile_snb{display: none;}


/*** 공통 css ***/
.contents_in {margin-bottom: 60px;}
.page_wrap {padding-top: 30px;}
.sub_sec{padding:40px 0 0;}

/* Page_lnb */


.page_lnb.is-fixed .page_lnb_tit {display: none;}
.page_lnb.is-fixed .page_lnb_tabs{flex: initial; width: 100%; max-width: 100% !important;}
.page_lnb.is-fixed .page_lnb_tabs .swiper-slide a {font-size: 1rem;}
.page_lnb.is-fixed .page_lnb_btn {display: none;}


/* 사업개요 (Overview) */
.overview_box .imgbox {margin-bottom: 35px !important;}
.overview_box {padding: 20px !important;}
.overview_box p.fs28 {margin-bottom: 10px;}
.overview_box .overview_box_body {gap: 10px;}
.overview_box .overview_box_list {gap: 2px;} 

/* 아티클 공통 스타일 */
.sub_art_item + .sub_art_item {margin-top: 25px;}
.border_txt_box {padding: 15px 20px;}

.icon_flexbox_item {flex-direction: column; align-items: center; text-align: center;}
.icon_flexbox_item .iconbox {width: 100%; justify-content: center;}
.icon_flexbox_item .iconbox img {width: auto; max-width: 70px;}
.icon_flexbox_item.icon_flexbox_item_empty::after {width: 100px;}
.icon_flexbox_item .txtbox {gap: 2px;}

.icon_flexbox_item:has(.dot_list) {text-align: left;}

.icon_flexbox.icon_flexbox_count_list .icon_flexbox_item::before {font-size: 11px; width: 22px;}

.sub_art_img_list_item .txtbox {padding: 15px; gap: 5px;}

.sub_art_link_list > li a {padding: 15px;}

.sub_art_link_list > li .sub_art_link_in {padding: 15px;}

.table_info_top_large {margin-bottom: 15px;}
.table_info_bottom_large {margin-top: 15px;}

.sub_art_certi_item {padding: 15px;}
.sub_art_certi_item .txtbox_tail {padding-top: 10px; margin-top: 10px;}
.sub_art_certi_item .txtbox_tail .fs14 {padding: 2px 10px;}

.borderbox_flex {padding: 20px; gap: 20px;}

.added_txt_bottom dt {padding: 2px 10px;}

.bg_txt_list {gap: 10px;}
.bg_txt_list.grid2 {grid-template-columns: 1fr;}
.bg_txt_item .bg_txt_item_in {padding: 15px 20px; gap: 7px;}

/* dot_list */
.dot_list_top.fs18 {margin-bottom: 3px;}

.dot_list {gap: 2px;}
.dot_list:has(li.fs18) {gap: 3px;}
.dot_list li.fs18::before {top: 10px;}
.dot_list li::before {top: 8px;}

.dot_list.grid {grid-template-columns: 1fr; gap: 3px;}

/* 테이블 스타일 */
.sub_table th,
.sub_table td {padding: 10px;}

.sub_table_wrap_responsive .responsive-dim.show {display: block;}
.sub_table_wrap_responsive .sub_table {width: 680px;}

/* 서브 FAQ */
#faq .faq_list dl dt {padding: 15px; padding-right: 45px; gap: 10px;}
#faq .faq_list dl dd {padding: 15px; gap: 8px;}

#faq .faq_list dl dt::before {font-size: 13px;}
#faq .faq_list dl dd::before {font-size: 13px;}
}
/*******************************************************************************
    @media ~480px               
*******************************************************************************/
@media all and (max-width:480px){
/* 아티클 공통 스타일 */
.icon_flexbox {grid-template-columns: repeat(1, 1fr);}
.icon_flexbox_item {border-right: 0;}
.icon_flexbox_item.icon_flexbox_item_empty {display: none;}

.sub_art_img_list {gap: 10px; grid-template-columns: 1fr !important;}

.sub_art_link_list > li a {flex-wrap: wrap; align-items: flex-end;}
.sub_art_link_list > li a .imgbox {margin-bottom: 20px; justify-content: center; margin: 0 auto 20px; width: 100%;}
.sub_art_link_list > li a .imgbox img {width: 70px;}
.sub_art_link_list > li a .txtbox {padding: 0; width: 100%; flex: initial; text-align: center;}
.sub_art_link_list > li a .iconbox {margin: 10px auto 0;}
.sub_art_link_list > li a .iconbox::before {font-size: 20px;} 
.sub_art_link_list > li a .iconbox::after {font-size: 20px;}

.sub_art_link_list > li .sub_art_link_in {flex-wrap: wrap; align-items: flex-end;}
.sub_art_link_list > li .sub_art_link_in .imgbox {margin-bottom: 20px; justify-content: center; margin: 0 auto 20px; width: 100%;}
.sub_art_link_list > li .sub_art_link_in .imgbox img {width: 70px;}
.sub_art_link_list > li .sub_art_link_in .txtbox {padding: 0 20px 0 0; width: 100%; flex: initial; text-align: center;}

.sub_art_certi_list {gap: 10px; grid-template-columns: 1fr;}

.borderbox_flex .img_area {flex-direction: column; align-items: center;}
.borderbox_flex .img_area .imgbox {max-width: 250px;}
}
/*******************************************************************************
    @media ~360px
*******************************************************************************/
@media all and (max-width:360px){




}

