@charset "utf-8";

/* 웹폰트 */
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff2) format('woff2'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff) format('woff'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.otf) format('opentype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff2) format('woff2'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff) format('woff'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.otf) format('opentype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff2) format('woff2'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff) format('woff'),
    url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.otf) format('opentype');
}

/* reset */
body, div, ul, li, dl, dt, dd, img, a, span, p, strong, h1, h2, h3, header, section, article, footer, time, nav, small, table, caption,
colgroup, col, thead, tbody, tr, th, td {
  margin: 0;
  padding: 0;
}

header, section, article, footer, time, nav {
  display: block;
}

body {
  font-size: 16px;
  color: #333;
  font-family: 'Noto Sans KR', sans-serif;
}

a:link,
a:visited {
  text-decoration: none;
  color: #333;
}

a:hover,
a:focus,
a:active {
  text-decoration: none;
}

ul, dl {
  list-style-type: none;
}

img, fieldset {
  border: none;
}

select, input, img {
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

/* color */
.green {background-color: #8fc861}/* 경제 */
.cerublue {background-color: #0596a9}/* 복지 */
.lightblue {background-color: #01adef}/* 으뜸교육문화 */
.middleblue {background-color: #008cd3}/* 으뜸교통 */
.darkblue {background-color: #195ba5}/* 청정삶터 */
.navy {background-color: #2a3c88}/* 혁신관악청 */
.blue {background-color: #00a2d3}/* default */

[data-animation] {
  opacity: 0;
}

[data-animation].animated {
  opacity: 1;
}

/* header */
html, body {
  width: 100%;
  height: 100%;
}

#header {
  width: 100%;
  margin: 0 auto;
  height: 100px;
  text-align: center;
  background: #333;
  z-index: 5;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
}

#header h1 {
  width: 151px;
  position: absolute;
  top: 29px;
  left: 30px;
}

#header h1 img {
  width: 100%;
  vertical-align: top;
}

#header .menu {
  display: inline-block;
  float: left;
  height: 100%;
  width: auto;
  margin: 0;
  margin: 0 0 0 20%;
  overflow: hidden;
}

#header .menu li {
  float: left;
  display: block;
  text-align: center;
  width: 195px;
}

#header .menu li a {
  line-height: 99px;
  display: block;
  width: 100%;
  letter-spacing: -0.03em;
  font-size: 19px;
  height: 100px;
  color: #fff;
  transition: all .3s ease-out;
}

#header .menu li.li_01.active a,
#header .menu li.li_01 a:hover,
#header .menu li.li_01 a:focus,
#header .menu li.li_01 a:active {
  background: #88c257;
}

#header .menu li.li_02.active a,
#header .menu li.li_02 a:hover,
#header .menu li.li_02 a:focus,
#header .menu li.li_02 a:active {
  background: #0596a9;
}

#header .menu li.li_03.active a,
#header .menu li.li_03 a:hover,
#header .menu li.li_03 a:focus,
#header .menu li.li_03 a:active {
  background: #01adef;
}

#header .menu li.li_04.active a,
#header .menu li.li_04 a:hover,
#header .menu li.li_04 a:focus,
#header .menu li.li_04 a:active {
  background: #008cd3;
}

#header .menu li.li_05.active a,
#header .menu li.li_05 a:hover,
#header .menu li.li_05 a:focus,
#header .menu li.li_05 a:active {
  background: #195ba5;
}

#header .menu li.li_06.active a,
#header .menu li.li_06 a:hover,
#header .menu li.li_06 a:focus,
#header .menu li.li_06 a:active {
  background: #2a3c88;
}

#header .top_btn {
  font-size: 15px;
  border: 1px solid #fff;
  display: inline-block;
  margin-top: 30px;
}

#header .top_btn a {
  display: block;
  padding: 8px 75px 8px 17px;
  color: #fff;
  background: url(../images/arrow_btn.png) no-repeat 90% 13px;
}

.menu_btn, .nav {
  display: none;
}

/* content */
.main_visual {
  margin: 100px auto 0 auto;
  background: url(../images/top_img_01.jpg) no-repeat center;
  width: 100%;
  min-width: 100%;
  height: auto;
  padding-top: 53%;
  background-size: cover;
  position: relative;
}

.main_visual .date_cnt {
  display: block;
  font-size: 200px;
  font-weight: 500;
  color: #fff;
  position: absolute;
  top: 7%;
  left: 50%;
  margin-left: -135px;
}

.main_visual img {
  display: inline-block;
  position: absolute;
  /* top: 139px;
  margin-left: -204px;
  left: 50%; */
  opacity: 0;
  transition-delay: 1.8s;
  transition: opacity 0.5s east-out;
  top: 14%;
  width: 30%;
  margin-left: -12.5%;
  left: 50%;
}

.main_visual img.visible {
  opacity: 1;
  transition-delay: 1.5s;
}

.main_visual i {
  position: absolute;
  bottom: 45px;
  left: 50%;
  width: 96px;
  height: 96px;
  margin-left: -48px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5);
}

.main_visual i:before {
  content:"";
  display: block;
  width: 96px;
  height: 96px;
  position: absolute;
  top: 0;
  left: 0;
  background: url(../images/mouse.png) no-repeat center;
  border-radius: 50%;
}

#content {
  padding-top: 160px;
}

#content.main {
  padding-top: 70px;
}

.main_content.mobile {
  display: none;
}

.month-box {
  width: 1200px;
  margin: 0 auto;
  padding: 5px 0;
  text-align: center;
}

.month-box .date_num {
  font-size: 55px;
  line-height: 55px;
  color: #276098;
  letter-spacing: -0.05em;
  font-weight: 700;
}

.timeline-item {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  padding: 40px 0 30px 0;
}

.timeline-item:before {
  content: "";
  display: block;
  width: 4px;
  height: 100%;
  background-color: #34495e;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -2px;
}

.timeline-item:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: '';
}

.text-box {
  float: left;
  width: 460px;
  margin-top: 15px;
}

.text-box.wvleft {
  padding-left: 56px;
}

.text-box.wvright {
  padding-left: 84px;
}

.box-tag.wvleft {
  text-align: right;
}

.box-tag.wvright {
  text-align: left;
}

.box-tag p {
  color: #fff;
  font-size: 14px;
  display: inline-block;
  padding: 3px 19px;
  letter-spacing: -0.03em;
  font-weight: 500;
  border-radius: 15px;
  margin-bottom: 5px;
}

.box-title {
  color: #333;
  font-size: 18px;
  letter-spacing: -0.03em;
  line-height: 23px;
  font-weight: 600;
  margin: 0 0 8px;
}

.box-title.wvleft {
  text-align: right;
}

.box-title.wvright {
  text-align: left;
}

.text-txt.wvleft {
  text-align: right;
}

.text-txt.wvright {
  text-align: left;
}

.text-txt {
  color: #888;
  font-size: 14px;
  letter-spacing: -0.03em;
  line-height: 20px;
  font-weight: 500;
  margin: 0 0 15px 0;
  word-break: keep-all;
}

.text-box-footer.wvleft {
  text-align: right;
}

.text-box-footer {
  margin-top: 20px;
}

.text-box-footer a {
  border-radius: 0;
  background: #fff;
  border: 1px solid #9E9E9E;
  color: #9E9E9E;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 10px;
  transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
}

.text-box-footer a i {
  font-size: 16px;
  position: relative;
  top: 1px;
  left: -5px;
  margin-left: 5px;
}

.video-box {
  float: left;
  width: 404px;
  margin-top: 15px;
}

.video-box.wvleft {
  padding-left: 196px;
}

.video-box.wvright {
  padding-left: 196px;
}

.wv_video {
  width: 320px;
  height: 265px;
  margin-top: 5px;
}

.wv_video.tall {
  height: 400px;
}

.wv_video.tall img {
  height: 100%;
  width: auto;
}

.wv_video img {
  width: 120%;
}

.video-box.wvright .wv_video img {
  margin-left: -20%;
}

.video-box .wv_video.wide img {
  width: 170%;
  margin-left: -70%;
}

.video-box.wvleft .wv_video.wide img {
  margin-left: 0;
}

.timeline-item-date {
  position: absolute;
  top: 51px;
  left: 50%;
  margin-left: -19px;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 60px;
  font-size: 22px;
  font-weight: 600;
  border: 4px solid #34495e;
  border-radius: 50%;
  z-index: 2;
  background: #fff;
}

.timeline-item-line {
  width: 65px;
  height: 1px;
  position: absolute;
  top: 69px;
  z-index: 1;
  background-color: #34495e;
}

.timeline-item-line.wvleft {
  left: 50%;
  margin-left: -64px;
}

.timeline-item-line.wvright {
  left: 50%;
  margin-left: 3px;
}

/* footer */
#footer {
  width: 1200px;
  margin: 0 auto;
  text-align: center;
  padding: 37px 0 200px 0;
}

#footer img {
  border: 1px solid #ddd
}

.gotop_btn {
  width: 77px;
  height: 77px;
  display: inline-block;
  border-radius: 50%;
  position: fixed;
  bottom: 40px;
  right: 40px;
}

.gotop_btn .toTop {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/top_btn.png) no-repeat center;
  opacity:0.8;

}

/* 유튜브 팝업 */
.video-popup.reveal {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: center;
  align-items: center;
  z-index: 9
}

.video-popup .video-wrapper {
  position: relative;
  width: 55%;
  padding-bottom: 31%;
  z-index: 10;
}

.video-popup .video-wrapper iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}

.video-popup.reveal .video-popup-closer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .5);
  z-index: 9
}
.video-popup.reveal .video-popup-closer:before {
  content: "+";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  top: -4%;
  left: 97%;
  transform: rotate(45deg);
  font-size: 106px;
  font-weight: 400;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.7);
}
a{
  cursor: pointer;
}
/* 애니메이션 */
.fade-out {
  -webkit-animation: fade-out 0.9s ease-out 1.5s both;
  animation: fade-out 0.9s ease-out 1.5s both;
}

.puff-in-center {
  -webkit-animation: puff-in-center 0.5s ease-out 2.0s both;
  animation: puff-in-center 0.5s ease-out 2.0s both;
}

.text-shadow-drop-center {
  -webkit-animation: text-shadow-drop-center 0.9s ease-out infinite both;
  animation: text-shadow-drop-center 0.9s ease-out infinite both;
}

.box-shadow-drop-center {
  -webkit-animation: box-shadow-drop-center 0.9s ease-out infinite both;
  animation: box-shadow-drop-center 0.9s ease-out infinite both;
}

@-webkit-keyframes fade-out {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@-webkit-keyframes puff-in-center {
  0% {
    -webkit-transform: scale(2);
    transform: scale(2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
    opacity: 0;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

@keyframes puff-in-center {
  0% {
    -webkit-transform: scale(2);
    transform: scale(2);
    -webkit-filter: blur(2px);
    filter: blur(2px);
    opacity: 0;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

@-webkit-keyframes box-shadow-drop-center {
  0% {
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
  }

  100% {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
  }
}

@keyframes box-shadow-drop-center {
  0% {
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
  }

  100% {
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6);
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
  }
}
