@charset "utf-8";
/* *******************************************************
 * filename : layout_responsive.css
 * description : 전체 레이아웃 반응형 CSS
 * date : 2019-09-03
******************************************************** */

/* ****************** 공통클래스 ********************** */
@media all and (max-width:1520px){
	.area-box{padding:0 15px;}
}
@media all and (max-width:1320px){
	.area{padding:0 15px;}
}
/* ****************** HEADER ********************** */
@media all and (max-width:1536px){
	#gnb .gnb-wrapper > ul > li > a{font-size: 17px;}
	#gnb .gnb-wrapper > ul > li > a > span{padding: 0 20px;}
	#gnb .gnb-wrapper > ul > li:last-child > a {padding-right: 40px;}
	#gnb .gnb-wrapper > ul > li .gnb-2dep ul li {padding: 0 40px;}
	#gnb .gnb-wrapper > ul > li .gnb-2dep ul li a{font-size: 16px;}
}
@media all and ( max-width: 1366px ){
	/* -------- Header :: Layout -------- */
	#headerInner{padding:0 15px; width: calc(100% - 30px);}
	/* -------- Header :: GNB(PC) -------- */
	#gnb .gnb-wrapper > ul > li > a{font-size: 16px;}
	#gnb .gnb-wrapper > ul > li > a > span{padding: 0 15px;}
	#gnb .gnb-wrapper > ul > li:last-child > a {padding-right: 30px;}
	#gnb .gnb-wrapper > ul > li .gnb-2dep ul li {padding: 0 30px;}
	#gnb .gnb-wrapper > ul > li .gnb-2dep ul li a{font-size: 15px;}
}
@media all and ( max-width: 1220px ){
	#header,#headerInnerWrap{height:80px;}
	#header #headerInnerWrap{position: fixed; z-index: 99;}
	#header .logo{padding:14px 0;}	/* padding값 적절히 바꿔주세요 */
	
	/* -------- Header :: UTIL BOX -------- */
	.header-util-box{padding-right:80px;}
	/* Header :: 언어선택 */
	.header-lang {position:relative; float:left; width:168px; height:80px; border-left:1px solid rgba(255,255,255,0.25); border-right: 1px solid rgba(255,255,255,0.25);}
	.header-lang .lang-open-btn {padding: 0 30px; height:100%; font-size:14px; line-height: 80px;}
	.header-lang .lang-open-btn .arrow{display: block; width: 16px; height: 16px; margin-top: -8px; right: 30px; font-size:16px;}
	.header-lang > ul {position:absolute; top:80px; padding: 20px 0;}
	.header-lang > ul:before{margin-left: -70px; width: 140px;}
	
	/* Header :: 사이트맵 버튼 */
	.sitemap-line-btn, .sitemap-custom-btn{display:none;}
	
	/* -------- Header :: GNB(Pc) -------- */
	#gnb{display:none;}
	.gnb-overlay-bg{display:none}

	/* -------- Header :: GNB(Mobile/기본스타일) -------- */
	.gnb-overlay-bg-m{display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:9998;}	
	#gnbM{ 
		display:block; 
		position:fixed; 
		top:0px; 
		right:-82%;
		width:80%; 
		height:100%;  
		max-width:300px; 
		background-color:#800a0a; 
		z-index:9999; 
		transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715); 
		-webkit-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);  
		-oz-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715); 
		-ms-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);		/* gnb OPEN 속도 */
		visibility:hidden;
	}
	#gnbM.open{
		right:0px; 
		visibility:visible;
	}
	/* GNB Mobile :: 레이아웃 */
	.gnb-navigation-wrapper{position:relative; height:100%; box-sizing:border-box; padding-top:80px; overflow-y:auto;}	/* padding-top : Header 높이값 */
	.header-util-menu-box + .gnb-navigation-wrapper{padding-top:0}
	
	/* GNB Mobile :: 메뉴영역 :: 1차 */
	#navigation > li{border-bottom:1px solid rgba(255,255,255,0.2);}
	#navigation > li:first-child{border-top:1px solid rgba(255,255,255,0.2);}
	#navigation > li > a {position:relative; display:block; padding:20px 25px; color:rgba(255,255,255,0.5); font-size:19px; font-weight:700; }
	#navigation > li.active > a{color:#fff; background-color: #25282d;}
	#navigation > li.has-2dep > a{}
	#navigation > li.has-2dep.active > a{}
	/* GNB Mobile ::  메뉴영역 :: 2차 */
	#navigation > li .gnb-2dep{display:none; padding: 0 15px; background-color:#25282d;}
	#navigation > li .gnb-2dep > li{height:auto !important;}
	#navigation > li .gnb-2dep > li:first-child{border-top:1px solid rgba(255,255,255,0.2); padding-top: 20px;}
	#navigation > li .gnb-2dep > li:last-child{padding-bottom: 20px;}
	#navigation > li .gnb-2dep > li > a{position: relative; display:block; color:rgba(255,255,255,0.5); font-weight: 400; font-size:19px; padding:12px 15px;}
	#navigation > li .gnb-icon{display: block; position:absolute; top:50%; right:25px; margin-top:-10px; width: 16px; height: 16px;}
	#navigation > li .gnb-icon i{font-size:16px;}
	#navigation > li .gnb-2dep > li.on > a{color: #fff;}
	/* GNB Mobile :: 메뉴영역 ::  3차 */
	#navigation > li .gnb-2dep > li > .gnb-3dep{display:none; padding:10px; background-color:#aaa; margin:0 10px}
	#navigation > li .gnb-2dep > li > .gnb-3dep > li > a{display:block; padding:8px 0; font-size:13px; color:#fff;}
	#navigation > li .gnb-2dep > li > .gnb-3dep > li > a:before{display:inline-block; content:"-"; margin-right:5px;}
	
	
	/* -------- Header :: 네비게이션 오픈 버튼 -------- */
	.nav-open-btn{
		display:block; position:fixed; top:0; right:0; z-index:10000; 
		width: 80px; height:80px;
		transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715); 
		-webkit-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);  
		-oz-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715); 
		-ms-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);
	}
	.nav-open-btn .line{
		display:block; width:24px; height:1px; background-color:#fff; margin: 7px auto;
		-webkit-transition: all 0.3s ease-in-out;
	  -o-transition: all 0.3s ease-in-out;
	  transition: all 0.3s ease-in-out;
	}
	#header.black .nav-open-btn .line{background-color: #000;}
	#header.black .nav-open-btn.active .line{background-color: #fff;}
	.nav-open-btn.active .line{background-color:#fff;}
	.nav-open-btn.active .line:nth-child(2), .nav-open-btn.active .line:nth-child(4){opacity: 0;}
	.nav-open-btn.active .line:nth-child(1){
		 -webkit-transform: translateY(7px) rotate(45deg);
		  -ms-transform: translateY(7px) rotate(45deg);
		  -o-transform: translateY(7px) rotate(45deg);
		  transform: translateY(7px) rotate(45deg);
	}
	.nav-open-btn.active .line:nth-child(3){
		 -webkit-transform: translateY(-9px) rotate(-45deg);
		  -ms-transform: translateY(-9px) rotate(-45deg);
		  -o-transform: translateY(-9px) rotate(-45deg);
		  transform: translateY(-9px) rotate(-45deg);
	}
	
	#header.fixed-header .nav-open-btn .line{background-color:#fff}
}
@media all and ( max-width: 800px ){
	#header,#headerInnerWrap{height:60px;}
	#header .logo{padding:15px 0;}	/* padding값 적절히 바꿔주세요 */
	#header .logo img{height:30px;}

	.header-util-box {padding-right: 60px;}
	/* Header :: 언어선택 */
	.header-lang {width:100px; height:60px;}
	.header-lang .lang-open-btn {padding: 0 20px; font-size:10px; line-height: 60px;}
	.header-lang .lang-open-btn .arrow{display: block; width: 12px; height: 12px; margin-top: -6px; right: 12px; font-size:12px;}
	.header-lang > ul {position:absolute; top:60px; padding: 10px 0;}
	.header-lang > ul:before{margin-left: -40px; width: 80px;}
	.header-lang > ul > li > a{font-size: 11px;}
	/* Header :: 사이트맵, 네비게이션 버튼 */
	.nav-open-btn{top:0; margin-top:0; width: 60px; height: 60px;}
	.nav-open-btn .line{width:20px; height:1px; margin: 7px auto;}
	.nav-open-btn.active .line:nth-child(1){
		 -webkit-transform: translateY(7px) rotate(45deg);
		  -ms-transform: translateY(7px) rotate(45deg);
		  -o-transform: translateY(7px) rotate(45deg);
		  transform: translateY(7px) rotate(45deg);
	}
	.nav-open-btn.active .line:nth-child(3){
		 -webkit-transform: translateY(-9px) rotate(-45deg);
		  -ms-transform: translateY(-9px) rotate(-45deg);
		  -o-transform: translateY(-9px) rotate(-45deg);
		  transform: translateY(-9px) rotate(-45deg);
	}
	/* Header :: GNB(Mobile) */
	.gnb-navigation-wrapper{padding-top:60px} /* padding-top : Header 높이값 */
	.gnb-style-full .header-util-menu-box + .gnb-navigation-wrapper{top:60px; }
	.gnb-style-full-member .gnb-navigation-wrapper{bottom:60px;}
	#navigation > li > a{font-size:15px;}
	#navigation > li .gnb-2dep > li > a{font-size:13px;}

	/* Header :: 언어선택 및 회원메뉴 */
	.header-util-menu-box{height:60px;}
	/* 언어선택 */
	.header-util-menu-box .lang-select{padding:10px; }
	.header-util-menu-box .lang-select li > a{height:38px; line-height:38px}
	/* 회원메뉴 */
	.member-menu-box{padding:5px 0;}
	.member-menu-box li a{ padding:4px 0}
	.member-menu-box li a i{font-size:24px;}
	.member-menu-box li a strong{padding-top:3px;}
	.gnb-style-full .member-menu-box{height:60px}
	.gnb-style-full .member-menu-box li a{padding:10px 0;}

}

/* ****************** FOOTER ********************** */
@media all and (max-width:1220px){
	#footerTop, #footerBottom{text-align:left;}
	.footer-left-con{display: none;}
	.footer-right-con{width: 100%; float: none; padding-left: 0; border-left: none;}
	.box-group-con{margin: 25px -10px 0;}
	/* Footer :: 오른쪽정보 :: 패밀리사이트 */
	.family-site-box{max-width: 320px; margin: 0 10px;}
	/* Footer :: 오른쪽정보 :: 사이트맵 */
	.site-map-box{max-width: 320px; margin: 0 10px;}
}
@media all and (max-width:800px){
	
	
	
	.technical{float: left;width: 100%;}
	
	
	/* -------- Footer :: 하단 -------- */
	#footerBottom{padding:20px 0;}
	/* Footer :: 하단정보 */
	.footer-address p{font-size:11px; line-height:19px; padding-bottom: 15px;}
	.footer-address span em{margin: 0 12px;}
	.footer-address a{display:block;}
	.footer-address .footer-caution-txt{font-size:11px; word-break:keep-all}
	.footer-address .copyright, .footer-copyright{font-size:11px;float: left;}
	.box-group-con{margin: 15px -5px 0;}
	/* Footer :: 패밀리사이트 */
	.family-site-box{max-width: 160px; margin: 0 5px; width: 46%;}
	.family-site-box .family-site-open-btn{height:35px; line-height:35px; font-size:11px; text-indent: 22px;}
	.family-site-box .family-site-open-btn i{right:22px; margin-top:-8px; font-size: 16px;}
	.family-site-list{bottom:35px;}
	/* Footer :: 오른쪽정보 :: 사이트맵 */
	.site-map-box{display: none; max-width: 160px; margin: 0 5px; width: 46%;}
	.site-map-box a{height:35px; line-height:35px; text-indent:22px; font-size:11px;}
	.site-map-box a i{right:22px; margin-top:-8px; font-size: 16px;}
}

/* ****************** SUB LAYOUT ********************** */
@media all and (max-width:1520px){
	#topMenu01 .side-menu-inner {width: calc(100% - 30px); margin: 0 auto;}
}
@media all and (max-width:1320px){
	#visual .visual-txt-con{width: calc(100% - 30px);}
	#topMenu01 .side-menu-inner ul {padding: 0;}
}
@media all and (max-width:1220px){
	/*  SUB LAYOUT :: 비주얼 */
	#visual .visual-txt-con{padding:0; padding-bottom: 25px;}
	/*  SUB LAYOUT :: 서브메뉴 */
	#topMenu01 .side-menu-inner ul li{width:160px;}
	/*  SUB LAYOUT :: 컨텐츠 레이아웃 */
	#content{padding:70px 15px}
}
@media all and (max-width:1024px){
	/*  SUB LAYOUT :: 서브메뉴 */
	#topMenu01 .side-menu-inner ul li{width:140px;}
	
	.ditu img{width: 100%;}
	.Contact1{width: 100%;}
	.ssibility{height: ;}
	.ditu{width: 100%;}
	.technology-top{width: 100%;}
	.technology-circle-img img{width: 100%;}
}
@media all and (max-width:800px){
	
	
	
	
	
	
	
	/*  SUB LAYOUT :: 비주얼 */
	#visual{height:200px;}
	#visual .visual-txt-con {padding-bottom: 0; height: 100%;}
	#visual .visual-tit{font-size:29px;}
	/* SUB LAYOUT :: 위치정보(location) */
	.location{margin-bottom:-50px;}
	.location li{font-size:24px;}
	.location li:before{margin:0 13px 0 10px; top:0px;}
	.location li i{margin-top:0px; font-size:12px;}
	/*  SUB LAYOUT :: 이전페이지,다음페이지 버튼 */
	.sub-page-controls-btn {width: 55px; height: 26px; margin-top: -13px;}
	.sub-page-controls-btn span, .sub-page-controls-btn img{width: 100%; height: 100%;}
	/*  SUB LAYOUT ::  서브메뉴(스타일1,2) */
	#topMenu01,
	#topMenu02{display:none}
		
	/*  SUB LAYOUT :: 서브메뉴 모바일 (스타일2) */
	#topMenuM02{display:block; position:relative; height:75px; width: calc(100% - 20px); margin: 0 auto; margin-top: -75px; background-color: #fff; z-index: 1000;  -webkit-transition-delay:0.3s;
		-moz-transition-delay:0.3s;
		-o-transition-delay:0.3s;
		-ms-transition-delay:0.3s;
		transition-delay:0.3s;}
	#topMenuM02.open{background-color: #0c1015; 
		-webkit-transition: 0.2s; -moz-transition: 0.2s; -ms-transition: 0.2s; -o-transition: 0.2s; transition: 0.2s;
		-webkit-transition-delay:0s;
		-moz-transition-delay:0s;
		-o-transition-delay:0s;
		-ms-transition-delay:0s;
		transition-delay:0s;
	}
	#topMenuM02 .side-menu-inner{height:52px; border-bottom:1px solid #ddd; width: calc(100% - 40px); margin: 0 20px;
		opacity:0;filter:Alpha(opacity=0);
		-ms-transform: translateY(-30px); 
		-o-transform: translateY(-30px); 
		-moz-transform: translateY(-30px);
		-webkit-transform: translateY(-30px); 
		transform: translateY(-30px);
		-webkit-transition:opacity 1.0s, transform 1.0s;
		-moz-transition:opacity 1.0s, transform 1.0s;
		-o-transition:opacity 1.0s, transform 1.0s;
		-ms-transition:opacity 1.0s, transform 1.0s;
		transition:opacity 1.0s, transform 1.0s;
		-webkit-transition-delay:0.3s;
		-moz-transition-delay:0.3s;
		-o-transition-delay:0.3s;
		-ms-transition-delay:0.3s;
		transition-delay:0.3s;
	}
	#topMenuM02.active .side-menu-inner{
		opacity:1.0;filter:Alpha(opacity=100);
		-ms-transform: translateY(0px); 
		-o-transform: translateY(0px); 
		-moz-transform: translateY(0px);
		-webkit-transform: translateY(0px); 
		transform: translateY(0px);
	}
	#topMenuM02 .menu-location{position:relative;}
	#topMenuM02 .menu-location > .cur-location{position:relative; display:block; height:52px; padding:0 30px 0 15px;}
	#topMenuM02 .menu-location > .cur-location span{display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; line-height:52px; color:#1a978e; font-weight:500; font-size:14px;}
	#topMenuM02 .menu-location > .cur-location .arrow{position:absolute; top:50%; right:10px; width:20px; height:20px; margin-top:-8px; font-size:20px; color: #1a978e;}
	#topMenuM02 .menu-location > .cur-location.open .arrow{transform:rotate(-180deg); margin-top:-10px;}
	#topMenuM02 .menu-location .location-menu-con{display:none; position:absolute; top:52px; left:-20px; width:calc(100% + 40px); background-color:#0c1015; z-index:11; padding: 12px 0;}
	#topMenuM02 .menu-location .location-menu-con:before{position: absolute; top: 0; left: 20px; display: block; content: ''; width: calc(100% - 40px); height: 1px; background-color: rgba(255,255,255,0.2);}
	#topMenuM02 .menu-location .location-menu-con li a{position:relative; display:block; padding:7px 35px; font-size:14px; line-height:1.5; word-break:keep-all; color: rgba(255,255,255,0.5);}
	#topMenuM02 .menu-location .location-menu-con li.on{}
	#topMenuM02 .menu-location .location-menu-con li.on a{}
	#topMenuM02 .location-menu-con .gnb-icon{position: absolute; top: 50%; margin-top: -7px; right: 32px;}
	#topMenuM02 .location-menu-con .gnb-icon i{font-size: 14px;}

	/*  SUB LAYOUT :: 상단정보 (공통) */
	#contentInfoCon{margin:30px 0; }
	#contentInfoCon .content-tit{font-size:24px}
	#contentInfoCon .content-sub-tit{font-size:13px; line-height:18px;}
	/*  SUB LAYOUT :: 상단정보(스타일02) */
	#contentInfoCon.content-info-style02 .content-tit{display:block; padding-bottom:15px;}
	#contentInfoCon.content-info-style02 .content-tit:after{position:static; display:block; margin:20px 0 0 0;}
	#contentInfoCon.content-info-style02 .content-sub-tit{display:block; margin-left:0}
	/*  SUB LAYOUT :: 상단정보(스타일03) */
	#contentInfoCon.content-info-style03 .content-tit{float:none; text-align:center;}
	#contentInfoCon.content-info-style03 .location{float:none; text-align:center; padding-top:23px;}

	/*  SUB LAYOUT :: 컨텐츠 레이아웃 */
	#content{padding:50px 15px}
}


/* ****************** MODAL LAYERPOPUP ********************** */
@media all and ( max-width: 800px ){
	/* modal layer content */
	.footer-modal-content h1{height:46px; line-height:46px; font-size:18px; text-align:left; padding:0 15px}
	.modal-close-btn i{font-size:24px}
	.footer-inner-box{padding:15px}
	.footer-inner{padding:10px; height:250px;}
}



@media all and (max-width:414px){
	
}
