
/*Content CSS*/
#header_wrap { position:absolute; left:0; top:0; width:100%; height:90px; 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; background-color: #fff; border-bottom:1px solid rgba(255,255,255,.2); }
#header { position: relative; display: flex; justify-content: space-between; 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; }
#header .header-inner { position: relative; display: flex; justify-content: space-between; align-items: center; height:100%; margin:0 auto; z-index: 10; padding:0 145px 0 95px; width:100%;}

/* logo */
#logo {flex-shrink: 0;}
#logo a {display: flex; align-items: center; justify-content: center; position: relative;}

#top_nav { display: flex; height: 100%;}
#top_nav .gnb { list-style:none; display: flex; justify-content: flex-end; padding:0; height: 100%;}
#top_nav .gnb > li { display:block; width:auto; text-align:center; height: 100%;}
#top_nav .gnb > li { -webkit-transition: all .3s 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:#111; font-weight: 600; transition: all .3s; white-space: nowrap; position: relative; padding: 0 28.5px;}
#top_nav .gnb > li > a::after{content: ''; display: block; width: 0; height: 2px; background-color: #018bd3; position: absolute; top: calc(100% - 1px); left: 51%; transform: translateX(-50%); z-index: 10; transition: .3s;}
#top_nav .gnb > li > a:hover { color:#018bd3; }

#top_nav .hd_inner{width: 100%; height: 100%; margin: 0 auto; display: flex; }


/*snb*/
/* full_menu */
#top_nav .full_menu {display: none; width: 100%; height: 240px; position: absolute; left:0; top:100%; overflow-x: auto; text-align: left;}
#top_nav .full_menu::-webkit-scrollbar {width: 8px;}
#top_nav .full_menu::-webkit-scrollbar-thumb { background-color: #aaa; border-radius: 10px; height: 15px; }
#top_nav .full_menu::-webkit-scrollbar-track {background-color: #eee;}
#top_nav .gnb .snb { text-align: left; position: relative; z-index: 2; display: flex;  flex-wrap: wrap; max-width: 840px;}
#top_nav .gnb .snb > li { position: relative;  display: block; width: 160px; margin-right: 70px; margin-bottom: 50px;}
#top_nav .gnb .snb > li.long { width: 270px;}


#top_nav .gnb .snb > li > a { display: flex; align-items: center; font-weight: 600; font-size:18px; color:#000; line-height: 1.3; transition: all .3s; width: 100%;
padding-bottom: 11px; border-bottom: 1px solid #ddd; justify-content: space-between;}
#top_nav .gnb .snb > li > a::after {content: ''; display: block; width: 6px; height: 10px; transition:all .3s; background:url("../img/menu_arrow.png") 50%/contain no-repeat;}
#top_nav .gnb .snb > li > a:hover {color: #000033; border-bottom-color: #000033; }
#top_nav .gnb .snb > li > a:hover::after { background-image:url("../img/menu_arrow_hv.png") }


#top_nav .hd_title {width: 32%; max-width: 580px; height: 100%; display: flex; padding-top: 60px; justify-content: center;}
#top_nav .hd_title h2 {font-size: 42px; font-weight: 700; color:#fff;}
#top_nav .hd_title p {font-size: 0; font-weight: 400; color: rgba(255, 255, 255, 0.8); line-height: 1.44; margin-left: 48px;}
#top_nav .hd_title p::before {content: '세계 수준의 공과대학\A 충남대학교 유기재료공학과'; font-size: 16px; white-space:pre;}



#top_nav .fm_wrap {width: 68%; padding-left: 100px; padding-top: 60px;}

.snb_bg { display: none; position: absolute; left:0; right:0; top:90px; height: 239px; background: #fff; z-index: -1;  }
.snb_bg::before {content: ''; display: block; width: 32%; max-width: 580px; height: 100%; position: absolute; z-index: -1; left: 0; top:0; background-color: #000033;}

/* hd_right */
#hd_right{position: absolute; top: 0; right: 0; width: 90px; height: 91px;;}
.menu_slider_btn {display: flex; align-items: center; justify-content: center; background-color: #003; width: 90px; height: 100%; cursor: pointer;}


/* hidden_nav */
.hidden_nav_box { display: none; position: fixed; top: 0; bottom:0; right:0; left: 0; background: rgba(5,5,12,.48); z-index: 9999; backdrop-filter: blur(10px);}
.hidden_nav_box.hv {z-index: 56; }

.hidden_nav {text-align: center; width: 550px; height: 100vh; position: fixed; top: 0; right: -550px; position: fixed; text-align: left; padding:90px 50px 0 50px; background: #fbfbfb; z-index: 10000;}
.hidden_nav .hidden_gnb  { width: 100%; }
.h_lm {margin-bottom:50px; position: relative; }
.h_lm:last-child{margin-bottom: 0;}
.h_lm > a {display: block; font-size:25px; font-weight: 700; color:rgba(0,0,0,.5) !important; transition: all .3s ease; max-width:140px;  position: relative;text-transform: uppercase;  }
.h_lm:hover > a, .h_lm > a.active {color:rgba(0,0,0,1) !important;}

.h_snb {display: none; position: absolute; left:180px; top:5px; z-index: 2;}
.h_snb li {margin-bottom:25px;}
.h_snb li a {font-size:17px; font-weight: 400; color:#000000; transition: all .3s ease; border-bottom:2px solid transparent; padding:2px 0; white-space: nowrap; }
.h_snb li a:hover {padding:5px 15px; border-bottom:2px solid #000033; color:#000033;}

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


#header_wrap .select_lang{display: flex;}
#header_wrap .select_lang li a{font-size: 17px; font-weight: 500; line-height: 1; color: #000; opacity: 0.3; transition: .3s;}
#header_wrap .select_lang li.active a{opacity: 1;}
#header_wrap .select_lang li::after{content: ''; display: inline-block; width: 1px; height: 13px; background-color: #cdcdcd; margin: 0 9px; }
#header_wrap .select_lang li:last-child::after{display: none;}


.hd_lists{display: flex; align-items: center;}
#header_wrap .hd_link{display: flex; flex-wrap: wrap; justify-content: center; margin-right: 40px; }
#header_wrap .hd_link li + li{margin-left: 7px;}
#header_wrap .hd_link li a{display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; background-color: rgba(255,255,255,.1); border-radius: 5px; width: 46px; height: 46px;}

#header_wrap .hd_link li a::before{content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; transition: .3s; opacity: 1; z-index: 0;}
#header_wrap .hd_link li a::after{content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; transition: .3s; opacity: 0; z-index: 0; background-color: #000;}

#header_wrap .hd_link li:nth-child(1) a::before{background-color: #d1252a;}
#header_wrap .hd_link li:nth-child(2) a::before{background-color: #445d97;}
#header_wrap .hd_link li:nth-child(3) a::before{background: linear-gradient(320deg, #f0c74a, #ea6323, #e73340, #e52370, #c03b90, #964495, #5a4b9c);}

#header_wrap .hd_link li img{position: relative; z-index: 2;}
#header_wrap .hd_link li span{position: relative; font-size: 14px; font-weight: 600; color: #fff; transition: .3s; line-height: 1.7; margin-left: 5px;}


/* hover */
@media screen and (min-width: 1025px) {
#header_wrap:hover {border-bottom-color: #ddd;}


#header_wrap:hover .menu_slider_btn span {background-color: #000; }
#header_wrap:hover .menu_slider_btn span:first-child {background-color: #018bd3; }

#header_wrap .select_lang li a:hover{opacity: 1;}

/* #top_nav .gnb >  li a{color:rgba(17, 17, 17, 0.5);} */
#top_nav .gnb:hover > li a{color: rgba(17, 17, 17, 0.5);}
#top_nav .gnb:hover > li:hover a{color: #000;}

#header_wrap .hd_link li:hover a::after{opacity: .5;}
}





/* media query */
@media screen and (max-width: 1600px) {
    #header .header-inner{padding: 0 120px 0 30px;}
    #top_nav .gnb > li > a{font-size: 20px; padding: 0 22.5px;}

    #top_nav .full_menu, .snb_bg  {height: 200px;}
    #top_nav .gnb .snb {max-width: 100%;}
    #top_nav .gnb .snb > li {width: 160px; margin-right: 60px; margin-bottom: 0;}
    #top_nav .gnb .snb > li.long { width: 260px;}


    #top_nav .gnb .snb > li > a {font-size:17px; }

    #top_nav .full_menu, .snb_bg  {height: 200px;}

    #top_nav .hd_title {flex-direction:column; align-items: flex-start; padding: 0 50px;}
    #top_nav .hd_title h2 {font-size: 36px;}
    #top_nav .hd_title p {margin: 20px 0 0 0;}
    #top_nav .hd_title p::before {font-size: 15px;}


    #top_nav .fm_wrap { padding-left: 50px; padding-top: 0; display: flex; align-items: center;}
    #header_wrap .hd_link{margin-right: 25px;}
    #header_wrap .hd_link li a{width: 35px; height: 35px;}
    #header_wrap .hd_link li a img{width: 18px;}
}

@media screen and (max-width: 1400px) {
    #logo a{width: 187px;}
    #top_nav {margin-left: 0;}

    #top_nav .full_menu, .snb_bg  {height: 200px;}

    #top_nav .gnb > li > a {padding: 0 20px; font-size: 18px;}
    #top_nav .gnb .snb > li {margin-right: 50px; width: 130px;}

    #header_wrap .select_lang li a{font-size: 15px;}

    #top_nav .hd_title {flex-direction:column; align-items: flex-start;}
    #top_nav .hd_title h2 {font-size: 36px;}
    #top_nav .hd_title p {margin: 20px 0 0 0;}
    #header_wrap .hd_link{margin-right: 20px;}

}

@media screen and (max-width: 1280px) {
    #top_nav .gnb > li > a {padding: 0 10px;}
    #header .header-inner {padding: 0 110px 0 20px;}

    #top_nav .hd_title{padding: 0 30px;}
    #top_nav .hd_title h2{font-size: 30px;}
    #top_nav .hd_title p{margin-top: 15px;}
    #top_nav .hd_title p::before{font-size: 14px;}

    #top_nav .gnb .snb > li{margin-right: 35px; margin-bottom: 0px;}
    #top_nav .gnb .snb > li > a {font-size:15px; }
    #top_nav .fm_wrap{padding-left: 30px;}

    #top_nav .full_menu, .snb_bg{height: 170px;}

    #header_wrap .hd_link{margin-right: 15px;}
    #header_wrap .hd_link li a{width: 30px; height: 30px;}
    #header_wrap .hd_link li a img{width: 17px;}
    #logo a{width: 150px;}

}

@media screen and (max-width: 1024px) {

    #header_wrap { position: fixed; height: 60px; }
    #header .header-inner { justify-content: center; padding: 0 20px;}

    #top_nav,
    #hd_right,
    #header_wrap .select_lang { display: none; }

    #logo a {width: auto; }
    #logo a img {width: auto; max-height:35px; }

    .scrolled #header_wrap {border-color:#ddd; }

    #header_wrap .hd_link {display: none;}



}
