/*
개발공사 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;}


.clear { clear:both;  }
.clearfix:after { clear:both; display: table;  content: " ";}
.ellipsis {     text-overflow: ellipsis;  -o-text-overflow: ellipsis;  overflow: hidden;   white-space: nowrap;   word-wrap: normal !important;   display: block; }
img { max-width:100% ;  }
.map img { max-width: initial ;  }

.show { display:block !important;  }
.hide { display:none !important;  }

i span { position:absolute; top:-4000px; left:-3000px; display:block;   font-size:0px; line-height:0px; }

.text-color { color:#2844C4 !important; }  

@media (min-width: 992px) {

	.header { height:130px; width:100%; background:#fff; 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:350px;  */ }
	.header h1 a.logo {padding-top:10px;float:left; margin-right:10px;    }
	.header h1 a.class {display:block; float:left;  height:80px;  font-weight:normal;  color:#000; 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:#2E2E2E;  }
	.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;  right:50%; margin-right:-600px; padding-right:80px;  }
	.gnb .container { }
	.gnb .menu { float:left;  width:130px;  position:relative; }
	.gnb .menu h3 {  font-weight:normal; }
	.gnb .menu h3 a { color:#000; display:table-cell; width:170px;text-align:center;   height:80px;   font-size:18px; vertical-align:middle;  }
	.gnb .menu h3 a:hover ,.gnb .menu h3 a.active { text-decoration:none;   }
	.gnb .menu ul  {display:none; width:170px; text-align:center;  background: #fff ; border-top:3px solid #2743C4;  position:absolute; top:77px; left:50%; margin-left:-85px; padding:20px 10px;  }
	.gnb .menu ul li  { margin-bottom:10px; padding-left:10px; padding-right:10px; }
	.gnb .menu ul li a { color:#666;  font-size:16px; letter-spacing:-1.5px;  }
	.gnb .menu ul li a:hover , .gnb .menu ul li a:active {  text-decoration:underline;  color:#2743C4; font-weight:bold;  }
	.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;  }


.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;  }





.footer {background:#333; padding:30px 0px;   }
.footer .footer-link-menu {margin-bottom:35px;}
.footer .footer-link-menu dl { float:left; width:23.5%; margin-left:2%; position:relative;  z-index:100;  }
.footer .footer-link-menu dl:first-child {  margin-left:0px;  }
.footer .footer-link-menu dl dt a { display:inline-block; color:#afafaf;  padding:7px 25px 0px; height:35px; width:100%; background:#4a484b; font-size:15px; font-weight:normal;    }
.footer .footer-link-menu dl dt a span { float:right; font-size:12px; }
.footer .footer-link-menu dl dd { display:none; background:#4a484b; padding:10px 25px; position:absolute; bottom:35px; overflow-y:auto; max-height:350px;  width:100%; border-bottom:1px solid #000;   }
.footer .footer-link-menu dl dd a { font-size:15px; display:block; margin:5px 0;color:#afafaf;    }
.footer .foot-logo {margin-bottom:20px;   }
.footer .foot-logo .logo {float:left; margin-right:10px;   }
.footer .foot-logo .class {float:left; color:#4f4f4f; font-size:18px;  font-weight:bold; display:block; margin-top:12px;  }
.footer address { color:#8a8a8a; font-size:15px; line-height:1.6;margin-bottom:5px;   }
.footer .comment { color:#8a8a8a; font-size:14px;  }


  #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 h1 { max-width:255px;  }
	.header h1 a.logo {width: 120px;  margin-top:5px;  }
	.header .search-btn  { margin-right:-480px; }
	.gnb {   margin-right:-480px; }
	.gnb .menu {     width: 115px;}
	.gnb .menu h3 a {     font-size: 16px;   }
	.gnb .menu ul li a {   font-size:14px; }


}


@media (max-width: 991px) {

	.header { background:#fff; 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:#c9c9c9; }
	.header .link-menu li:before { content:''; display:block; float:left;  border-left:1px solid #49433b;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:10px;   }
	.header h1 a.logo img { width: 95px;}
	.header h1 a.class {display:table-cell; height: 2.27272727rem;  padding:0 5px;   color:#000; letter-spacing:-1.6px; font-size:16px; font-weight:normal;  vertical-align:middle; text-align:center;  }

	.all-menu-open {  position: absolute;    top:16px;    left: 15px;    }

	
.header .search-btn  {  z-index: 10;    position: absolute;   top: 15px;    right: 15px;   }
.header .search-btn a { color:#555;  font-size: 18px; }
.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:17px;  }


	.m-menu {   z-index: 1000; overflow-y:auto;    position: fixed;    top: 0px;  left: 0; width: 300px; margin-left:-300px;   height: 100%;    background:#E2E2E2;    letter-spacing: -1px;    text-align: left;   }
	.top-util {height:40px;   border-top:1px solid #ddd; border-left:1px solid #ddd; border-bottom:1px solid #ddd;  }
	.top-util li { float:left; text-align:center;   width:50%; border-left:1px solid #ddd;  border-top:1px solid #ddd;  margin-top:-1px; margin-left:-1px;   }
	.top-util li a { color:#000; font-size:16px; padding-top:12px;  display:block; height:40px;   text-decoration:underline;    }
	.header .all-menu-close {    position: absolute;    top: 25px;    right:15px;  z-index:102; }
	.header .all-menu-close a img { width:20px;  }
	.header .m-menu-logo { z-index:101;  height:70px;  position:relative; padding-top:5px; padding-left:15px; margin-right:5px;  padding-top:15px;  width:100%; background:#fff;    }
	.header .m-menu-logo a img {width:106px;  display:block;    float:left;   margin-right:10px; }
	.header .m-menu-logo a span { padding-top:10px; display:block;     float:left; font-size:16px; color:#010101;  }


 

.gnb  { padding:15px 0 ; }
.gnb .menu h3 {  }
.gnb .menu h3 a {  padding:15px 34px;  position: relative;    display:block;   font-size: 22px;    color: #000;      }
.gnb .menu ul { display:none;  background:#2743C4; padding:5px 34px;   }
.gnb .menu ul li { padding:10px 0 ;  border-top:1px solid rgba(255,255,255,0.5);  }
.gnb .menu ul li:first-child { border-top:0px;  }
.gnb .menu ul li a { color:#fff; font-size:16px;  font-weight:200; padding-left:15px;   }


	
		.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;  }


	


.footer {background:#333; padding:30px 15px;   }
.footer .footer-link-menu {margin-bottom:0.6rem; margin-left:-2%; }
.footer .footer-link-menu dl { float:left; width:49%; margin-left:1%; position:relative;  margin-bottom:1%; z-index:100;  }
.footer .footer-link-menu dl dt a { display:inline-block; color:#afafaf;  padding:7px 25px 0px; height:35px; width:100%; background:#4a484b; font-size:0.55rem; font-weight:normal;    }
.footer .footer-link-menu dl dt a span { float:right; font-size:0.45rem; }
.footer .footer-link-menu dl dd { display:none; background:#4a484b; padding:10px 25px; position:absolute; bottom:35px; overflow-y:auto; max-height:350px;  width:100%; border-bottom:1px solid #000;   }
.footer .footer-link-menu dl dd a {font-size:0.55rem; display:block; margin:5px 0;color:#afafaf;    }
.footer .foot-logo {display:none;   }
.footer .foot-logo .logo {float:left; margin-right:10px;   }
.footer .foot-logo .class {float:left; color:#4f4f4f;font-size:0.53rem  font-weight:bold; display:block; margin-top:12px;  }
.footer address { color:#8a8a8a; font-size:0.53rem ;  line-height:1.6;margin-bottom:5px;  }
.footer address p { margin-bottom:0.4rem;  }
.footer address p:after { clear:both; display:table; content:'';  }
.footer address p.address strong {  float:left; width:80px;   }
.footer address p.address span { float:right;  width:calc(100% - 80px);  }
.footer .comment { color:#8a8a8a;font-size:0.51rem  }







  #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) {

}


