.sub_visual{
	
}

.sub_visual_in{height: 60vh; position: relative; text-align: center;
display: flex;
flex-direction: column;
    justify-content: center;
    align-items: center; }
.sub_visual_in p{margin-bottom: 15px; font-size: 18px; color: #fff; word-break: keep-all}
.sub_visual_in h2{font-size: 40px; color: #fff; font-weight: bold}

.sub_visual_in .sub_bg{position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: -1; overflow: hidden}
.sub_visual_in .sub_bg img{width: 100%; height: 100%;object-fit: cover; }


.sub_visual_nav{
	padding: 20px 
}

.sub_visual_nav .deps_nav{display: flex;     justify-content: center;
    align-items: center; flex-wrap: wrap;}

.sub_visual_nav .deps_nav a{padding: 10px 30px; border-bottom: 1px solid #fff; transition-duration: .8s;
color: #111; opacity: .3; font-size: 18px; font-weight: 600}

.sub_visual_nav .deps_nav a:hover,
.sub_visual_nav .deps_nav a.on{border-color: #00539E; opacity: 1; color: #00539E}


.sub_section{padding: 100px 0;}


.sub_only_img{overflow: hidden}
.sub_only_img img{display: block; width: 100%}

.ceo_flex{display: flex; margin-top: 60px;}

.ceo_flex .left{width: 35%}
.ceo_flex .right{width: 65%}

.ceo_flex .left p{margin-bottom: 15px; font-size: 22px; font-weight: 400; word-break: keep-all; line-height: 150%; }
.ceo_flex .left h2{color: #00539E; font-size: 30px; font-weight: 700; line-height: 140%; word-break: keep-all}

.ceo_flex .right .tag{display: flex; gap:10px;     flex-wrap: wrap;}
.ceo_flex .right .tag p{padding: 14px 20px; font-size: 16px; word-break: keep-all;
border-radius: 50px; border: 1px solid #00539E; color: #00539E}

.ceo_flex .right .txt{}
.ceo_flex .right .txt p + p{margin-top: 30px}
.ceo_flex .right .txt p{color: #222; line-height: 150%; font-weight: 500; word-break: keep-all; font-size: 18px}
.ceo_flex .right .txt p b{font-weight: 700}



.sub_title{margin-bottom: 50px}
.sub_title h2{font-size: 30px; color: #000; font-weight: 700; line-height: 150%; word-break: keep-all}
.sub_title h2 b{color: #00539E; font-weight: 700}



.partner_flex{display: flex; gap:40px 20px; flex-wrap: wrap;}
.partner_flex li{width: calc(25% - 15px); text-align: center}
.partner_flex li .thum{
	border: 1px solid #DDD;
background: #FFF; 
display: flex;
aspect-ratio: 4 / 2;
 justify-content: center;
    align-items: center;
}


.partner_flex li p{font-size: 18px; color: #111; margin-top: 20px; word-break: keep-all}

.location{}
.location .map{overflow: hidden}
.location .map iframe{display: block; width: 100%}
.location .txt{position: relative; margin-top: 30px;}
.location .txt h3{font-size: 30px; color: #222; font-weight: 700; word-break: keep-all; line-height: 150%}
.location .txt ul{display: flex; gap:10px 30px; margin-top: 20px;}
.location .txt li{font-size: 18px; color: #111;}

.location .txt .sns_link{display: flex; gap:15px; position: absolute; right: 0; top: 0}
.location .txt .sns_link a{width: 120px; height: 120px; text-align: center; display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; gap:15px; transition-duration: .8s}
.location .txt .sns_link a span{font-size: 16px; word-break: keep-all}

.location .txt .sns_link a:hover{box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.10);}

.location .txt .sns_link a:first-child{background: #F7E111; color: #111}
.location .txt .sns_link a:last-child{background: #02E065; color: #fff}




.product_detail_slide_are{overflow: hidden}
.product_detail_slide .slick-list{padding: 0 8rem}
.product_detail_slide .slick-slide{padding: 0 10px}
.product_detail_slide .slick-slide img{width: 100%; display: block}


.product_flex{margin-top: 50px; display: flex; }
.product_flex .left{width: 40%}
.product_flex .left h2{font-size: 30px; color: #111; word-break: keep-all; line-height: 150%}
.product_flex .left .more_view{margin-top: 40px;}
.product_flex .right{width: 60%}

.product_flex .right .box{padding: 20px 30px; background: #FAFAFA;}
.product_flex .right .box p{font-size: 20px; word-break: keep-all; font-weight: 500; color: #111; line-height: 150%}

.product_flex .right .box p + p{margin-top: 24px}

.product_flex .right .box + ul{margin-top: 24px;}

.product_flex .right li + li{margin-top: 24px}
.product_flex .right li h4{color: #111; font-size: 20px; font-weight: 700; line-height: 150%; word-break: keep-all}
.product_flex .right li p{color: #111;font-size: 18px; line-height: 150%; word-break: keep-all}
.product_flex .right li h4 + p{margin-top: 12px;}

.product_flex .right li p.small{color: #9E9E9E;; font-size: 16px;}
.product_flex .right li p + p.small{margin-top: 8px}









.inquiry_flex{display: flex;}
.form_in_title{width: 40%}
.form_in_title h2{font-size: 30px; font-weight: 700; word-break: keep-all; line-height: 150%}
.form_in_title p{margin-top: 20px; font-size: 16px; line-height: 140%; word-break: keep-all}

.form_in{flex:1}


.form_in ul{display: flex; gap:50px 40px;flex-wrap: wrap;}
.form_in ul li{width: calc(50% - 20px)}
.form_in ul li.w100{width: 100%}

.form_in ul li label{display: block; margin-bottom: 10px;color: #111; font-size: 16px}
.form_in ul li label span{color: #00539E}


.form_in ul li input[type="text"],
.form_in ul li input[type="email"],
.form_in ul li select{width: 100%;
border-radius: 0px;
border: 1px solid #ddd;
background: #fff; flex:1 ;height: 60px; padding: 0 20px; font-size: 18px; color: #222;
word-break: keep-all}

.form_in *::placeholder{color: #999}

.flex_input{display: flex; gap: 20px;     align-items: center}
.flex_input span{font-size: 16px; color: #999}

.form_in ul li textarea{width: 100%;
border-radius: 0px;
border: 1px solid #ddd;
background: #fff; flex:1 ;height: 300px; padding: 15px 20px; font-size: 18px; color: #222;
word-break: keep-all}

.file_are{display: flex; gap: 15px;}
.file_are button{
	border-radius: 5px;
border: 1px solid rgba(255, 255, 255, 0.10);
background: #1B1B1B;
height: 60px; word-break: keep-all; color: #fff; font-size: 18px;
padding: 0 25px;
min-width: 180px; text-align: center
}

.ck_agree{margin-top: 30px;display: flex; gap:15px;     align-items: center;}
.ck_agree p{font-size: 18px; color: #222; word-break: keep-all}
.ck_agree p a{color: #00539E; text-decoration: underline}


.form_in_btn{text-align: left; margin-top: 60px;}






/*board*/



.board_notice{}
.board_notice li{position: relative}
.board_notice li + li{margin-top: 20px}
.board_notice li .box{padding: 50px; display: flex; 
border: 1px solid #DDD;
background: #FFF; transition-duration: .8s;
justify-content: space-between;
    align-items: center; }
.board_notice li .box .thum{width: 350px; overflow: hidden}
.board_notice li .box .thum img{width: 100%; height: 100%;object-fit: cover;
    aspect-ratio: 35 / 20 ;}

.board_notice li .box:hover{
	background: #0C3263;
}

.board_notice li .box .notice_txt *{transition-duration: .8s}

.board_notice li .box .notice_txt{flex:1}
.board_notice li .box .notice_txt h3{color: #00539E; font-size: 24px; font-weight: 700; word-break: keep-all;
word-break: keep-all;
display: -webkit-box;
  -webkit-line-clamp: 1; /* 줄 수를 2줄로 제한 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }
.board_notice li .box .notice_txt p{font-size: 18px; color: #111; word-break: keep-all; line-height: 150%;
 margin-top: 15px;
 word-break: keep-all;
display: -webkit-box;
  -webkit-line-clamp: 2; /* 줄 수를 2줄로 제한 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }
.board_notice li .box .notice_txt p.list_date{margin-top: 30px; font-size: 16px; opacity: .5}



.board_notice li .box:hover .notice_txt h3,
.board_notice li .box:hover .notice_txt p{color: #fff}

.board_common_btn_list{margin-top: 80px}
.board_common_btn_list ul{display: flex; gap:10px;align-items: center;
    justify-content: flex-end;}
.board_common_btn_list a, .board_common_btn_list button{border: 1px solid #ddd; border-radius: 5px; background: #fff; font-size: 16px; 
padding: 0 15px; height: 40px; line-height: 40px; color: #333; display: inline-block; text-align: center}

.board_top_flex{display: flex; justify-content: space-between;
    align-items: flex-start; margin-bottom: 30px}

.total_board{}
.total_board p{font-size: 16px; color: #000000}
.total_board p b{font-weight: bold; color: #00539E}

.search_board form{display: flex; gap:10px}
.search_board form select{background: #F8F8F8 url(../img/sub/drop_search.png); 
background-position: 90% center; background-repeat: no-repeat; background-size: 13px auto;
border-radius: 5px; padding: 0 20px; font-size: 15px; color: #666; height: 60px; line-height: 60px; border: 0;
-o-appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; position: relative}

.search_board form select::-ms-expand{ 
	display: none;
}

.search_board .sch_bar{background: #F8F8F8; border-radius: 5px; display: flex; overflow: hidden}
.search_board .sch_bar input{font-size: 15px; padding: 0 20px; line-height: 60px; border: 0; background: #F8F8F8}
.search_board .sch_bar button{padding: 0 20px; border: 0; background: #F8F8F8}


.board_tlb table{width: 100%; border-top:1px solid rgba(255, 255, 255, 0.20); border-spacing: 0 }

.board_tlb table th{font-size:18px; padding:35px 15px; border-bottom: 1px solid rgba(255, 255, 255, 0.20);
 font-weight: 500; color: #fff ;
background: #1B1B1B}

.board_tlb table td{font-size:18px; padding:35px 15px; border-bottom: 1px solid rgba(255, 255, 255, 0.20); font-weight: 500; color: #fff }
.board_tlb table td a{color: #fff}
.board_tlb table td.empty_table{font-size: 1em;padding: 20px 0 !important;
    color: #666;
    text-align: center;}

.board_tlb table td.num{text-align: center; width: 80px; font-size: 15px; color: #fff}
.board_tlb table td.num .notice_icon{color: #fff}

.board_tlb table td.date{width: 160px; text-align: center; font-weight: 400 }
.board_tlb table td.date p{font-size: 16px; color: #999; text-align: center;}
.board_tlb table td.down{text-align: center; width: 170px; font-size: 15px; color: #999}
.board_tlb table td a.flexa{display: flex; gap:10px}
.board_tlb table td .point{font-size: 14px; background:#FF8A00 ; padding:5px 10px ; border-radius: 3px; color: #fff}
.board_tlb table td.file,
.board_tlb table td.ofc{text-align: center; width: 160px; text-align: center}




.board_tlb .down_load{}

.board_tlb .down_load{display: inline-flex; gap:10px; justify-content: center;
    align-items: center; font-size: 16px; color: #fff; background: #18459D; padding: 15px 25px 15px 15px; border-radius: 100px}
.board_tlb .down_load i{background: #fff; width: 30px; height: 30px; display: flex; justify-content: center;
    align-items: center; border-radius: 30px}




.board_detail_content{border-top: 1px solid #ddd; padding-top: 0px; border-bottom: 1px solid #D9D9D9;
padding-top: 40px}
.board_view_btn{text-align: center; margin-top: 100px}



.gall_list_style{display: flex; gap:40px 20px;    flex-wrap: wrap;}
.gall_list_style li{width: calc(25% - 15px)}
.gall_list_style li.empty_list{width: 100%}

.gall_list_style .gall_img{overflow: hidden; border-radius: 0px; 
transition-duration: .8s; border: 1px solid #ddd; position: relative}

.gall_list_style .gall_img i{
	border-radius: 50px;
background: rgba(255, 255, 255, 0.50);
width: 100px; height: 100px;display: flex;
justify-content: center;
align-items: center;
position: absolute; left: 50%; top: 50%;
z-index: 2;
transform: translate(-50%, -50%);
transition-duration: .8s; opacity: 0
}
.gall_list_style .gall_img:hover i{opacity: 1}

.gall_list_style .gall_img img{width: 100%; height: 100%;object-fit: cover;
    aspect-ratio: 1;}
    
.gall_list_style .gall_img i img{width: auto; height: auto; ;object-fit: contain;}    
    
.gall_list_style.certifications .gall_img{border: 1px solid #ddd}    
.gall_list_style.certifications .gall_img img{aspect-ratio: 21 / 29;}
    
.gall_list_style.certifications li{width: calc(12.5% - 17.5px)}
    
    
    
    
    
.board_list_txt{margin-top: 20px; text-align: left}
.board_list_txt p{font-size: 16px; color: #111; margin-top: 20px;
word-break: keep-all;
display: -webkit-box;
  -webkit-line-clamp: 2; /* 줄 수를 2줄로 제한 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; opacity: .4 }  
.board_list_txt h3{color: #111; font-size: 18px; font-weight: bold;
word-break: keep-all;
display: -webkit-box;
  -webkit-line-clamp: 1; /* 줄 수를 2줄로 제한 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; transition-duration: .8s}    



.gall_list_style li:hover .gall_img{box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.10);}



.gall_list_style.certifications .board_list_txt{text-align: center}
    
.if_video_are{max-width: 1024px; margin: 0 auto 50px}   
    
.board_detail_content .video-container {
  position:relative;
  height:0;
  padding-bottom:56.25%;
  overflow: hidden; border-radius: 5px
}

.board_detail_content .video-container iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

#bo_v_file{border-top: 1px solid #ddd}

#bo_v_file li{padding: 25px 0; border: 0;border:0; border-top: 0px solid #ddd;  box-shadow: none;
border-radius: 0}
#bo_v_file li a{display: flex; gap:20px; font-size: 16px; color: #444}

#bo_v_file li i{float: none; margin: 0}
#bo_v_file li i img{margin: 0}

#bo_v_file li a strong{font-weight: 400}


.board_title{margin-bottom: 60px; text-align: left}
.board_title h2{font-size: 24px; font-weight: 900; color: #111}
.board_title ul{margin-top: 20px; display: flex; gap:20px}
.board_title ul li{font-size: 16px; color: #111; word-break: keep-all}
.board_title ul li span{opacity: .6; margin-left: 5px}



.contact_view{}
.contact_view li{font-size: 18px;}
.contact_view li + li{margin-top: 10px}

.contact_content *,
.contact_content{font-size: 18px; line-height: 150%; word-break: keep-all; }

#bo_v_con,
#bo_v_con *{color: #333; font-size: 16px; line-height: 150%; word-break: keep-all}


#bo_cate {margin:0px 0 60px}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1; display: flex; gap:10px;     justify-content: center;}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px}
#bo_cate a {display:block;line-height:140%;padding:14px 20px;
border-radius:50px;border:1px solid #00539E;color:#00539E; 
font-size: 16px; transition-duration: .5s}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {text-decoration:none;background:#00539E;color:#fff}
#bo_cate #bo_cate_on {z-index:2;background:#00539E;color:#fff;font-weight:bold;}



.more_product{margin-top: 80px; text-align: center}




#faq_wrap {margin:0; border-top: 2px solid #fff}
#faq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.faq_admin {text-align:right}
#faq_wrap ol {margin:0;padding:0;list-style:none}
#faq_wrap li {border-bottom:1px solid rgba(255, 255, 255, 0.20);;background:#111;position:relative; transition-duration: .5s}
#faq_wrap li:first-child {border-top:1px solid #ececec}
#faq_wrap li h3 {min-height:80px;padding:35px;padding-left:70px;position:relative; font-size: 18px; color: #fff;word-break:keep-all; line-height: 150%}
#faq_wrap li h3 a{color: #fff}
#faq_wrap li h3 .tit_btn {position:absolute;right:10px;top:30px;border:0;width:37px;height:37px;background:#111;color:#fff;font-size:18px}

#faq_wrap li h3 .tit_bg {display:inline-block;position:absolute;top:30px;left:10px;text-align:center;
width:37px;height:37px;background:#1936B2;color:#fff;font-size:18px; line-height: 37px}


#faq_wrap li h3 .tit_btn img{transition-duration: .8s;transform: rotate(180deg);}

#faq_wrap li h3.faq_li_open .tit_btn img{transform: rotate(0deg);}

#faq_con .con_inner {display:none;
padding: 30px 70px;
border-radius: 10px;
background: #1B1B1B;
}


#faq_con .con_inner,
#faq_con .con_inner *{color: #fff; font-size: 16px; word-break: keep-all; line-height: 150%}

#faq_wrap li:has(.faq_li_open) {
  border-bottom: 0
}



.view_more_r{padding: 17px 30px; color: #fff; font-size:18px; word-break: keep-all; border-radius: 90px; background: #00539E; border: 0 }










/* ✅ 이미지 팝업 모달 기본 스타일 */
.thumb-modal { position: fixed; inset: 0; z-index: 10000; left: 0; top: 0; width: 100%; height: 100%;}
.thumb-modal__backdrop {
  position: absolute; inset: 0; background: rgba(0,0,0,0.6);
}
.thumb-modal__dialog {
  position: relative; max-width: 90vw; max-height: 90vh;
  display: flex; flex-direction: column; align-items: center;
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%);
}
.thumb-modal__dialog img {
  max-width: 86vw; max-height: 72vh; display: block;
}
.thumb-modal__caption {
  margin-top: 8px; color: #fff; font-size: 14px; text-align: center; word-break: keep-all;
}
.thumb-modal__close {
  position: absolute; top: 6px; right: 8px; width: 36px; height: 36px; line-height: 34px;
  border: 0; border-radius: 50%; background: rgba(0,0,0,0.15); color: #fff; font-size: 22px; cursor: pointer;
}










