/**********************************************************
                        main_nav
***********************************************************/
#nav{
   font-weight: bold;
   position: fixed;
   top: 0;
   left: 0;
   z-index: 99;
   background-color: #fff;
}
.nav_pc{
   position: relative;
}
.nav_pc .nav_logo{
    width: 100%;
    height: 95px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.nav_pc .nav_logo img{
    width:144px; height: auto; vertical-align: middle;
}
.nav_pc .nav_login{
    position: absolute;
    top: 60px;
    right: 60px;
}
.nav_pc .nav_login > a {
   display: inline-block;
   border-radius: 15px;
   line-height: 25px;
   font-size: 16px;
   margin-right:20px;
}
.nav_pc .iedu_pd40{
    background: linear-gradient(135deg, rgba(182,255,184,1) 0%, rgba(254,255,109,1) 100%);
    max-width: 100%;
    padding:0px;
}
.nav_pc .nav_container {
   position: relative;
}
.nav_pc .underline-container {
    margin: 0 auto;
    max-width:780px;
    width:100%;
}
.nav_pc .nav_wrap {
   display: flex;
   justify-content: space-between;
}
.nav_pc .nav_wrap .nav_list {
   position: relative;
}
.nav_pc .nav_wrap .nav_list > a {
   font-family: "NotoSansCJKkr", sans-serif;
   display: inline-block;
   line-height: 65px;
   font-size: 22px;
}
.nav_pc .nav_wrap .nav_list > a > span.nav_dropdown {
   display: inline-block;
   width: 15px;
   height: 9px;
   margin-left: 10px;
   background: url(../../images/drop_black.png) no-repeat center center;
}
.nav_icons{
    width: 120px;
    position: absolute;
    cursor: pointer;
    bottom: 15px;
    right: 80px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav_box01{
}
.nav_box01 .nav_icon{
    display: block;
}
.nav_search_form{
    transition: all 0.5s;
    align-items: center;
    position:relative;
    display:none;
    opacity: 0;
}
.search_box{
    all: unset;
    width:180px;
    height: 30px;
    background-color: #fff;
    border: 1px solid #fff;
    border-radius:20px;
    box-shadow: 0px 0px 4px #ccc;
    padding-left: 10px;
}
.search_btn{
    position: absolute;
    right:10px;
}

.nav_icons .menu_tab{
    cursor: pointer;
}
.nav_icons span{
    display: block;
    width: 27px;
    height: 3px;
    background-color: #666666;
    transition: 0.3s;
    border-radius:15px;
}
.nav_icons span:nth-of-type(1){margin-top:0px;}
.nav_icons span:nth-of-type(2){margin-top:7px;}
.nav_icons span:nth-of-type(3){margin-top:7px;}

.nav_pc .side_menu{
    position:absolute;
    top:65px; right:0;
    background:#f2e9fb;
    border-bottom-left-radius: 20%;
    width:230px;
    height:0;
    overflow:hidden;
    transition: all 0.5s ease-in-out;
}
.nav_pc .side_menu.show{
    height: 320px;
}
.nav_pc .side_menu li{
    font-size: 18px;
    line-height:25px;
    margin-left:40px;
}
.nav_pc .side_menu li:nth-of-type(1){
    font-size: 17px;
    font-weight:900;
    margin-top:30px;
}
.nav_pc .side_menu li:nth-of-type(6){
    font-size: 17px;
    font-weight:900;
    margin-top:30px;
}

.nav_pc .navpc_bg {
   overflow: hidden;
   position: absolute;
   z-index: 9;
   top: 100%;
   left: 0;
   right: 0;
   width: 100%;
   height: 0;
   background: #fff;
   /* border-top: 1px solid transparent; */
   transition: all 0.3s ease-in-out;
}
.nav_pc .nav_inner {
   overflow: hidden;
   position: absolute;
   z-index: 9;
   top: 100%;
   left: 0;
   width: 100%;
   height: 0;
   background: #fff;
   /* border-top: 1px solid transparent; */
   transition: all 0.3s ease-in-out;
   max-width: 730px;
   width: 730px;
}
.nav_pc .nav_inner.two{
    left: 100px;
}
.nav_pc.roll .navpc_bg {
   height: 170px;
   border-top: 1px solid #ddd;
   box-shadow: 0 5px 26px 2px rgb(0 0 0 / 10%);
}
.nav_pc .nav_inner .nav_innerlist > a {
   font-family: "NotoSansCJKkr", sans-serif;
   display: inline-block;
   width: 100%;
   line-height: 20px;
   font-size: 16px;
   font-weight: lighter;
   color: black;
   margin-top:17px;
}
.nav_inner.i2 li a {
   color:#fff !important;
}
.nav_pc.roll .nav_inner.scd {
    height: 170px;
    border-top: 1px solid #ddd;
}
.nav_pc.roll .nav_inner.srd {
    height: 170px;
    border-top: 1px solid #ddd;
}

/* 네비 메뉴 중 첫번째 */
.nav_pc .nav_inner.i1{
    display: flex;
    max-width: 730px;
    width: 730px;
    flex-wrap: wrap;
    margin-left: -20px;
    padding-top: 0px;
    align-content: space-around;
}
.nav_pc .nav_inner.i1 .nav_innerlist{
    border-radius: 25px;
    padding: 0px 20px;
    vertical-align: middle;
    margin-right:5px;
}
.nav_pc .nav_inner.i1 .nav_innerlist > a {
   font-family: "NotoSansCJKkr", sans-serif;
   display: inline-block;
   width: 100%;
   line-height: 40px;
   font-size: 16px;
   font-weight: lighter;
   color: #000;
   margin-top:0px;
}
.nav_inner.i1 .nav_innerlist:nth-last-of-type(1){
    padding: 0px 30px;
}
.nav_pc .nav_inner.i1 .nav_innerlist:nth-of-type(1) a{
    color: #fff;
}
/* 첫번째 호버 */
.nav_pc .nav_inner.fir {
    display: flex;
    max-width: 730px;
    width: 730px;
    height: 150px;
    border-top: 1px solid #ddd;
    flex-wrap: wrap;
    margin-left: -20px;
    padding-top: 10px;
    align-content: space-around;
}
.nav_pc .nav_inner.fir .nav_innerlist{
    border-radius: 25px;
    padding: 0px 20px;
    vertical-align: middle;
    margin-right:5px;
}
.nav_pc .nav_inner.fir .nav_innerlist > a {
   font-family: "NotoSansCJKkr", sans-serif;
   display: inline-block;
   width: 100%;
   line-height: 40px;
   font-size: 16px;
   color:#000;
   font-weight: lighter;
   margin-top:0px;
}

.nav_pc .nav_inner.fir .nav_innerlist:nth-of-type(1) a{
    color: #fff;
}
.nav_inner.fir .nav_innerlist:nth-last-of-type(1){
    padding: 0px 30px;
}
/* ============================== */

.nav_pc .nav_list .nav_inner .nav_innerlist > a:hover {
   /* color: #fff; */
}
.nav_mo,
.nav_mobtn {
   display: none;
}

/* 언더라인 이벤트  */
.underline-container {
   position: relative;
}
.underline {
   content: "";
   display: block;
   position: absolute;
   left: 0;
   right: auto;
   bottom: 0;
   width: auto;
   height: 0;
   background: green;
   transition: 0.2s ease-in-out;
   -webkit-transition: 0.2s ease-in-out;
}
.underline.active {
   height: 2px;
}

/**********************************************************
                      responsive
***********************************************************/
@media screen and (max-width: 1023px) {
   .nav_pc {
      position: fixed;
      z-index: 9999;
      top: 0;
      left: 0;
      width: 100%;
      min-width: 320px;
      background: #fff;
      transition: all 0.3s linear;
   }
   .nav_pc.active {
      box-shadow: 0 5px 26px 2px rgb(0 0 0 / 10%);
   }
   .nav_container {
      justify-content: center;
      height: 65px;
   }
   .nav_pc .nav_wrap,
   .nav_pc .nav_login {
      display: none;
   }
   .nav_mobtn {
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
      cursor: pointer;
   }
   .nav_mobtn > img {
      width: 40px;
   }
   .nav_mo {
      display: block;
      overflow: auto;
      position: fixed;
      z-index: -1;
      top: 160px;
      left: -100%;
      width: 70%;
      min-width: 320px;
      height: calc(100% - 160px);
      padding: 20px 30px 0 30px;
      background: #fff;
      border-top: 1px solid #dddddd;
      transition: all 0.3s ease-in-out;
   }
   .nav_mo.active {
      z-index: 9999;
      left: 0;
      box-shadow: 10px 10px 15px rgb(0 0 0 / 10%);
   }
   .nav_mologin {
      margin-left: -10px;
   }
   .nav_mologin > a {
      display: flex;
      align-items: center;
      padding: 10px 0 20px;
      font-size: 30px;
      color: #8abb2a;
      font-weight: 600;
   }
   .nav_mologin > a > span {
      display: inline-block;
      width: 30px;
      height: 30px;
      margin-right: 5px;
      background: url('../../images/nav_mologin.png') no-repeat center center;
      background-size: cover;
   }
   .nav_mocate {
      width: 100%;
      margin-bottom: 15px;
   }
   .nav_mocate > p {
      position: relative;
      width: 100%;
      line-height: 50px;
      font-size: 25px;
      font-weight: 600;
      color: #000;
      cursor: pointer;
   }
   .nav_mocate > p:after {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      width: 16px;
      height: 10px;
      transform: translateY(-50%);
      background: url(../images/nav_modown.png) no-repeat center center;
   }
   .nav_mocate .nav_mowrap {
      overflow: hidden;
      max-height: 0;
      transition: all 0.3s ease-in-out;
   }
   .nav_mocate.active .nav_mowrap {
      max-height: 420px;
   }
   .nav_mocate.active > p:after {
      background: url(../images/nav_moup.png) no-repeat center center;
   }
   .nav_molist > a {
      display: block;
      padding-left: 20px;
      line-height: 42px;
      font-size: 20px;
      font-weight: lighter;
      color: #737373;
      letter-spacing: 0.5px;
   }
   .nav_mo .search_side_btn{
       position: absolute;
        left: 9%;
        top: 32%;
   }
   .nav_mo .searchbar{
       all: unset;
       width: 180px;
       height: 30px;
       background-color: #fff;
       border: 1px solid #fff;
       border-radius: 20px;
       box-shadow: 0px 0px 4px #ccc;
       padding-left: 40px;
   }
}
@media screen and (max-width: 640px) {
   .nav_mo {
      width: 100%;
   }
}
@media screen and (max-width: 500px) {
   .nav_mobtn > img {
      width: 30px;
   }
   .nav_mologin > a {
      font-size: 24px;
   }
   .nav_mologin > a > span {
      width: 20px;
      height: 20px;
   }
   .nav_mocate > p {
      line-height: 40px;
      font-size: 20px;
   }
   .nav_molist > a {
      line-height: 32px;
      font-size: 14px;
   }
   .nav_mo{
       top: 60px;
       height:calc(100% - 60px);
       overflow-y: scroll;
   }
   .nav_container{height:10px;}
   .nav_pc .nav_logo{height: 60px;}
   .nav_pc .nav_logo img{width: 120px;}
   .nav_icons{
       width: 90%;
       bottom: 0px;
       right: 0;
       left: 0px;
       top: -70px;
       margin: auto;
   }
   .nav_icons span:nth-of-type(2){margin-top: 5px;}
   .nav_icons span:nth-of-type(3){margin-top: 5px;}
   .nav_icons img:nth-of-type(1){display:none;}
   /* .nav_icons .nav_box01 img:nth-of-type(1){display:block;} */
   .nav_pc .side_menu{display:none;}
}
