body{text-align:center;}

.blind{position:absolute;left:0;top:0;width:100%;height:100%;background:#000;opacity:1;z-index:99999;}

img{max-width:100%;}
.m-block{display:none;}

#wrap{}

#header{position:absolute;left:0;top:0;width:100%;padding:30px 0;z-index:90;box-sizing:border-box;}
#header header{max-width:1160px;margin:0 auto;position:relative;}
#header header:after{clear:both;display:block;content:'';}
#header .top-logo{float:left;}
#header .top-navi{float:right;}

#header.open{background-color:rgba(255,255,255,0.9);height:300px;box-shadow:0 1px 5px rgba(0,0,0,0.2);}
#header.open .gnav > li > ul{display:block;}

.gnav{}
.gnav > li{float:left;position:relative;}
.gnav > li > a{display:block;height:33px;line-height:33px;font-size:20px;color:#000;box-sizing:border-box;font-family:'NGB';transition:all 0.3s;text-transform: uppercase;padding:0 22px;}
.gnav > li > a span{position:relative;}
.gnav > li > a span:after{display:block;width:0;height:3px;content:'';background-color:#157dbc;position:absolute;left:0;top:28px;transition:all 0.3s;}
/*
.gnav > li > a:hover span:after{width:100%;}
*/
.gnav > li.active > a span:after{width:100%;}
.gnav > li.on > a span:after{width:100%;}
.gnav > li.on > a{}
.gnav > li > ul{position:absolute;left:0;top:33px;text-align:left;padding:18px 0 0 22px;display:none;width:100%;box-sizing:border-box;}
.gnav > li > ul a{display:block;padding:6px 0 7px;color:#8c9096;font-size:14px;font-family:'NGB';transition:all 0.3s;white-space:nowrap;letter-spacing:-0.5px;}
.gnav > li > ul a:hover{color:#000;}
.gnav:after{clear:both;display:block;content:'';}

.btn-menu{position:absolute;right:0px;top:8px;display:none;}
.btn-menu button{display:block;width:50px;height:50px;background:url(/img/layout/btn_menu.png) center center no-repeat;background-size:30px auto;text-align:left;text-indent:-9999px;}

.blind{position:fixed;left:0;top:0;bottom:0;right:0;background:#000;opacity:0;z-index:99999;display:none;}
.sidr{position:fixed;top:0;left:-260px;height:100%;z-index:999999;width:260px !important;font-size:15px;background:#333332;}
#sidr .gnav-top{padding:20px 20px;text-align:left;}
#sidr .gnav-top img{height:20px;}
#sidr .gnav-top .close{width:35px;height:35px;display:inline-block;text-align:left;text-indent:-9999px;overflow:hidden;background:url(/img/layout/btn_close.png) center center no-repeat;background-size:20px 20px;position:absolute;right:10px;top:13px;}
#sidr .gnav-top:after{clear:both;display:block;content:'';}

#sidr .m-navi{border-top:1px solid #484847;text-align:left;}
#sidr .m-navi > li{border-bottom:1px solid #484847;text-align:left;}
#sidr .m-navi > li > a{display:block;padding:15px 0 15px 20px;font-size:14px;color:#bfbfbf;}
#sidr .m-navi-sub{background:#292928;display:none;padding:10px 0;}
#sidr .m-navi-sub a{display:block;padding:8px 0 8px 30px;color:#9d9d9d;font-size:13px;}
#sidr .m-navi > li.on > a{color:#fff;font-weight:600;}
#sidr .m-navi > li.on > ul{display:block;}


#footer{border-top:1px solid #222222;}
.footer-link{border-bottom:1px solid #d4d4d4;}
.footer-link > div{max-width:1160px;margin:0 auto;position:relative;box-sizing:border-box;padding:22px 0;}
.footer-link > div:after{clear:both;display:block;content:'';}
.footer-link ul li{position:relative;vertical-align:top;height:20px;line-height:20px;}
.footer-link ul li + li:before{position:absolute;left:0;top:4px;width:1px;height:12px;content:'';background-color:#d4d4d4;}
.footer-link .fl{float:left;}
.footer-link .fl li{float:left;padding-right:15px;}
.footer-link .fl li + li{padding-left:15px;}
.footer-link .fr{float:right;}
.footer-link .fr li{float:left;padding-left:15px;text-transform: uppercase;}
.footer-link .fr li + li{margin-left:15px;}
.footer-link .link-download{background:url(/img/layout/icon_download.png) left 3px no-repeat;background-size:14px 13px;padding-left:20px;}
.footer-link .link-recruit{background:url(/img/layout/icon_recruit.png) left 3px no-repeat;background-size:14px 13px;padding-left:20px;}
.footer-link .link-contactus{background:url(/img/layout/icon_contactus.png) left 3px no-repeat;background-size:14px 13px;padding-left:20px;}
.footer-link .link-privacy{}
.footer-link a{display:block;font-size:12px;color:#666;}
#footer .site-info{max-width:1160px;margin:0 auto;position:relative;box-sizing:border-box;padding:20px 0 40px 142px;font-size:12px;text-align:left;background:url(/img/layout/footer_logo.png) left 20px no-repeat;color:#666;}
#footer .site-info p{margin-bottom:7px;}
#footer .site-info p span{margin-right:10px;}


/* sub *********************************************************/

.sub-visual{position:relative;height:300px;text-align:center;z-index:0;}
.sub-visual h2{position:absolute;left:0;top:45%;color:#fff;font-size:60px;width:100%;text-align:center;font-weight:normal;text-transform: uppercase;text-shadow:1px 1px 1px rgba(0,0,0,0.1);}
.sub-visual.aboutus{background:url(/img/layout/sub_visual1.jpg) center top no-repeat;}
.sub-visual.business{background:url(/img/layout/sub_visual2.jpg) center top no-repeat;}
.sub-visual.solution{background:url(/img/layout/sub_visual3.jpg) center top no-repeat;}
.sub-visual.portfolio{background:url(/img/layout/sub_visual4.jpg) center top no-repeat;}
.sub-visual.recruit{background:url(/img/layout/sub_visual5.jpg) center top no-repeat;}
.sub-visual.contactus{background:url(/img/layout/sub_visual6.jpg) center top no-repeat;}

.sub-container{}

.sub-top{max-width:1160px;margin:0 auto;position:relative;padding:60px 0 50px;}
.sub-top .page-location{position:absolute;right:0;top:-15px;font-size:13px;color:#777;line-height:12px;}
.sub-top .page-location .home{display:inline-block;width:30px;height:12px;position:relative;vertical-align:middle;text-align:left;text-indent:-999px;overflow:hidden;background:url(/img/layout/icon_home.png) 0 0 no-repeat;}
.sub-top .page-location .home:after{display:inline-block;width:1px;height:12px;position:absolute;right:0;top:0;content:'';background-color:#e3e3e3;}
.sub-top h3{font-size:54px;text-align:center;font-weight:normal;padding:0 20px;}
.sub-top .page-location span{padding:0 15px;position:relative;}
.sub-top .page-location span + span{margin-left:5px;}
.sub-top .page-location span + span:before{display:inline-block;width:5px;height:7px;content:'';background:url(/img/layout/location_arr.png) 0 0 no-repeat;position:absolute;left:-5px;top:5px;}
.sub-top .page-location .home + span{padding-left:5px;}


.sub-content{text-align:center;padding: 0 0 60px 0;}
.sub-content.size{max-width:1160px;margin:0 auto;text-align:left;}

.sec-title{text-align:center;font-size:40px;margin-bottom:40px;}
.sec-title2{text-align:center;font-size:35px;margin-bottom:40px;}


@media all and (max-width:1160px){

	#header{padding:0 10px 0 20px;}
	#header .top-logo{padding:20px 0;}
	#header .top-logo img{height:25px;}
	#header .top-navi{display:none;}
	.btn-menu{display:block;}

	.footer-link > div{padding:22px 20px;}
	.footer-link .fl li{float:left;padding-right:5px;}
	.footer-link .fl li + li{padding-left:5px;}
	.footer-link .fr li{float:left;padding-left:5px;text-transform: uppercase;}
	.footer-link .fr li + li{margin-left:5px;}
	.footer-link a{font-size:11px;}
	#footer .site-info{padding:20px 0 40px 162px;background-position:20px 20px;}

}

@media all and (max-width:940px){


}

@media all and (min-width:800px){


}

@media all and (max-width:800px){



}

@media all and (max-width:720px){
	.m-w20{width:20%;}

	.m-block{display:block;}
	.m-none{display:none;}

	.footer-link > div{padding:15px 20px;}
	.footer-link  li + li:before{display:none;}

	#footer .site-info{padding:20px;background:none;line-height:1.5em;}
	#footer .site-info .ceo,
	#footer .site-info .no,
	#footer .site-info .email{display:block;}
	#footer .site-info p{margin-bottom:0;}

	.sub-visual{height:150px;background-size: 200% 100% !important;background-position:left top !important;}
	.sub-visual h2{font-size:30px;}

	.sub-top{padding:60px 0 50px;}

	.sub-top .page-location{top:0;}
	.sub-top .page-location .home{width:20px;}
	.sub-top .page-location span{padding:0 10px;}
	.sub-top .page-location span + span{margin-left:5px;}
	.sub-top h3{font-size:30px;}

	.sec-title{font-size:28px;margin-bottom:20px;}
	.sec-title2{font-size:24px;margin-bottom:20px;}

}

@media all and (max-width:600px){

}

@media all and (max-width:480px){

	.footer-link .fl{float:none;text-align:center;}
	.footer-link .fl li{float:none;display:inline-block;}
	.footer-link .fr{float:none;text-align:center;padding-top:15px;}
	.footer-link .fr li{float:none;display:inline-block;}

}