/*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: "OpenSans","微软雅黑","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.7;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: inherit;
	opacity: 0.7;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: inherit;
	opacity: 0.7;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
	color: inherit;
	opacity: 0.7;
}
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: 'FontAwesome400';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('../fonts/fa-regular-400.eot');
    src: url('../fonts/fa-regular-400.eot?#iefix') format('embedded-opentype'),
        url('../fonts/fa-regular-400.woff2') format('woff2'),
        url('../fonts/fa-regular-400.woff') format('woff'),
        url('../fonts/fa-regular-400.ttf') format('truetype'),
        url('../fonts/fa-regular-400.svg#Roboto-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans.eot');
    src: url('../fonts/OpenSans.eot?#iefix') format('embedded-opentype'),
        url('../fonts/OpenSans.woff2') format('woff2'),
        url('../fonts/OpenSans.ttf') format('truetype'),
        url('../fonts/OpenSans.svg#OpenSans') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


:root{
	--theme-yellow: #edc300;
	--theme-purple: #8377b5;
}

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;
}
.inner{
	max-width: 90%;
	margin: 0 auto;
}
.inner.w1700{
	width: 106.25em;
}
.inner.w1580{
	width:98.75em;
}
.inner.w1550{
	width:96.875em;
}
.inner.w1360{
	width: 85em;
}
.anchorBL{
	display: none !important;
}
.ani-leftin,.ani-leftin-web{
	transform: translate(-50vw,0);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
}
.ani-rightin,.ani-rightin-web{
	transform: translate(50vw,0);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
}
.ani-downin{
	transform: translate(0,20vh);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
}
.ani-rightin.actived,.ani-leftin.actived,.ani-rightin-web.actived,.ani-leftin-web.actived,.ani-downin.actived{
	transform: translate(0,0);
	opacity: 1;
}


.banner{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	height: 50em;
	padding-top: 19%;
}
.banner.contact{
    background-image: url(../images/banner_contact.jpg);
}
.banner.news{
    background-image: url(../images/banner_news.jpg);
}
.banner.clinical{
	background-image:url(../images/banner_clinical.jpg);
}
.banner.about{
	background-image:url(../images/banner_about.jpg);
}
.banner.csr{
	background-image:url(../images/banner_csr.jpg);
}
.banner.recruit{
	background-image:url(../images/banner_recruit.jpg);
}
.banner h1{
	font-size: 3.625em;
	color: var(--theme-purple);
	margin-bottom:0.5em;
}
.banner p{
	font-size: 2.25em;
	color: var(--theme-purple);
	line-height:1.5;
}





#wrap{
	padding-bottom: 39em;
	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: fixed;
	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.2);
	color: #333;
	transform: translateY(-100%);
	background-color:#fff;
}
#header.transparent{
	color:#fff;
	border-color: rgba(255,255,255,0.2);
}
#header.down{
	transform: translateY(0);
}
#header.bgwhite{
	background-color:#fff;
}
#header.slideshow{
	color: #333;
	background-color: #fff;
}
#header .inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
}
#header .logo{
	height: 5.5em;
}
#header.transparent .logo{
	background-position: center bottom;
}
#header.slideshow .logo{
	background-position: center top;
}
#header .nav-box li{
	font-size:1.25em;
	margin-right: 1.8em;
	position: relative;
	display:inline-block;
}
#header .nav-box li.type2{
	position:static;
}
#header .nav-box li:last-child{
	margin-right: 0;
}
#header .nav-box li > a{
	line-height:5.4;
	height:5.4em;
	transition: color 0.5s;
	position:relative;
	display:block;
}
#header .nav-box li.active > a{
	color: var(--theme-yellow);
}
#header .nav-box li > a::after{
	position:absolute;
	left:50%;
	bottom:0;
	width:2.75em;
	height:1em;
	content:"";
	display:block;
	background-repeat:no-repeat;
	background-image:url(../images/header_star.png);
	background-size:cover;
	transform:translate(-50%,50%);
	opacity:0;
	transition:opacity 0.5s;
	pointer-events:none;
	z-index:1;
}
#header .nav-box li.active > a::after{
	opacity:1;
}
#header .nav-box .subnav{
	background-color: rgba(255,255,255,0.95);
	position: absolute;
	left: 50%;
	top: 100%;
	opacity: 0;
	pointer-events: none;
	transition: transform 0.5s,opacity 0.5s;
	transform: rotateX(-90deg) translateX(-50%);
	transform-origin: center top;
	color:#333;
}
#header .nav-box li.type1 .subnav{
	text-align:center;
}
#header .nav-box li.type1 .subnav a{
	display:block;
	border-bottom:1px solid rgba(51,51,51,0.07);
	font-size:1.2em;
	line-height:2.875em;
	width:13em;
	transition:color 0.5s;
}
#header .nav-box li.type1 .subnav a.active{
	color:var(--theme-yellow);
}
#header .nav-box li.type2 .subnav{
	width:100%;
	padding:4.5em 0;
}
#header .nav-box li.type2 .subnav .inner{
	display:flex;
	align-items:flex-start;
	justify-content:flex-start;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:0.8em;
}
#header .nav-box li.type2 .subnav a{
	display:block;
	width:25%;
	font-size:1.5em;
	display:flex;
	align-items:center;
	padding:0.875em 0;
	transition:color 0.5s;
}
#header .nav-box li.type2 .subnav a.active{
	color:var(--theme-yellow);
}
#header .nav-box li.type2 .subnav a svg{
	display:block;
	width:2.5em;
	margin-right:1em;
	fill:var(--theme-purple);
}
#header .nav-box li.type3 .subnav{
	padding:2em;
	width:20em;
}
#header .nav-box li.type3 .subnav p{
	font-size:1.1em;
	line-height:1.64;
	margin-bottom:1em;
}
#header .nav-box li.type3 .subnav a{
	font-size:1.1em;
	background-color:var(--theme-purple);
	color:#fff;
	display:inline-block;
	vertical-align:middle;
	padding:0.5em 1.2em;
	margin-right:0.5em;
}
#header .nav-box li.type3 .subnav a:last-child{
	margin-right:0;
}
#header .language-box{
	font-size:1.25em;
}
#header .language-box a.active{
	color:var(--theme-yellow);
}
#header .language-box span{
	margin:0 0.5em;
}


/*footer*/
#footer{
	margin-top: -39em;
	height:39em;
	position: relative;
	background-repeat: no-repeat;
	background-image: url(../images/footer_bg.jpg);
	background-size: cover;
	color: #fff;
	padding-top:5.5%;
}
#footer .inner{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	flex-direction:row;
}
#footer .logo{
	width: 17.5em;
	background-position: center bottom;
}
#footer .info-box{
	margin:2.5em 0 4.5em;
}
#footer .info-box h5{
	font-size:1.375em;
	margin-bottom:0.6em;
}
#footer .info-box p{
	font-size:1.25em;
	line-height:1.5;
	margin-bottom:0.5em;
	color:rgba(255,255,255,0.7);
	padding-left:2.7em;
}
#footer .info-box p:last-child{
	margin-bottom:0;
}
#footer .info-box p i{
  border-width: 1px;
  border-color: rgb(255, 255, 255, 0.1);
  border-style: solid;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.05);
  width: 1.5em;
  height: 1.5em;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:-2.7em;
  margin-right:1.2em;
  vertical-align:middle;
}
#footer .info-box p svg{
	fill:var(--theme-yellow);
	width:0.7em;
}
#footer .info-box p span{
	vertical-align:middle;
}
#footer .link-box h3{
	font-size:1.375em;
	margin-bottom:1.3em;
}
#footer .link-box a{
	display:inline-block;
	margin-right:1.25em;
	vertical-align:middle;
}
#footer .link-box a:last-child{
	margin-right:0;
}
#footer .link-box svg{
	height:2em;
	fill:#fff;
}
#footer .link-box svg.small{
	height:1.5em;
}
#footer .right-part ul{
	display:flex;
	align-items:flex-start;
	justify-content:flex-start;
	flex-direction:row;
}
#footer .right-part li{
	margin-right:8.125em;
}
#footer .right-part h5,#footer .right-part p{
	font-size:1.25em;
	margin-bottom:1em;
	position:relative;
}
#footer .right-part h5:last-child,#footer .right-part p:last-child{
	margin-bottom:0;
}
#footer .right-part p a{
	opacity:0.6;
}

#footer .right-part li .subnav{
	background-color: rgba(255,255,255,0.95);
	position: absolute;
	left: 50%;
	top: 100%;
	opacity: 0;
	pointer-events: none;
	transition: transform 0.5s,opacity 0.5s;
	transform: rotateX(-90deg) translateX(-50%);
	transform-origin: center top;
	color:#333;
	padding:2em;
	width:20em;
	font-style:normal;
	z-index:1;
}
#footer .right-part li > p:nth-child(5) .subnav,#footer .right-part li > p:nth-child(6) .subnav,#footer .right-part li > p:nth-child(7) .subnav,#footer .right-part li > p:nth-child(8) .subnav{
	top: auto;
	bottom:100%;
	transform-origin: center bottom;
}
#footer .right-part li .subnav.active{
	transform: rotateX(0deg) translateX(-50%);
	opacity:1;
	pointer-events:auto;
}
#footer .right-part li .subnav span{
	font-size:1.1em;
	line-height:1.64;
	margin-bottom:1em;
	display:block;
}
#footer .right-part li .subnav a{
	font-size:1.1em;
	background-color:var(--theme-purple);
	color:#fff;
	display:inline-block;
	vertical-align:middle;
	padding:0.5em 1.2em;
	margin-right:0.5em;
	opacity:1;
}
#footer .right-part li .subnav a:last-child{
	margin-right:0;
}


#sidenav{
	display:none;
}
@media only screen and (min-width:1025px){
	#header .nav-box li:hover > a{
		color: var(--theme-yellow);
	}
	#header .nav-box li:hover > a::after{
		opacity:1;
	}
	#header .nav-box li:hover .subnav{
		opacity: 1;
		transform: rotateX(0deg) translateX(-50%);
		pointer-events: auto;
	}
	#header .nav-box li.type1 .subnav a:hover{
		color:var(--theme-yellow);
	}
	#header .nav-box li.type2 .subnav a:hover{
		color:var(--theme-yellow);
	}
	#header .language-box a:hover{
		color:var(--theme-yellow);
	}
	#footer .right-part a:hover{
		opacity:1;
		color:var(--theme-yellow);
	}
	#footer .link-box a:hover svg{
		fill:var(--theme-yellow);
	}
}


@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 / 750);
	}
	body.noscroll{
		overflow: hidden;
	}
	.mobile{
		display: inline-block;
	}
	.web{
		display: none;
	}

	*{
		scrollbar-width: none;
	}
	*::-webkit-scrollbar{
		display: none;
	}
	.ani-leftin-web{
		transform: translate(0,20vh);
	}
	.ani-rightin-web{
		transform: translate(0,20vh);
	}




	.banner{
		height: 40em;
		padding-top: 40%;
	}




	#wrap{
		padding-bottom: 58.5em;
	}

	/*footer*/
	#footer{
		padding-top:11%;
		font-size:1.5em;
	}
	#footer .inner{
		display:block;
	}
	#footer .right-part{
		display:none;
	}

	

	/*header*/
	#header .inner{
		height:8.5em;
	}
	#header .logo{
		height: 5.125em;
	}
	#header.slideshow{
		border-color:rgba(0, 0, 0, 0.2);
	}
	#header .menu{
		width: 2.75em;
		position: relative;
	}
	#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.transparent .menu div{
		background-color: #fff;
	}
	#header.slideshow .menu div{
		background-color: #333;
	}
	#header .menu div:nth-child(1){
		transform: translate(0,-1em);
	}
	#header .menu div:nth-child(3){
		transform: translate(0,1em);
	}
	#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);
	}





	#sidenav{
		display: block;
		position: fixed;
		inset:0;
		background-color: #fff;
		z-index: 100;
		overflow: auto;
		padding-top: 8.5em;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.75s;
		color:#333;
	}
	#sidenav.active{
		opacity: 1;
		pointer-events: auto;
	}
	#sidenav .nav-box a{
		border-bottom:1px solid rgba(0,0,0,0.2);
	}
	#sidenav .nav-box li a{
		font-size: 2.125em;
		padding:0 5%;
		line-height:2.5;
	}
	#sidenav .nav-box li > a{
		display:flex;
		align-items:center;
		justify-content:space-between;
		flex-direction:row;
	}
	#sidenav .nav-box li.active > a{
		color:var(--theme-purple);
	}
	#sidenav .nav-box li.haschildren > a::after{
    	font-family: 'FontAwesome400';
		content: "\f078";
		display: block;
		margin-left: 1em;
	}
	#sidenav .nav-box li.haschildren.slidedown > a::after{
		content: "\f077";
	}
	#sidenav .nav-box .subnav{
		display: none;
		background-color:#e3e0ee;
	}
	#sidenav .nav-box .subnav a{
		display:block;
	}
	#sidenav .language-box{
		font-size: 2.125em;
		padding:7.5% 5%;
	}
	#sidenav .language-box a.active{
		color:var(--theme-yellow);
	}
	#sidenav .language-box span{
		margin:0 0.5em;
	}
}