/* header */
@font-face {
  font-family: 'NotoSerifKR';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NotoSerifKR.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

.site-header{
  position: absolute;
  top: 0;
  left: 0;
  padding: 30px;
  z-index: 100;
}
.site-header .menu-btn{
  font-size: 40px;
  color: #005EB8;
  padding: 5px;
  margin: -10px;
}
.menu-open .site-header .menu-btn i.xi-align-left{
  display: none;
}

#menu{
  position: fixed;
  top: 0;
  left: -235px;
  bottom: 0;
  width: 235px;
  height: 100%;
  padding: 30px 20px 30px 30px;
  background: rgba(255, 255, 255, .9);
  opacity: 0;
  visibility: hidden;
  transition: left 0.5s, opacity 0.2s, visibility 0.2s;
}


body.menu-open #menu{
  left: 0;
  opacity: 1;
  visibility: visible;
}
#menu nav{
  font-size: 15px;
  line-height: 1.3;
  letter-spacing: -0.05em;
  padding-bottom: 17px;
  margin-top: 20px;
}
#menu nav li{
  padding: 9px 0;
}
#menu nav li.selected{
  position: relative;
  font-weight: 700;
}
#menu nav li.selected::before{
  content: '';
  position: absolute;
  top: 17px;
  left: -30px;
  display: block;
  width: 22px;
  height: 3px;
  background: #005EB8;
}
#menu .menu-pdf{
  margin-top: 30px;
}
.menu-pdf img{
  width: 74px;
  height: auto;
  box-shadow: 0px 2px 6px rgba(0,0,0,0.25);
}
.menu-pdf .menu-pdf-text{
  display: block;
  font-size: 13px;
  line-height: 20px;
  color: #005EB8;
  margin-top: 10px;
}
.menu-pdf .menu-pdf-text span{
  font-weight: 500;
}
#menu .menu-logo{
  position: absolute;
  bottom: 30px;
  left: 30px;
  /* width: 169px; */
}
#menu .menu-logo img {
  width:70%;
}
#menu .menu-logo a,
#menu .menu-logo p{display: block; font-size: 1.2rem; line-height: 1.6rem; margin:1rem 0; color:#585858}
#menu .menu-logo a {text-decoration: underline; color:#333;}
.inner.normal.grid {flex-wrap: nowrap;}
.grid {gap:3vw}
.half {width:50%; height:100%; display: flex; flex-wrap: wrap;}
.full {width:100%; display: flex; height:100%; flex-wrap: wrap;}
.grid .half {width:49%;}
.vh32 {height:32%; width:100%; display: flex;}
.vh68 {height:68%; width:100%; display: flex;}

/* main */
.site-main .section{
  background: #FFFFFF;
  overflow-x: hidden;
  overflow-y: hidden;
}
.site-main .section.ybg{background-color: #FEEBAA;}
.site-main .section.bbg{background-color: #005FAA;}
.site-main .section.ybg-light{background-color: #FFFDF1;}
.site-main .section.section-calendar{background-color: #F2F2F2;}
.pp-x-scrollable .x-scrollable-inner{
  overflow-x: auto;
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.pp-x-scrollable .x-scrollable-inner::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera*/
}


.map-wrap{
  position: relative;	
}
.icon{
  position: absolute;
  cursor: pointer;
}
.icon.ha{
  top: 250px;
  left: 750px;
}
.icon .desc{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 185px;
  padding: 17px;
  background: #fff;
  border: 1px solid #005EB8;
  border-radius: 12px;
  visibility: hidden;
  opacity: 0;
  transition: all 0.5s;
}
.icon .desc .xi-close{
  position: absolute;
  top: 17px;
  right: 17px;
  cursor: pointer;
}
.icon .desc li{
  display: flex;
  justify-content: space-between;
}
.icon .desc li .num{
  margin-left: 27px;
}
.icon.active .desc{
  visibility: visible;
  opacity: 1;
}

/* 하단 슬라이드 정보창 */

.info-wrap{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.info-wrap .title{
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 16px;
  line-height: 42px;
  padding: 0 25px;
  background: #fff;
}
.info-wrap.blue .title {background: #DCECF6;}
.info{
  max-height:3vh;
  background: #fff;
  transition: all 0.5s;
  padding: 3vh 0 0;
}

.info-wrap.blue .info {background: #DCECF6;}
.info-wrap.active .info{
  padding: 4vh 8vh;
  max-height: 500px;
}
.pc{
  display: block;
}
.mo{
  display: none
}

.modal{
  display: none;
}
.modal.active{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.2);
  z-index: 1000;
}
.modal-close {position: absolute;top:2.4rem; right:2.4rem; font-size: 3.2rem; color:#999}
.modal .modal-inner{
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 200px;
  min-height: 200px;
  transform: translate(-50%, -50%);
  border-radius: 1.2rem;
  background: #fff;
  padding:3.6rem
}

.pbc {position: relative; width:100%; height:100vh;}
.pbc button {position: absolute; width:5rem; height:5rem; background-color: rgba(255, 255, 255, .5); color:#005EB8; font-size: 2.4rem; top:50%; line-height: 5rem;border-radius: 100%; text-align: center; font-family: xeicon;z-index: 99;}
#pagePrev {
  left:1.25%;
}
#pageNext{
    right:1.25%;
}
.pp-viewing-page15 #pageNext {display: none;}