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

#header { position: relative; height: 90px; 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; border-bottom: 1px solid rgba(255,255,255,.2);}
.sub #header {border-bottom-color: #ddd;}
#logo { position: relative; display: flex; justify-content: center; align-items: center; padding:0; z-index: 2; }
#logo a { display:block; width:107px; height: 35px; transition: all .3s ease; background: url('../img/logo_w.png') no-repeat; }


#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:60px; height: 100%; }
#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:16px; height: 100%; color:#fff; font-weight:400; word-break: keep-all; }
#top_nav .gnb > li > a::after { content: ""; position: absolute; bottom:  -1px; left:50%; transform:translateX(-50%); width: 0; height: 2px;
background-color:#506171; -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:100px; }
/* #top_nav .gnb > li > a.active::after { width:80px; background-color: #506171; } */

/*child_menu*/
#top_nav .gnb .snb { display: none; position: absolute; left:50%; transform:translateX(-50%); top:90px; height:70px; z-index:2; text-align: center; flex-wrap:nowrap; list-style:none; }
/* #top_nav .gnb > li:last-child .snb {transform: translateX(-75%); } */
#top_nav .gnb .snb li a { display: flex; align-items: center; text-align: left; font-weight: 300; padding:0 20px; letter-spacing: -.4px;
white-space: nowrap; font-size:14px; height:70px; color:#333; transition: all .3s ease; }
#top_nav .gnb .snb li a:hover { color:#506171; }
#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-bottom: 1px solid #ddd;}

/* hidden_nav */
#hd_right {display: flex; align-items: center; height: 100%; cursor: pointer;}
#hd_right h2 {font-size: 16px; font-weight: 500; color: #fff; transition: color .3s; margin-right: 8px;  font-family: 'Montserrat';}

.menu_slider_btn { position: relative; cursor: pointer; width: 32px; display: flex; flex-wrap:wrap;}
.menu_slider_btn span { display: block;  width: 100%; height: 2px; background: #fff; transition: all .3s ease; }
.menu_slider_btn span:nth-child(2) {width: 50%; margin-top: 7px; }


.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:120px 50px 0 50px; background: #fbfbfb; z-index: 10000; }

.h_lm { position: relative; margin-bottom:30px; }
.h_lm > a { display: block; position: relative; font-size:25px; font-weight: 500; color:rgba(0,0,0,.4) !important; transition: all .3s ease; max-width:180px;}
.h_lm > a:hover,
.h_lm > a.active { color:#506171 !important;}

.h_snb { display: none; position: absolute; left:180px; top:5px; z-index: 2;}
.h_snb li { margin-bottom:20px; }
.h_snb li a { font-size:16px; font-weight: 300; color:#999; 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 #506171; color:#506171;}

.menu_slider_btn2 { display: block; position: absolute; right:40px; top:50px; cursor: pointer; transform: translate(-50%, -50%); }
.menu_slider_btn2 span { display: block; width: 25px; height: 2px; border-radius: 3px; background:#506171; }
.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); }

/* hover */
@media screen and (min-width: 1025px) {
    #header_wrap:hover {background-color: #fff;}
    #header_wrap:hover #logo a {background-image: url('../img/logo.png');}
    #header_wrap:hover #header {border-bottom-color: #ddd; }
    #header_wrap:hover #top_nav .gnb > li > a {color: #000;}
    #header_wrap:hover .menu_slider_btn span {background-color: #000;}
    #header_wrap:hover #hd_right h2 {color:#000; }
}

/* sub */
#header_wrap.sub {background-color: #fff;}
#header_wrap.sub #logo a {background-image: url('../img/logo.png');}
#header_wrap.sub #header {border-bottom-color: #ddd; }
#header_wrap.sub #top_nav .gnb > li > a {color: #000;}
#header_wrap.sub .menu_slider_btn span {background-color: #000;}
#header_wrap.sub #hd_right h2 {color:#000; }


@media screen and (max-width: 1420px) {
    #header .header-inner { padding:0 50px; }

    #top_nav .gnb > li { margin-right: 40px; }
    #top_nav .gnb > li > a { font-size: 15px; }
    #top_nav .gnb .snb li a {padding:0 15px; letter-spacing: -.5px; font-size: 14px;}
}

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

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

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

    .scrolled #header_wrap {background-color: #fff;}
    .scrolled #header_wrap #logo a {background-image: url('../img/logo.png');}
    .scrolled #header_wrap #header {border-bottom-color: #ddd; }


}
