css

css file
@charset "UTF-8";

/* 초기설정 */
*{
  margin:0;
  padding:0;
  list-style:none;
  box-sizing: border-box;
}
body{
  background: #ffffff;
  color:#333333;
}
a{
  text-decoration:none;
  display: block;
}

/********본문시작*********/
/* 모든 컨텐츠를 감싸는 main */
main{
  width:1200px;
  margin:0 auto;
  position:relative; /* 서브 메뉴 때문에 반드시 필요함   */
}

/* 메뉴와 로고가 들어가는 header */
header{
  width:100%;
  height:100px;
  display:flex;
  justify-content: space-between;
  background:#0066ad;
}
.logo{
  width:20%;
  height:100%;
  display:flex; /*로고 이미지를 중앙에 위치 시키기 위해 flex로 지정하여 수평, 수직 정렬이 되도록 하기 위해.*/
  justify-content: center; /* 수평 가운데 정렬 */
  align-items: center; /* 수직 가운데 정렬 */
}
.logo > img {
  width:200px; /*지시사항에 적힌대로 width값 */
  height:40px; /*지시사항에 적힌대로 height값 */
}

/*메인메뉴*/
.navi{
  width:60%;
  height:100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.navi > li{
  width:100%;
  padding:20px 0;
  position:relative;
  cursor:pointer;
}
.navi > li:hover{background:rgba(255,255,255, 0.1) ;}
.navi > li > a{
  text-align: center;
  color:#ffffff;
}
.subMenu{
  display: none;
  width:100%;
  position:absolute;
  left:0;
  top:80px;
  z-index: 1;
  background:#333333;
}
.subMenu > li{
  width:100%;
  line-height: 40px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
.subMenu > li:hover{
  background: rgba(0,0,0, 0.5);
}
.subMenu a {color:#ffffff;}

/* 이미지슬라이드 */
.imgSlide{
  position:relative;
  width:100%;
  height:300px;
  overflow: hidden;
  background: #eeeeee;
}
.imgSlide a{
  position:absolute;
  left:0;
  top:0;
  overflow: hidden;
}
.imgSlide a > img {height:100%;}
.imgText{
  position:absolute;
  left:50%;
  top:50%;
  margin: -10px -180px;
  background: rgba(0, 102, 173, 0.4);
  color:#ffffff;
	padding: 20px 100px;
	font-weight: bold;
}


/* 컨텐츠 영역 */
.contents{
  width: 100%;
  height:200px;
  padding:0;
  margin:10px 0;
  display:flex;
	justify-content: space-between;
  overflow: hidden;
  position: relative; /* 탭메뉴의 콘텐츠 영역 absolute 때문에 넣어줌 */
}
/* 각각 컨텐츠 박스의 영역 */
.contents div{ width:33.3%;}
.contents > div:nth-of-type(2){margin:0 10px;}

/*탭메뉴 : 공지사항 갤러리 */
.tabMenu{ display:flex;}

/*공지사항 갤러리 제목*/
.tabMenu > li > a{
	padding:0 10px;
	min-width: 85px;
	line-height:30px;
	font-size:14px;
	text-align:center;
	background:#eeeeee;
	border:1px solid #dddddd;
}

.tabMenu > li > a:hover{background-color:#eeeeee;}

/* 공지사항과 갤러리 탭 맞닿는 부분에 보더를 없애줌 */
.tabMenu > li:first-child a{border-right:none;}
/* 활성화된 탭의 스타일 */
.tabMenu > li.active > a{ font-weight: bold; background-color:#ffffff;}
/*탭 콘텐츠 영역 스타일*/
.tabBG{
	position:absolute;
	overflow:hidden;
	height:168px; /* chrome inspect(검사) 보고 수치 계산 */
	background:#ffffff;
}
 /*active 클래스가 추가된 탭 콘텐츠 영역 스타일*/
.tabMenu > li.active div{
	border:1px solid #dddddd;
	z-index:1;
}

 /* 공지사항 */
.notice ul{ padding:20px 0;}
.notice ul li{ padding:8px 20px;
  margin:0 10px;
  font-size:14px;
}
.notice li:nth-child(even){ background:rgba(0, 102, 173, 0.1); }
.notice li:hover{color:#222328;background:rgba(0, 102, 173, 0.4);}
.notice li span {float:right;} /* 날짜 오른쪽 정렬 */

/* 갤러리 */
.gallery{	left:0; }
.gallery ul {
 display: flex;
 justify-content: space-around;
 align-items: center;
 height:100%; /*높이 값이 있어야 수직 정렬 됨*/
}
.gallery li:hover{ opacity:0.5; }

/*배너와 바로가기 공통 */
.banner, .direct{
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}
/* 배너 이미지 */
.banner{
  background: url("../img/banner.jpg") center center ;
}
/* 바로가기 이미지 */
.direct{
  background: url("../img/direct.jpg") center center ;
}
/* 배너, 바로가  글자 스타일 */
.banner > a,
.direct > a{
  width:50%;
  padding:14px 0;
  text-align:center;
  color:#ffffff;
  font-weight:bold;
	background-color:rgba(0, 102, 173, 0.4);
}
.banner > a:hover,
.direct > a:hover{
  background-color:rgba(255,255,255, 0.5);
  color:#222328;
}

/* 하단 */
footer{
  width:100%;
  height:100px;
  background:#737373;
  display: flex;
  justify-content:space-between;
}
/* footer안에 있는 각 컨텐츠의 영역 */
footer > div:nth-of-type(1) {width:20%;} /* footerLogo */
footer > div:nth-last-of-type(1) {width:60%;} /* footerGroup */
/* 하단 로고 */
.footerLogo {display:flex; justify-content:center; align-items: center;}
.footerLogo img{width:200px;}
/* 하단메뉴 + 카피라이트 묶음 */
.footerGroup{
  display:flex;
  flex-direction: column;
  justify-content: space-around;
  padding:0 20px;
}
/* 하단메뉴 */
.footerMenu{
	display: flex;
	justify-content: space-around;
  margin:0 100px;
}
.footerMenu a {color:#ffffff;}
.footerMenu a:hover {color:#dddddd;}
/* 카피라이트 */
.footerCright {
  font-size:16px;
  text-align:center;
  color:#ffffff;
}

/* 레이어 팝업  */
#modalWrap{
  display:none;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index: 1;
}
#modalWrap.active{
  display:block;
}
.modal{
  position:fixed;
  width:350px;
  padding:20px;
  top:40%;
  left:40%;
  background:#ffffff;
}
.modal > h1{
  margin:10px 0;
  text-align: center;
  letter-spacing: -1px;
}
.modal > p{
  text-align:justify;
}
.btn{
  width:100%;
  padding:10px;
  margin-top:20px;
  background: #0066ad;
  color:#ffffff;
  border:0;
  font-weight:bold;
  cursor:pointer;
}
.btn:hover{background:rgba(0,102,173,0.2); color:#0066ad;}