/*reset.css*/
body, html{ margin:0; padding:0; width:100%; height:100%; }
body, html, input, textarea, select, button, table{ 
	font-family: 'grace', 'noto', sans-serif;
	-webkit-font-smoothing:antialiased
 }
form, fieldset, h1, h2, h3, h4, h5, h6, p{ margin:0; padding:0; }
form, fieldset, button{ border:none; }
ol, ul, li{ list-style:none; padding:0; margin:0; }
img{ max-width:100%; }
a{ color:inherit; }
a, a:hover{ text-decoration:none; }

.d-lg-none{ display:none; }
.d-lg-block{ display:block; }

#nc_container{z-index: 9999999999 !important;}

.board-caption{
  text-align: center;
  font-size: 20px;
  margin-bottom: 3rem;
}

/*header*/
header{ position:fixed; z-index:9999; top:0; left:0; width:100%; transition:all .5s; background-color: transparent; border-bottom: 1px solid rgba(255, 255, 255, 0.4);}
header, header *{ box-sizing:border-box; }
.hd_con{ width:100%; padding: 0 3rem; position: relative; transition: .5s;}

.lg{position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
.lg > a{ display:block; font-size:20px; line-height:1em; white-space:nowrap;}
.lg > a > img{ display:block; width:240px; transition: .5s;}

.hd-wrap{display: flex; align-items: center; justify-content: space-between;}

/*gnb*/
.hd_bt{ position:relative; z-index:5; }
#gnb{ position:relative; z-index:5;}
#gnb > ul{ display:flex; flex-flow:row wrap; padding-left: 0; margin-bottom: 0;}
#gnb > ul > li{ position:relative; z-index:1; }
#gnb > ul > li > a{ display:block; padding: 40px 20px; font-size:18px; font-weight:400; transition: all .5s; color: #fff; position: relative;}
#gnb > ul > li > a::after{content: ""; width: 4px; height: 4px; border-radius: 50%; background-color: #fff; position: absolute; top: 50%; right: -2px; transform: translateY(-50%); transition: .5s;}
#gnb > ul > li:last-child > a::after{display: none;} 
#gnb > ul > li:last-child > a{padding-right: 0;}
#gnb > ul > li > ul{ position:absolute; z-index:1; top:100%; left:0; display:none; width: 100%; min-width: 150px; box-sizing: border-box; background-color: #fff; padding:20px; text-align: left; box-shadow: 0 12px 30px -2px rgba(0,0,0,.1);}
#gnb > ul > li > ul > li{ position:relative; z-index:1; }
#gnb > ul > li > ul > li > a{ display:block; margin-bottom: 10px; font-weight: 400; font-size:14px; white-space:nowrap; position: relative; }
#gnb > ul > li > ul > li:last-child > a{margin-bottom: 0;}
#gnb > ul > li > ul > li > ul{ position:absolute; z-index:1; top:0; left:100%; display:none; min-width:120px; box-shadow:2px 2px 4px 0 rgba(0,0,0,.3); }
#gnb > ul > li > ul > li > ul > li > a{ display:block; padding:7px 15px; font-size:15px; }

.mn{display: flex; align-items: center;}

.mn-etc{display: flex; align-items: center;}
.mn-etc > ul.log > li{display: inline-block;}
.mn-etc > ul.log > li > a{padding: 0 20px; color: #fff; transition: all .5s; font-size: 18px; position: relative;}
.mn-etc > ul.log > li > a::after{content: ""; width: 4px; height: 4px; border-radius: 50%; background-color: #fff; position: absolute; top: 50%; right: -2px; transform: translateY(-50%); transition: .5s;}
.mn-etc > ul.log > li:last-child > a::after{display: none;}

.lang-ul{display: flex; align-items: center;}
.lang-ul > li{margin-left: 10px;}
.lang-ul > li > a{display: flex;}
.lang-ul > li > a > img{width: 30px;}

.num{font-size: 15px; color: #000; font-weight: 400; width: 170px; height: 45px; line-height: 45px; text-align: center; background: #f2f2f2; border-radius: 20px; margin-left: 20px;}

header.scr{box-shadow: 0 8px 8px -6px rgba(0,0,0,.06); background-color: #fff;}
header.scr #gnb > ul > li > a{color: #000; padding: 30px 20px;}
header.scr #gnb > ul > li > a::after{background-color: #000;}
header.scr .mn-etc > ul > li > a{color: #000;}
header.scr .mn-etc > ul > li > a::after{background-color: #000;}

/* menu btn - pc */
.menupc{width: 50px; position: relative; margin-right: 30px; z-index: 99999; cursor: pointer;}
.menupc::before, .menupc::after, .mn-bar{content: ""; background: #fff; display: block; height: 1px; margin: 7px 0; transition: .5s;}
.menupc.open::before{transform: translateY(8px) rotate(135deg); background: #000;}
.menupc.open::after{transform: translateY(-8px) rotate(-135deg); background: #000;}
.menupc.open .mn-bar{transform: scale(0); background: #000;}

header.scr .menupc::before, header.scr .menupc::after, header.scr .mn-bar{background: #000;}

.menupc-wrap{width: 100%; height: 100vh; position: fixed; top: -100vh; left: 0; z-index: 99998; background-color: #fff; transition: .8s ease-in-out; display: flex; align-items: center; justify-content: center;}
.menupc-wrap.mt-open{top: 0;}

.menupc-logo{width: 100%; max-width: 310px; position: absolute; bottom: 3rem; left: 50%; transform: translateX(-50%); z-index: 2;}
.menupc-logo img{width: 100%;}

.menupc-wrap > nav > ul > li{margin-bottom: 15px; text-align: center;}
.menupc-wrap > nav > ul > li:last-child{margin-bottom: 0;}
.menupc-wrap > nav > ul > li > a{font-size: 50px; color: #000; font-weight: 400; display: inline-block; position: relative; transition: .5s;}
.menupc-wrap > nav > ul > li > a::after{content: ""; width: 10px; height: 10px; border-radius: 50%; position: absolute; top: 17px; right: -17px;}
.menupc-wrap > nav > ul > li:nth-child(1) > a::after{background-color: #EDD0CC;}
.menupc-wrap > nav > ul > li:nth-child(2) > a::after{background-color: #BED6E0;}
.menupc-wrap > nav > ul > li:nth-child(3) > a::after{background-color: #FAE18A;}
.menupc-wrap > nav > ul > li:nth-child(4) > a::after{background-color: #D2CEE8;}
.menupc-wrap > nav > ul > li:nth-child(5) > a::after{background-color: #FAE18A;}
.menupc-wrap > nav > ul > li:nth-child(6) > a::after{background-color: #EDD0CC;}

.cakebtn{max-width: 60px; display: flex; margin-left: 30px; cursor: pointer;}
.cakebtn img{width: 100%;}

#cake_gnb{position:fixed; z-index:99999; top:92px; right:75px; width:250px; height:auto; background-color:#F3BD00; transform:translate(130%, 0); transition:0.5s; padding:50px 30px; border-radius: 30px 0 30px 30px;}
#cake_gnb.act{ transform:translate(0, 0); }
#cake_gnb > .mn_cl{ position:absolute; top:0; right:0; font-size:22px; color:#333; padding:10px; cursor:pointer; line-height: 1;}

header.scr #cake_gnb{top: 75px;}

#cake_gnb > ul > li{text-align: center; margin-bottom: 10px;}
#cake_gnb > ul > li:last-child{margin-bottom: 0;}
#cake_gnb > ul > li > a{font-size: 16px; color: #000; font-weight: 400; transition: .3s;}
#cake_gnb > ul > li > a:hover{color: #fff;}

/*mo_btn*/
.menu-toggler {
  position: relative;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 99999;
  background-color: #f5f5f5;
  border-radius: 5px;
  padding: 5px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.mt-wrap{width: 100%; text-align: center; transition: .5s;}
.mt-wrap > span{font-size: 24px; line-height: 1;}

.mt-close{display: inline-block; position: absolute; top: 4px; left: 50%; transform: translateX(-50%); font-size: 20px; color: #000; opacity: 0; transition: .5s;}

.menu-toggler.open{background-color: #fff;}
.menu-toggler.open .mt-wrap{opacity: 0;}
.menu-toggler.open .mt-close{opacity: 1;}



.mt-link{padding: 1rem 0; position: absolute; left: 0; bottom: 0; width: 100%; display: flex; background-color: #F4ECE6;}
.mt-link > a{font-size: 12px; color: #000; display: block; width: 33.33333%; text-align: center; position: relative;}
.mt-link > a::after{content: ""; width: 1px; height: 13px; background-color: #999; position: absolute; top: 3px; right: 0;}
.mt-link > a:last-child::after{display: none;}

/* mo-link */
.mo-link{padding: 1rem 0; position: fixed; left: 0; bottom: 0; width: 100%; display: flex; background-color: #F4ECE6; z-index: 9998; border-top: 1px solid #ddd;}
.mo-link > a{font-size: 14px; color: #000; display: block; width: 50%; text-align: center; position: relative;}
.mo-link > a::after{content: ""; width: 1px; height: 13px; background-color: #999; position: absolute; top: 3px; right: 0;}
.mo-link > a:last-child::after{display: none;}

/* fixed-menu */
.fixed-menu{
  position: fixed;
  right: 3rem;
  bottom: 3rem;
  z-index: 9997;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 12px;
  transition: 0.3s;
}
.fixed-menu > a {
  display: flex;
  width: 72px;
  height: 72px;
  border-radius: 300px;
  position: relative;
  transition: 0.4s;
}
.fixed-menu > a > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 32px;
  display: block;
}
.fixed-menu > a > .txt {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  white-space: nowrap;
}
.fixed-menu > a:hover {
  width: 150px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 20px;
}
.fixed-menu > a:hover > img {
  position: static;
  transform: translate(0);
}
.fixed-menu > a:hover > .txt {
  position: static;
  opacity: 1;
  visibility: visible;
}
.fixed-menu > a:nth-child(1){background-color: #D2CEE8;}
.fixed-menu > a:nth-child(2){background-color: #BED6E0;}
.fixed-menu > a:nth-child(3){background-color: #FAE18A;}

.fixed-menu > a:nth-child(2):hover{width: 240px;}

/*wrapper*/
.article_mover{ position:absolute; z-index:-1; bottom:100%; }


/*footer*/
footer{width: 100%; height: 100vh; background-color: #F2D394; position: relative;}
.ft-con{position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); min-width: 470px; width: 30%; z-index: 2;}
.ft-logo{text-align: center; margin-bottom: 1.5rem;}
.ft-logo img{max-width: 250px;}
.ft-box{border: 1px solid #707070; background-color: #fff; padding: 1rem; margin-bottom: 1.5rem;}
.ft-cont{display: flex; padding: 10px 0; border-bottom: 1px solid #707070;}
.ft-cont:first-child{padding-top: 0;}
.ft-cont:last-child{padding-bottom: 0; border-bottom: 0;}
.ftc-tit{width: 15%;}
.ftc-tit > p{font-size: 13px; font-weight: 700;}
.ftc-txt{width: 85%; padding-left: 3rem; border-left: 1px solid #707070;}
.ftc-txt > h5{font-size: 13px; line-height: 1.8; font-weight: 400;}
.ft-copy{text-align: center;}
.ft-copy > p{font-size: 12px;}

/* mediaquery */

@media(min-width:1200px){ 
  .d-lg-none{ display:none; }
  .d-lg-block{ display:block; }

  .mo-link{display: none;}
  .menu-toggler{display: none;}

  .ft-info-mo{display: none;}

  .menupc-wrap > nav > ul > li > ul{display: none;}

  .mo_mn_mn{display: none;}
  .mobile-log{
    display: none;
  }
}
@media(max-width:1399px){
  .hd_con{padding: 35px 2rem;}
  header.scr .hd_con{padding: 20px 2rem;}
  .menupc{margin-right: 10px;}
  .cakebtn{max-width: 50px; margin-left: 10px;}
  #cake_gnb{right: 57px;}
  .menupc-logo{bottom: 50px;}
  .lg > a > img{width: 200px;}
  #gnb > ul > li > a{padding: 0 15px;}
  .mn-etc > ul > li > a{padding: 0 15px;}
} 
@media(max-width:1199px){ 
  .d-none{ display:none; }
  .d-block{ display:block; }

  .hd_con{padding: 15px;}
  header.scr .hd_con{padding: 10px 15px;}

  .lg > a > img{max-width: 150px;}
  .board-caption{
    margin-top: 3rem;
    margin-bottom: 0;
    font-size: 16px;
    word-break: keep-all;
  }

  .contact{display: none;}

  #gnb{display: none;}
  .mn-etc > ul.log{display: none;}
  .num{display: none;}
  .lang-ul{display: flex;}
  .lang-ul > li{margin-left: 5px;}
  .lang-ul > li > a{padding: 0 !important;}

  .menupc{width: 40px;}
  .cakebtn {display: none;}

  .mobile-log{
    display: flex;
    padding-top: 1.5rem;
  }
  .mobile-log > li{
    padding: 0 8px;
  }
  .mobile-log > li > a{
    font-size: 12px;
    color: #666;
  }

  .menupc-wrap{overflow-y: scroll; display: flex; flex-direction: column; justify-content: center;}
  .menupc-wrap > nav{display: none;}
  .menupc-logo{
    max-width: 200px;
    bottom: auto;
    position: relative;
    left: auto;
    transform: translateX(0);
  }
  .mo_mn_mn{
    display: block;
    width: 100%;
    padding: 1rem 30px 1.5rem;
  }
  .mo_mn_mn > li > a{ 
    display:block; 
    padding:10px 0px; 
    font-size:20px; 
    font-weight:500;  
  }
  .mo_mn_mn > li > ul{ 
    display:none; 
    background-color:#fafafa; 
    padding: 10px 0;
  }
  .mo_mn_mn > li > ul > li > a{ 
    display:block; 
    padding:10px 15px; 
    font-size:14px;
    text-align: center; 
    font-weight:400; 
    color: #818181;
  }
  
  .mo_mn_mn > li > a.more{
    position: relative;
  }
  .mo_mn_mn > li > a.more::after{
    content: ""; 
    width: 10px; 
    height: 2px; 
    background-color: #666; 
    position: absolute; 
    top: 50%; 
    right: 20px; 
    transform: translateY(-50%);
  }
  .mo_mn_mn > li > a.more::before{
    content: ""; 
    width: 2px; 
    height: 10px; 
    background-color: #666; 
    position: absolute; 
    top: 50%; 
    right: 24px; 
    transform: translateY(-50%); 
    transition: .3s;
  }

  .mo_mn_mn > li:nth-child(1) > a.more::before{background-color: #EDD0CC;}
  .mo_mn_mn > li:nth-child(1) > a.more::after{background-color: #EDD0CC;}
  .mo_mn_mn > li:nth-child(2) > a.more::before{background-color: #BED6E0;}
  .mo_mn_mn > li:nth-child(2) > a.more::after{background-color: #BED6E0;}
  .mo_mn_mn > li:nth-child(3) > a.more::before{background-color: #FAE18A;}
  .mo_mn_mn > li:nth-child(3) > a.more::after{background-color: #FAE18A;}
  .mo_mn_mn > li:nth-child(4) > a.more::before{background-color: #D2CEE8;}
  .mo_mn_mn > li:nth-child(4) > a.more::after{background-color: #D2CEE8;}
  .mo_mn_mn > li:nth-child(5) > a.more::before{background-color: #FAE18A;}
  .mo_mn_mn > li:nth-child(5) > a.more::after{background-color: #FAE18A;}
  .mo_mn_mn > li:nth-child(6) > a.more::before{background-color: #EDD0CC;}
  .mo_mn_mn > li:nth-child(6) > a.more::after{background-color: #EDD0CC;}
  
  .mo_mn_mn > li > a.more.act::before{
    opacity: 0;
  }

  #cake_gnb{width: 180px; padding: 45px 20px; top: 53px; right: 15px;}
  #cake_gnb > ul > li{margin-bottom: 1rem;}
  #cake_gnb > ul > li > a{font-size: 14px;}
  header.scr #cake_gnb{top: 45px;}

}
@media(max-width:850px){ 
  footer{background-position: center bottom 50px;}
  .ft-con{min-width: 100%; padding: 0 15px;}
  .ft-box{margin-bottom: 1rem;}
  .ftc-tit > p{font-size: 12px;}
  .ftc-txt{padding-left: 1rem;}
  .ftc-txt > h5{font-size: 13px;}
  .ft-logo img{max-width: 150px;}

  .fixed-menu {
    right: 15px;
    gap: 6.5px;
    bottom: 60px;
  }
  .fixed-menu > a {
    width: 40px;
    height: 40px;
  }
  .fixed-menu > a > img{
    max-width: 18px;
  }
  .fixed-menu > a > .txt{
    font-size: 14px;
  }
  .fixed-menu > a:hover{width: 120px;}
  .fixed-menu > a:nth-child(2):hover{width: 200px;}
}