


#header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  width: 100%;
  top: 0;
  background-color: transparent;
  z-index: 50;
  border-bottom: 1px solid #e8e8e857;
}
#header.scrolled{
  background-color: #fff;

}
#header .header_warp{
  width: 100%;
}
#header .header_warp.actives{
  border-bottom: 1px solid #e8e8e8;
}
#header .inner{
    padding:0;
    display:flex; 
    justify-content:space-between; 
    align-items:center;
}
#header #gnb{
  display: flex;
  z-index: 99;
  margin-left: auto;
}
#header .deptbox{
  height: 200px;
  position: relative;
  overflow: hidden;
}
#header #gnb > .dept1 {
  position: relative;
  text-align: center;
  width: 150px;
  padding: 22px 0px;
}

#header #gnb > .dept1 > a.active{
  color: #2f60b9 !important;
}

#header #gnb > .dept1:hover::after{
  position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    left: 0;
    background-color: #2f60b9;
    bottom: -3px; 
}

#header #gnb .inner_menu {
  position: absolute;
  top: 100%;
  left:50%;
  transform: translateX(-50%) scaleY(0); /* ← Y축으로 접혀있는 상태 */
  width:100%;
  padding-top:1.5rem;
  background-color: #fff;
  height: 220px;
  opacity: 0;  pointer-events: none;
  transition: opacity 0.6s ease;
  border-right: 1px solid #e8e8e8;
  border-top: 1px solid #e8e8e8;
}
#header #gnb .inner_menu.fir{
   border-left: 1px solid #e8e8e8;
}
#header #gnb .inner_menu.actives {
  opacity: 1; 
   transform: translateX(-50%) scaleY(1); /* ← 펼쳐짐 */
  pointer-events: auto;
}

#header #gnb .dept2 {
padding-bottom: 1rem;
  color: #61594f ;
  font-size: 1rem;
  font-weight: 400;
  height: 40px;
  text-align: left;
  padding-top: 5px;
  padding-left: 18px;
  margin-left: 15px;
  position: relative;
}
.mo_right ul li:last-child a{
  border: 0;
}
#header #gnb .dept2::after{
  content: 'ㆍ';
  position: absolute;
  left: 0px;

}
#header #gnb .dept2 a:hover,
#header #gnb .dept2 a:active,
#header #gnb .dept2 a:focus {
  color: #2f60b9  !important;
}

#header .menu_bar {
  margin-left: auto;
  z-index: 9999;
  display: none;
  position: relative;
}
#header .menu_bar.active span:nth-child(1){
  display: none;
}
#header .menu_bar.active span:nth-child(2){
  transform:rotate(130deg);background-color: #000;
}
#header .menu_bar.active span:nth-child(3){
  transform: rotate(45deg);
  top: 0px;
  position: absolute;
  background-color: #000;
}
#header .menu_bar span{
  width: 22px;
  height: 2px;
  background: #fff;
  display: block;
  margin: 6px;
}
#header .menu_bar span.scrolled{
  background: #61594f ;
}
/*  */

#gnb:hover a{
  color: #61594f;
}

.logo .pc{
  display: block;
}

.logo .pc.scrolled{
  display: none;
}
.logo .m.scrolled{
  display: block;
}

.logo .m{
  display: none;
}

.logo.move .m{
  display: block;
}
.logo.move .pc{
  display: none;
}

.blc a{
  color: #fff;
}
.blc a:hover{
  color: #2f60b9;
}
.blc a.scrolled{
    color: #61594f;
}
.dept1:hover .dept1 a{
  color: #2f60b9 !important;
}
.login a.scrolled,
.jo a.scrolled,
.logout a.scrolled,
.user_infor .logout a.scrolled{
    color: #61594f;
}
.login a,
.jo a,
.logout a,
.user_infor .logout a{
  color: #fff;
}
.login a.move,
.jo a.move,
.logout a.move,
.user_infor .logout a.move{
    color: #61594f !important;
}
/*  */

#header select{
  width: 120px;
}

.use_m .use_right .logout.left{
justify-content: flex-start;
}

/* 모바일 메뉴 로그아웃 버튼 색상 유지 */
.use_m .use_right .logout a,
.use_m .use_right .logout a.scrolled,
.use_m .use_right .logout a.move {
  color: #61594f !important;
}
.menu_open{
  position: fixed;
  width: 100%;
  height: 100vh;
  background: #F4F9FF;
  top: 0;right: 0;
  z-index: 999;
  padding: 1rem;
  display: none;
}
.menu_open > ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 20px;
    flex-direction: column;
    margin-bottom: 20px;
}
.menu_open .mo_right ul li{
  width: 100%;
}


.menu_open a {
  display: block;
  padding: 10px 0;
  text-decoration: none;
  color: #61594f;
}



.menu_open .dept1 {
    position: relative;
    width: 50%;
    background: #D7DFF2;
    text-align: center;
    border-radius: 0px 23px 0px 23px;
    padding: 18px;
    margin-bottom: 10px;
    text-align: center;
}
.menu_open .dept1.shows{
  background-color: #2f60b9;
}
.menu_open .dept1.shows .tit{
  color: #ffff;
}
.menu_open li a { 
     color: #61594f;
    display: flex;
    align-items: center;
    justify-content: center;
}
.menu_open.dept1 > a {
  display: block;
  padding: 14px;
  background: #d7e6ff;
  text-decoration: none;
  font-weight: bold;
  color: #000;
}

/* 오른쪽에 나올 서브메뉴 박스 */
.mo_right {
  position: absolute;
  top: 31px;
  left: 93%;
  width: 100%;
  background: #fff;
  border: 1px solid #7486cc;border-radius: 12px;
  display: none;
  z-index: 10;
}
.mo_right ul{
  width: 90%;
    margin: 0 auto;
}
.righticon i{
  transform: rotate(90deg);
}

.mo_right ul li a {
  display: block;
  padding: 10px;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid #2e60b9;
}

/* 애니메이션 효과를 주고 싶다면 */
.mo_right.show {
  display: block !important;   
  animation: slideIn 0.3s ease;
}

.user{
  display: flex;
}
.user .user_infor{
  margin-right: 20px;
}

@keyframes slideIn {
  from {
    transform: translateX(20px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
.mo_right.show {
  display: block !important; /* <- 강제로 보이게 만들어 */
}

.hd_bg{
  background: #fff;
  background-image: url(/img/left_bgs.png);
  background-repeat: no-repeat;
  background-position: left 15%; /* ← 여기! 이미지 왼쪽 정렬 */
  background-size: 40% auto;    /* 세로 기준으로 꽉 채우고, 가로는 자동 */
  width: 100%;
  height: 0;
  left: 0;
  z-index: 1;
  position: absolute;
  transition: all 0.3s ease; /* ← 요거 추가 */
}

.hd_bg .bj_te{
  position: relative;
}
.hd_bg .bgt{
    max-width: 1440px;
    width: 92%;
    margin: 0 auto;
}
.bg-text {
  font-family: 'Pretendard';
  letter-spacing: -1px;
  height: 100%; /* 배경 전체 높이 차지 */
  opacity: 0;
  width: 100%;
  transition: opacity 0.3s ease;
}
.hd_bg .bj_te_low{
  position: absolute;
  top: 20px;  
  left: 20px;
}
.hd_bg .bj_te_low p,
.hd_bg .bj_te_low h5{
  color: #000;
}
.hd_bg.actives .lines{
  border-top: 1px solid #e8e8e8;

}
.hd_bg.actives .bg-text {
  opacity: 1;
}


.logo{
  width: 200px;
}


.user{
  margin-left: auto;
}

.use_m{
  display: flex;align-items: center;
}
.use_m .use_left{
  width: 50%;
    text-align: left;
}

.use_m .use_right{
  display: flex;
    margin-right: 7%;
    width: 100%;
    align-items: center;
    justify-content: space-around;
}
.use_m .use_right.left{
      justify-content: flex-start;
}
.use_m .use_right i{
  margin-right: 10px;
}
.use_m .use_right .login a{
    text-align: right;
    margin-right: 30px;
}


.links p{
  width: 50%;
padding: 10px 0;
}
.links p:first-child{
  border-bottom: 1px solid #98b0de;
}

.foot{
  width:100%;
  background: #f8f2ed;
}
.footer {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
}
.footer-list{
  padding: 20px 0 ;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;  border-bottom: 1px solid #d5d3d0;
}
.footer-list .footer-links{
  display: inline-block;
  margin-right: 20px;
}
.footer-top {
  padding: 20px 0 ;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.footer select{
border:0;   font-family: 'Hakgyoansim Allimjang';
  font-weight:400;    color: #61594f;border: 1px solid #ddd;

}
.footer select option{
   font-family: 'Hakgyoansim Allimjang';
  font-weight:400;    color: #61594f;
}
.footer-top .le{
  display: inline-block;
}

.footer-links a {
  text-decoration: none;
  margin-right: 20px;
}

.footright{
  display: flex;
}


.footer-bottom {
  text-align: center;
  font-size: 13px;
  color: #555;
}

.footer select{
  width: 100px;
}


@media(max-width:970px){
  #header #gnb,
  .hd_bg{
    display: none;
  }
    .user{
    display: none;
  }
  .footer-top{
    text-align: center;
  }
  .footer-top .le{
    display: block;
  }
  #header .menu_bar {
    display: block;
  }
  #header .inner{
    padding: 15px 0;
  }
  .footer.inner{
    padding:0;
  }
  .footer-links{
  width: 100%;
  }
  .footleft{
    width: 100%;
    display: flex;
    text-align: center;
  }
  .footer-links a{
    margin-right: 0;
  }
  .footright{
    margin-top: 20px;
  }
  .footer-list{
    flex-wrap: wrap;justify-content: center;
  }

  .footright .footer-links,
  .footright .footer_family{
   width: 50%;
        display: flex;
        align-items: center;
  }
  .footright .footer-links{
    display: flex;align-items: center;
    margin-right: 35px;
  }
  .logo .pc,
  .logo .m{
    width:130px;
  }
  .use_m .use_right.left{
    justify-content: flex-start !important;
  }

}
