@charset "utf-8";


/* layout */
html, body { height:100%;}
body { color:#686868; letter-spacing:-.05em; -webkit-text-size-adjust:none; -webkit-font-smoothing:antialiased;}
#wrap {	position:relative; width:100%; min-width:320px;height:100%; font-size:1.6rem; }
.f-inner{max-width: 100%; width: 1920px; position: relative; margin-left: auto; margin-right: auto;}
.inner {	width:1600px;	position:relative;	margin-left:auto;	margin-right:auto;}
.s-inner {	width:1400px;	position:relative;	margin-left:auto;	margin-right:auto;}


@media all and (max-width:1903px){
	.f-inner{width: 100%;}
}
@media all and (max-width:1599px) {	
	.inner {width:94%;}
}
@media all and (max-width:1399px){
	.s-inner {width:94%;}
}

/* header */
#header{position: fixed; z-index: 100; top: 0; left: 0; width: 100%; height: 100px; background-color: #fff; border-bottom: 1px solid #eee;}
#header .inner{padding:0 100px; height: 100%; width: 100%; display: flex; align-items: center; justify-content: space-between; max-width: 100%;}
#header .inner #logo{flex:0 0 auto;}
#header .inner #logo img{max-width: 100%;}


#header #gnb_pc{width: 100%;}
#header #gnb_pc > ul{display: flex; justify-content: center; }
#header #gnb_pc > ul > li{position: relative;}
#header #gnb_pc > ul > li > div{}
#header #gnb_pc > ul > li > div > span{}
#header #gnb_pc > ul > li > div > span > a{display: block; padding: 0 23px; line-height: 100px; color: #222; font-size: 1.9rem; transition: .2s ease-in-out; text-align: center; font-weight: 600;}
#header:hover #gnb_pc > ul > li > div > span > a{color: #000;}
#header.on #gnb_pc > ul > li > div > span > a{color: #000}
#header #gnb_pc > ul > li > ul{display: none; position: absolute; left: 50%; transform: translateX(-50%); width: 190px; text-align: center; background-color: rgba(31, 96, 148, 0.95); padding: 0px 0;}
#header #gnb_pc > ul > li > ul > li > a{display: block; padding: 15px 0;  color: #fff; font-size: 1.6rem; font-weight: 500; border-bottom: 1px solid rgba(255,255,255,0.1);}
#header #gnb_pc > ul > li > ul > li:last-child a{border-bottom: 0;}
#header #gnb_pc > ul > li > ul > li:hover > a{}

.call{flex:0 0 auto; height: 50px;}
.call a{margin:2px; display: inline-block; vertical-align: middle;}
.call a .img img{max-width: 100%;}


#menuToggle {display: none; position:absolute; right:72px; top: 37px; width:32px; height:27px; cursor:pointer; z-index:101; }
#menuToggle.on{position: fixed; display: block; z-index: 1002}
#menuToggle span {display:block; position:absolute; right:0; height:2px; background:#000; transition:0.5s all; -webkit-transition:0.5s all;}
.on #menuToggle span {background-color: #000;}
header:hover #menuToggle span {background-color: #000;}
#menuToggle span.t {top:0; width:100%}
#menuToggle span.m {top:50%; margin-top:-1px; width:100%}
#menuToggle span.b {bottom:0; width:100%;}

#menuToggle.on span.t{width: 100%; background-color:#000; transform: translateY(9px) rotate(45deg); top: 7px;}
#menuToggle.on span.m{width: 0;}
#menuToggle.on span.b{width: 100%; background-color:#000; transform: translateY(-4px) rotate(-45deg); bottom: 5px;}
@media all and (max-width:1670px){
    #header .inner{padding: 0 20px;}
}
@media all and (max-width:1500px){
    #header #gnb_pc > ul > li > div > span > a{padding: 0 13px;}
    #header #gnb_pc > ul > li > ul{width: 150%;}
}
@media all and (max-width:1340px) {
    #header #gnb_pc > ul > li > div > span > a{font-size: 1.7rem;padding: 0 10px;}
    #header .inner #logo{flex: 0 1 auto;}
}
@media all and (max-width:1170px){
	#header{height: 60px; min-width: auto;}
	#header .inner{width: 100%; padding-right:70px;}
	#header .inner #logo{max-width: 200px;}
    .call{height: 40px;}
    .call a .img{width: 35px;}

	#header #gnb_pc{display: none;}
	#header #menuToggle{right: 2%; top:18px; width: 28px; height: 22px; display: block;}
	#menuToggle.on span.t{top: 2px;}
    
}
@media all and (max-width:460px){
    #header .inner {padding: 0 45px 0 10px;}
    #header .inner #logo{max-width: 180px;}
}



.menu_bg{width: 100%; height: 100%; background-color: rgba(0,0,0,0.8);position: fixed; left: 0; top: 0; visibility: hidden; opacity: 0; z-index: 999; transition: .4s ease;}
.menu_bg.on{visibility: visible; opacity: 1;}

@media all and (min-width:1025px){
	#header #gnb_mo{position: relative; display: none; background-color: #fff; width: 100%; position: fixed; top: 0; left: 0; z-index: 1001; padding: 70px 0;}
	#header #gnb_mo.on{display: block;}

   
	#header #gnb_mo > ul{max-width: 1600px; margin: 0 auto; display: flex;}
	#header #gnb_mo > ul > li{width: 25%; border-right: 1px dotted #eee; padding: 0 30px;}
	#header #gnb_mo > ul > li:last-child{border-right: 0px;}
	#header #gnb_mo > ul > li > div{font-size: 1.8rem; font-weight: 500; text-align: center;}
	#header #gnb_mo > ul > li > div > span{}
	#header #gnb_mo > ul > li > div > span > a{ color: #000;}
	#header #gnb_mo > ul > li:hover > div > span > a{color: #57a432;}
	#header #gnb_mo > ul > li > ul{text-align: center; margin-top: 15px;}
	#header #gnb_mo > ul > li > ul > li{}
	#header #gnb_mo > ul > li > ul > li > a{ font-size: 1.5rem; color: #666; font-weight: 400; display: block; padding: 5px 0;}
	#header #gnb_mo > ul > li > ul > li:hover > a{color: #57a432;}
}


@media all and (max-width:1024px){
	#header #gnb_mo { position:fixed; height:100%; z-index:1001; right:0;  top:0; padding:100px 0px 2%; background:#fff; transition: .2s ease;
					color:#FFF; width:100%; max-width:320px; box-sizing:border-box;
					-webkit-transform: translateX(100%) rotate(0); -moz-transform: translateX(100%) rotate(0); -ms-transform: translateX(100%) rotate(0); -o-transform: translateX(100%) rotate(0);
				   transform: translateX(100%) rotate(0);
	}

	#header #gnb_mo.on{	-webkit-transform: translateX(0) rotate(0); -moz-transform: translateX(0) rotate(0);	-ms-transform: translateX(0) rotate(0);	-o-transform: translateX(0) rotate(0);	transform: translateX(0) rotate(0); }

	#header #gnb_mo .gnb_dp1 div { font-weight:700;  padding:2rem 2rem; cursor:pointer; border-bottom: 1px solid rgba(0,0,0,0.075); font-size: 1.6rem; transform: skew(0.1deg)}
	#header #gnb_mo .gnb_dp1 > div > span a { color:#000; }
	#header #gnb_mo .gnb_dp1 > div.on > span a { color:#57a432; }

	#header #gnb_mo .smenu {display:none;  background-color: #fff; background-color: #fafafa;}
	#header #gnb_mo .smenu > li{border-bottom: 1px solid #f3f3f3;}
	#header #gnb_mo .smenu > li:last-child{border-bottom: 0;}
	#header #gnb_mo .smenu>li br{display:none;}
	#header #gnb_mo .smenu>li>a,
	#header #gnb_mo .smenu>li>span {display:block; padding:1rem 1rem 1rem 3rem; color:#666; border-bottom: 1px solid rgba(255,255,255,0.075); font-size: 1.4rem; transform: skew(0.1deg)}
	#header #gnb_mo .smenu>li>a:hover,
	#header #gnb_mo .smenu>li>span:hover{ color:#fff; background-color: #57a432;}


    #header #gnb_mo .mo-logo{padding:0 30px; max-width: 70%; position: absolute; left: -1rem; top: 18px;}
    #header #gnb_mo .mo-logo a{display: block; width: 100%; height: 100%;}
    #header #gnb_mo .mo-logo img{max-width: 100%;}

}



/* footer */
#footer {	width:100%;	clear:both;	position:relative;	margin:0 auto;	background:#2c2f34;  padding: 50px 0; text-align: center;}
#footer .info{margin-top: 35px;}
#footer .info span{font-size: 1.6rem; color: #686f79; display: inline-block; margin: 0 10px;}
#footer .copy{font-family: 'Poppins', sans-serif; font-size: 1.4rem; color: #696f7a; opacity: 0.5; margin-top: 15px;}

@media all and (max-width:976px){
    #footer{padding: 50px 0 40px;}
    .f_logo img{max-width: 200px;}
    #footer .info{margin-top: 25px;}
    #footer .info span{line-height: 1.7em;}
}