/*Content CSS*/
#header_wrap { position:fixed; left:0; top:0; width:100%; z-index:57; background: #fff; -webkit-transition:all .3s ease;-moz-transition: all .3s ease;-ms-transition: all .3s ease;-o-transition: all .3s ease; transition: all .3s ease; border-bottom: 1px solid transparent; height:90px;}
#header_wrap .header-inner { position: relative; display: flex; justify-content: space-between; align-items: center; max-width:1700px; width: 100%;
height:100%; margin:0 auto; z-index: 10; padding: 0 50px;}

#header { position: relative; height:100%; width: 100%; max-width: 100%;  z-index:6; -webkit-transition:all .3s ease; -moz-transition: all .3s ease; -ms-transition: all .3s ease; -o-transition: all .3s ease;transition: all .3s ease;  }
#logo { position: relative; display: flex; justify-content: center; align-items: center; padding:0; z-index: 2; }
#logo a { display:block; width:267px; height: 52px; transition: all .2s ease; background: url('../img/logo.png') no-repeat; background-size: contain; background-position: left 50%;}


#top_nav { display: flex; height: 100%; align-items: center;}
#top_nav .gnb { list-style:none; display: flex; justify-content: flex-end; padding:0; height: 100%; }
#top_nav .gnb > li { position: relative; display:block; width:auto; text-align:center; margin-right:65px; height: 100%; transition: all .3s;}
#top_nav .gnb > li:last-child { margin-right:0;}
#top_nav .gnb > li { -webkit-transition: all .4s ease; -moz-transition: all .3s ease; -ms-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; height:100%; }
#top_nav .gnb > li > a { display: flex; align-items: center; font-size:21px; height: 100%; color:#000; font-weight:500; word-break: keep-all; transition: all .3s;}
#top_nav .gnb > li > a::after { content: ""; position: absolute; bottom: -2px; left:50%; transform:translateX(-50%); width: 0; height: 3px;
background-image: linear-gradient(to left, #00a650, #7bca4d); -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.4s; -ms-transition: all 0.3s; transition: all 0.3s;}
#top_nav .gnb > li > a:hover::after,
#top_nav .gnb > li.active > a::after { width:142px; }
/* #top_nav .gnb > li > a.active::after { width:80px; background-color: #00a650; } */

/*child_menu*/
#top_nav .gnb .snb { display: none; position: absolute; left:0; top:90px; height:80px; z-index:2; text-align: center; flex-wrap:nowrap; list-style:none; }
#top_nav .gnb > li:nth-child(n+4) .snb {transform: translateX(-74%); }
#top_nav .gnb .snb li a { display: flex; align-items: center; text-align: left; font-weight: 400; padding:0 32px; letter-spacing: -.4px;
white-space: nowrap; font-size:17px; height:70px; color:#666; transition: all .3s ease; }
#top_nav .gnb .snb li a:hover { color:#00a650; }
#top_nav .gnb .snb li:first-child a {padding-left:7px;}
/* #top_nav .gnb .snb li a.active { color:#000; } */

.snb_bg { display: none; position: absolute; left:0; right:0; top:90px; height: 70px; background-color:#fff;  z-index: -1; border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd; }

/* hidden_nav */
#hd_right {display: flex; align-items: center; height: 100%; position: relative; margin-left: 107px; }
.menu_slider_btn {  position: relative; cursor: pointer; width: 36px; display: flex; flex-wrap:wrap; }
.menu_slider_btn span { display: block;  width: 100%; height: 2px; background: #000; transition: all .3s ease; }
.menu_slider_btn span:nth-child(n+2) {margin-top: 6px; }
.menu_slider_btn span:nth-child(1) {width: 18px; background-color: #00a650; margin:0 0 0 auto;}
.menu_slider_btn span:nth-child(3) {width: 27px;}

.hidden_nav_box { display: none; position: fixed; top: 0; bottom:0; right:0; left: 0; background: rgba(0,0,0,0.7); z-index: 9999; }
.hidden_nav { position:fixed; top:0; right: -450px; width: 450px; height: 100vh;  padding:50px 50px 50px 50px; background: #fbfbfb; z-index: 10000; overflow-y: auto; }
.hidden_nav::-webkit-scrollbar {
    width: 6px;
}
.hidden_nav::-webkit-scrollbar-thumb {
    background-color: rgba(0,166,80,.15);
    border-radius: 10px;
    /* height: 15px; */
}
.hidden_nav::-webkit-scrollbar-track {
    background-color: rgba(166,185,211,.2);
}


.h_lm { position: relative; margin-bottom:20px; padding-bottom:20px; border-bottom: 1px solid #ddd; }
.h_lm > a { display: inline-block; position: relative; font-size:23px; font-weight: 600; color:rgba(0,0,0,1) !important; transition: all .3s ease; }
/* .h_lm > a:hover,
.h_lm > a.active { color:#000 !important;} */
.h_lm:last-child {border-bottom: 0; padding-bottom: 0; margin-bottom:0;}

.h_snb {margin-top:15px;}
.h_snb li { margin-bottom:10px; }
.h_snb li a { font-size:16px; font-weight: 300; color:#707070; transition: all .3s ease; border-bottom:2px solid transparent; padding:2px 0;
white-space: nowrap; }
.h_snb li a:hover { padding:2px 15px; border-bottom:2px solid #00a650; color:#00a650;}

.menu_slider_btn2 { display: block; position: absolute; right:30px; top:50px; cursor: pointer; transform: translate(-50%, -50%); width:35px; height: 35px;
display: flex; flex-direction: column; justify-content: center; z-index: 2; align-items: center;}
.menu_slider_btn2 span { display: block; width: 25px; height: 2px; border-radius: 3px; background:#00a650; }
.menu_slider_btn2 span:nth-child(1) { margin:0; transform: rotate(45deg);}
.menu_slider_btn2 span:nth-child(2) { display: none; transform: rotate(45deg); }
.menu_slider_btn2 span:nth-child(3) { margin-top: -2px; transform: rotate(135deg); }

/* scroll header */
/* .scrolled #header_wrap #header #logo a {background-image: url('../img/logo.png');} */

@media screen and (min-width: 1025px) {
	.scrolled #header_wrap {height: 60px; border-bottom-color: #ddd;}
    .scrolled #logo a {height: 35px;}
	.scrolled #top_nav .gnb > li > a { font-size: 17px;}
    .scrolled #top_nav .gnb .snb {top:60px;}
    .scrolled #top_nav .gnb .snb li a {font-size: 15px;}
	.scrolled .snb_bg {top:59px;}
}



@media screen and (max-width: 1400px) {
    #logo a {background-position:0 center; background-size: contain; width: 200px;}

    #top_nav .gnb > li { margin-right: 50px; }
    #top_nav .gnb > li > a { font-size: 18px; }
    #top_nav .gnb .snb li a {padding:0 20px; letter-spacing: -.5px; font-size: 15px;}
    #hd_right {margin-left: 50px; }
}

@media screen and (max-width: 1024px) {
    #top_nav .gnb { display: none; }
    #hd_right { display: none; }
    #logo a {height: 32px; background-position: center;}

    #header .header-inner { justify-content: center; padding: 0 20px; }

    #header_wrap,
    #header_wrap.sub { height: 60px; position:fixed; }
    #header {height: 60px;}

    /* scroll */
    .scrolled #header_wrap {border-bottom-color: #ddd;}

}
