/*css reset*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box;padding: 0; margin: 0;}
html,body{ padding: 0; margin: 0; font-family: "微软雅黑","Microsoft YaHei","MiSans","思源黑体","Source Han Sans CN",sans-serif; line-height: normal;color: #000;}
ol, ul {list-style: none; padding: 0; margin: 0;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none; }
table {border-collapse: collapse; border-spacing: 0;}
th,td { vertical-align: middle;padding: 0;}
a{text-decoration:none;	outline: none;hlbr:expression(this.onFocus=this.blur());}
input, select,textarea {vertical-align: middle;padding: 0;border: 0 none;margin: 0;font-family: inherit;}
img, iframe {border: none; text-decoration:none;}
img{vertical-align: top;}
strong {font-weight: bold;}
h1,h2,h3,h4,h5,h6{padding: 0; margin: 0;font-size: inherit}
:focus {outline: 0;}
::-webkit-input-placeholder { /* WebKit browsers */
	color: inherit;
	opacity: 0.5;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: inherit;
	opacity: 0.5;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: inherit;
	opacity: 0.5;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
	color: inherit;
	opacity: 0.5;
}
sup{
	font-size: 0.5em;
}
/*css common*/
.clearfix:after{content: "";display: block;clear: both;visibility: hidden;line-height: 0;height: 0;font-size:0;}
.clearfix{*zoom:1;}
a{
color: inherit;
font-size: inherit;
border:none;
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-tap-highlight-color:transparent;
outline:none；
}
html.ie select::-ms-expand { display: none; }
html.ie input::-ms-clear { display: none; }
/*
	*:not(input,textarea){
	-webkit-touch-callout:none;
	-webkit-user-select:none;
}*/

@font-face{
    font-family:revicons;
    src:url(../fonts/revicons/revicons.eot?5510888);
    src:url(../fonts/revicons/revicons.eot?5510888#iefix) format('embedded-opentype'),url(../fonts/revicons/revicons.woff?5510888) format('woff'),url(../fonts/revicons/revicons.ttf?5510888) format('truetype'),url(../fonts/revicons/revicons.svg?5510888#revicons) format('svg');
    font-weight:400;
    font-style:normal;
}
:root{
	--theme-color: #fc3329;
}

svg *{
	fill: inherit;
}

.mobile{
	display: none;
}
.web{
	display: inline-block;
}
.bg{
	width: 100%;
}
html {
	height: 100%;
	scroll-behavior: smooth;
	font-size: calc(100vw * 16 / 1920);
}
body{
	position: relative;
	height: 100%;
	margin: 0 auto;
    -webkit-text-size-adjust: 100% !important;
	scroll-behavior: smooth;
	overflow-x: hidden;
}
.inner{
	max-width: 90%;
	margin: 0 auto;
}
.inner.w1220{
	width: 80em;
}
.inner.w1040{
	width: 65em;
}
.anchorBL{
	display: none !important;
}


.banner{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	height: 38.75em;
	padding-top: 6.5625em;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: row;
}
.banner.news{
    background-image: url(../images/banner_news.jpg);
}
.banner.join{
    background-image: url(../images/banner_join.jpg);
}
.banner.about{
    background-image: url(../images/banner_about.jpg);
}
.banner.pro1{
    background-image: url(../images/banner_product1.jpg);
}
.banner.pro2{
    background-image: url(../images/banner_product2.jpg);
}
.banner.pro3{
    background-image: url(../images/banner_product3.jpg);
}
.banner.pro4{
    background-image: url(../images/banner_product4.jpg);
}

.banner h1{
	font-size: 3em;
	color: #fff;
	line-height: 1.5;
	margin-top: -0.625em;
}


.btn-common{
	background-color: var(--theme-color);
	position: relative;
	overflow: hidden;
	color: #fff;
	transition: color 0.75s;
    display: flex;
    align-items: center;
    justify-content: center;
	border: 1px solid var(--theme-color);
	border-radius: 0.25em;
}
.btn-common::before{
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: 0;
	left: auto;
	bottom: 0;
	background-color: #fff;
	transform-origin: right center;
	width: 0;
	transition: width 0.5s;
}
.btn-common span{
	position: relative;
	z-index: 1;
	font-size: 1.125em;
}


.pop-cover{
	pointer-events: none;
	opacity: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 101;
	background-color: rgba(51,51,51,0.9);
	transition: opacity 0.5s;
}
.pop-cover.active{
	pointer-events: auto;
	opacity: 1;
}
.pop-cover .pop-box{
	width: 800px;
	text-align: center;
	position: relative;
}
.pop-cover .pop-box .mask{
	height: 60vh;
}
.pop-cover .pop-box img,.pop-cover .pop-box video{
	max-width: 100%;
	max-height: 100%;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}
.pop-cover .pop-close{
	fill: #fff;
	position: absolute;
	right: 1em;
	top: 1em;
	width: 2.5em;
	fill: #fff;
	opacity: 0.6;
}
.pop-cover .pop-box .btn{
	position: absolute;
	top: 50%;
	margin-top: -1.25em;
	cursor: pointer;
}
.pop-cover .pop-box .btn.prev{
	right: 100%;
	margin-right: 4em;
}
.pop-cover .pop-box .btn.next{
	left: 100%;
	margin-left: 4em;
}
.pop-cover .pop-box .btn::before{
    font-family:revicons;
    display: block;
    font-size: 2.5em;
    color: #fff;
}
.pop-cover .pop-box .btn.prev::before{
	content: "\e824";	
}
.pop-cover .pop-box .btn.next::before{
	content: "\e825";	
}

#totop{
	position: fixed;
	right: 1.5em;
	bottom: -1.875em;
	width: 2.5em;
	height: 2.5em;
	border-radius: 0.1875em;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	background-color: var(--theme-color);
	fill: #fff;
	opacity: 0;
	transition: fill 0.5s,background-color 0.5s,bottom 0.5s,opacity 0.5s;
	pointer-events: none;
	z-index: 1;
}
#totop.on{
	pointer-events: auto;
	bottom: 1.875em;
	opacity: 1;
}
#totop svg{
	width: 35%;
}


.crumbs-box.gray{
	background-color: #fafafa;
}
.crumbs-box{
	padding: 1em 0;
}
.crumbs-box .inner{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.crumbs-box span{
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em;
}
.crumbs-box span::after{
	content: "\e823";
	font-family: "revicons";
}
.crumbs-box a{
	transition: color 0.75s;
	vertical-align: middle;
	position: relative;
	line-height: 1.5;
}
.crumbs-box a.active{
	color: var(--theme-color);
}
.crumbs-box a::after{
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	right: 0;
	left: auto;
	bottom: 0;
	background-color: var(--theme-color);
	width: 0;
	transform-origin: right center;
	transition: width 0.5s;
}
.crumbs-box a br{
	display: none;
}

#wrap{
	padding-bottom: 21.25em;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.section{
	overflow: hidden;
}
.swiper{
	width: 100%;
}
.odometer{
	font-family: inherit;
}
.odometer.nopoint .odometer-formatting-mark{
	display: none;
}
.odometer .odometer-digit-spacer,.odometer .odometer-digit{
	vertical-align: top !important;
}


.logo{
	background-repeat: no-repeat;
	background-size: auto 200%;
	background-image: url(../images/logo_bg.png);
	background-position: center top;
}


/*header*/
#header{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 101;
	transition: transform 0.5s,background-color 0.5s;
	border-bottom: 1px solid rgba(51,51,51,0.1);
	fill: #333;
	color: #333;
}
#header.fixed{
	position: fixed;
	background-color: #02113f;
	transition: background-color 0.5s;
	animation: headerslidedown 0.5s;
}
@keyframes headerslidedown {
	0%{
		transform: translateY(-100%);
	}
	100%{
		transform: translateY(0);
	}
}
#header.white,#header.fixed,#header.slideshow{
	border-color: rgba(255,255,255,0.1);
	fill: #fff;
	color: #fff;
}
#header.slideshow{
	background-color: #02113f;
}
#header .inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
}
#header .logo{
	height: 2.75em;
}
#header.white .logo,#header.fixed .logo,#header.slideshow .logo{
	background-position: center bottom;
}
#header .line{
	opacity: 0.1;
	background-color: #333;	
	width: 1px;
	display: block;
	align-self: stretch;
}
#header.white .line,#header.fixed .line,#header.slideshow .line{
	background-color: #fff;	
}
#header .nav-box{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
}
#header .nav-box li{
	position: relative;
	margin: 2.625em 0;
	margin-right: 3em;
}
#header .nav-box li:last-child{
	margin-right: 0;
}
#header .nav-box li > a{
	transition: color 0.5s;
}
#header .nav-box li.active > a{
	color: var(--theme-color);
}
#header .nav-box li.haschildren > a::after{
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.375em;
	border-style: solid;
	border-width: 0.3125em 0.25em 0 0.25em;
	border-color: #333 transparent transparent transparent;
	content: "";
	transition: border-color 0.5s;
}
#header.white .nav-box li.haschildren > a::after,#header.fixed .nav-box li.haschildren > a::after,#header.slideshow .nav-box li.haschildren > a::after{
	border-color: #fff transparent transparent transparent;
}
#header .nav-box li.haschildren.active > a::after{
	border-color: var(--theme-color) transparent transparent transparent !important;
}
#header .nav-box .subnav{
	background-color: #02113f;
	position: fixed;
	left: 0;
	top: 6.5625em;
	width: 100%;
	padding: 1em;
	opacity: 0;
	transition: transform 0.5s,opacity 0.5s;
	transform: rotateX(-90deg);
	transform-origin: center top;
	text-align: center;
	transition-delay:0.5s,0.5s;
}
#header .nav-box .subnav a{
	display: inline-block;
	color: #fff;
	line-height: 1.5;
	padding: 0.5em 0;
	margin-right: 3em;
}
#header .nav-box .subnav a:last-child{
	margin-right: 0;
}
#header .nav-box .subnav a.active{
	color: var(--theme-color);
}
#header .nav-box .subnav a span{
	display: inline-block;
	position: relative;
}
#header .nav-box .subnav a span::after{
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	right: 0;
	left: auto;
	bottom: 0;
	background-color: #fff;
	width: 0;
	transform-origin: right center;
	transition: width 0.5s;
}
#header .nav-box .subnav a.active span::after{
	background-color: var(--theme-color);
}
#header .right-part{
	display: flex;
	align-items: center;
	flex-direction: row;
}
#header .tel-box svg{
	margin-right: 0.875em;
	width: 0.9375em;
}
#header .search-box{
	position: relative;
	margin: 0 2em;
}
#header .search-box > input{
	font-size: inherit;
	position: absolute;
	right: -0.5em;
	top: 50%;
	height: 150%;
	transform: translateY(-50%);
	border-radius: 0.5em;
	border: 1px solid rgba(51,51,51,0.1);
	padding-right: 2em;
	padding-left: 1em;
	width: 0;
	pointer-events: none;
	opacity: 0;
	transition: width 0.5s,opacity 0.5s;
}
#header .search-box:hover > input{
	width: 13em;
	opacity: 1;
	pointer-events: auto;
}
#header .search-box .search{
	width: 1em;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
#header .search-box .search input{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
#header .search-box:hover svg{
	fill: #333;
}
#header .language-box{
	color: #fff;
	position: relative;
}
#header .language-box a{
	background-color: var(--theme-color);
	display: block;
	padding: 0.75em 1.25em;
	border-radius: 0.25em;
}
#header .language-box:hover a:first-child{
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
#header .language-box:hover a:last-child{
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
#header .language-box a:first-child::after{
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.75em;
	border-style: solid;
	border-width: 0.5em 0.375em 0 0.375em;
	border-color: #fff transparent transparent transparent;
	content: "";
}
#header .language-box a:last-child{
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	transform-origin: top;
	transform: scaleY(0);
	transition: transform 0.5s,opacity 0.5s;
	pointer-events: none;
	opacity: 0;
}
#header .language-box:hover a:last-child{
	transform: scaleY(1);
	pointer-events: auto;
	opacity: 1;
}



/*footer*/
#footer{
	background-color: #1c1c1c;
	margin-top: -21.25em;
	position: relative;
	background-repeat: no-repeat;
	background-image: url(../images/footer_bg.jpg);
	background-position: center bottom;
	background-size: auto 100%;
	font-weight: lighter;
	color: #fff;
}
#footer .part1{
	height: 18.5em;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: row;
	padding-top: 6em;
	padding-left: 1.75em;
}
#footer .part1 .logo{
	width: 14em;
	background-position: center bottom;
}
#footer .part1 ul{
	margin-left: 9.375em;
	margin-right: 6em;
}
#footer .part1 li{
	font-size: 1em;
	line-height: 1.5;
	margin-bottom: 0.75em;
	padding-left: 2em;
}
#footer .part1 li:last-child{
	margin-bottom: 00;
}
#footer .part1 li img{
	width: 1.125em;
	margin-left: -2em;
	margin-right: 0.875em;
}
#footer .part1 .qr-box p{
	font-size: 1em;	
	margin-bottom: 1em;
}
#footer .part1 .qr-box div{
	border-radius: 0.3125em;
	overflow: hidden;
	margin: 0 auto;
	width: 5.8125em;
}
#footer .part2{
	border-top: 1px solid rgba(255,255,255,0.2);
	height: 2.75em;
	display: flex;
	align-items: center;
	justify-content: center;
}
#footer .part2 p{
	font-size: 0.875em;
	opacity: 0.5;
	line-height: 1.5;
}


@media only screen and (min-width:1025px){

	#totop:hover{
		background-color: #1c1c1c;
		fill: var(--theme-color);
	}
	.btn-common:hover{
		color: var(--theme-color);
	}
	.btn-common:hover::before{
		width: 100%;
		transform-origin: left center;
		left: 0;
		right: auto;
	}
	.crumbs-box a:hover{
		color: var(--theme-color);
	}
	.crumbs-box a:hover::after{
		width: 100%;
		transform-origin: left center;
		left: 0;
		right: auto;
	}
	#header .nav-box li > a:hover{
		color: var(--theme-color);
	}
	#header .nav-box li.haschildren > a:hover::after{
		border-color: var(--theme-color) transparent transparent transparent !important;
	}
	#header .nav-box > li:hover .subnav{
		transform: rotateX(0deg);
		opacity: 1;
		transition-delay:0s,0s;
	}
	#header .nav-box .subnav a:hover span::after{
		width: 100%;
		transform-origin: left center;
		left: 0;
		right: auto;
	}
	#header .tel-box:hover{
		color: var(--theme-color);
		fill: var(--theme-color);
	}

}


@media only screen and (max-width:1024px){
	html { 
	    -webkit-text-size-adjust: 100%;
	    -moz-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
	    -o-text-size-adjust: 100%;
	    text-size-adjust: 100%;
		font-size: calc(100vw * 16 / 375);
	}
	body.noscroll{
		overflow: hidden;
	}
	.mobile{
		display: inline-block;
	}
	.web{
		display: none;
	}

	*{
		scrollbar-width: none;
	}
	*::-webkit-scrollbar{
		display: none;
	}




	.banner{
		height: 15em;
		padding-top: 3.125em;
	}
	.banner h1{
		font-size: 2em;
	}


	.btn-common{
		font-size: 0.75em;
	}


	.pop-cover .inner{
		max-width: 80%;
	}
	.pop-cover .pop-box .btn{
		margin-top: -1em;
	}
	.pop-cover .pop-box .btn.prev{
		margin-right: 1em;
	}
	.pop-cover .pop-box .btn.next{
		margin-left: 1em;
	}
	.pop-cover .pop-box .btn::before{
	    font-size: 2em;
	}


	#totop{
		right: 5%;
		width: 2em;
		height: 2em;
	}


	.crumbs-box{
		font-size: 0.875em;
	}

	#wrap{
		padding-bottom: 28.875em;
	}

	
	/*footer*/

	#footer{
		margin-top: -28.875em;
		background-position: center bottom;
		background-size: auto 100%;
	}
	#footer .part1{
		height: auto;
		display: block;
		padding-top: 3em;
		padding-left: 0;
		padding-bottom: 2em;
	}
	#footer .part1 .logo{
		width: 10em;
	}
	#footer .part1 ul{
		margin: 2em 0;
	}
	#footer .part1 li br{
		display: none;
	}
	#footer .part1 .qr-box p{
		text-align: center;
	}
	#footer .part2{
		height: 5em;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#footer .part2 p{
		text-align: center;
	}


	

	/*header*/
	#header .inner{
		height: 3.125em;
		position: relative;
	}
	#header .logo{
		height: 1.5em;
	}
	#header .line{
		display: none;
	}
	#header .nav-box{
		position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
		background-color: rgba(2, 17, 63, 1);
		border-bottom: 3px solid var(--theme-color);
		padding: 1.875em 0;
		overflow-y: auto;
		overflow-x: hidden;
		max-height: calc(100vh - 3.125em);
		opacity: 0;
		pointer-events: none;
		transition: transform 0.5s,opacity 0.5s;
		transform: rotateX(-90deg);
		transform-origin: center top;
		display: block;
	}
	#header.slideshow .nav-box{
		opacity: 1;
		pointer-events: auto;
		transform: rotateX(0deg);
	}
	#header .nav-box li{
		margin: 0;
		padding: 0 1.875em;
		margin-bottom: 1em;
	}
	#header .nav-box li:last-child{
		margin-bottom: 0;
	}
	#header .nav-box li a{
		font-size: 0.875em;
		line-height: 1.714;
	}
	#header .nav-box li > a{
		width: 100%;
	}
	#header .nav-box li.haschildren > a.mobile{
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-direction: row;
	}
	#header .nav-box li.haschildren > a::after{
		display: block;
		margin-left: 0;
		border: 0 none;
		font-family: "revicons";
		content: '\e823';
		transition: transform 0.5s;
	}
	#header .nav-box li.haschildren.down > a::after{
		transform: rotate(90deg);
	}
	#header .nav-box .subnav{
		background-color: inherit;
		position: static;
		padding: 0;
		border-bottom: 0 none;
		opacity: 1;
		transform: none;
		transition: none;
		display: none;
		text-align: left;
	}
	#header .nav-box .subnav a{
		display: block;
		color: inherit;
		line-height: 1.714;
		padding: 0.625em 1.25em 0.125em;
		margin-right: 0;
	}


	#header .tel-box svg{
		margin-right: 0;
		width: 1em;
	}
	#header .tel-box span{
		display: none;
	}
	#header .search-box{
		margin: 0 1em;
	}
	#header .search-box:hover input{
		width: 10em;
	}
	#header .language-box{
		font-size: 0.75em;
	}
	#header .language-box a{
		padding: 0.5em 0.75em;
	}
	#header .menu{
		width: 1.5em;
		position: relative;
		margin-left: 1em;
	}
	#header .menu div{
		position: absolute;
		width: 100%;
		height: 2px;
		background-color: #333;
		left: 0;
		top: 50%;
		margin-top: -1px;
		transition: transform 0.5s,opacity 0.5s;
	}
	#header.white .menu div,#header.fixed .menu div,#header.slideshow .menu div{
		background-color: #fff;
	}
	#header .menu div:nth-child(1){
		transform: translate(0,-0.5em);
	}
	#header .menu div:nth-child(3){
		transform: translate(0,0.5em);
	}
	#header.slideshow .menu div:nth-child(1){
		transform: translate(0,0) rotate(45deg);
	}
	#header.slideshow .menu div:nth-child(2){
		opacity: 0;
	}
	#header.slideshow .menu div:nth-child(3){
		transform: translate(0,0) rotate(-45deg);
	}
}