/*
개발공사 2018 레이아웃
*/

@import url(font.css);

/* 요소(element) 여백 초기화  */
html, body,
div, span,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
blockquote, p, address, pre, cite,
form, fieldset, input, textarea, select,
table, th, td {
 	margin:0;
	padding:0;
	}

/* 제목요소 */
h1, h2, h3, h4, h5, h6 {  
	font-weight:normal; 
	font-size:1em; 
	} 

/* 테두리 없애기 */
fieldset, img, abbr,acronym { border:0 none; } 

/* 목록 */
ol, ul { list-style:none; }

/* 테이블 - 마크업에 'cellspacing="0"' 지정 함께 필요 */
table {
	border-collapse: separate;
	border-spacing:0;
	border:0 none;
	}
caption, th, td {
	font-weight: normal;
}
caption, legend {position:absolute;  width:0; height:0; overflow:hidden; font-size:0;line-height:0px; }
/* 텍스트 관련 요소 초기화 */
address, caption, strong, em, cite {	font-weight:normal;	font-style:normal;	}
ins { text-decoration:none; }
del { text-decoration:line-through; }

/* 인용문 */
blockquote:before, blockquote:after, q:before, q:after { content:""; }
blockquote,q { quotes:"" ""; }

/* 수평선*/
hr { display:none; }




body { font-family: 'Noto Sans KR' , 'Arial'; font-size:14px; line-height:1.4;  min-width: 320px; overflow-x: hidden;}
h1,h2,h3,h4,h5,h6 {margin: 0; font-weight: bold;}
p, dl, ol, ul {margin: 0;}




@media (min-width: 992px) {

	.header { height:130px; width:100%; border-bottom:1px solid rgba(255,255,255,0.2);  padding-top:50px;  position:relative; z-index:100;  }
	.header .link-menu {left:50%; margin-left:-600px;  }
	.header .link-menu  { position:absolute; top:0px; z-index:9;   } 
	.header .link-menu li  { float:left; margin-top:15px;  } 
	.header .link-menu li a { font-size:13px; color:#fff; }
	.header .link-menu li:before { content:''; display:block; float:left;  border-left:1px solid #fff;margin-left:10px; margin-right:10px; height:10px; margin-top:6px;  }
	.header .link-menu li:first-child:before { margin-left:0px; border:0px;  }

	.header h1 {float:left; z-index:101; position:relative;  max-width:300px;   }
	.header h1 img { width:110px;  }
	.header h1 a.logo {padding-top:18px;float:left; margin-right:10px;    }
	.header h1 a.class {display:block; float:left;  height:80px;  font-weight:bold;  color:#fff; letter-spacing:-1.6px; font-size:18px; line-height:80px;  text-align:center;  }
	.m-menu-logo { display:none;  }
	.header-util-wrap { position:absolute; top:0px; left:0px; width:100%; height:50px; background:#000;  }
	.header-util-wrap ul  { position:absolute; top:0px;   } 
	.header-util-wrap ul li  { float:left; margin-top:15px;  } 
	.header-util-wrap ul li a { font-size:13px; color:#fff; }
	.header-util-wrap ul li:before { content:''; display:block; float:left;  border-left:1px solid #fff;margin-left:10px; margin-right:10px; height:10px; margin-top:6px;  }
	.header-util-wrap ul li:first-child:before { margin-left:0px; border:0px;  }
	.header-util-wrap li.lang {   }
	.header-util-wrap li.lang dl { position:relative;  float:left;  }
	.header-util-wrap li.lang dt { font-weight:normal;  } 
	.header-util-wrap li.lang dt span {font-size:10px;   }
	.header-util-wrap li.lang dd {display:none;z-index:102;  padding:15px;  position:absolute; top:33px; right:0px; width:auto; background:#eee;  }
	.header-util-wrap li.lang dd a { display:block; color:#555; margin:3px 0 ; }
	
	.header-util-wrap .top-util  {right:50%; margin-right:-600px; }
	
	.gnb {   position:absolute;z-index:100;  top:50px; left:0px; width:100%;  background:url(../images/common/menu_bg.jpg) repeat-x left 80px ;}
	.gnb .container { padding-left:280px; }
	.gnb .menu { float:left;  width:150px; }
	.gnb .menu h3 {  font-weight:normal; }
	.gnb .menu h3 a { color:#fff; display:table-cell; width:150px;text-align:center;   height:80px;   font-size:18px; vertical-align:middle;  }
	.gnb .menu h3 a:hover ,.gnb .menu h3 a.active { text-decoration:none;  background:#3cb22d;  color:#fff;  }
	.gnb .menu ul  {display:none;  text-align:center;   padding-top:30px; padding-bottom:30px; }
	.gnb .menu ul li  { margin-bottom:10px; padding-left:10px; padding-right:10px; }
	.gnb .menu ul li a { color:#666;  font-size:15px; letter-spacing:-1.5px;  }
	.gnb .menu ul li a:hover , .gnb .menu ul li a:active { color:#000; text-decoration:underline;   }
	.gnb .menu ul li  ul { display:none !important;  }
	.gnb .menu ul li i { display:none;  }

	.header .all-menu-open {   display:none !important;  position:absolute; top:82px; right:50%;  margin-right:-600px;  z-index:100; }
	.gnb .all-menu-close { display:none;   } 
	.all-menu .all-menu-close a { display:block;  position:absolute; bottom:0px; right:0px;padding:10px;  border-left:1px solid #000; border-top:1px solid #000;  } 
	.all-menu .all-menu-close a img {width:23px;  }

	.all-menu {   position:absolute; z-index:100;  top:50px; left:50%;margin-left:-600px; background:url(../images/common/menu_bg_p.jpg) repeat-y #fff; z-index:101;   }
	.all-menu .menu { float:left;  width:16.6667%;  height:100%;  }
	.all-menu .menu h3 {  font-weight:normal;  border-left:1px solid #72b149;}
	.all-menu .menu01 h3{ border-left:0px;  }
	.all-menu .menu h3 a {  background:#0063c9;  color:#fff;display:block; width:100%;text-align:center; line-height:80px;   height:80px;   font-size:20px; vertical-align:middle;  }
	.all-menu .menu ul  {   padding-top:30px; padding-bottom:30px; }
	.all-menu .menu ul li  { margin-bottom:20px; padding-left:25px; padding-right:25px; }
	.all-menu .menu ul li a { color:#000;  font-size:16px; letter-spacing:-1.5px;  }
	.all-menu .menu ul li a:hover , .gnb .menu ul li a:active { text-decoration:underline;   }
	.all-menu .menu ul li  ul { margin-top:10px; padding:0px;   }
	.all-menu .menu ul li  ul li { margin-bottom:5px; padding-left:0px; padding-right:0px; }
	.all-menu .menu ul li  ul li:before { content:'-'; display:inline-block; color:#666; }
	.all-menu .menu ul li  ul li a { color:#666;  font-size:14px;  }
	.all-menu .menu ul li i { display:none;  }
	.all-menu .menu ul { display:block !important;  }

	.header .search-btn  { position:absolute; top:80px; right:50%; margin-right:-600px;  z-index:100; }
.header .search-btn a i { font-size:20px; color:#555; margin-top:-5px;display:inline-block;   }
.header .search-btn .search-close { display:none;  }
.header .search-btn .search-close img { width:20px; }


.top-search-wrap {display:none; height:140px; z-index:100;    width:100%;  position:absolute; top:130px;left:0px;    background:#f4f4f4;  }
.top-search-wrap form { width:640px; margin:0 auto;  padding-top:40px;  border-bottom:2px solid #000; }
.top-search-wrap form:after { clear:both; display:table; content:'';  }
.top-search-wrap form input[type="text"] { float:left; font-size:18px; border:0px; height:50px; color:#777;  background:#f4f4f4;  padding:4px 10px 0px; width:595px; }
.top-search-wrap form input[type="text"]::placeholder {color:#777; }
.top-search-wrap form button { float:left;  width:45px; height:50px;   border:0px; background:#f4f4f4; }
.top-search-wrap form button i { font-size:30px; color:#555;  }






  #backtotop {
      position: fixed;
      bottom: 0;
      right: 0;
      z-index: 9999;
      width: 60px;
      height: 60px;
      text-align: center;
      background: rgba(0,0,0,0.3);
      font-size: 40px;
      color: #fff;
      cursor: pointer;
      text-decoration: none;
      /*transition: opacity 0.2s ease-out;*/
      opacity: 0;
  }
  #backtotop.show {
    opacity: 1;
  }
  #backtotop:hover.show {
    background: rgba(0,0,0,0.6);
  }

.back {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.8);
    display: none;
    width: 100%;
    height: 100%;
    z-index: 10;
}


}




@media (min-width: 992px) and (max-width: 1199px) {

	
	.header .link-menu { margin-left:-480px;  }
	.header-util-wrap .top-util  { margin-right:-480px; }
	.header .search-btn  { margin-right:-480px; }
	.header h1 a.class { font-size:16px;  }
	/*.header .all-menu-open {margin-right:-480px;  }*/
	.gnb .container {    padding-left: 280px;}
	.gnb .menu {  width:90px; }
	.gnb .menu h3 a { width:90px; font-size:16px; }
	.gnb .menu ul li a {   font-size:14px;  }
	.gnb .menu01 , .gnb .menu01 h3 a  { width:110px;  } 
	.gnb .menu02 , .gnb .menu02 h3 a , .gnb .menu06 , .gnb .menu06 h3 a { width:130px;  } 


	.all-menu {  margin-left:-480px; background:url(../images/common/menu_bg_t.jpg) repeat-y #fff; }
	.all-menu .menu ul li  {  padding-left:10px; padding-right:10px; }


}


@media (max-width: 991px) {

	.header {  position:relative;  z-index:100;  margin-top:1.5rem;    height: 2.27272727rem;    word-break: keep-all;	text-align:center; 	padding:0 15px;    }

	.header .link-menu  { position:absolute; top:-1.5rem; z-index:9; width:100%; left:0px;  height:1.5rem;  background:#000;   } 
	.header .link-menu li  { float:left; margin-top:0.4rem;  } 
	.header .link-menu li a { font-size:14px; color:#fff; }
	.header .link-menu li:before { content:''; display:block; float:left;  border-left:1px solid #fff;margin-left:10px; margin-right:10px; height:10px; margin-top:6px;  }
	.header .link-menu li:first-child:before { margin-left:0px; border:0px;  }

	.header h1 {text-align:center; position:relative; z-index:9; display:inline-block;  }
	.header h1 a.logo {   display:table-cell; padding-right:5px; padding-top:0.4rem;   }
	.header h1 a.logo img {width:100px;  }
	.header h1 a.class {display:table-cell; height: 2.27272727rem;  padding:0 5px;   color:#fff; letter-spacing:-1.6px; font-size:16px; font-weight:normal;  vertical-align:middle; text-align:center;  }

	.all-menu-open {  position: absolute;    top:18px;    left: 15px;    }




	
.header .search-btn  {  z-index: 10;    position: absolute;   top: 18px;    right: 15px;   }
.header .search-btn a { color:#555;  font-size: 24px; }
.header .search-btn a i:before { margin:0px; padding:0px;   }
.header .search-btn a.search-close  {display:none;  }
.header .search-btn a.search-close img {width:20px;  }


	.m-menu { display:none;   z-index: 1000; overflow-y:auto;    position: fixed;    top: 1.5rem;  right: 0; width: 13.86363636rem; margin-right:-13.86363636rem;   height: 100%;    background: #0063c9;    letter-spacing: -1px;    text-align: left;   }
	.header .all-menu-close {    position: absolute;    top: 0.8rem;    right:15px;  }
	.header .all-menu-close img { width:1rem;  }
	.header .m-menu-logo { height: 2.27272727rem;padding-left:15px; margin-right:5px;  padding-top:0.3rem;  width:100%; background:#fff;  }
	.header .m-menu-logo a.logo { float:left;  }
	.header .m-menu-logo a.logo img { width: 4.5rem;}
	.header .m-menu-logo a.class {color:#3a3a3a;  float:left;  font-size:16px; font-weight:normal;  vertical-align:middle; text-align:center; margin-top:0.45rem;   }
	.header .m-menu-logo a.class:before {  float:left; content:''; display:block; padding-right:10px; margin-left:10px;margin-top:0.2rem;    border-left:2px solid #727171; height:15px;  }


	.top-util {background:#fff;height:1.32rem;   border-top:1px solid #ddd; border-left:1px solid #ddd; border-bottom:1px solid #ddd;  }
	.top-util li { float:left; text-align:center;    font-size: 0.650909091rem; width:50%; border-left:1px solid #ddd;  border-top:1px solid #ddd;  margin-top:-1px; margin-left:-1px;   }
	.top-util li a { color:#fff; font-size:13px; padding-top:0.3rem; color:#858585;  display:block; height:1.3rem;     }
	.header-util-wrap li.lang {   }
	.header-util-wrap li.lang dl { position:relative;    }
	.header-util-wrap li.lang dt { font-weight:normal; } 
	.header-util-wrap li.lang dt span {font-size:10px;   }
	.header-util-wrap li.lang dd {display:none;z-index:102;  padding:15px;  position:absolute; top:1.3rem;   right:0px; width:100%;  background:#eee;  }
	.header-util-wrap li.lang dd a { display:block; color:#555; margin:3px 0 ; }

 


  #gnb .menu h3 a {    position: relative; border-bottom:1px solid rgba(255,255,255,0.2);   font-weight:normal;  display: block;    font-size: 16px;    width: 6.93181815rem;    padding: 0.79545455rem 0 0.79545455rem 20px;    color: #fff;      }

  #gnb .menu h3 a > i {    display: none;  }

  #gnb .menu:first-of-type h3 {       }
  #gnb .menu h3 a i {    display: none;    position: absolute;    top: 50%;    right: 10px;    margin-top: -0.31818182rem;  }
  #gnb .menu h3 a.active {   background:#014e9e;  }
  #gnb .menu>ul {    display: none;    position: absolute;    top: 3.592727rem;    right: 0;    width: 6.93181815rem;    height: calc(100% - 4.922727rem);    overflow-y: auto;    padding:0 5px;   background:#014e9e;   }
  #gnb .menu ul.active {    display: block;  }
  #gnb .menu ul > li > a {    position: relative;    display: block;     padding:15px 0 15px 20px;  font-size: 14px;      color: #fff;     }
  #gnb .menu ul > li > a > i {    display: none;  }
  #gnb .menu ul > li > a > i.icon-popup {    display: inline-block; position:relative; margin-top:0.3rem;  margin-left:2px;  }
  #gnb .menu ul > li > a.active {    text-decoration: underline;    color: #fff;  }
  #gnb .menu ul > li > a.active > i {    display: block;  }
  #gnb .menu ul i {    position: absolute;    top: 50%;    left: 0px;    font-size: 0.63636364rem;    margin-left: -1rem;    margin-top: -0.27272727rem;  }
  #gnb .menu ul > li > ul {  margin-top:-10px;      padding: 2px 0;  }

  #gnb .menu ul > li > ul > li > a {    position: relative;    display: block;    font-size: 0.45454545rem;  border-bottom:0px;   padding: 0.09090909rem 0 0.09090909rem 20px;    color: #fff;  }
  #gnb .menu ul > li > ul > li > a:before { content:'-'; display:inline-block; margin-right:3px;  }
  #gnb .menu ul > li > ul > li > a.active {    color: #fff;    text-decoration: underline;  }
	
		.top-search-wrap { display:none;  padding-top:1rem; padding-bottom:1rem; padding-left:15px; padding-right:15px; z-index:100;   position:absolute; top: 2.27272727rem;  left:0px; width:100%; background:#f4f4f4;  }
	.top-search-wrap form { padding-bottom:5px; border-bottom:2px solid #000;  }
	.top-search-wrap input {    width: calc(100% - 60px);    height: 1.81818182rem;    border: 1px solid #305ABB;  background:#f4f4f4;   vertical-align: top;	 float:left;  color:#222; border:0px; padding:4px 10px 0px; 	 font-size:0.6rem;   }
	.top-search-wrap form button { float:left;background:none; border:0px; height:auto;  height: 1.81818182rem;   }
	.top-search-wrap button  i { font-size:0.90909091rem; color:#555;  }


	






  #backtotop {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9999;
    width: 1.81818182rem;
    height: 1.81818182rem;
    text-align: center;
    line-height: 1.81818182rem;
	padding-top:0px; 
    background: rgba(0, 0, 0, 0.3);
    font-size: 1.18181818rem;
    color: #fff;
    cursor: pointer;
    text-decoration: none;
 transition: opacity 0.2s ease-out;
    opacity: 0;
  }
  #backtotop.show {
    opacity: 1;
  }
  #backtotop:hover.show {
    background: rgba(0, 0, 0, 0.6);
  }



.back {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.8);
    display: none;
    width: 100%;
    height: 100%;
    z-index: 10;
}


}




@media (min-width: 1200px) {

}
@media (min-width: 992px) {

}
@media (min-width: 768px) {

}


