@import url(/static/assets/css/aos.css);
@import url(/static/assets/css/dialog.css);

/*========== Fonts ==========*/
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 100;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Thin.woff2") format("woff2"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Thin.woff") format("woff"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Thin.otf") format("opentype");
}
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 300;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Light.woff2") format("woff2"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Light.woff") format("woff"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Light.otf") format("opentype");
}
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 400;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Regular.woff2") format("woff2"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Regular.woff") format("woff"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Regular.otf") format("opentype");
}
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 500;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Medium.woff2") format("woff2"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Medium.woff") format("woff"),
	  	 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Medium.otf") format("opentype");
}
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 700;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Bold.woff2") format("woff2"),
	     url("/static/assets/fonts/NotoSansSC/NotoSansSC-Bold.woff") format("woff"),
	     url("/static/assets/fonts/NotoSansSC/NotoSansSC-Bold.otf") format("opentype");
}
@font-face {
	font-family: "Noto Sans SC";
	font-weight: 900;
	src: url("/static/assets/fonts/NotoSansSC/NotoSansSC-Black.woff2") format("woff2"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Black.woff") format("woff"),
		 url("/static/assets/fonts/NotoSansSC/NotoSansSC-Black.otf") format("opentype");
}


/*========== Slick ==========*/
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
}
.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}
.slick-track:after {
    clear: both;
}
.slick-loading .slick-track {
    visibility: hidden;
}
.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide {
    float: right;
}
.slick-slide img {
    display: block;
}
.slick-slide.slick-loading img {
    display: none;
}
.slick-slide.dragging img {
    pointer-events: none;
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


.amap-logo,
.amap-copyright {
    display: none !important;
}

/*========== Global ==========*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html {
    font-family: sans-serif;
    font-size: 16px;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
} 
button{
    outline: none;
}
@media screen and (max-width: 1440px) {
    html {
        font-size: 14px;
    }
}
@media screen and (max-width: 1200px) {
    html {
        font-size: 12px;
    }
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block;
}
body {
    margin: 0;
    font-family: -apple-system, "Noto Sans SC", BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff;
    overflow-x: hidden;
}
body.no-scroll {
    overflow: hidden;
}
a {
    text-decoration: none;
    color: #333;
    transition: color .3s ease;
}
a:hover {
    color: #172987;
}
hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
}
p {
    margin-top: 0;
    margin-bottom: 1rem;
}
ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}
dt {
    font-weight: 700;
}
dd {
    margin-bottom: .5rem;
    margin-left: 0;
}
blockquote {
    margin: 0 0 1rem;
}
b,
strong {
    font-weight: bolder;
}
.container {
    width: 83.33%;
    max-width: 100rem;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 1024px) {
    .container {
        width: 95%;
    }
}
.close {
    width: 18px;
    height: 18px;
    background: url(/static/assets/images/icon-close@3x.png) no-repeat center / 100% 100%;
    cursor: pointer;
    transition: transform .24s ease;
    transform-origin: center center;
}
.close.white {
    background-image: url(/static/assets/images/icon-close-white@3x.png);
}
.close:hover {
    transform: rotate(90deg);
}
.disabled {
    cursor: not-allowed !important;
    color: #999 !important;
}
.more a {
    width: 10rem;
    height: 3.5rem;
    border-radius: 3.5rem;
    line-height: 3rem;
    border-width: 3px;
    border-style: solid;
    display: inline-block;
    text-align: center;
    position: relative;
    transition: .3s ease color,
                .3s ease background,
                .3s ease border-color;
}
.more.vi a {
    color: currentColor;
    border-color: transparent;
}
.more.vi a:hover {
    border-color: currentColor;
}
.more.vi a::before,
.more.dark a::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    background: url(/static/assets/images/morebtn@3x.png) no-repeat center / 100% 100%;
    transition: opacity .3s ease;
}
.more.vi a:hover::before {
    opacity: 0;
}
.more.dark a::before {
    opacity: 0;
}
.more.dark a {
    border-color: #333;
    color: #333;
}
.more.dark a:hover {
    border-color: transparent;
    color: currentColor;
}
.more.dark a:hover::before {
    opacity: 1;
}
.more.current-color a::before {
    opacity: 0;
}
.more.current-color a {
    border-color: currentColor;
    color: currentColor;
}
.more.current-color a:hover::before {
    opacity: 1;
}
.more.light a {
    border-color: #fff;
    color: #fff;
}
.more.light a:hover {
    background: #fff;
    color: #172987;
}
.more-arrow {
    color: currentColor;
}
.more-arrow a::after {
    content: "";
    display: inline-block;
    width: .5rem;
    height: .875rem;
    background: url(/static/assets/images/arrow-more@3x.png) no-repeat center / 100% 100%;
    vertical-align: middle;
    transform: translateY(-1px);
    margin-left: .618em;
}
.more-arrow.white,
.more-arrow.white a {
    color: #fff !important;
}
.more-arrow.white a::after {
    background-image: url(/static/assets/images/arrow-more-white@3x.png);
}
.header {
    height: 6.25rem;
    position: absolute;
    z-index: 190;
    top: 0;
    left: 0;
    right: 0;
    transition: .24s ease background-color;
}
.header.fixed {
    position: fixed;
    background-color: #fff;
}
@supports (backdrop-filter: blur(15px)) OR (-webkit-backdrop-filter: blur(15px)) OR (-moz-backdrop-filter: blur(15px)) OR (-ms-backdrop-filter: blur(15px)) {
    .header.fixed {
        background-color: rgba(255, 255, 255, .7);
        -webkit-backdrop-filter: blur(15px);
           -moz-backdrop-filter: blur(15px);
            -ms-backdrop-filter: blur(15px);
                backdrop-filter: blur(15px);
    }
}
.header > .container > .inner {
    position: relative;
}
.header > .container,
.header > .container > .inner,
.header > .container > .inner > .wrap {
    height: 100%;
}
.header > .container > .inner > .wrap {
    width: 100%;
    display: table;
}
.header > .container > .inner > .wrap > .cell {
    display: table-cell;
    vertical-align: middle;
}
.header .left,
.header .logo {
    width: 14.625rem;
}
.header .logo {
    display: block;
    height: 3.125rem;
    background: url(/static/assets/images/logo_cn@3x.png) no-repeat left center / auto 100%;
    transition: background-image .3s ease;
}
.header.light:not(.fixed):not(.search) .logo {
    background-image: url(/static/assets/images/logo_cn_w@3x.png);
}
.header .nav {
    font-size: 1.125rem;
    text-align: center;
    white-space: nowrap;
}
@media screen and (max-width: 800px) {
    .header .nav {
        display: none !important;
    }
}
.header .nav a {
    text-decoration: none;
    margin: 0 3.5rem;
    display: inline-block;
    position: relative;
}
@media screen and (max-width: 1200px) {
    .header .nav a {
        margin: 0 1.5rem;
    }
}
.header .nav a .en {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(to right, #b6d233, #004783);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.header .nav a .en,
.header .nav a .cn {
    transition: .3s ease opacity,
                .3s ease visibility;
}
.header .nav a:hover .en {
    opacity: 1;
    visibility: visible;
}
.header .nav a:hover .cn {
    opacity: 0;
    visibility: hidden;
}
.header.light:not(.fixed):not(.search) .nav a {
    color: #fff;
}
.header.light:not(.fixed):not(.search) .nav a .en {
    background: none;
    color: #fff;
}
.header .right {
    width: 8rem;
    white-space: nowrap;
    text-align: right;
}
.header .right > [class^=icon] {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}
.header .icon-search {
    width: 1.875rem;
    height: 1.875rem;
    background: url(/static/assets/images/icon-search@3x.png) no-repeat center / contain;
    transition: background-image .3s ease;
}
.header.light:not(.fixed):not(.search) .icon-search {
    background-image: url(/static/assets/images/icon-search-white@3x.png);
}
.header .icon-hamburger {
    width: 3.125rem;
    margin-left: 3rem;
}
@media screen and (max-width: 800px) {
    .header .icon-hamburger {
        width: 2.8rem;
        margin-left: 2rem;
    }
}
.header .icon-hamburger i {
    display: block;
    width: 100%;
    height: 3px;
    border-radius: 3px;
    position: relative;
}
@media screen and (max-width: 800px) {
    .header .icon-hamburger i {
        height: 2px;
    }
}
.header .icon-hamburger i::before,
.header .icon-hamburger i::after {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    bottom: 0;
    transition: width .6s ease, opacity .6s ease, background .3s ease;
    background: url(/static/assets/images/bg-hamburger@3x.png) no-repeat center / 100% 100%;
}
.header.light:not(.fixed):not(.search) .icon-hamburger i::before,
.header.light:not(.fixed):not(.search) .icon-hamburger i::after {
    background: #fff;
}
.header .icon-hamburger i:not(:last-child) {
    margin-bottom: .8125rem;
}
@media screen and (max-width: 800px) {
    .header .icon-hamburger i:not(:last-child) {
        margin-bottom: 9px;
    }
}
.header .icon-hamburger:hover i {
    background: none;
}
.header .icon-hamburger i::before {
    width: 100%;
    opacity: 1;
}
.header .icon-hamburger:hover i::before {
    width: 0;
    opacity: 0;
}
.header .icon-hamburger i::after {
    width: 0;
    opacity: 0;
    /* background: #172987; */
}
.header.light:not(.fixed):not(.search) .icon-hamburger i::after {
    background: #fff;
}
.header .icon-hamburger:hover i::after {
    width: 100%;
    opacity: 1;
}
.header .icon-hamburger:hover i:nth-child(2)::before,
.header .icon-hamburger:hover i:nth-child(2)::after {
    transition-delay: .1s;
}
.header .icon-hamburger:hover i:nth-child(3)::before,
.header .icon-hamburger:hover i:nth-child(3)::after {
    transition-delay: .2s;
}
.header.search {
    background: #fff;
}
.header.search .nav,
.header.search .right {
    visibility: hidden;
}
.header .search-wrap {
    position: absolute;
    left: 12.625rem;
    top: 0;
    bottom: 0;
    right: 0;
    visibility: hidden;
    opacity: 0;
    background: #fff;
    transition: .24s ease visibility,
                .24s ease opacity;
}
@media screen and (orientation: portrait) {
    .header .search-wrap {
        left: 0;
    }
}
.header.search .search-wrap {
    visibility: visible;
    opacity: 1;
}
.header .search-wrap .close-wrap {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
.header .search-form {
    display: table;
    width: 100%;
    height: 100%;
}
.header .search-form,
.header .search-result-wrap {
    padding-right: 10%;
    padding-left: 10%;
}
@media screen and (orientation: portrait) {
    .header .search-form,
    .header .search-result-wrap {
        padding-left: 2.5%;
    }
}
.header .search-inner {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    position: relative;
    border-bottom: 1px solid #f0f0f0;
}
.header .search-inner button {
    border: 0;
    padding: 0;
    display: block;
    width: 1.75rem;
    height: 1.75rem;
    font-size: 0;
    cursor: pointer;
    background: transparent url(/static/assets/images/icon-search@3x.png) no-repeat center / contain;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
.header .search-inner input {
    width: 100%;
    outline: none;
    border: 0;
    font-size: 1.125rem;
    background-color: transparent;
}
.header .search-inner input::placeholder {
    color: #999;
}
.header .search-result {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    display: none;
}
.header .search-result[data-search-loading=true]::after {
    position: absolute;
    z-index: 1;
    content: "";
    background-color: #fff;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .75;
}
.header .search-result[data-search-loading=true]::before {
    content: "";
    position: absolute;
    z-index: 2;
    width: 1.8rem;
    height: 1.8rem;
    background: url(/static/assets/images/loading.gif) no-repeat center / contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.header .search-result-inner {
    margin-left: 12.625rem;
}
@media screen and (orientation: portrait) {
    .header .search-result-inner {
        margin-left: 0;
    }
}
.header .search-result-wrap {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
    font-size: 1.125rem;
}
.header .search-result-wrap h4 {
    font-weight: normal;
    font-size: 1.125rem;
    color: #999;
    margin: 0;
}
.header .search-result-wrap ul {
    list-style: none;
    margin: 0;
}
.header .search-result-wrap li {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: .8em;
}
.header .search-result-wrap li a {
    color: #666;
}
.header .search-result-wrap li a:hover,
.header .search-result-wrap li a strong {
    color: #172987;
}
.header-top-news {
    height: 3.75rem;
    background: url(/static/assets/images/bg-top@2x.png) repeat-y center / 100% auto;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 90;
}
.header-top-news,
.header-top-news[data-show=false] {
    display: none;
}
.header-top-news[data-show=true] {
    display: block;
}
.header-top-news[data-show=true] + .header {
    top: 3.75rem;
}
.header-top-news.fixed {
    position: fixed;
}
.header-top-news .container {
    height: 100%;
}
.header-top-news .wrap {
    display: table;
    width: 100%;
    height: 100%;
}
.header-top-news .cell {
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    line-height: 1;
}
.header-top-news .cell:last-child {
    text-align: right;
}
.header-top-news .close {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    background-image: url(/static/assets/images/icon-close-white@3x.png);
}
.header-top-news a {
    color: #fff;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 80vw;
}
.header-top-news a::after {
    content: "";
    display: inline-block;
    height: 1em;
    width: 1em;
    background: url(/static/assets/images/arrow-link@3x.png) no-repeat center / auto 100%;
    vertical-align: middle;
    margin-left: .618em;
    transform: translateY(-.125em);
}
.footer {
    position: relative;
    overflow: hidden;
}
.footer .bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: -100px;
    left: 0;
    background: url(/static/assets/images/bg-footer@2x.png) no-repeat center top / cover;
}
.footer .content {
    position: relative;
    z-index: 1;
    color: #fff;
}
.footer .content .top {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
    display: table;
    width: 100%;
    font-size: 1.5rem;
}
@media screen and (orientation: portrait) {
    .footer .content .top {
        padding-top: 5%;
        padding-bottom: 5%;
    }
}
.footer .content .top .item {
    display: table-cell;
    vertical-align: middle;
}
.footer .content .top .item:first-child {
    text-align: left;
}
.footer .content .top .item:last-child {
    text-align: right;
}
.footer .content .top .link {
    color: #fff;
    line-height: 1;
}
.footer .content .top .link::after {
    content: "";
    display: inline-block;
    height: 1.5rem;
    width: .875rem;
    background: url(/static/assets/images/arrow-link@3x.png) no-repeat center / 100% 100%;
    vertical-align: middle;
    margin-left: .618em;
    transform: translateY(-2px);
}
.footer .content .top .link,
.footer .content .top .more {
    display: inline-block;
    vertical-align: middle;
}
.footer .content .top .more {
    margin-left: 2em;
}
.footer .content .top .more a {
    font-size: 1.125rem;
    height: 3.125rem;
    line-height: 2.725rem;
    border-width: 2px;
}
.footer .content .top .text {
    display: inline-block;
}
.footer .menus .icons {
    display: inline-block;
    margin-top: 1rem;
}
.footer .menus .icons .icon {
    display: inline-block;
    vertical-align: middle;
    width: 2rem;
    height: 2rem;
    max-width: 26px;
    max-height: 26px;
}
.footer .menus .icons .icon:not(:last-child) {
    margin-right: 1rem;
}
.footer .menus .icons .icon i {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
}
.footer .menus .icons .icon.linkedin i {
    background-image: url(/static/assets/images/icon-linkedin@3x.png);
}
.footer .menus .icons .icon.facebook i {
    background-image: url(/static/assets/images/icon-facebook@3x.png);
}
.footer .menus .icons .icon.twitter i {
    background-image: url(/static/assets/images/icon-twitter@3x.png);
}
.footer .menus .icons .icon.youtube i {
    background-image: url(/static/assets/images/icon-youtube@3x.png);
}
.footer .menus .icons .icon.wechat i {
    background-image: url(/static/assets/images/icon-wechat@3x.png);
}
.footer .menus .icons .icon.weibo i {
    background-image: url(/static/assets/images/icon-weibo@3x.png);
}
.footer .menus .icons .icon.toutiao i {
    background-image: url(/static/assets/images/icon-toutiao@3x.png);
}
@media screen and (orientation: portrait) {
    .footer .content .top {
        display: block;
    }
    .footer .content .top .item {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .footer .content .top .item:last-child {
        margin-top: 1.5em;
    }
}
@media screen and (max-width: 600px) {
    .footer .content .top {
        font-size: 1.2rem;
    }
    .footer .content .top .item:first-child {
        flex-direction: column;
    }
    .footer .content .top .more {
        margin-left: 0;
        margin-top: 1.5em;
    }
    .footer .menus .icons .icon:not(:last-child) {
        margin-right: .618rem;
    }
}
.footer .content .wrap .menus {
    font-size: 0;
    display: flex;
    align-items: stretch;
}
.footer .content .wrap .menus .item {
    display: block;
    flex: 0 0 auto;
    margin-bottom: 3rem;
    /* padding-right: 1.5rem; */
    width: 16.66%;
}
.footer .content .wrap .menus .item ul + div {
    margin-top: 2rem;
}
.footer .content .wrap .menus .item ul + div a {
    white-space: nowrap;
    display: block;
}
.footer .content .wrap .menus .item ul + div a img {
    width: 100%;
    height: auto;
}
.footer .content .wrap .menus .item.contact-aside {
    flex: 0 0 auto;
    padding-right: 0;
    width: auto;
}
.footer .content .wrap .menus .item.links-aside {
    display: none;
}
.footer .content .wrap .menus .item h3 {
    text-transform: uppercase;
}
.footer .content .wrap .contact {
    margin-bottom: 3rem;
}
.footer .content .wrap .contact ul {
    display: flex;
}
.footer .content .wrap .contact li {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    position: relative;
    display: inline-block;
    vertical-align: top;
}
.footer .content .wrap .contact li::before {
    content: "";
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    width: 1.25rem;
    height: 1.25rem;
    background-size: contain;
    top: .28em;
    left: 0;
}
.footer .content .wrap .contact li.telephone::before {
    background-image: url(/static/assets/images/icon-telephone@3x.png);
}
.footer .content .wrap .contact li.email::before {
    background-image: url(/static/assets/images/icon-email@3x.png);
}
.footer .content .wrap .contact li.address::before {
    background-image: url(/static/assets/images/icon-address@3x.png);
}
.footer .content .wrap .contact li.telephone {
    white-space: nowrap;
}
.footer .content .wrap .contact li.email {
    max-width: 33em;
    flex: 1 0 auto;
}
.footer .content .wrap .contact li.email span {
    display: inline-block;
    margin-right: 1em;
    min-width: 12em;
}
.footer .content .wrap h3 {
    font-size: 1.125rem;
}
.footer .content .wrap h3 {
    font-weight: normal;
}
.footer .content .wrap li {
    list-style: none;
    line-height: 1.8;
    font-size: 1rem;
}
.footer .content .wrap li,
.footer .content .wrap li a {
    color: rgba(255, 255, 255, .7);
}
.footer .content .wrap li a:hover {
    color: #fff;
}
.footer .content .wrap ul,
.footer .content .wrap .infos {
    margin: 1rem 0;
}
.footer .content .wrap .switch-menus {
    display: none;
}
.footer .content .wrap .infos .qrcode-img {
    max-width: 120px;
    height: auto;
    display: block;
}
@media screen and (orientation: portrait) {
    .footer .content .wrap {
        display: flex;
        flex-wrap: wrap;
    }
    .footer .content .wrap .menus,
    .footer .content .wrap .contact {
        width: 100%;
    }
    .footer .content .wrap .contact {
        display: block;
        margin-bottom: 1rem;
    }
    .footer .content .wrap .contact ul {
        display: block;
    }
    .footer .content .wrap .contact ul li {
        margin-bottom: .5em;
    }
    .footer .content .wrap .menus {
        order: 1;
        display: none;
    }
    .footer .content .wrap .menus.showMenus {
        display: flex !important;
        flex-wrap: wrap;
    }
    .footer .content .wrap .switch-menus {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 1rem 2.5rem;
        width: 100%;
        order: 2;
    }
    .footer .content .wrap .switch-menus::after {
        content: "";
        display: block;
        height: 1.5rem;
        width: .85rem;
        background: url(/static/assets/images/arrow-link@3x.png) no-repeat center / 100% 100%;
        transform: rotate(90deg);
    }
    .footer .content .wrap .switch-menus.switched::after {
        transform: rotate(270deg);
    }
    .footer .content .wrap li {
        font-size: 1.125rem;
    }
}
@media screen and (max-width: 800px) {
    .footer .content .wrap .menus .item {
        width: 50%;
        display: inline-block;
    }
    .footer .content .wrap .menus .item.last {
        width: 100%;
    }
    .footer .content .wrap .menus .item.contact-aside,
    .footer .content .wrap .menus .item.links-aside {
        width: 50%;
        display: inline-block;
    }
    .footer .content .wrap .menus .item.links-aside a {
        display: block;
    }
    .footer .content .wrap .menus .item.links-aside a img {
        width: 100%;
        height: auto;
    }
}
.footer .bottom {
    border-top: 1px solid rgba(255, 255, 255, .08);
    padding-top: 1.618em;
    padding-bottom: 1.618em;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: rgba(255, 255, 255, .5);
}
.footer .bottom > div > *:not(a) {
    font-size: 1rem;
    color: rgba(255, 255, 255, .5);
    display: inline-block;
    vertical-align: middle;
}
.footer .bottom .copyright {
    padding-right: 1em;
}
.footer .bottom .icp {
    padding-left: 1em;
}
.footer .bottom a {
    color: rgba(255, 255, 255, .5);
}
.footer .bottom a:hover {
    color: #fff;
}
.footer .bottom .menu i {
    display: inline-block;
}
.footer .bottom .menu i {
    width: 1px;
    height: .8em;
    background-color: #fff;
    opacity: .1;
    margin: 0 1em;
}
@media screen and (max-width: 1024px) {
    .footer .bottom {
        text-align: center;
        display: block;
    }
    .footer .bottom > div > *:not(a) {
        display: block;
    }
    .footer .bottom .copyright {
        padding-right: 0;
    }
    .footer .bottom .icp {
        padding-left: 0;
    }
    .footer .bottom .menu,
    .footer .bottom .icp {
        margin-top: 1em;
    }
}
.drawer {
    position: fixed;
    top: 0;
    left: 100%;
    bottom: 0;
    width: 100%;
    max-width: 31.25rem;
    background: #fff;
    z-index: 200;
    visibility: hidden;
    transition: .4s ease-in-out visibility,
                .4s ease-in-out transform;
}
.drawer.open {
    visibility: visible;
    transform: translateX(-100%);
}
.drawer > .drawer-inner {
    width: 100%;
    height: 100%;
    background: url(/static/assets/images/bg-drawer@3x.png) no-repeat right bottom / 19.25rem auto;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.drawer .menus {
    width: 100%;
    max-width: 17.625rem;
    min-height: 90%;
    padding-top: 8.125rem;
    position: relative;
}
.drawer .menus > .close {
    position: absolute;
    top: 1.875rem;
    right: 0;
}
.drawer .menus li {
    list-style: none;
    white-space: nowrap;
}
.drawer .menus ul {
    margin: 0;
}
.drawer .menus > ul > li {
    margin-bottom: 1.25em;
    font-size: 1.125rem;
    /* transform: translateX(100%); */
    /* transition: transform .6s ease; */
}
/* .drawer.open .menus > ul > li {
    transform: translateX(0);
} */
.drawer .menus > ul > li > a {
    font-weight: 500;
    text-transform: uppercase;
}
.drawer .menus > ul > li > ul {
    height: 0;
    overflow: hidden;
    transition: height .3s ease-in-out;
}
.drawer .menus > ul > li.open > ul {
    height: auto;
}
.drawer .menus > ul > li > ul > li {
    margin-top: .3em;
    font-size: 1rem;
}
.drawer .menus > ul > li > ul > li:first-child {
    margin-top: .6em;
}
.drawer .menus > ul > li > ul > li > a {
    color: #666;
    opacity: .7;
    transition: .3s ease color,
                .3s ease opacity;
}
.drawer .menus > ul > li > ul > li > a:hover {
    color: #172987;
    opacity: 1;
}
.drawer .menus,
.drawer .aside {
    margin-left: 4.625rem;
}
.drawer .aside {
    margin-bottom: 2rem;
}
.drawer .aside a,
.drawer .aside span {
    font-size: 1rem;
}
.drawer .aside a,
.drawer .aside span,
.drawer .aside i {
    display: inline-block;
    vertical-align: middle;
}
.drawer .aside > .wraplink {
    position: relative;
    cursor: default;
}
.drawer .aside > .wraplink > .sub-icon {
    position: absolute;
    bottom: 100%;
    left: 50%;
    visibility: hidden;
    opacity: 0;
    transform: translateX(-50%) translateY(20px);
    transition: .3s ease visibility,
                .3s ease opacity,
                .3s ease transform;
}
.drawer .aside > .wraplink.showicons {
    color: #172987;
}
.drawer .aside > .wraplink.showicons > .sub-icon {
    visibility: visible;
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}
.drawer .aside .sub-icon .icon {
    width: 2.9rem;
    height: 2.9rem;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: #bfc4e0;
    box-shadow: 0 0 24px rgba(0, 0, 0, .12);
    border-radius: 50%;
    margin-bottom: .625rem;
    position: relative;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: .3s ease visibility,
                .3s ease opacity,
                .3s ease transform;
}
.drawer .aside .sub-icon .icon:nth-child(1) { transition-delay: .36s; }
.drawer .aside .sub-icon .icon:nth-child(2) { transition-delay: .32s; }
.drawer .aside .sub-icon .icon:nth-child(3) { transition-delay: .28s; }
.drawer .aside .sub-icon .icon:nth-child(4) { transition-delay: .24s; }
.drawer .aside .sub-icon .icon:nth-child(5) { transition-delay: .2s; }
.drawer .aside .sub-icon .icon:nth-child(6) { transition-delay: .16s; }
.drawer .aside .sub-icon .icon:nth-child(7) { transition-delay: .12s; }
.drawer .aside .sub-icon .icon:nth-child(8) { transition-delay: .08s; }
.drawer .aside .sub-icon .icon:nth-child(9) { transition-delay: .04s; }
.drawer .aside .sub-icon .icon:nth-child(10) { transition-delay: 0s; }
.drawer .aside > .wraplink.showicons > .sub-icon .icon {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}
.drawer .aside .sub-icon .icon span {
    font-size: 1rem;
    position: absolute;
    top: 50%;
    right: 100%;
    color: #172987;
    white-space: nowrap;
    padding-right: 1em;
    opacity: 0;
    visibility: hidden;
    transform: translateX(5px) translateY(-50%);
    transition: .3s ease visibility,
                .3s ease opacity,
                .3s ease transform;
}
.drawer .aside .sub-icon .icon:hover {
    background-color: #172987;
}
.drawer .aside .sub-icon .icon:hover span {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) translateY(-50%);
}
.drawer .aside i {
    width: 1px;
    height: .8em;
    background-color: #bdbdbd;
    margin: 0 1em;
}
@media screen and (max-width: 1024px) {
    .drawer .menus {
        max-width: calc(100% - 5.625rem);
    }
    .drawer .menus > .close {
        right: 5vw;
    }
}
.mask {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, .45);
    z-index: 199;
    visibility: hidden;
    opacity: 0;
    transition: .4s ease visibility,
                .4s ease opacity;
}
.mask.show {
    visibility: visible;
    opacity: 1;
}
.scene {
    width: 100%;
    height: 100vh;
    max-height: 1080px;
}
.scene-title-small {
    font-size: 2.25rem;
    color: #333;
    padding: 1em 0;
    text-align: center;
}
@media screen and (max-width: 800px) {
    .scene-title-small {
        font-size: 1.8rem;
    }
}
.scene-title {
    font-size: 2.5rem;
    font-weight: 500;
    color: #221814;
    text-align: center;
    line-height: 1.4;
    position: relative;
}
.scene-title.big {
    font-size: 4rem;
    font-weight: bold;
    text-align: left;
}
.scene-title .main_title {
    position: relative;
    z-index: 1;
}
.scene-title .en_title {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, -5%);
    font-size: 5rem;
    text-transform: uppercase;
    user-select: none;
    opacity: .04;
    line-height: 1;
    white-space: nowrap;
    font-weight: bold;
}
.scene-title.scene-padding-bottom-sm .en_title,
.scene-title.scene-padding-bottom .en_title {
    bottom: auto;
    top: 0;
    transform: translate(-50%, -40%);
}
.scene-title .en_title.left {
    left: 0;
    transform: translate(-1em, -20%);
}
@media screen and (max-width: 800px) {
    .scene-title {
        font-size: 2rem;
    }
    .scene-title.big {
        font-size: 3rem;
        text-align: center;
    }
    .scene-title .en_title {
        font-size: 3rem;
    }
}
.scene-content {
    font-size: 1.25rem;
    color: #666;
    line-height: 1.8;
}
.scene-content strong {
    font-size: 1.33em;
    color: #333;
}
.scene-padding-top {
    padding-top: 6.25rem;
}
@media screen and (orientation: portrait) {
    .scene-padding-top {
        padding-top: 10%;
    }
}
.scene-padding-top-sm {
    padding-top: 3.125rem;
}
@media screen and (orientation: portrait) {
    .scene-padding-top-sm {
        padding-top: 5%;
    }
}
.scene-padding-bottom {
    padding-bottom: 6.25rem;
}
@media screen and (orientation: portrait) {
    .scene-padding-bottom {
        padding-bottom: 10%;
    }
}
.scene-padding-bottom-sm {
    padding-bottom: 3.125rem;
}
@media screen and (orientation: portrait) {
    .scene-padding-bottom-sm {
        padding-bottom: 5%;
    }
}
.news-item-wrap {
    margin-right: -.78125rem;
    margin-left: -.78125rem;
}
.news-item {
    margin: 0 .78125rem;
    background-color: #fff;
}
.news-item a {
    transition: .3s ease box-shadow
}
.news-item a:hover {
    box-shadow: 0 6px 14px rgba(0, 0, 0, .1);
}
.news-item .photo {
    width: 100%;
    padding-bottom: 62%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.news-item .title {
    color: #333;
    font-size: 1.125rem;
    display: block;
    line-height: 1.4;
    padding: 1rem 1.25rem 0;
    transition: .3s ease color;
}
.news-item:hover .title {
    color: #172987;
}
.news-item .time {
    margin-top: 2rem;
    color: #999;
    font-size: 1rem;
    padding: 0 1.25rem 1rem;
}
@media screen and (max-width: 800px) {
    .news-item .title {
        font-size: 1rem;
    }
}
@media screen and (max-width: 660px) {
    .news-item .title,
    .news-item .time {
        padding-left: 0;
        padding-right: 0;
    }
    .news-item a:hover {
        box-shadow: none;
    }
}
.cookies {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 180;
    background: url(/static/assets/images/bg-popup@2x.png) repeat-y center / 100% auto;
    color: #fff;
}
.cookies .container {
    position: relative;
}
.cookies .close {
    position: absolute;
    top: 1.5rem;
    right: 0;
    width: 14px;
    height: 14px;
    background-image: url(/static/assets/images/icon-close-white@3x.png);
}
.cookies a {
    color: currentColor;
    text-decoration: underline;
}
.cookies button {
    min-width: 9.375rem;
    height: 3.125rem;
    line-height: 2.625rem;
    border-radius: 3.125rem;
    border: 2px solid rgba(255, 255, 255, .2);
    color: currentColor;
    text-align: center;
    background-color: transparent;
    display: inline-block;
    font-size: 1.125rem;
    cursor: pointer;
    margin-right: 1em;
    transition: .3s ease border-color,
                .3s ease color,
                .3s ease background-color;
}
.cookies button:hover {
    border-color: currentColor;
}
.cookies button.accept {
    border-color: currentColor;
}
.cookies button.accept:hover {
    color: #172987;
    border-color: #fff;
    background-color: #fff;
}
.cookies .content {
    padding-right: 4em;
}
.cookies .wrap {
    display: table;
    width: 100%;
    padding: 2.5rem 0;
}
.cookies .wrap .content,
.cookies .wrap .buttons {
    display: table-cell;
    vertical-align: middle;
}
.cookies .wrap .content p {
    margin-bottom: 0;
}
.cookies .wrap .buttons {
    white-space: nowrap;
}
@media screen and (orientation: portrait) {
    .cookies .wrap,
    .cookies .wrap .content,
    .cookies .wrap .buttons {
        display: block;
    }
    .cookies .content {
        padding-right: 0;
        padding-bottom: 1em;
    }
    .cookies .close {
        top: 2.5rem;
        position: static;
        order: 0;
        margin: 1.5rem auto 0;
    }
    .cookies .wrap {
        order: 1;
        padding-top: 1.5rem;
        text-align: center;
    }
    .cookies .container {
        width: 85%;
        display: flex;
        flex-direction: column;
    }
    .cookies button:last-child {
        margin-right: 0;
    }
}
.cookies[data-cookies="show"] {
    display: block;
}
.cookies[data-cookies="hide"] {
    display: none;
}
.page-banner {
    width: 100%;
    height: 31.25vw;
    margin-top: 6.25rem;
    color: #fff;
    overflow: hidden;
    position: relative;
}
.page-banner.dark {
    color: #333;
}
@media screen and (orientation: portrait) {
    .page-banner {
        height: 50vw;
    }
}
.header-top-news[data-show=true] + .header + .main .page-banner {
    margin-top: 10rem;
}
.page-banner .container,
.page-banner .inner {
    height: 100%;
}
.page-banner .inner {
    display: table;
    width: 100%;
}
.page-banner h3 {
    font-size: 3.75rem;
    font-weight: bold;
    margin: 0;
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 1;
}
@media screen and (orientation: portrait) {
    .page-banner .container {
        width: 85%;
    }
    .page-banner h3 {
        font-size: 2.8rem;
    }
}
.page-banner .bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.list-base ul {
    margin: 0;
    list-style: none;
    color: #333;
}
.list-base li {
    margin-bottom: 6rem;
}
@media screen and (orientation: portrait) {
    .list-base li {
        margin-bottom: 10%;
    }
}
.list-base li,
.list-base li > a {
    display: table;
    width: 100%;
}
.list-base li .image,
.list-base li .text {
    display: table-cell;
    vertical-align: top;
} 
.list-base li .image {
    width: 20rem;
    font-size: 0;
}
.list-base li .image img {
    width: 100%;
    height: auto;
}
.list-base li .text {
    padding-left: 1.25rem;
}
.list-base li .text .title {
    font-size: 1.5rem;
}
.list-base li .text .intro {
    font-size: 1.25rem;
    margin-top: 1.1rem;
    color: #666;
    line-height: 1.6;
}
@media screen and (max-width: 600px) {
    .list-base li,
    .list-base li > a,
    .list-base li .image,
    .list-base li .text {
        display: block;
    }
    .list-base li .image {
        box-shadow: 0 2px 12px rgba(0, 0, 0, .1);
        width: 15rem;
    }
    .list-base li .text {
        padding-left: 0;
        padding-top: 1.25rem;
    }
    .list-base li .text .intro {
        margin-top: 1rem;
    }
}
.list-grid ul {
    margin: 0;
    list-style: none;
    font-size: 0;
}
.list-grid ul > li {
    display: inline-block;
    width: 16.66%;
    overflow: hidden;
    vertical-align: top;
    position: relative;
}
.list-grid ul > li a {
    display: block;
}
.list-grid ul > li img {
    width: 100%;
    height: auto;
}
.list-grid ul > li::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    display: block;
    background: url(/static/assets/images/border-grid@3x.png) no-repeat center / 100% 100%;
    opacity: 0;
    transition: .3s ease opacity;
}
.list-grid ul > li:hover::after {
    opacity: 1;
}
@media screen and (max-width: 500px) {
    .list-grid ul > li {
        width: 50%;
    }
}
.load-more button {
    display: block;
    width: 2.625rem;
    height: 1.375rem;
    background: url(/static/assets/images/arrow-down@3x.png) no-repeat center / 100% 100%;
    margin: 0 auto;
    border: 0;
    outline: none;
    cursor: pointer;
    font-size: 0;
}
.load-more button.active {
    transform: rotate(180deg);
}
.shutters {
    width: 100%;
    height: 40rem;
    display: flex;
    align-items: stretch;
    position: relative;
}
.shutters.small {
    height: 30rem;
}
.shutters .item {
    width: 25%;
    height: 100%;
    position: relative;
    flex: 0 0 auto;
    transition: .24s ease width;
    color: #fff;
    cursor: default;
}
.shutters .item .bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-size: auto 100%;
    background-repeat: no-repeat;
    transition: .24s ease;
}
.shutters .item .title-sm {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .75));
    padding: 2em;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 1.5rem;
    font-weight: 500;
    transition: .24s ease;
}
.shutters .item .info {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    background-color: rgba(0, 86, 174, .8);
    transition: .24s ease;
    padding: 3em;
}
.shutters .item .info * {
    opacity: 0;
    visibility: hidden;
    transition: .24s ease;
    transition-delay: 240ms;
}
.shutters .item .info .title {
    font-size: 2.25rem;
    margin-bottom: 1em;
}
.shutters .item .info .post {
    font-size: 1.5rem;
    margin-bottom: 1.5em;
    margin-top: -1.5em;
}
.shutters .item .info .intro {
    font-size: 1.25rem;
    text-align: justify;
    line-height: 1.6;
}
.shutters .item.packup {
    width: 10%;
}
.shutters.small .item.packup {
    width: 17%;
}
.shutters .item.packup .title-sm,
.shutters .item.open .title-sm {
    visibility: hidden;
    opacity: 0;
}
.shutters .item.open {
    width: 70%;
}
.shutters.small .item.open {
    width: 49%;
}
.shutters .item.open .info,
.shutters .item.open .info * {
    visibility: visible;
    opacity: 1;
}
@media screen and (max-width: 800px) {
    .shutters {
        flex-wrap: wrap !important;
        height: auto !important;
    }
    .shutters .item,
    .shutters .item.packup,
    .shutters .item.open {
        width: 100% !important;
        height: auto !important;
    }
    .shutters .item .bg {
        position: static !important;
        padding-bottom: 60% !important;
    }
    .shutters .item .title-sm {
        position: relative !important;
        padding: 1em !important;
        font-size: 1.125rem !important;
        z-index: 1 !important;
        height: 65px !important;
        margin-top: -65px !important;
        display: flex;
        align-items: center;
    }
    .shutters .item .title-sm,
    .shutters .item.packup .title-sm,
    .shutters .item.open .title-sm {
        visibility: visible !important;
        opacity: 1 !important;
    }
    .shutters .item .info {
        position: relative !important;
        display: none !important;
    }
    .shutters .item.open .info {
        display: block !important;
    }
    .shutters .item.open {
        position: static !important;
    }
    .shutters .item.open .info {
        padding: 2em !important;
    }
    .shutters .item .info .title {
        font-size: 2rem !important;
    }
}
.form .form-row {
    margin: 0 -10px;
    display: flex;
    align-items: stretch;
}
.form .form-col {
    width: 50%;
    flex: 0 0 auto;
    padding: 0 10px;
    box-sizing: border-box;
}
.form .form-name {
    font-size: 1.125rem;
    color: #333;
    margin-bottom: .5em;
}
.form .form-name i {
    color: #ff1717;
    font-style: normal;
    display: inline-block;
    transform: translateY(5px);
}
.form .form-input {
    width: 100%;
    position: relative;
    font-size: 0;
}
.form .form-input .y::before,
.form .form-input .y::after,
.form .form-input .x::before,
.form .form-input .x::after {
    content: "";
    display: block;
    position: absolute;
    opacity: 0;
}
.form .form-input .x::before,
.form .form-input .x::after {
    top: 0;
    bottom: 0;
    width: 1px;
    transition: .3s ease opacity;
}
.form .form-input .x::before {
    left: 0;
    background-color: #dce023;
}
.form .form-input .x::after {
    right: 0;
    background-color: #003f95;
}

.form .form-input .y::before,
.form .form-input .y::after {
    height: 1px;
    left: 0;
    right: 0;
    background: url(/static/assets/images/bg-border.png) no-repeat center / 100% 100%;
    transition: .3s ease opacity;
}
.form .form-input .y::before {
    top: 0;
}
.form .form-input .y::after {
    bottom: 0;
}
.form .form-input input,
.form .form-input textarea {
    width: 100%;
    border: 1px solid #999;
    border-radius: 0;
    outline: none;
    padding: 1em;
    font-size: 1rem;
    -webkit-appearance: none !important;
}
.form .form-input input::-webkit-inner-spin-button {
     -webkit-appearance: none;
}
.form .form-input input::-webkit-outer-spin-button {
     -webkit-appearance: none;
}
.form .form-input input {
    height: 3.125rem;
}
.form .form-input textarea {
    height: 12.5rem;
}
.form .form-tips {
    font-size: 1rem;
    color: #999;
}
.form .form-item {
    margin-bottom: 2.25rem;
}

.form .form-item.form-amin{
    animation: shake 1s;
    -o-animation: shake 1s;
    -webkit-animation: shake 1s;
    -moz-animation: shake 1s;
    color: #f00;
}
.form .form-item.form-amin .form-name{
    color: #f00;
}
.form .form-item.form-amin .form-name a{
    color: #f00;
}
@keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-5px);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(5px);
    }
}
@-o-keyframes shake {
    /* Opera */
    0%, 100% {
        -webkit-transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-5px);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(5px);
    }
}
@-webkit-keyframes shake {
    /* Safari 鍜 Chrome */
    0%, 100% {
        -webkit-transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-5px);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(5px);
    }
}
@-moz-keyframes shake {
    /* Firefox */
    0%, 100% {
        -moz-transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -moz-transform: translateX(-5px);
    }
    20%,
    40%,
    60%,
    80% {
        -moz-transform: translateX(5px);
    }
}
.form .form-input input:focus + .y::before,
.form .form-input textarea:focus + .y::before,
.form .form-input input:focus + .y::after,
.form .form-input textarea:focus + .y::after  {
    opacity: 1;
    height: 2px;
}
.form .form-input input:focus + .y + .x::before,
.form .form-input textarea:focus + .y + .x::before,
.form .form-input input:focus + .y + .x::after,
.form .form-input textarea:focus + .y + .x::after {
    opacity: 1;
    width: 2px;
}
.primary-button {
    text-align: center;
}
.primary-button button {
    width: 12.5rem;
    height: 3.75rem;
    border-radius: 3.75rem;
    line-height: 3.25rem;
    border-width: 2px;
    border-style: solid;
    display: inline-block;
    text-align: center;
    position: relative;
    transition: .3s ease color,
                .3s ease background,
                .3s ease border-color;
    color: #172987;
    border-color: transparent;
    background-color: #fff;
    font-size: 1.125rem;
    font-weight: 500;
}
.primary-button button:hover {
    border-color: currentColor;
}
.primary-button button::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    background: url(/static/assets/images/bg-more@3x.png) no-repeat center / 100% 100%;
    transition: opacity .3s ease;
}
.primary-button button:hover::before {
    opacity: 0;
}
.search-input {
    text-align: center;
}
.search-input .search-input-inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    font-size: 0;
    position: relative;
    height: 60px;
    border-radius: 60px;
    background-color: #ddd;
    transition: .3s ease background-color;
}
@media screen and (orientation: portrait) {
    .search-input .search-input-inner {
        height: 50px;
    }
}
.search-input .search-input-inner .icon {
    width: 1.6875rem;
    height: 1.6875rem;
    display: inline-block;
    background: url(/static/assets/images/icon-search@3x.png) no-repeat center / contain;
    position: absolute;
    left: 2.375rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}
.search-input .search-input-inner .close {
    position: absolute;
    right: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: .3s ease;
}
.search-input.focus .search-input-inner .close {
    opacity: 1;
    visibility: visible;
}
.search-input.focus .search-input-inner {
    background-color: transparent;
}
.search-input .search-input-inner .inner {
    position: absolute;
    z-index: 1;
    top: 1px;
    right: 1px;
    bottom: 1px;
    left: 1px;
    border-radius: 60px;
    background-color: #fff;
    padding: 0 4.5rem 0 5.5rem;
}
.search-input.focus .search-input-inner .inner {
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: 2px;
}
.search-input .search-input-inner input {
    display: block;
    outline: none;
    font-size: 1.125rem;
    /* font-weight: bold; */
    background-color: transparent;
    border: 0;
    width: 100%;
    height: 100%;
}
.search-input .search-input-inner .border::before {
    content: "";
    display: block;
    position: absolute;
    background: url(/static/assets/images/bg-border.png) no-repeat center / 100% 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 60px;
    transition: .3s ease opacity;
    z-index: 0;
    opacity: 0;
}
.search-input.focus .search-input-inner .border::before {
    opacity: 1;
}
.share .icon {
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    opacity: .5;
    transition: .3s ease background-image,
                .3s ease opacity;
}
.share .icon.share-wechat {
    background-image: url(/static/assets/images/share-wechat@3x.png);
}
.share .icon.share-in {
    background-image: url(/static/assets/images/share-in@3x.png);
}
.share .icon.share-facebook {
    background-image: url(/static/assets/images/share-facebook@3x.png);
}
.share .icon.share-twitter {
    background-image: url(/static/assets/images/share-twitter@3x.png);
}
.share .icon.share-mail {
    background-image: url(/static/assets/images/share-mail@3x.png);
}
.share .icon.share-link {
    background-image: url(/static/assets/images/share-link@3x.png);
}
.share .icon.share-wechat:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-wechat-blue.png);
}
.share .icon.share-in:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-in-blue.png);
}
.share .icon.share-facebook:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-facebook-blue.png);
}
.share .icon.share-twitter:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-twitter-blue.png);
}
.share .icon.share-mail:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-mail-blue.png);
}
.share .icon.share-link:hover {
    opacity: 1;
    background-image: url(/static/assets/images/share-link-blue.png);
}
.share.light .icon {
    opacity: 1;
}
.share.light .icon.share-wechat,
.share.light .icon.share-wechat:hover {
    background-image: url(/static/assets/images/share-wechat-white@3x.png);
}
.share.light .icon.share-in,
.share.light .icon.share-in:hover {
    background-image: url(/static/assets/images/share-in-white@3x.png);
}
.share.light .icon.share-facebook,
.share.light .icon.share-facebook:hover {
    background-image: url(/static/assets/images/share-facebook-white@3x.png);
}
.share.light .icon.share-twitter,
.share.light .icon.share-twitter:hover {
    background-image: url(/static/assets/images/share-twitter-white@3x.png);
}
.share.light .icon.share-mail,
.share.light .icon.share-mail:hover {
    background-image: url(/static/assets/images/share-mail-white@3x.png);
}
.share.light .icon.share-link,
.share.light .icon.share-link:hover {
    background-image: url(/static/assets/images/share-link-white@3x.png);
}
.filter-row {
    display: table;
    width: 100%;
}
.filter-row.filter-block {
    display: block;
}
.filter-side-inner {
    margin-right: 7rem;
}
.filter-side,
.filter-main {
    display: table-cell;
    vertical-align: top;
}
.filter-block .filter-main {
    display: block;
    margin-top: 2rem;
}
.filter-side {
    width: 22%;
    max-width: 350px;
    position: relative;
}
.filter-side .filter-mobile-button {
    width: 3rem;
    height: 3rem;
    position: absolute;
    right: 0;
    top: 10rem;
    transform: translateX(100%);
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
    visibility: hidden;
    opacity: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    background: #fff url(../images/filter.png) no-repeat center / 50% auto;
}
.filter-side .filter-mobile-button i {
    height: 2px;
    width: 50%;
    background-color: #666;
    margin: 2px auto;
    /* display: block; */
    display: none;
}
.filter-side .top {
    font-size: 1.125rem;
    color: #999;
    margin-bottom: 1em;
}
.filter-side .top .clear {
    color: #172987;
    margin-top: 1em;
    cursor: pointer;
    display: inline-block;
}
.filter-side .show-more {
    color: #172987;
    cursor: pointer;
    display: inline-block;
    font-size: 1rem;
}
.filter-side ul {
    list-style: none;
    margin: 0;
    font-size: 1.125rem;
    width: 100%;
}
.filter-side .part {
    cursor: default;
}
.filter-side .part,
.filter-side .group-name {
    font-weight: 500;
    color: #333;
    width: 100%;
    position: relative;
    margin-bottom: .618em;
}
.filter-side .part::after {
    content: "";
    width: 14px;
    height: 8px;
    background: url(/static/assets/images/arrow-down@3x.png) no-repeat center / 100% 100%;
    position: absolute;
    display: block;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.filter-side .part.hide::after {
    transform: translateY(-50%) rotate(180deg);
}
.filter-side .group {
    margin-bottom: 1em;
}
.filter-side li label {
    color: #333;
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: .25em;
}
.filter-side li label i {
    color: #666;
    font-style: normal;
    margin-left: .25em;
}
.filter-side li label input {
    opacity: 0;
    visibility: hidden;
    position: absolute;
}
.filter-side li label input + span {
    position: relative;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}
.filter-side li label input + span::before {
    content: "";
    width: 1.25rem;
    height: 1.25rem;
    background-color: #fff;
    border: 1px solid #a6a6b5;
    display: inline-block;
    margin-right: 1em;
    transform: translateY(1px);
}
.filter-side li label input:checked + span::before {
    background: url(/static/assets/images/checked@3x.png) no-repeat center / 100% 100%;
    border-color: #1b2fa5;
}
@media screen and (orientation: portrait) {
    .filter-row,
    .filter-side,
    .filter-main {
        display: block;
    }
    .filter-side {
        position: fixed;
        top: 0;
        bottom: 0;
        left: -80vw;
        width: 80vw;
        max-width: 100vw;
        background: #fff;
        z-index: 90;
        transition: .3s ease left,
                    .3s ease box-shadow;
    }
    .filter-side.open {
        left: 0;
        z-index: 100;
        box-shadow: 2px 0 20px rgba(0, 0, 0, .05);
    }
    .filter-side .filter-side-inner {
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 1;
        background-color: #fff;
        padding: 3rem;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }
    .filter-side .filter-mobile-button {
        visibility: visible;
        opacity: 1;
    }
}
.list-jobs-item {
    margin-bottom: 5rem;
}
.list-jobs-item .item-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: default;
}
.filter-block .list-jobs-item .item-top {
    position: relative;
    padding-right: .75rem;
}
.list-jobs-item .item-top .post {
    display: flex;
    align-items: center;
    line-height: 1;
}
.filter-block .list-jobs-item .item-top .post {
    width: 100%;
    font-size: 1.5rem;
}
.filter-block .list-jobs-item.open .item-top .post {
    color: #1e218a;
}
.filter-block .list-jobs-item .item-top .post [class^=cell] {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
}
.filter-block .list-jobs-item .item-top .post .cell-1 {
    width: 50%;
}
.filter-block .list-jobs-item .item-top .post .cell-2 {
    width: 20%;
}
.filter-block .list-jobs-item .item-top .post .cell-3,
.filter-block .list-jobs-item .item-top .post .cell-4 {
    width: 15%;
}
@media screen and (max-width: 600px) {
    .filter-block .list-jobs-item .item-top .post {
        font-size: 1.25rem;
    }
}
@media screen and (max-width: 500px) {
    .filter-block .list-jobs-item .item-top .post .cell-1 {
        width: 100%;
    }
    .filter-block .list-jobs-item .item-top .post .cell-2,
    .filter-block .list-jobs-item .item-top .post .cell-3,
    .filter-block .list-jobs-item .item-top .post .cell-4 {
        display: none;
    }
}
.list-jobs-item .item-top .post h3 {
    font-size: 1.5rem;
    font-weight: 500;
    color: #333;
    margin: 0;
}
.filter-block .list-jobs-item .item-top .post h3 {
    font-size: inherit;
    font-weight: normal;
    display: inline;
    color: inherit;
}
.list-jobs-item .item-top .post .hot {
    font-size: 1rem;
    line-height: 1;
    background-color: #f00;
    color: #fff;
    padding: 0 .6em .08em;
    border-radius: 2px;
    margin-left: 1em;
}
.filter-block .list-jobs-item .item-top .post .hot {
    margin-top: 1px;
}
.list-jobs-item .item-top .arrow {
    width: .75rem;
    height: 1.3125rem;
    background: url(/static/assets/images/arrow-right-hover@3x.png) no-repeat center / 100% 100%;
}
.filter-block .list-jobs-item .item-top .arrow {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -.65625rem;
}
.list-jobs-item.open .item-top .arrow {
    transform: rotate(90deg);
}
.list-jobs-item .item-content {
    display: none;
}
.list-jobs-item.open .item-content {
    display: block;
}
.filter-block .list-jobs-item.open .item-content {
    background-color: #f9f9f9;
    padding: 2rem;
    margin-top: 1rem;
}
.list-jobs-item .item-content .share {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 2rem 0;
}
.list-jobs-item .item-content .share-main {
    width: 1.5rem;
    height: 1.5rem;
    background: url(/static/assets/images/share-gray.png) no-repeat center / contain;
    margin-right: 0;
    transition: .3s ease background-image;
}
.list-jobs-item .item-content .share-main:hover {
    background-image: url(/static/assets/images/share@3x.png);
}
.list-jobs-item .item-content .share > .icon {
    margin-left: 1rem;
    width: 1.4rem;
    height: 1.4rem;
    display: none;
    position: relative;
}
.list-jobs-item .item-content .share.show > .icon {
    display: inline-block;
}
.list-jobs-item .item-content .share.show .share-main {
    margin-right: 1rem;
}
.list-jobs-item .item-content .content {
    font-size: 1.125rem;
}
.list-jobs-item .item-content .content h4 {
    font-size: 1.5rem;
    font-weight: normal;
    color: #333;
}
.filter-block .list-jobs-item .item-content .content h4 {
    font-size: 1.25rem;
}
.list-jobs-item .item-content .content h4:not(:first-child) {
    margin-top: 2em;
}
.list-jobs-item .item-content .content p {
    color: #666;
}
.filter-block .list-jobs-item .item-content .content p { 
    font-size: 1.125rem;
    text-align: justify;
    margin-bottom: 0;
    min-height: 1em;
}
.list-jobs-item .item-content .more {
    text-align: left;
    padding-top: 2rem;
}
.list-jobs-item .item-content .more a {
    height: 3.125rem;
    line-height: 2.425rem;
}
.filter-top {
    padding: 3rem 0;
}
@media screen and (max-width: 800px) {
    .filter-top {
        padding: 4rem 0;
    }
}
.filter-top dl {
    display: flex;
    margin-bottom: 0;
    font-size: 1.125rem;
}
.filter-top dl dt {
    float: 0 0 auto;
    font-weight: 500;
    margin-right: 1em;
    white-space: nowrap;
}
.filter-top dl dd {
    flex: 1 1 auto;
}
.filter-top dl dd label {
    color: #333;
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-right: 1em;
    margin-bottom: 1em;
    min-width: 4em;
}
.filter-top dl dd label i {
    color: #666;
    font-style: normal;
    margin-left: .25em;
}
.filter-top dl dd label input {
    opacity: 0;
    visibility: hidden;
    position: absolute;
}
.filter-top dl dd label input + span {
    position: relative;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}
.filter-top dl dd label input + span::before {
    content: "";
    width: 1.25rem;
    height: 1.25rem;
    background-color: #fff;
    border: 1px solid #a6a6b5;
    display: inline-block;
    margin-right: .5em;
    transform: translateY(1px);
}
.filter-top dl dd label input:checked + span::before {
    background: url(/static/assets/images/checked@3x.png) no-repeat center / 100% 100%;
    border-color: #1b2fa5;
}
.news-tabs {
    border-bottom: 1px solid #e5e5ea;
    height: 4rem;
    line-height: 4rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
    white-space: nowrap;
}
.news-tabs.no-border {
    border-bottom: 0;
}
.news-tabs a {
    display: inline-block;
    margin-right: 3em;
    font-size: 1.5rem;
}
.news-tabs a.active {
    color: #172987;
    position: relative;
}
.news-tabs a.active::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: url(/static/assets/images/bg-border.png) no-repeat center / 100% 100%;
}
@media screen and (orientation: portrait) {
    .news-tabs-wrap {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .news-tabs a {
        font-size: 1.125rem;
        margin-right: 2em;
    }
}
.news-list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin: 0 -1.165%;
    list-style: none;
    padding: 0 2rem;
}
@media screen and (orientation: portrait) {
    .news-list {
        padding: 0;
    }
}
.news-list-item {
    width: 31%;
    margin: 0 1.165% 2.33%;
    transition: .3s ease box-shadow;
    display: flex;
    flex-direction: column;
    position: relative;
    background-color: #f9f9f9;
}
@media screen and (max-width: 600px) {
    .news-list {
        margin: 0 -1%;
    }
    .news-list-item {
        width: 48%;
        margin: 0 1% 2%;
    }
}
@media screen and (max-width: 400px) {
    .news-list {
        margin: 0;
    }
    .news-list-item {
        width: 100%;
        margin: 0 0 2%;
    }
}
.news-list-item:hover {
    box-shadow: 0 2px 12px rgba(0, 0, 0, .1);
}
.news-list-item .photo {
    font-size: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding-bottom: 73%;
}
.news-list-item .photo img {
    width: 100%;
    height: auto;
}
.news-list-item .text {
    padding: 1em;
    font-size: 1.5rem;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: #f9f9f9;
    transition: .24s ease transform;
}
@media screen and (max-width: 1024px) {
    .news-list-item .text {
        font-size: 1.125rem;
    }
}
.news-list-item.show-share .text {
    transform: translateY(-2.5rem);
}
.news-list-item .text .time,
.news-list-item .text .bottom {
    font-size: 1rem;
    color: #999;
}
.news-list-item .text .bottom a {
    color: #999;
}
.news-list-item .text .bottom a:hover {
    color: #333;
}
.news-list-item .text .title {
    display: inline-block;
    margin-bottom: 1.5em;
    margin-top: .5em;
}
.news-list-item .text .bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.news-list-item .text .bottom a::after {
    content: "";
    display: inline-block;
    width: .7em;
    height: .7em;
    background: url(/static/assets/images/page-next-gray@3x.png) no-repeat center / contain;
    margin-left: .5em;
}
.news-list-item .text .bottom .share-icon {
    width: 1.4375rem;
    height: 1.4375rem;
    background: url(/static/assets/images/share@3x.png) no-repeat center / 100% 100%;
    opacity: .35;
    cursor: pointer;
    transition: .24s ease opacity;
}
.news-list-item.show-share .text .bottom .share-icon {
    opacity: 1;
}
.news-list-item .share {
    height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: url(/static/assets/images/bg-border.png) repeat-y center / 100% auto;
    text-align: center;
    transition: .24s ease height;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.news-list-item.show-share .share {
    height: 2.5rem;
}
.news-list-item .share .icon {
    margin: 0 .6rem;
    width: 1.2rem;
    height: 1.2rem;
}
.pagination {
    text-align: center;
    font-size: 1.125rem;
    color: #333;
    padding: 3rem 0 5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
}
.pagination a {
    display: inline-block;
    color: #333;
    margin: 0 2em;
}
.pagination a.current,
.pagination a:hover {
    color: #172987;
}
.pagination a.current {
    font-weight: bold;
}
.pagination .prev,
.pagination .next {
    width: 1em;
    height: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.pagination .prev {
    background-image: url(/static/assets/images/page-prev-gray@3x.png);
}
.pagination .next {
    background-image: url(/static/assets/images/page-next-gray@3x.png);
}
.leadership-list-item {
    display: flex;
    align-items: flex-start;
    padding: 4%;
    justify-content: space-between;
}
.leadership-list-item .photo {
    width: 24%;
    min-width: 240px;
    flex: 0 0 auto;
}
.leadership-list-item .photo img {
    width: 100%;
    height: auto;
}
.leadership-list-item .text {
    margin-left: 6%;
    padding-top: 2%;
}
.leadership-list-item .text .name {
    color: #333;
    font-weight: 500;
    font-size: 1.875rem;
}
.leadership-list-item .text .post {
    color: #666;
    font-size: 1.5rem;
    margin-bottom: 1.25em;
}
.leadership-list-item .text .intro {
    color: #666;
    font-size: 1.125rem;
}
.leadership-list-item .text .intro p {
    padding: 0;
    margin: 0;
    min-height: 1em;
    text-align: justify;
}
.leadership-list-item .text .share {
    margin-top: 5%;
}
.leadership-list-item .text .share .icon {
    margin-right: 1.5em;
}
.leadership-list-item:nth-child(even) .photo {
    order: 1;
}
.leadership-list-item:nth-child(even) .text {
    margin-left: 0;
    margin-right: 6%;
}
@media screen and (max-width: 600px) {
    .leadership-list-item {
        display: block;
    }
    .leadership-list-item .text {
        margin: 0;
    }
}
.product-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -.6%;
    margin-right: -.6%;
}
.product-list-item {
    width: 50%;
    padding: 0 .6%;
}
.product-list-item .img {
    position: relative;
    font-size: 0;
}
.product-list-item .img .star {
    width: 3.375rem;
    height: 3.25rem;
    background: url(/static/assets/images/star@3x.png) no-repeat center / 100% 100%;
    position: absolute;
    top: .6875rem;
    right: .6875rem;
    z-index: 5;
}
.product-list-item .img img {
    width: 100%;
    height: auto;
    font-size: 0;
}
.product-list-item .img .inner {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0, 86, 174, .8);
    padding: 5%;
    color: #fff;
    opacity: 0;
    transition: .3s ease opacity;
}
.product-list-item .img .title {
    font-size: 1.5rem;
    margin-bottom: 1em;
}
.product-list-item .img .intro {
    font-size: 1rem;
    line-height: 1.6;
}
.product-list-item .img .intro p {
    margin: 0;
    padding: 0;
    text-align: justify;
}
.product-list-item .img:hover .inner {
    opacity: 1;
}
.product-list-item .name {
    color: #333;
    padding: .618em 0 1.6em;
}
@media screen and (max-width: 800px) {
    .product-list-item {
        width: 100%;
        padding: 0;
    }
    .product-list-item .img .inner {
        display: none !important;
    }
    .product-list-item.open .img .inner {
        display: block !important;
        opacity: 1;
        position: static;
    }
}
.table {
    background-color: #fff;
    border-radius: .625rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.table  table {
    width: 100%;
}
.table  table th,
.table  table td {
    padding: 1em;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
}
.table  table th:last-child,
.table  table td:last-child {
    border-right: 0;
}
.table  table tr:nth-last-child(2) td {
    border-bottom: 0;
}
.table  table th {
    color: #172987;
    font-weight: normal;
    white-space: nowrap;
}
.table  table .no-wrap {
    white-space: nowrap;
}
.table table .arrow {
    display: inline-block;
    width: .8125rem;
    height: 1.4375rem;
    background: url(/static/assets/images/arrow-table@3x.png) no-repeat center / 100% 100%;
    margin-left: .5em;
    margin-right: 1em;
    position: relative;
    top: .35em;
    cursor: pointer;
    transition: .24s ease background-image,
                .24s ease transform;
}
.table table tr.active .arrow {
    background-image: url(/static/assets/images/arrow-table-active@3x.png);
    transform: rotate(90deg);
}
.table  table tr.active td {
    border-bottom: 1px solid #eee;
}
.table  table tr.active td:first-child {
    border-bottom: 0;
}
.table table th .arrow {
    visibility: hidden;
    cursor: default;
}
.table table tr.expand {
    display: none;
}
.table table tr.active + tr.expand {
    display: table-row;
}
.table .progress {
    height: 2rem;
    background: url(/static/assets/images/bg-progress@2x.png) repeat-y center / 100% auto;
}
.table .table-expand {
    display: flex;
    position: relative;
    padding: 1em;
}
.table .table-expand .image {
    flex: 0 0 auto;
    width: 20rem;
    margin-right: 3em;
}
.table .table-expand .image img {
    width: 100%;
}
.table .table-expand .text .title {
    color: #333;
    font-size: 2.25rem;
    margin-bottom: 1em;
    font-weight: 500;
}
.table .table-expand .text .intro {
    color: #666;
    font-size: 1.125rem;
}
.table .table-expand .text .intro strong {
    color: #333;
    font-weight: 500;
}
.table .table-expand .text .intro p {
    margin-bottom: 0;
}
.table .table-expand .close-expand {
    width: 1rem;
    height: 1rem;
    background: url(/static/assets/images/close@3x.png) no-repeat center / 100% 100%;
    position: absolute;
    top: 1em;
    right: 1em;
    cursor: pointer;
}


/*========== Index Scene 1 ==========*/
.index-scene-1 .slick {
    position: relative;
}
.index-scene-1 .slick,
.index-scene-1 .slick .slick-list,
.index-scene-1 .slick .slick-list [class^=slick] {
    width: 100%;
    height: 100%;
    outline: none;
}
.index-scene-1 .slick .slick-dots {
    position: absolute;
    text-align: center;
    bottom: 4rem;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.index-scene-1 .slick .slick-dots li {
    display: inline-block;
    width: 2.5rem;
    height: 2px;
    background: #c0c0c0;
    margin: 0 .3125rem;
    transition: .3s ease background;
    border-radius: 2px;
}
.index-scene-1 .slick .slick-dots li.slick-active {
    background: url(/static/assets/images/bg-hamburger@3x.png) no-repeat center / 100% 100%;
}
.index-scene-1 .slick .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0;
    background-color: transparent;
    border: 0;
    outline: none;
}
@media screen and (orientation: portrait) {
    .index-scene-1 .slick .slick-dots li button {
        height: 42px;
        position: relative;
        top: -20px;
    }
}
.index-scene-1 .banner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.index-scene-1 .banner .bg,
.index-scene-1 .banner .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.index-scene-1 .banner .bg-m {
    display: none;
    background-position: center bottom;
}
@media screen and (orientation: portrait) {
    .index-scene-1 .banner .bg-m {
        display: block;
    }
    .index-scene-1 .banner .bg {
        display: none;
    }
}
.index-scene-1 .banner .text {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    display: table;
}
.index-scene-1 .banner .text > .inner {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}
@media screen and (orientation: portrait) {
    .index-scene-1 .banner .text > .inner > .container {
        width: 85%;
    }
}
.index-scene-1 .banner .text.left {
    text-align: left;
}
.index-scene-1 .banner .text.center {
    text-align: center;
}
.index-scene-1 .banner .text.right {
    text-align: right;
}
@media screen and (orientation: portrait) {
    .index-scene-1 .banner .text:not(.center) > .inner {
        vertical-align: top;
        padding-top: 30%;
    }
}
.index-scene-1 .banner .text .title {
    font-weight: bold;
    line-height: 1.4;
}
.index-scene-1 .banner .text .intro {
    line-height: 1.4;
    font-size: 1.5rem;
    font-weight: 400;
}
.index-scene-1 .banner .text.left .title {
    padding-right: 2em;
}
.index-scene-1 .banner .text.left .intro {
    padding-right: 2em;
}
.index-scene-1 .banner .text .more {
    margin-top: 3rem;
}
.index-scene-1 .banner .text.middle .title {
    font-size: 6.625rem;
    line-height: 1;
}
.index-scene-1 .banner .text.middle .intro {
    margin-top: 1.4em;
}
.index-scene-1 .banner .text.large .title {
    font-size: 9.375rem;
    line-height: .9;
}
.index-scene-1 .banner .text.large .intro {
    margin-top: 1.3em;
}
.index-scene-1 .banner .text.small .title {
    font-size: 5rem;
    line-height: 1.2;
}
.index-scene-1 .banner .text.small .intro {
    margin-top: 1em;
}
@media screen and (max-width: 800px) {
    .index-scene-1 .banner .text .intro {
        font-size: 1.2rem;
    }
    .index-scene-1 .banner .text.middle .title {
        font-size: 3rem;
    }
    .index-scene-1 .banner .text.middle .intro {
        margin-top: .9em;
    }
    .index-scene-1 .banner .text.large .title {
        font-size: 4.2rem;
        line-height: 1;
    }
    .index-scene-1 .banner .text.large .intro {
        margin-top: .8em;
    }
    .index-scene-1 .banner .text.small .title {
        font-size: 2.3rem;
    }
    .index-scene-1 .banner .text.small .intro {
        margin-top: .5em;
    }
    .index-scene-1 .banner .text.left .title {
        padding-right: 0;
    }
    .index-scene-1 .banner .text.left .intro {
        padding-right: 0;
    }
}
.index-scene-1 .banner .text .inner .container > * {
    transform: translateY(100px);
    opacity: 0;
    transition: .8s ease transform,
                .8s ease opacity;
}
.index-scene-1 .slick-active .text .inner .container > * {
    transform: translateY(0);
    opacity: 1;
} 


/*========== Index Scene 2 ==========*/
.index-scene-2 {
    height: 75vh;
    min-height: 910px;
    position: relative;
}
.index-scene-2 .scene-title {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
@media screen and (orientation: portrait) {
    .index-scene-2 {
        height: auto;
        min-height: auto;
    }
    .index-scene-2 .scene-title {
        position: static;
    }
}
.index-scene-2 .slick {
    position: relative;
}
.index-scene-2 .slick,
.index-scene-2 .slick .slick-list,
.index-scene-2 .slick .slick-list [class^=slick] {
    width: 100%;
    height: 100%;
    outline: none;
}
.index-scene-2 .slick .slick-dots {
    position: absolute;
    text-align: center;
    bottom: 4rem;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.index-scene-2 .slick .slick-dots li {
    display: inline-block;
    width: 1.625rem;
    height: 1.625rem;
    margin: 0 .625rem;
    transition: .3s ease background;
    background: url(/static/assets/images/dot@3x.png) no-repeat center / 100% 100%;
}
.index-scene-2 .slick .slick-dots li.slick-active {
    background-image: url(/static/assets/images/dot-active@3x.png);
}
.index-scene-2 .slick .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0;
    background-color: transparent;
    border: 0;
    outline: none;
}
.index-scene-2 .banner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.index-scene-2 .banner .bg,
.index-scene-2 .banner .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
}
.index-scene-2 .banner .bg {
    background-size: cover;
}
.index-scene-2 .banner .bg-m {
    display: none;
    background-position: center bottom;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .index-scene-2 .banner .bg-m {
        display: block;
    }
    .index-scene-2 .banner .bg {
        display: none;
    }
}
.index-scene-2 .banner .text {
    position: relative;
    z-index: 1;
    width: 45%;
    text-align: justify;
    height: 100%;
    display: table;
}
@media screen and (orientation: portrait) {
    .index-scene-2 .banner .text {
        padding-bottom: 70%;
        width: 100%;
    }
}
.index-scene-2 .banner .text > .inner {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}
@media screen and (orientation: portrait) {
    .index-scene-2 .banner .text > .inner > .container {
        width: 85%;
    }
}
.index-scene-2 .banner .text .title {
    color: #221814;
    font-size: 2.75rem;
    font-weight: 500;
    line-height: 1.4;
}
@media screen and (max-width: 800px) {
    .index-scene-2 .banner .text .title {
        font-size: 1.8rem; 
    }
}
@media screen and (max-width: 600px) {
    .index-scene-2 .banner .text .title {
        font-size: 1.6rem; 
    }
}
.index-scene-2 .banner .text .intro {
    font-size: 1.25rem;
    color: #666;
    margin-top: 3rem;
    line-height: 1.8;
}
.index-scene-2 .banner .text .more {
    color: #172987;
    margin-top: 6.25rem;
}
@media screen and (orientation: portrait) {
    .index-scene-2 .banner .text .intro {
        margin-top: 5%;
    }
    .index-scene-2 .banner .text .more {
        margin-top: 10%;
    }
}
.index-scene-2 .banner .text .inner .container > * {
    transform: translateY(100px);
    opacity: 0;
    transition: .8s ease transform,
                .8s ease opacity;
}
.index-scene-2 .slick-active .text .inner .container > * {
    transform: translateY(0);
    opacity: 1;
} 


/*========== Index Scene 2 ==========*/
.index-scene-3 {
    background-color: #fafafa;
}
.index-scene-3 .scene-title {
    position: relative;
    z-index: 1;
}
.index-scene-3 .content {
    width: 100%;
    position: relative;
}
.index-scene-3 .content .image {
    width: 50%;
    position: relative;
    padding-top: 10%;
}
.index-scene-3 .content .image .vi {
    width: 55%;
    height: 0;
    padding-bottom: 100%;
    background: url(/static/assets/images/bg-logo@3x.png) no-repeat center / contain;
    position: absolute;
    left: 15%;
    bottom: 0;
}
.index-scene-3 .content .image .photo {
    width: 110%;
    height: 0;
    padding-bottom: 60%;
    background: url(/static/assets/images/rare-disease-center@2x.png) no-repeat center / 100% auto;
    position: relative;
    z-index: 1;
}
.index-scene-3 .content .inner {
    position: relative;
    margin-top: -40%;
}
@media screen and (orientation: portrait) {
    .index-scene-3 .content .inner > .container {
        width: 85%;
    }
}
.index-scene-3 .content .inner .text {
    width: 42%;
    margin-left: 58%;
    min-height: 40vw;
    display: table;
}
.index-scene-3 .content .inner .text-inner {
    display: table-cell;
    vertical-align: middle;
}
.index-scene-3 .content .inner .text .title {
    color: #221814;
    font-size: 2.75rem;
    font-weight: 500;
    line-height: 1.4;
}
@media screen and (max-width: 800px) {
    .index-scene-3 .content .inner .text .title {
        font-size: 1.8rem; 
    }
}
@media screen and (max-width: 600px) {
    .index-scene-3 .content .inner .text .title {
        font-size: 1.6rem; 
    }
}
.index-scene-3 .content .inner .text .intro {
    font-size: 1.25rem;
    color: #666;
    margin-top: 5%;
    line-height: 1.8;
}
@media screen and (max-width: 900px) {
    .index-scene-3 .content .image {
        width: 100%;
    }
    .index-scene-3 .content .image .photo {
        width: 100%;
        margin-top: -5%;
    }
    .index-scene-3 .content .inner {
        margin-top: 0;
    }
    .index-scene-3 .content .inner .text {
        width: 100%;
        margin-left: 0;
        display: block;
        padding-bottom: 3em;
    }
}


/*========== Index Scene 4 ==========*/
.index-scene-4 .slick {
    position: relative;
}
.index-scene-4 .slick,
.index-scene-4 .slick .slick-list,
.index-scene-4 .slick .slick-list [class^=slick] {
    width: 100%;
    height: 100%;
    outline: none;
}
.index-scene-4 .banner {
    height: 100%;
    min-height: 55.625rem;
    position: relative;
    overflow: hidden;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .banner {
        height: auto;
        min-height: 100%;
    }
}
.index-scene-4 .banner .bg,
.index-scene-4 .banner .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: right bottom;
}
.index-scene-4 .banner .bg {
    background-size: cover;
}
.index-scene-4 .banner .bg-m {
    display: none;
    background-position: center bottom;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .banner .bg-m {
        display: block;
    }
    .index-scene-4 .banner .bg {
        display: none;
    }
}
.index-scene-4 .banner .text {
    position: relative;
    z-index: 1;
}
.index-scene-4 .banner .text .content {
    margin-right: 55.75rem;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .banner .text {
        padding-bottom: 60%;
    }
    .index-scene-4 .banner .text > .inner > .container {
        width: 85%;
    }
    .index-scene-4 .banner .text .content {
        margin-right: 0;
    }
}
.index-scene-4 .banner .text .content .title {
    color: #221814;
    font-size: 2.25rem;
    font-weight: 500;
    line-height: 1.4;
}
@media screen and (max-width: 800px) {
    .index-scene-4 .banner .text .content .title {
        font-size: 1.8rem; 
    }
}
@media screen and (max-width: 600px) {
    .index-scene-4 .banner .text .content .title {
        font-size: 1.6rem; 
    }
}
.index-scene-4 .banner .text .content .intro,
.index-scene-4 .banner .text .content .more-arrow {
    font-size: 1.25rem;
    color: #666;
    margin-top: 3rem;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .banner .text .content .intro,
    .index-scene-4 .banner .text .content .more-arrow {
        margin-top: 5%;
    }
}
.index-scene-4 .banner .text .content .intro p {
    margin: 0;
    padding: 0;
    line-height: 1.8;
}
.index-scene-4 .banner .text .content .intro strong {
    font-size: 1.75rem;
    font-weight: 500;
    margin-top: 1em;
    display: block;
    line-height: 1.4;
    margin-bottom: .5em;
}
.index-scene-4 .banner .text .content .more-arrow a {
    color: #666;
}
.index-scene-4 .banner .text .content .more-arrow a:hover {
    color: #172987;
}
.index-scene-4 .banner .text .inner > *,
.index-scene-4 .banner .text .inner .content > *,
.index-scene-4 .banner .text .inner .content > .intro > * {
    transform: translateY(100px);
    opacity: 0;
    transition: .8s ease transform,
                .8s ease opacity;
}
.index-scene-4 .slick-active .text .inner > *,
.index-scene-4 .slick-active .text .inner .content > *,
.index-scene-4 .slick-active .text .inner .content > .intro > * {
    transform: translateY(0);
    opacity: 1;
} 
.index-scene-4 .dots {
    text-align: center;
    font-size: 0;
    padding: 2.5rem 0;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .dots {
        padding: 4% 0;
        display: flex;
        align-items: stretch;
        justify-content: center;
    }
}
.index-scene-4 .dots .item {
    white-space: nowrap;
    cursor: pointer;
    margin: 0 4.125rem;
}
.index-scene-4 .dots .item,
.index-scene-4 .dots .item > * {
    display: inline-block;
    vertical-align: middle;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .dots .item {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: column;
        margin: 0 2rem;
    }
}
.index-scene-4 .dots .item .icon {
    width: 6.875rem;
    height: 6.875rem;
    border-radius: 50%;
    transition: box-shadow .3s ease;
    box-sizing: border-box;
}
@media screen and (max-width: 800px) {
    .index-scene-4 .dots .item .icon {
        width: 6.5rem;
        height: 6.5rem;
    }
}
.index-scene-4 .dots .item.active .icon {
    box-shadow: 0 6px 14px rgba(0, 0, 0, .1);
}
.index-scene-4 .dots .item .icon i {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: block;
    width: 100%;
    height: 100%;
    transition: background .3s ease;
}
.index-scene-4 .dots .item .icon.covid-19 {
    padding: 1.71875rem;
}
.index-scene-4 .dots .item .icon.covid-19 i {
    background-image: url(/static/assets/images/icon-social-responsibility-1@3x.png);
}
.index-scene-4 .dots .item.active .icon.covid-19 i {
    background-image: url(/static/assets/images/icon-social-responsibility-1-hover@3x.png);
}
.index-scene-4 .dots .item .icon.rainbow {
    padding: 1.03125rem;
}
.index-scene-4 .dots .item .icon.rainbow i {
    background-image: url(/static/assets/images/icon-social-responsibility-2@3x.png);
}
.index-scene-4 .dots .item.active .icon.rainbow i {
    background-image: url(/static/assets/images/icon-social-responsibility-2-hover@3x.png);
}
.index-scene-4 .dots .item .text {
    font-size: 1.5rem;
    color: #666;
    text-align: left;
    margin-left: 1em;
    max-width: 15rem;
    white-space: pre-wrap;
}
@media screen and (orientation: portrait) {
    .index-scene-4 .dots .item .text {
        margin-top: .5em;
        margin-left: 0;
        text-align: center;
    }
}
@media screen and (max-width: 800px) {
    .index-scene-4 .dots .item .text {
        font-size: 1.2rem;
    }
}
.index-scene-4 .dots .item.active .text {
    color: #172987;
}


/*========== Index Scene 5 ==========*/
.index-scene-5 .slick {
    position: relative;
}
.index-scene-5 .slick,
.index-scene-5 .slick .slick-list,
.index-scene-5 .slick .slick-list [class^=slick] {
    width: 100%;
    outline: none;
}
.index-scene-5 .slick .slick-list .slick-track {
    display: flex;
    align-items: stretch;
}
.index-scene-5 .slick .slick-list .slick-track .slick-slide {
    height: auto;
    padding-bottom: 1rem;
}
@media screen and (max-width: 660px) {
    .index-scene-5 .slick .slick-list .slick-track .slick-slide {
        width: 20rem;
    }
}
.index-scene-5 .slick .news-item {
    height: 100%;
}
.index-scene-5 .slick .news-item a {
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    outline: none;
}
.index-scene-5 .slick .slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-100%);
    width: 1.375rem;
    height: 2.625rem;
    border: 0;
    font-size: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: transparent;
    cursor: pointer;
    outline: none;
}
.index-scene-5 .slick .slick-arrow[aria-disabled=true] {
    cursor: not-allowed;
}
.index-scene-5 .slick .slick-prev {
    left: -4rem;
    background-image: url(/static/assets/images/arrow-left-hover@3x.png);
}
.index-scene-5 .slick .slick-prev[aria-disabled=true] {
    background-image: url(/static/assets/images/arrow-left@3x.png);
}
.index-scene-5 .slick .slick-next {
    right: -4rem;
    background-image: url(/static/assets/images/arrow-right-hover@3x.png);
}
.index-scene-5 .slick .slick-next[aria-disabled=true] {
    background-image: url(/static/assets/images/arrow-right@3x.png);
}
@media screen and (orientation: portrait) {
    .index-scene-5 .slick .slick-arrow {
        display: none !important;
    }
}
.index-scene-5 .more {
    text-align: center;
    text-transform: uppercase;
    padding-top: 3rem;
    padding-bottom: 6rem;
    color: #172987;
}
@media screen and (orientation: portrait) {
    .index-scene-5 .more {
        padding-top: 5%;
        padding-bottom: 10%;
    }
}


/*========== Company Scene 1 ==========*/
.company-scene-1 {
    height: 100%;
    min-height: 55.625rem;
    position: relative;
    overflow: hidden;
}
@media screen and (orientation: portrait) {
    .company-scene-1 {
        padding-bottom: 80%;
    }
}
.company-scene-1 .bg,
.company-scene-1 .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: right bottom;
}
.company-scene-1 .bg {
    background-size: cover;
}
.company-scene-1 .bg-m {
    display: none;
    background-position: center bottom;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .company-scene-1 .bg-m {
        display: block;
    }
    .company-scene-1 .bg {
        display: none;
    }
}
.company-scene-1 .text {
    position: relative;
    z-index: 1;
    padding-top: 10%;
}
.company-scene-1 .text h3 {
    font-weight: 500;
    text-align: left;
    margin: 0 0 1em;
    color: #333;
}
.company-scene-1 .text .content p {
    font-size: 1.125rem;
    color: #666;
    margin: 0 0 1.5em;
    line-height: 2;
}
.company-scene-1 .inner {
    width: 60%;
}
@media screen and (orientation: portrait) {
    .company-scene-1 .inner {
        width: 100%;
    }   
    .company-scene-1 .container {
        width: 85%;
    }
}


/*========== Company Scene 2 ==========*/
.company-scene-2 {
    background-color: #fafafa;
}
@media screen and (orientation: portrait) {
    .company-scene-2 {
        padding-bottom: 5%;
    }
}
.company-scene-2 .tabs {
    margin-top: 4%;
    margin-bottom: 4%;
}
.company-scene-2 .tabs .item {
    display: inline-block;
    font-size: 1.5rem;
    position: relative;
    padding-bottom: .618em;
    color: #000;
    cursor: pointer;
    padding-left: .5em;
    padding-right: .5em;
}
.company-scene-2 .tabs .item + .item {
    margin-left: 2em;
}
@media screen and (orientation: portrait) {
    .company-scene-2 .tabs {
        display: flex;
        align-items: stretch;
        justify-content: center;
    }
    .company-scene-2 .tabs .item {
        max-width: 50%;
        text-align: center;
        font-size: 1.25rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
.company-scene-2 .tabs .item::after {
    content: "";
    display: block;
    position: absolute;
    height: 2px;
    background: url(/static/assets/images/bg-tabs-line@3x.png) no-repeat center / 100% 100%;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: .24s ease opacity;
}
.company-scene-2 .tabs .item.active {
    color: #172987;
}
.company-scene-2 .tabs .item.active::after {
    opacity: 1;
}
.company-scene-2 .teams {
    margin-left: -1.75rem;
    margin-right: -1.75rem;
}
.company-scene-2 .teams .item {
    display: block;
    margin: 0 1.75rem;
    transition: .3s ease box-shadow,
                .3s ease background-color;
    margin-bottom: 1.5rem;
}
@media screen and (orientation: portrait) {
    .company-scene-2 .teams .item {
        margin-bottom: 2.5%;
    }
}
@media screen and (max-width: 1100px) {
    .company-scene-2 .teams {
        margin-left: -1rem;
        margin-right: -1rem;
    }
    .company-scene-2 .teams .item {
        margin: 0 1rem;
    }
}
@media screen and (max-width: 660px) {
    .company-scene-2 .teams .slick-slide {
        width: 15rem;
    }
}
@media screen and (max-width: 600px) {
    .company-scene-2 .teams {
        margin-left: -.8rem;
        margin-right: -.8rem;
    }
    .company-scene-2 .teams .item {
        margin: 0 .8rem;
    }
}
.company-scene-2 .teams .item .photo {
    width: 100%;
    padding-bottom: 132%;
    height: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    overflow: hidden;
}
.company-scene-2 .teams .item .photo .img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: .6s ease transform;
}
.company-scene-2 .teams .item .text {
    padding: 1em;
    font-size: 1rem;
}
.company-scene-2 .teams .item .text .name {
    font-size: 1.25rem;
    font-weight: 500;
    color: #333;
}
.company-scene-2 .teams .item .text .info {
    color: #666;
}
.company-scene-2 .teams .item:hover {
    background-color: #fff;
    box-shadow: 0 6px 14px rgba(0, 0, 0, .1);
}
.company-scene-2 .teams .item:hover .photo .img {
    transform: scale(1.1);
}
.company-scene-2 .more,
.patients-scene-2 .more {
    text-align: center;
    padding-top: 3rem;
    padding-bottom: 6rem;
    color: #172987;
}
@media screen and (orientation: portrait) {
    .company-scene-2 .more {
        padding-top: 5%;
        padding-bottom: 10%;
    }
}


/*========== Company Scene 3 ==========*/
.company-scene-3 {
    color: #fff;
    background: url(/static/assets/images/bg-vision.png) no-repeat center / cover;
    transition: .3s ease background;
}
.company-scene-3.blur {
    background-image: url(/static/assets/images/bg-vision-blur.png);
}
.company-scene-3 .scene-title {
    color: #fff;
}
.company-scene-3 .items {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    position: relative;
}
.company-scene-3 .items .item {
    width: 20%;
    text-align: center;
    margin-bottom: 5%;
    transition: .3s ease opacity,
                .3s ease visibility;
}
.company-scene-3 .items .item.hidden {
    opacity: 0;
    visibility: hidden;
}
.company-scene-3 .items .item .inner,
.company-scene-3 .items .item .box {
    height: 100%;
}
.company-scene-3 .items .item .icon {
    width: 7.5rem;
    height: 7.5rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
}
.company-scene-3 .items .item .name {
    font-size: 2.25rem;
    font-weight: 400;
    text-transform: uppercase;
    margin: .618em 0;
}
.company-scene-3 .items .item .intro {
    font-size: 1.25rem;
    line-height: 1.8;
}
.company-scene-3 .items .item.has-more .intro::after {
    content: "";
    display: inline-block;
    width: .5rem;
    height: .875rem;
    background: url(/static/assets/images/arrow-more-white@3x.png) no-repeat center / 100% 100%;
    vertical-align: middle;
    transform: translateY(-1px);
    margin-left: .15em;
}
.company-scene-3 .items .item .more {
    visibility: hidden;
    position: absolute;
    text-align: left;
}
.company-scene-3 .items .item .more .title {
    font-size: 2.25rem;
    font-weight: 500;
    margin-bottom: 1em;
    line-height: 1.4;
}
.company-scene-3 .items .item .more .content {
    font-size: 1.125rem;
    color: rgba(255, 255, 255, .9);
    line-height: 1.6;
}
.company-scene-3 .items .item .more .content strong {
    font-size: 1.1em;
}
.company-scene-3 .items .item .close {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    margin-top: -2.5rem;
}
.company-scene-3 .items .item.has-more .box {
    cursor: pointer;
}
.company-scene-3 .items .item.has-more.active .inner {
    position: absolute;
    left: 0;
    right: 0;
    display: flex;
    align-items: stretch;
}
.company-scene-3 .items .item.has-more.active .close {
    display: block;
}
.company-scene-3 .items .item.has-more.active .box {
    width: 20%;
    flex: 0 0 auto;
}
.company-scene-3 .items .item.has-more.active .box .intro {
    color: rgba(255, 255, 255, .5);
}
.company-scene-3 .items .item.has-more.active .box .intro::after {
    opacity: 0;
}
.company-scene-3 .items .item.has-more.active .more {
    visibility: visible;
    position: static;
    margin-left: 5rem;
    padding-top: 1%;
}
.company-scene-3 .items .item:nth-child(2) .inner{
    margin: 0 1.8rem;
}
.company-scene-3 .items .item:nth-child(3) .inner{
    margin: 0 -.2rem;
}
.company-scene-3 .items .item:nth-child(4) .inner{
    margin: 0 -.8rem;
}

@media screen and (orientation: portrait) {
    .company-scene-3 .items .item {
        width: 45%;
    }
    .company-scene-3 .items .item.has-more.active .inner {
        top: 0;
        margin-top: 10%;
    }
    .company-scene-3.blur .container {
        width: 90%;
    }
}
@media screen and (max-width: 1200px) {
    .company-scene-3 .items .item .name {
        font-size: 2rem;
    }
}
@media screen and (max-width: 800px) {
    .company-scene-3 .items .item .name {
        font-size: 1.4rem;
    }
    .company-scene-3 .items .item .icon {
        width: 6rem;
        height: 6rem;
    }
}
@media screen and (max-width: 600px) {
    .company-scene-3 .items .item.has-more.active .inner {
        flex-direction: column;
    }
    .company-scene-3 .items .item.has-more.active .box {
        display: flex;
        align-items: center;
        height: auto;
        width: 100%;
        text-align: left;
        margin-bottom: 2.5rem;
        /* border-bottom: 1px solid rgba(255, 255, 255, .15); */
        /* padding-bottom: 2.5rem; */
    }
    .company-scene-3 .items .item.has-more.active .box .icon {
        flex: 0 0 auto;
        width: 5rem;
        height: 5rem;
    }
    .company-scene-3 .items .item.has-more.active .box .name,
    .company-scene-3 .items .item.has-more.active .box .intro {
        line-height: 1.4;
    }
    .company-scene-3 .items .item.has-more.active .box .name,
    .company-scene-3 .items .item.has-more.active .box .intro {
        margin: 0 14px;
    }
    .company-scene-3 .items .item.has-more.active .more {
        margin-left: 0;
    }
    .company-scene-3 .items .item .more .title {
        font-size: 2rem;
    }
}


/*========== Company Scene 4 ==========*/
.company-scene-4 {
    background-color: #fafafa;
}
.company-scene-4 .items {
    font-size: 0;
    margin: 0 -.75rem;
}
.company-scene-4 .items .item {
    width: 50%;
    display: inline-block;
    vertical-align: top;
}
.company-scene-4 .items .item a {
    display: block;
    margin: 0 .75rem;
    position: relative;
}
.company-scene-4 .items .item a img {
    width: 100%;
}
.company-scene-4 .items .item a .box {
    position: absolute;
    height: 8.5rem;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .75));
    transition: .24s ease background,
                .24s ease height;
    display: table;
    width: 100%;
}
.company-scene-4 .items .item a .box .inner {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    position: relative;
}
.company-scene-4 .items .item a .box .title {
    font-size: 1.5rem;
    color: #fff;
    line-height: 1.4;
    transition: .24s ease padding-top;
}
.company-scene-4 .items .item a .box .icon {
    width: 8.125rem;
    height: 5.625rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: auto 100%;
    margin: 0 auto 1.5rem;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -100%);
    opacity: 0;
    transition: .24s ease opacity;
}
.company-scene-4 .items .item a .box .icon.battle {
    background-image: url(/static/assets/images/icon-battle@3x.png);
}
.company-scene-4 .items .item a .box .icon.rainbow {
    background-image: url(/static/assets/images/icon-rainbow@3x.png);
}
.company-scene-4 .items .item a:hover .box {
    background: rgba(0, 86, 174, .8);
    height: 100%;
}
.company-scene-4 .items .item a:hover .box .icon {
    opacity: 1;
}
.company-scene-4 .items .item a:hover .box .title {
    padding-top: 4em;
}
@media screen and (orientation: portrait) {
    .company-scene-4 .items .item a .box {
        height: 5rem;
    }
    .company-scene-4 .items .item a .box .title {
        font-size: 1.2rem;
    }
    .company-scene-4 .items .item a .box .icon {
        height: 3.5rem;
    }
}
@media screen and (max-width: 600px) {
    .company-scene-4 .items {
        margin: 0;
    }
    .company-scene-4 .items .item {
        display: block;
        width: 100%;
    }
    .company-scene-4 .items .item a {
        margin: .75rem 0;
    }
}


/*========== Patients Scene 1 ==========*/
.patients-scene-1 .image-box .bg {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding-top: 41.25%;
}
@media screen and (orientation: portrait) {
    .patients-scene-1 .image-box .bg {
        padding-top: 60%;
    }
}
.patients-scene-1 .image-box .content {
    margin-left: 10%;
    margin-right: 10%;
    background-color: #fff;
    position: relative;
    z-index: 1;
    margin-top: -13.75rem;
    min-height: 18.75rem;
    padding: 3.5rem 4.25rem;
    font-size: 1.125rem;
    color: #666;
}
@media screen and (max-width: 1000px) {
    .patients-scene-1 .image-box .content {
        margin-top: -6.75rem;
    }
}
@media screen and (max-width: 800px) {
    .patients-scene-1 .image-box .content {
        margin-top: -5%;
        margin-left: 5%;
        margin-right: 5%;
        padding: 5%;
    }
}
@media screen and (max-width: 600px) {
    .patients-scene-1 .image-box .content {
        margin-left: 2.5%;
        margin-right: 2.5%;
    }
}
.patients-scene-1 .image-box .content h3 {
    font-size: 2.25rem;
    font-weight: 500;
    color: #333;
    margin-bottom: .618em;
}
.patients-scene-1 .image-box .content ul {
    list-style: none;
}
.patients-scene-1 .image-box .content li {
    position: relative;
    padding-left: 1.525rem;
    line-height: 1.8;
    margin-bottom: .618em;
}
.patients-scene-1 .image-box .content li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55rem;
    width: .625rem;
    height: 1rem;
    background: url(/static/assets/images/arrow-list@3x.png) no-repeat center / contain;
}
.patients-scene-1 .image-box .content li:last-child:before {
    display: none;
}
.patients-scene-1 .image-box .content h3 + ul li:last-child:before {
    display: block;
}


/*========== Patients Scene 1 ==========*/
.patients-scene-2 {
    min-height: 36.45vw;
    position: relative;
}
@media screen and (orientation: portrait) {
    .patients-scene-2 {
        padding-bottom: 80%;
        background-color: #f5f5f5;
    }
}
.patients-scene-2 .bg,
.patients-scene-2 .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: right bottom;
}
.patients-scene-2 .bg {
    background-size: cover;
}
.patients-scene-2 .bg-m {
    display: none;
    background-position: center bottom;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .patients-scene-2 .bg-m {
        display: block;
    }
    .patients-scene-2 .bg {
        display: none;
    }
}
.patients-scene-2 .content {
    position: relative;
    z-index: 1;
    text-align: left;
}
.patients-scene-2 .content .scene-title {
    text-align: left;
}
.patients-scene-2 .content .wrap {
    width: 65%;
    display: table;
    min-height: 36.45vw;
}
.patients-scene-2 .content .wrap .inner {
    display: table-cell;
    vertical-align: middle;
}
@media screen and (orientation: portrait) {
    .patients-scene-2 .content .container {
        width: 85%;
    }
    .patients-scene-2 .content .wrap {
        width: 100%;
        display: block;
    }
}


/*========== Patients Scene 3 ==========*/
.patients-scene-3 {
    background-color: #f9f9f9;
}


/*========== Patients Scene 4 ==========*/
.patients-scene-4 {
    position: relative;
    min-height: 26vw;
    background-color: #2068bb;
}
@media screen and (orientation: portrait) {
    .patients-scene-4 {
        padding-top: 38%;
    }
}
.patients-scene-4 .bg,
.patients-scene-4 .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
}
.patients-scene-4 .bg {
    background-size: cover;
}
.patients-scene-4 .bg-m {
    display: none;
    background-position: center top;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .patients-scene-4 .bg-m {
        display: block;
    }
    .patients-scene-4 .bg {
        display: none;
    }
}
.patients-scene-4 .content {
    position: relative;
    z-index: 1;
}
.patients-scene-4 .content .scene-title,
.patients-scene-4 .content .scene-content {
    color: #fff;
    text-align: left;
}
.patients-scene-4 .content .inner {
    width: 35%;
}
.patients-scene-4 .content .more a {
    border-width: 1px;
    height: 3.125rem;
    line-height: 2.925rem;
    width: auto;
    padding: 0 2em;
}
@media screen and (orientation: portrait) { 
    .patients-scene-4 .content .inner {
        width: 100%;
    }
    .patients-scene-4 .content .container {
        width: 85%;
    }
}


/*========== Patients Scene 5 ==========*/
.patients-scene-5 .wrap {
    font-size: 0;
}
.patients-scene-5 .wrap img {
    width: 100%;
    height: auto;
}


/*========== Patients Scene 6 ==========*/
.patients-scene-6 {
    padding: 5% 20%;
}
@media screen and (orientation: portrait) { 
    .patients-scene-6 {
        padding-left: 5%;
        padding-right: 5%;
    }
}


/*========== Contact Scene 1 ==========*/
.contact-scene-1 .wrap {
    display: table;
    width: 100%;
}
.contact-scene-1 .wrap .cell {
    display: table-cell;
    width: 50%;
    vertical-align: top;
}
.contact-scene-1 .photo {
    margin-right: 6.25rem;
}
.contact-scene-1 .photo img {
    width: 100%;
    height: auto;
}
@media screen and (orientation: portrait) { 
    .contact-scene-1 .wrap,
    .contact-scene-1 .wrap .cell {
        display: block;
        width: 100%;
    }
    .contact-scene-1 .wrap {
        display: flex;
        flex-direction: column;
    }
    .contact-scene-1 .wrap .cell:first-child {
        order: 1;
        display: none;
    }
    .contact-scene-1 .photo {
        margin-right: 0;
    }
}


/*========== Contact Scene 2 ==========*/
.contact-scene-2 .map {
    width: 100%;
    max-width: 1490px;
    margin: 0 auto;
    padding-bottom: 56.31%;
    height: 0;
    position: relative;
}
.contact-scene-2 .map svg {
    width: 100%;
    height: auto;
}
.contact-scene-2 .map .st0 {
    fill: #d8d8d8;
}
.contact-scene-2 .map .st1 {
    fill: #26378d;
}
.contact-scene-2 .map .st2 {
    fill: #26378d;
    stroke: #26378d;
    stroke-width: 4;
    opacity: .35;
    animation: heartbeat 2.4s linear 1s infinite;
}
@keyframes heartbeat {
	0% {
        stroke-width: 4;
    }
	14% {
        stroke-width: 6;
    }
    28% {
        stroke-width: 4;
    }
    42% {
        stroke-width: 6;
    }
    70% {
        stroke-width: 4;
    }
}
.contact-scene-2 .map .point .popup {
    width: 20.5rem;
    min-height: 12.5rem;
    background: url(/static/assets/images/bg-border.png) repeat-y center / 100% auto;
    border-radius: .625rem;
    position: absolute;
    right: 100%;
    top: 0;
    color: #fff;
    padding: 1.5em;
    font-size: 1rem;
    margin-right: 20px;
    margin-top: -26px;
    opacity: 0;
    visibility: hidden;
    box-shadow: -10px 10px 10px rgba(0, 67, 149, .15);
    transition: .3s ease opacity,
                .3s ease visibility;
}
.contact-scene-2 .map .point:hover .popup {
    opacity: 1;
    visibility: visible;
}
.contact-scene-2 .map .point .popup::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 99%;
    top: 20px;
    border-width: 10px 0 10px 10px;
    border-style: solid;
    border-color: transparent transparent transparent #004395;
}
.contact-scene-2 .map .point .popup .name {
    font-size: 1.875rem;
    font-weight: 500;
}
.contact-scene-2 .map .point .popup .content {
    margin-top: .6rem;
}
.contact-scene-2 .map .tooltip {
    position: fixed;
    z-index: 9999;
    visibility: hidden;
    transition: left 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, 
                top 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, 
                visibility 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s;
    border-radius: 3px;
    color: #fff;
    font-family: -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    pointer-events: none;
    background-image: linear-gradient(to right, #b3cd52, #509888, #224593);
    box-shadow: 0 2px 20px rgba(34, 69, 147, .25);
    font-size: 1rem;
    padding: 1.5rem;
    transform: translateX(-100%);
    margin-left: -2rem;
    margin-top: -2rem;
    max-width: 28rem;
}
.contact-scene-2 .map .tooltip::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 1rem 0 1rem 1rem;
    border-style: solid;
    border-color: transparent transparent transparent #224593;
    transform: translate(.8rem, 1.2rem);
}
.contact-scene-2 .map .tooltip .title {
    font-size: 1.25em;
}
.contact-scene-2 .map .tooltip .info dl {
    margin: 0;
}
.contact-scene-2 .map .tooltip .info dl:first-child {
    margin-top: 1em;
}
.contact-scene-2 .map .tooltip .info dl * {
    display: inline;
    font-weight: normal;
    margin: 0;
}
.contact-scene-2 .list-address ul {
    list-style: none;
    font-size: 0;
}
.contact-scene-2 .list-address li {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    padding-left: 5rem;
    margin-bottom: 8%;
}
.contact-scene-2 .list-address li:nth-child(2n-1) {
    padding-left: 0;
    padding-right: 5rem;
}
.contact-scene-2 .list-address li .title {
    color: #333;
    font-size: 1.875rem;
    font-weight: 5000;
    margin-bottom: 1em;
}
.contact-scene-2 .list-address li dl {
    width: 100%;
    display: flex;
    align-items: flex-start;
    margin-bottom: 1em;
    color: #333;
}
.contact-scene-2 .list-address li dl dt,
.contact-scene-2 .list-address li dl dd {
    font-size: 1.125rem;
}
.contact-scene-2 .list-address li dl dt {
    padding-right: 1em;
}
.contact-scene-2 .list-address li dl dd {
    word-wrap: break-word;
    word-break: break-word;
}
@media screen and (max-width: 650px) {
    .contact-scene-2 .list-address li {
        width: 100%;
        padding: 0 !important;
    }
}


/*========== News Scene 1 ==========*/
.news-scene-1 {
    width: 100%;
    height: auto;
}
.news-scene-1 .slick {
    position: relative;
}
.news-scene-1 .slick,
.news-scene-1 .slick .slick-list,
.news-scene-1 .slick .slick-list [class^=slick] {
    width: 100%;
    height: 100%;
    outline: none;
}
.news-scene-1 .slick {
    height: 54.375rem;
}
.news-scene-1 .slick .slick-dots {
    position: absolute;
    text-align: center;
    bottom: 4rem;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.news-scene-1 .slick .slick-dots li {
    display: inline-block;
    width: 2.5rem;
    height: 2px;
    background: #c0c0c0;
    margin: 0 .3125rem;
    transition: .3s ease background;
    border-radius: 2px;
}
.news-scene-1 .slick .slick-dots li.slick-active {
    background: url(/static/assets/images/bg-hamburger@3x.png) no-repeat center / 100% 100%;
}
.news-scene-1 .slick .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0;
    background-color: transparent;
    border: 0;
    outline: none;
}
.news-scene-1 .banner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.news-scene-1 .banner .bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.news-scene-1 .scene-title {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 1;
    color: #fff;
    padding-top: 9rem;
}
@media screen and (orientation: portrait) {
    .news-scene-1 .scene-title {
        padding-top: 9rem;
    }
    .news-scene-1 .slick-dots {
        display: none !important;
    }
}
@media screen and (max-width: 800px) {
    .news-scene-1 .scene-title {
        padding-top: 10%;
    }
}
@media screen and (max-width: 600px) {
    .news-scene-1 .scene-title {
        padding-top: 6rem;
    }
}
.news-scene-1 .content {
    position: relative;
    z-index: 1;
    height: 100%;
    padding-top: 18rem;
    padding-bottom: 7rem;
    transition: .8s ease opacity;
    transition-delay: 500ms;
    opacity: 0;
}
@media screen and (orientation: portrait) {
    .news-scene-1 .content {
        padding-top: 18rem;
        padding-bottom: 5rem;
    }
}
@media screen and (max-width: 800px) {
    .news-scene-1 .content {
        padding-top: 20%;
    }
}
@media screen and (max-width: 600px) {
    .news-scene-1 .content {
        padding-top: 12rem;
    }
}
.news-scene-1 .content .container,
.news-scene-1 .content .box {
    height: 100%;
}
.news-scene-1 .content .box {
    width: 50%;
    background-color: #fff;
    padding: 3em;
    font-size: 1.125rem;
    color: #666;
}
@media screen and (orientation: portrait) {
    .news-scene-1 .content .box {
        width: 100%;
    }
}
.news-scene-1 .content .box .title {
    color: #172987;
    font-size: 2.25rem;
    line-height: 1.2;
    margin-bottom: 2rem;
    display: inline-block;
}
.news-scene-1 .content .box .more {
    color: #172987;
    margin-top: 5rem;
}
.news-scene-1 .slick-active .content,
.news-scene-1 .slick-current .content {
    opacity: 1;
} 
.news-scene-1 .content .box > * {
    text-align: justify;
}


/*========== News Scene 2 ==========*/
.news-scene-2 .filter-side-inner {
    margin-top: 8rem;
}
@media screen and (orientation: portrait) {
    .news-scene-2 .filter-side-inner {
        margin-top: 0;
    }
}


/*========== News Scene 3 ==========*/
.news-scene-3 {
    padding: 14% 7% 7%;
}
.news-scene-3 h1 {
    font-size: 3.125rem;
    font-weight: bold;
    margin: 0;
    line-height: 1.25;
}
.news-scene-3 .attrs {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.125rem;
    padding: 5rem 0 3rem;
}
.news-scene-3 .attrs .time {
    color: #333;
}
.news-scene-3 .attrs .share {
    display: flex;
    align-items: center;
}
.news-scene-3 .attrs .share .share-icon {
    width: 1em;
    height: 1em;
    background: url(/static/assets/images/share@3x.png) no-repeat center / contain;
    opacity: .5;
}
.news-scene-3 .attrs .share .icon {
    margin-left: 1.5em;
    width: 1.1em;
    height: 1.1em;
}
.news-scene-3 .content {
    font-size: 1.125rem;
    color: #333;
    line-height: 1.8;
}
@media screen and (max-width: 600px) {
    .news-scene-3 {
        padding-top: 8rem;
    }
    .news-scene-3 h1 {
        margin-right: 0;
        font-size: 2rem;
    }
}


/*========== Medicines Scene 1 ==========*/
.medicines-scene-1 {
    background-color: #f9f9f9;
}


/*========== Business Scene 1 ==========*/
.business-scene-1 {
    display: table;
}
.business-scene-1 .text,
.business-scene-1 .image {
    display: table-cell;
    vertical-align: top;
}
.business-scene-1 .text {
    padding-right: 5%;
    color: #333;    
    line-height: 1.6;
}
.business-scene-1 .text .title {
    font-size: 2.75rem;
    font-weight: 500;
    margin-bottom: 1em;
    text-align: justify;
    line-height: 1.6;
}
.business-scene-1 .text .intro {
    font-size: 1.25rem;
    color: #333;
    text-align: justify;
    line-height: 1.8;
}
.business-scene-1 .image {
    width: 45%;
}
.business-scene-1 .image img {
    width: 100%;
}
@media screen and (orientation: portrait) {
    .business-scene-1 {
        display: flex;
        flex-direction: column;
    }
    .business-scene-1 .text {
        order: 1;
    }
    .business-scene-1 .image {
        margin-bottom: 2.5rem;
    }
    .business-scene-1 .text .title {
        font-size: 2rem;
    }
}
@media screen and (max-width: 420px) {
    .business-scene-1 .image {
        width: 100%;
    }
}


/*========== Business Scene 2 ==========*/
.business-scene-2 .image {
    font-size: 0;
}
.business-scene-2 .image img {
    width: 100%;
    height: auto;
}


/*========== Responsibility Scene 1 ==========*/
/* .responsibility-scene-1 {} */


/*========== Search Scene 1 ==========*/
.search-scene-1 {
    padding: 14% 0 7%;
}
.search-scene-1 .filter-side {
    width: 18rem;
    max-width: 18rem;
}
.search-scene-1 .filter-list li {
    margin-bottom: .5em;
}
.search-scene-1 .filter-list li.active a {
    color: #172987;
    font-weight: bold;
}
.search-scene-1 .filter-side-inner {
    margin-top: 180px;
}
.search-scene-1 .search-input {
    padding-right: 18rem;
}
.search-scene-1 .search-input .search-input-inner {
    margin: 0;
}
.search-scene-1 .search-result {
    margin-top: 60px;
}
.search-scene-1 .search-result .item .title {
    font-size: 1.5rem;
    font-weight: 500;
    color: #333;
}
.search-scene-1 .search-result .item .title:hover {
    color: #172987;
    text-decoration: underline;
}
.search-scene-1 .search-result .item p {
    color: #666;
    font-size: 1.125rem;
    margin-top: .618em;
}
.search-scene-1 .search-result .item {
    margin-bottom: 3.75rem;
}
.search-scene-1 .search-keyword {
    height: 60px;
    padding-top: 35px;
    font-size: 1.5rem;
    color: #333;
}
.search-scene-1 .search-keyword strong {
    margin-left: .35em;
}
@media screen and (orientation: portrait) {
    .search-scene-1 .filter-side {
        width: 80vw;
        max-width: 100vw;
    }
    .search-scene-1 .filter-side-inner {
        margin-top: 0;
    }
    .search-scene-1 .search-input {
        padding-right: 0;
    }
    .search-scene-1 .search-keyword {
        height: auto;
        padding-top: 1em;
    }
    .search-scene-1 .search-result {
        margin-top: 3.75rem;
    }
}
@media screen and (max-width: 600px) {
    .search-scene-1 {
        padding-top: 8rem;
    }
    .search-scene-1 h1 {
        margin-right: 0;
        font-size: 2rem;
    }
}


/*========== Careers ==========*/
.careers-scene-1 {
    background: #f5fcff url(../images/bg-careers.jpg) no-repeat center bottom / cover;
}
.careers-scene-1 .items {
    display: table;
    width: 100%;
    padding-bottom: 25%;
}
.careers-scene-1 .items .item {
    display: table-cell;
    vertical-align: top;
    text-align: center;
    width: 33.33%;
    padding: 0 2.5%;
}
.careers-scene-1 .items .item .icon {
    width: 7.5rem;
    height: 7.5rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    margin: 0 auto;
}
.careers-scene-1 .items .item .name {
    font-size: 2.25rem;
    color: #172987;
    text-transform: uppercase;
    padding: .618em 0;
}
.careers-scene-1 .items .item .intro {
    font-size: 1rem;
    color: #666;
    line-height: 1.8;
}
@media screen and (orientation: portrait) {
    .careers-scene-1 .items {
        display: block;
    }
    .careers-scene-1 .items .item {
        width: 100%;
        display: block;
    }
    .careers-scene-1 .items .item + .item {
        margin-top: 4rem;
    }
}

.careers-scene-3 {
    position: relative;
    background-color: #f5fcff;
}
@media screen and (orientation: portrait) {
    .careers-scene-3 {
        padding-top: 40%;
    }
}
.careers-scene-3 .bg,
.careers-scene-3 .bg-m {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
}
.careers-scene-3 .bg {
    background-size: cover;
}
.careers-scene-3 .bg-m {
    display: none;
    background-position: center top;
    background-size: 100% auto;
}
@media screen and (orientation: portrait) {
    .careers-scene-3 .bg-m {
        display: block;
    }
    .careers-scene-3 .bg {
        display: none;
    }
}
.careers-scene-3 .container {
    position: relative;
    z-index: 1;
}
.careers-scene-3 .text {
    margin-right: 35%;
    color: #666;
    padding-bottom: 15%;
    font-size: 1.125rem;
}
@media screen and (orientation: portrait) {
    .careers-scene-3 .text {
        margin-right: 0;
        padding-bottom: 0;
    }
}
.careers-scene-4 {
    background-color: #f9f9f9;
}
.careers-scene-4 .items {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}
.careers-scene-4 .items .item {
    display: block;
    width: 32.4%;
    background-color: #fff;
    padding: 1.25rem;
    transition: .3s ease box-shadow;
}
@media screen and (max-width: 760px) {
    .careers-scene-4 .items {
        flex-direction: column;
    }
    .careers-scene-4 .items .item {
        width: 100%;
    }
    .careers-scene-4 .items .item + .item {
        margin-top: 1rem;
    }
}
.careers-scene-4 .items .item .title {
    font-size: 1.5rem;
    color: #333;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
    display: block;
}
.careers-scene-4 .items .item .title:hover {
    color: #172987;
}
.careers-scene-4 .items .item .attrs {
    color: #999;
    font-size: 1.125rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: .618em 0;
}
.careers-scene-4 .items .item .attrs span + span::before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 1em;
    background-color: #d9d9d9;
    margin: 0 .5em;
    vertical-align: middle;
}
.careers-scene-4 .items .item .intro {
    font-size: 1.125rem;
    color: #666;
    padding: 1em 0;
    border-top: 1px solid #eee;
    height: 200px;
    overflow: hidden;
}
.careers-scene-4 .items .item:hover {
    box-shadow: 0 6px 14px rgba(0, 0, 0, .1);
}
.careers-scene-4 .more {
    text-align: center;
}


/*========== Other ==========*/
.other-content {
    color: #666;
    padding-top: 1rem;
}
.other-content h3 {
    font-size: 2.5rem;
    font-weight: 500;
    padding-top: 4.25rem;
    padding-bottom: 4.25rem;
    margin: 0;
    color: #333;
}
.other-content strong {
    color: #333;
}
.other-content p {
    font-size: 1.125rem;
    line-height: 1.6;
    margin-bottom: 1em;
}
.other-content ul {
    margin-left: 2.5em;
}
@media screen and (orientation: portrait) {
    .other-content h3 {
        padding-top: 7%;
        padding-bottom: 7%;
    }
}
@media screen and (max-width: 800px) {
    .other-content h3 {
        font-size: 1.8rem;
    }
}


.error-page {
    background: url(/static/assets/images/bg-logo-gray@3x.png) no-repeat center / auto 36.25rem;
    height: 100vh;
    width: 100vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10%;
    text-align: center;
}
.error-page h3 {
    font-size: 7.5rem;
    line-height: 1;
    color: #999;
}
.error-page div {
    color: #999;
    font-size: 1.5rem;
    margin-top: 2em;
}
@media screen and (max-width: 600px) {
    .error-page h3 {
        font-size: 3rem;
    }
    .error-page div {
        font-size: 1rem;
    }
}

.cn-history {
    background-color: #f9f9f9;
    padding-bottom: 3rem;
}
.cn-history-tabs {
    display: flex;
    flex-direction: column;
    margin-top: 2rem;
}
.cn-history-tabs .slick-list {
    order: 1;
}
.cn-history-tabs .slick-dots { 
    order: 0;
    list-style: none;
    display: flex;
    align-items: stretch;
    border-bottom: 1px solid #999;
}
.cn-history-tabs .slick-dots li {
    position: relative;
    margin-right: 5rem;
}
.cn-history-tabs .slick-dots li.slick-active::after {
    content: "";
    display: block;
    position: absolute;
    height: 2px;
    background: url(/static/assets/images/bg-tabs-line@3x.png) no-repeat center / 100% 100%;
    bottom: -1px;
    left: 0;
    right: 0;
}
.cn-history-tabs .slick-dots li button {
    background: none;
    border: 0;
    font-size: 1.5rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    line-height: 1;
    color: #333;
}
.cn-history-tabs .slick-dots li.slick-active button {
    font-size: 2rem;
    color: #172987;
    font-weight: 500;
}
.cn-history-tabs .slick-list .slick-slide {
    padding-top: 1rem;
    padding-bottom: 1em;
    max-height: 50vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.cn-history-tabs .slick-list .slick-slide::-webkit-scrollbar {
    width: 6px;
    background-color: rgba(0, 0, 0, 0);
}
.cn-history-tabs .slick-list .slick-slide::-webkit-scrollbar-track-piece {
    padding-right: 1px;
}
.cn-history-tabs .slick-list .slick-slide::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 4px;
    width: 4px;
}
.cn-history-tabs .slick-list .slick-slide.slick-active::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .5);
}
.cn-history-tabs .slick-list .item h3 {
    font-size: 1.5rem;
    margin-bottom: .25em;
}
.cn-history-tabs .slick-list .item p {
    font-size: 1.25rem;
    margin-bottom: 1.5em;
}
.cn-history-tabs .slick-list .item:hover h3,
.cn-history-tabs .slick-list .item:hover p{
    color: #172987;
}
@media screen and (max-width: 800px) {
    .cn-history-tabs .slick-dots {
        overflow-x: auto;
    }
    .cn-history-tabs .slick-dots li {
        white-space: nowrap;
        margin-right: 2em;
    }
    .cn-history-tabs .slick-dots li button {
        font-size: 1rem;
        height: 3rem;
    }
    .cn-history-tabs .slick-dots li.slick-active::after {
        bottom: 0;
    }
    .cn-history-tabs .slick-dots li.slick-active button {
        font-size: 1.2rem;
    }
    .cn-history-tabs .slick-list .item h3 {
        font-size: 1.2rem;
    }
    .cn-history-tabs .slick-list .item p {
        font-size: 1rem;
    }
}

.contact-infos .map {
    height: 31.25rem;
    margin-top: 2.5rem;
}
.contact-infos .infos {
    display: flex;
    align-items: stretch;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}
.contact-infos .infos .item {
    width: 33.33%;
    color: #333;
    font-size: 1.5rem;
    line-height: 1.6;
}
.contact-infos .infos .item:not(:last-child) {
    padding-right: 2em;
}
@media screen and (max-width: 800px) {
    .contact-infos .infos {
        display: block;
    }
    .contact-infos .infos .item {
        width: 100%;
        font-size: 1.25rem;
    }
    .contact-infos .infos .item:not(:last-child) {
        padding-right: 0;
        padding-bottom: 2rem;
    }
}

.contact-map-mark {
    width: 1.5rem;
    height: 2.25rem;
    position: relative;
    background: url(/static/assets/images/mapmark@3x.png) no-repeat center / 100% 100%;
}
.contact-map-infos {
    position: absolute;
    width: 17.8rem;
    height: auto;
    top: 0;
    right: 100%;
    border-radius: 3px;
    color: #fff;
    font-family: -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    pointer-events: none;
    background-image: linear-gradient(to right, #b3cd52, #509888, #224593);
    box-shadow: 0 2px 20px rgba(34, 69, 147, .25);
    font-size: 1rem;
    padding: 1.5rem;
    margin-right: 1rem;
    margin-top: -1.25rem;
}
.contact-map-infos h3 {
    font-size: 1.75rem;
    font-weight: 500;
}
.contact-map-infos p {
    font-size: 1.125rem;
}
.contact-map-infos::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 1rem 0 1rem 1rem;
    border-style: solid;
    border-color: transparent transparent transparent #224593;
    transform: translate(.8rem, 1.2rem);
}


.moup-editor-base p {
    margin: 0;
    padding: 0;
    min-height: 1em;
}


.guanxian .box {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    width: 100%;
    padding-bottom: 6.25rem;
}
.guanxian .box .item {
    display: flex;
    position: relative;
    width: 16.66%;
    flex: 1 1 auto;
}
.guanxian .box .item .icon,
.guanxian .box .item .icon-hover,
.guanxian .box .item .icon-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    transition: .3s ease opacity;
}
.guanxian .box .item .icon,
.guanxian .box .item .icon-hover {
    z-index: 1;
}
.guanxian .box .item .text {
    position: relative;
    z-index: 2;
    color: #1e2a8a;
    font-size: 1.5rem;
    text-align: center;
    transition: .3s ease color;
    width: 100%;
    text-align: center;
    padding-bottom: 113.15%;
}
.guanxian .box .item .text span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
    padding: 75% 1em 0;
}
@media screen and (max-width: 1440px) {
    .guanxian .box .item .text span {
        font-size: 1.25rem;
    }
}
@media screen and (max-width: 700px) {
    .guanxian .box .item .text span {
        font-size: 1rem;
    }
}
@media screen and (max-width: 600px) {
    .guanxian .box .item {
        width: 33.33%;
    }
}
.guanxian .box .item .icon-hover,
.guanxian .box .item .icon-bg {
    opacity: 0;
}
.guanxian .box .item:hover .icon-hover,
.guanxian .box .item:hover .icon-bg {
    opacity: 1;
}
.guanxian .box .item:hover .icon {
    opacity: 0;
}
.guanxian .box .item:hover .text {
    color: #fff;
}

.location {
    font-size: 1.125rem;
    color: #000;
    margin-top: 2rem;
}
.location a {
    color: #000;
    text-decoration: none;
}

.pcpd {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
}
@media screen and (max-width: 800px) {
    .pcpd {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
}
@media screen and (max-width: 600px) {
    .pcpd {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


.global-dialog-wrap {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .76);
    z-index: 10000;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.global-dialog-inner {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.global-dialog-box {
    max-width: 50rem;
    margin: 1rem;
}
.global-dialog-content {
    background-color: #fff;
    font-size: 1.5rem;
    padding: 2.5em;
    color: #333;
    line-height: 1.6;
    border-radius: 4px 4px 0 0;
}
.global-dialog-content p {
    text-align: justify;
    min-height: 1em;
    margin: 0;
}
.global-dialog-button {
    background: linear-gradient(to right, #dce023, #1fb26b, #005a99, #003f95);
    color: #fff;
    font-size: 2rem;
    padding: .35em 0;
    text-align: center;
    border-radius: 0 0 4px 4px;
    cursor: pointer;
}
@media screen and (max-width: 1600px) {
    .global-dialog-box {
        max-width: 40rem;
    }
    .global-dialog-content {
        font-size: 1.2rem;
        padding: 2em;
    }
}
@media screen and (max-width: 800px) {
    .global-dialog-content {
        font-size: 1.125rem;
    }
    .global-dialog-button {
        font-size: 1.5rem;
    }
}
.list-jobs-item .item-content .share_post{
    width: 200px;
    height: 200px;
    position: absolute;
    z-index: 9;
    left: 50%;
    top: 40px;
    margin-left: -100px;
    border: 1px solid #999;
    background-color:#fff;
    padding: 10px;
    display: none;
}<!--0.00028085708618164-->