@charset "UTF-8";

::-webkit-input-placeholder {
    font-size: 16px;
    color: #b1b1b1
}

:-moz-placeholder {
    font-size: 16px;
    color: #b1b1b1
}

::-moz-placeholder {
    font-size: 16px;
    color: #b1b1b1
}

:-ms-input-placeholder {
    font-size: 16px;
    color: #b1b1b1
}

::-moz-selection {
    color: #fff;
    background: #0086ba;
    text-shadow: none
}

::selection {
    color: #fff;
    background: #0086ba;
    text-shadow: none
}

::-moz-selection {
    color: #fff;
    background: #0086ba;
    text-shadow: none
}

.yy-a011-ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.yy-loop-a011 {
    -ms-flex: none;
    flex: none;
    width: 25%
}

.yy-a011-thumb {
    display: block;
    position: relative;
    overflow: hidden
}

.yy-a011-thumb::before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .46);
    content: '';
    z-index: 1;
    transition: all .4s
}

.yy-a011-thumb>img {
    display: block;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all .3s
}

.yy-a011-info {
    position: absolute;
    width: 100%;
    left: 0;
    top: 35%;
    padding: 0 60px;
    z-index: 5
}

.yy-a011-tit {
    margin-top: 24px;
    padding: 0 6px;
    text-align: center;
    font-size: 24px;
    line-height: 32px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    color: #fff
}

.yy-a011-btn {
    margin-top: 15px;
    text-align: center;
    font-size: 30px;
    line-height: 30px;
    color: #fff;
    opacity: 0;
    transition: all .4s
}

.yy-a011-thumb:hover::before {
    background: rgba(29, 109, 139, .8)
}

.yy-a011-thumb:hover .yy-a011-btn {
    opacity: 1
}

@media screen and (max-width:1520px) {
    .yy-a011-tit {
        margin-top: 20px;
        font-size: 22px
    }

    .yy-a011-info {
        padding: 0 36px
    }
}

@media screen and (max-width:1440px) {
    .yy-a011-info {
        padding: 0 16px
    }
}

@media screen and (max-width:1280px) {
    .yy-a011-thumb>img {
        width: 100%
    }

    .yy-loop-a011 {
        width: 25%
    }
}

@media screen and (max-width:1024px) {
    .yy-a011-tit {
        margin-top: 16px;
        font-size: 18px;
        line-height: 28px
    }

    .yy-a011-btn {
        margin-top: 8px
    }
}

@media screen and (max-width:800px) {
    .yy-loop-a011 {
        width: 33.333333%
    }
}

@media screen and (max-width:600px) {
    .yy-loop-a011 {
        width: 50%
    }

    .yy-a011-info {
        top: 32%
    }

    .yy-a011-tit {
        margin-top: 12px;
        font-size: 16px;
        line-height: 24px
    }

    .yy-a011-btn {
        margin-top: 4px;
        font-size: 26px;
        line-height: 26px
    }
}

.yy-loop-a012 {
    position: relative;
    z-index: 0
}

.yy-a012-thumb {
    display: block;
    overflow: hidden
}

.yy-a012-thumb img {
    display: block;
    width: 100%;
    transition: all .3s
}

.yy-a012-info {
    position: relative;
    margin-top: -42px;
    width: 70%;
    padding: 36px 30px 36px 40px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: #fff
}

.yy-a012-tit {
    -ms-flex: 1;
    flex: 1;
    padding-right: 20px;
    font-size: 18px;
    line-height: 24px;
    font-weight: 700;
    min-height: 48px;
    max-height: 48px;
    overflow: hidden
}

.yy-a012-icon {
    display: block;
    -ms-flex: none;
    flex: none;
    width: 40px;
    height: 40px;
    line-height: 38px;
    text-align: center;
    background: #fff;
    border: 1px solid #e9e9e9
}

.yy-a012-icon .iconfont {
    font-size: 22px;
    color: #dedede;
    transition: all .3s
}

.yy-loop-a012:hover .yy-a012-thumb img {
    transform: scale(1.05)
}

.yy-loop-a012:hover .yy-a012-icon {
    border-color: #0086ba
}

.yy-loop-a012:hover .yy-a012-icon .iconfont {
    color: #0086ba
}

@media screen and (max-width:1280px) {
    .yy-a012-info {
        padding: 28px 24px 30px 28px
    }
}

@media screen and (max-width:1024px) {
    .yy-a012-info {
        padding: 20px 18px 22px 20px
    }

    .yy-a012-tit {
        font-size: 17px
    }

    .yy-a012-icon {
        width: 30px;
        height: 30px;
        line-height: 28px
    }
}

@media screen and (max-width:800px) {
    .yy-a012-tit {
        padding-right: 8px;
        font-size: 16px;
        line-height: 20px;
        min-height: 40px;
        max-height: 40px
    }

    .yy-a012-info {
        width: 90%
    }
}

.yy-a013-ul {
    padding-top: 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.yy-loop-a013 {
    margin-top: 40px;
    width: 31.5%;
    background: #fff;
    transition: all .4s
}

.yy-a013-thumb {
    display: block;
    position: relative;
    overflow: hidden
}

.yy-a013-thumb img {
    display: block;
    width: 100%;
    transition: all .4s
}

.yy-a013-date {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 84px;
    height: 84px;
    padding: 22px 16px;
    text-align: center;
    font-size: 18px;
    line-height: 20px;
    color: #fff;
    background: #0086ba
        /* #e1272e; */
}

.yy-a013-info {
    padding: 38px 35px 30px 28px;
    background: #fff;
    box-shadow: 0 2px 30px 0 rgba(0, 0, 0, .1)
}

.yy-a013-tit {
    display: block;
    font-size: 24px;
    line-height: 28px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    min-height: 56px;
    max-height: 56px;
    overflow: hidden;
    word-wrap: break-word;
    word-break: break-all;
}

.yy-a013-des {
    margin-top: 16px;
    font-size: 14px;
    line-height: 20px;
    min-height: 40px;
    max-height: 40px;
    color: #666;
    overflow: hidden
}

.yy-a013-btn {
    display: block;
    margin-top: 26px;
    font-size: 14px;
    line-height: 18px;
    font-weight: 700;
    color: #0086ba
}

.yy-loop-a013:hover .yy-a013-thumb img {
    transform: scale(1.05)
}

.yy-loop-a013:hover .yy-a013-tit {
    color: #0086ba
}

@media screen and (max-width:1520px) {
    .yy-a013-info {
        padding: 30px 30px 30px 28px
    }
}

@media screen and (max-width:1440px) {
    .yy-a013-date {
        height: 74px;
        padding: 16px
    }

    .yy-a013-des {
        margin-top: 12px
    }

    .yy-a013-btn {
        margin-top: 18px
    }
}

@media screen and (max-width:1280px) {
    .yy-loop-a013 {
        width: 32%;
        margin-top: 28px
    }
}

@media screen and (max-width:1024px) {
    .yy-loop-a013 {
        margin-top: 22px
    }

    .yy-a013-date {
        padding: 12px;
        width: 74px;
        height: 64px;
        font-size: 16px
    }

    .yy-a013-tit {
        font-size: 22px
    }

    .yy-a013-info {
        padding: 22px 24px 24px
    }
}

@media screen and (max-width:800px) {
    .yy-loop-a013 {
        width: 49%;
        margin-top: 18px
    }

    .yy-a013-tit {
        font-size: 20px
    }
}

@media screen and (max-width:600px) {
    .yy-loop-a013 {
        margin-top: 10px
    }

    .yy-a013-ul {
        padding-top: 14px
    }

    .yy-a013-date {
        padding: 8px;
        width: 58px;
        height: 48px;
        font-size: 14px;
        line-height: 16px
    }

    .yy-a013-tit {
        font-size: 15px;
        line-height: 20px;
        min-height: 40px;
        max-height: 40px
    }

    .yy-a013-info {
        padding: 12px 12px 14px
    }

    .yy-a013-btn {
        display: none
    }

    .yy-a013-des {
        margin-top: 6px;
        font-size: 13px;
        line-height: 16px;
        min-height: 32px;
        max-height: 32px
    }
}

.yy-a015-ul {
    padding-top: 22px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.yy-loop-a015 {
    margin-top: 40px;
    -ms-flex: none;
    flex: none;
    width: 23%;
    background: #fff;
    transition: all .3s
}

.yy-a015-thumb {
    display: block;
    overflow: hidden;
    background: #fff;
    border: 1px solid #eee;
    border-bottom: none
}

.yy-a015-thumb img {
    display: block;
    width: 100%;
    transition: all .3s
}

.yy-a015-info {
    padding: 32px 36px 36px;
    border: 1px solid #eee;
    transition: all .3s
}

.yy-a015-tit {
    display: block;
    font-size: 20px;
    line-height: 24px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    min-height: 48px;
    max-height: 48px;
    overflow: hidden
}

.yy-a015-btns {
    margin-top: 26px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.yy-a015-btn1 {
    -ms-flex: none;
    flex: none;
    margin-right: 5px;
    width: 48%;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    background: #f8f8f8
}

.yy-a015-btn2 {
    -ms-flex: none;
    flex: none;
    width: 48%;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    color: #c8161d;
    background: #f8f8f8
}

.yy-loop-a015:hover {
    background: #0086ba
}

.yy-loop-a015:hover .yy-a015-info {
    border-color: #0086ba
}

.yy-loop-a015:hover .yy-a015-thumb img {
    transform: scale(1.05)
}

.yy-loop-a015:hover .yy-a015-tit {
    color: #fff
}

.yy-loop-a015:hover .yy-a015-btn1 {
    color: #0086ba;
    background: #fff
}

.yy-loop-a015:hover .yy-a015-btn2 {
    background: #fff
}

@media screen and (max-width:1520px) {
    .yy-a015-info {
        padding: 26px 30px 32px
    }
}

@media screen and (max-width:1440px) {
    .yy-a015-ul {
        padding-top: 16px
    }

    .yy-loop-a015 {
        margin-top: 30px
    }

    .yy-a015-info {
        padding: 22px 24px 24px
    }
}

@media screen and (max-width:1280px) {
    .yy-loop-a015 {
        margin-top: 20px;
        width: 23.5%
    }

    .yy-a015-tit {
        font-size: 18px
    }

    .yy-a015-btns {
        margin-top: 20px
    }

    .yy-a015-info {
        padding: 18px 18px 20px
    }
}

@media screen and (max-width:1024px) {
    .yy-a015-ul {
        padding-top: 8px
    }

    .yy-loop-a015 {
        margin-top: 16px;
        width: 32%
    }

    .yy-a015-tit {
        font-size: 17px
    }

    .yy-a015-btn1 {
        height: 36px;
        line-height: 36px;
        font-size: 13px
    }

    .yy-a015-btns {
        margin-top: 14px
    }

    .yy-a015-btn2 {
        height: 36px;
        line-height: 36px;
        font-size: 13px
    }
}

@media screen and (max-width:800px) {

    .yy-loop-a015 {
        width: 49%
    }

    .yy-a015-tit {
        font-size: 16px;
        line-height: 22px;
        min-height: 44px;
        max-height: 44px
    }
}

@media screen and (max-width:600px) {
    .yy-a015-btns {
        display: none
    }

    .yy-a015-info {
        padding: 10px 12px
    }

    .yy-loop-a015 {
        margin-top: 10px
    }

    .yy-a015-tit {
        font-size: 14px;
        line-height: 20px;
        min-height: 40px;
        max-height: 40px
    }
}


.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: .8
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: 0 !important;
    -webkit-backface-visibility: hidden
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box
}

.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.mfp-align-top .mfp-container:before {
    display: none
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045
}

.mfp-ajax-holder .mfp-content,
.mfp-inline-holder .mfp-content {
    width: 100%;
    cursor: auto
}

.mfp-ajax-cur {
    cursor: progress
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: zoom-out
}

.mfp-zoom {
    cursor: pointer;
    cursor: zoom-in
}

.mfp-auto-cursor .mfp-content {
    cursor: auto
}

.mfp-arrow,
.mfp-close,
.mfp-counter,
.mfp-preloader {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mfp-loading.mfp-figure {
    display: none
}

.mfp-hide {
    display: none !important
}

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -.8em;
    left: 8px;
    right: 8px;
    z-index: 1044
}

.mfp-preloader a {
    color: #ccc
}

.mfp-preloader a:hover {
    color: #fff
}

.mfp-s-ready .mfp-preloader {
    display: none
}

.mfp-s-error .mfp-content {
    display: none
}

button.mfp-arrow,
button.mfp-close {
    overflow: visible;
    cursor: pointer;
    background: 0 0;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: 0;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: .65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace
}

.mfp-close:focus,
.mfp-close:hover {
    opacity: 1
}

.mfp-close:active {
    top: 1px
}

.mfp-close-btn-in .mfp-close {
    color: #333
}

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
    color: #fff;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap
}

.mfp-arrow {
    position: absolute;
    opacity: .65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent
}

.mfp-arrow:active {
    margin-top: -54px
}

.mfp-arrow:focus,
.mfp-arrow:hover {
    opacity: 1
}

.mfp-arrow:after,
.mfp-arrow:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: .7
}

.mfp-arrow-left {
    left: 0
}

.mfp-arrow-left:after {
    border-right: 17px solid #fff;
    margin-left: 31px
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f
}

.mfp-arrow-right {
    right: 0
}

.mfp-arrow-right:after {
    border-left: 17px solid #fff;
    margin-left: 39px
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px
}

.mfp-iframe-holder .mfp-close {
    top: -40px
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #000
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0;
    margin: 0 auto
}

.mfp-figure {
    line-height: 0
}

.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #444
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px
}

.mfp-figure figure {
    margin: 0
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px
}

.mfp-image-holder .mfp-content {
    max-width: 100%
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer
}

@media screen and (max-width:800px) and (orientation:landscape),
screen and (max-height:300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, .6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, .6);
        position: fixed;
        text-align: center;
        padding: 0
    }
}

@media all and (max-width:900px) {
    .mfp-arrow {
        transform: scale(.75)
    }

    .mfp-arrow-left {
        transform-origin: 0
    }

    .mfp-arrow-right {
        transform-origin: 100%
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px
    }
}

.mfp-bg {
    opacity: 0;
    transition: all .3s
}

.mfp-bg.mfp-ready {
    opacity: .8
}

.mfp-bg.mfp-ready.mfp-removing {
    opacity: 0
}

.white-popup-block {
    position: relative;
    background: #fff;
    padding: 20px;
    width: auto;
    max-width: 600px;
    margin: 20px auto
}

@font-face {
    font-family: iconfont;
    src: url(../fonts/iconfont.woff2) format("woff2"), url(../fonts/iconfont.woff) format("woff"), url(../fonts/iconfont.ttf) format("truetype")
}

.iconfont {
    font-family: iconfont !important;
    font-size: 16px;
    font-style: normal;
    background: 0 0;
    -webkit-font-smoothing: antialiased;
    -webkit-text-stroke-width: .2px;
    -moz-osx-font-smoothing: grayscale
}

@font-face {
    font-family: Metropolis-Bold;
    src: url(../fonts/metropolis-bold.woff2) format("woff2"), url(../fonts/metropolis-bold.woff) format("woff"), url(../fonts/metropolis-bold.ttf) format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Metropolis-Medium;
    src: url(../fonts/metropolis-medium.woff2) format("woff2"), url(../fonts/metropolis-medium.woff) format("woff"), url(../fonts/metropolis-medium.ttf) format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Metropolis-Thin;
    src: url(../fonts/metropolis-thin.woff2) format("woff2"), url(../fonts/metropolis-thin.woff) format("woff"), url(../fonts/metropolis-thin.ttf) format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

.pro-cat-sec {
    padding: 0 60px;
    background: #222;
    margin-top: 0.25rem;
}

.pro-cat-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: nowrap;
    flex-flow: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    overflow-y: hidden;
    overflow-x: auto
}

.pro-cat-item {
    -ms-flex: none;
    flex: none;
    width: 20%;
    transition: all .3s
}

.pro-cat-thumb {
    display: block;
    padding: 24px 14px;
}

.pro-cat-thumb img {
    width: 38%;
}

.pro-cat-show {
    text-align: center
}

.pro-cat-name {
    text-align: center;
    margin-top: 16px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: #fff
}

.pro-cat-item:hover {
    background: #0086ba
}

.hot-pro-sec {
    padding: 116px 0 102px;
    background: #f8f8f8 url(../images/home-pro-bg.png) no-repeat top center;
    background-size: cover
}

.hot-pro-top {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

.hot-pro-tit {
    position: relative;
    padding-left: 18px;
    -ms-flex: none;
    flex: none;
    font-size: 56px;
    line-height: 56px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif
}

.case-sec-tit {
    position: relative;
    padding-left: 18px;
    font-size: 56px;
    line-height: 56px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif
}

.about-sec-tit {
    position: relative;
    padding-left: 18px;
    font-size: 56px;
    line-height: 56px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    color: #fff
}

.app-sec-tit {
    -ms-flex: none;
    flex: none;
    position: relative;
    padding-left: 18px;
    font-size: 56px;
    line-height: 56px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    color: #fff
}

.news-sec-tit {
    -ms-flex: none;
    flex: none;
    position: relative;
    padding-left: 18px;
    font-size: 56px;
    line-height: 56px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif
}

.about-sec-tit::before,
.app-sec-tit::before,
.case-sec-tit::before,
.hot-pro-tit::before,
.news-sec-tit::before {
    display: block;
    position: absolute;
    left: 0;
    top: 6px;
    width: 4px;
    height: 20px;
    background: #505050;
    content: ''
}

.about-sec-tit::after,
.app-sec-tit::after,
.case-sec-tit::after,
.hot-pro-tit::after,
.news-sec-tit::after {
    display: block;
    position: absolute;
    left: 0;
    top: 26px;
    width: 4px;
    height: 20px;
    background: #0086ba;
    content: ''
}

.hot-pro-link {
    display: block;
    -ms-flex: none;
    flex: none;
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: #666
}

.hot-pro-link .iconfont {
    padding-left: 10px;
    color: #0086ba;
    font-weight: 400;
    font-size: 17px
}

.hot-pro-link:hover {
    color: #0086ba;
    transform: translateY(-4px)
}

.about-sec {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: #222
}

.about-secL {
    -ms-flex: none;
    flex: none;
    width: 50%
}

.about-secR {
    -ms-flex: none;
    flex: none;
    padding: 78px 190px 60px 98px;
    width: 50%
}

.about-video {
    display: block;
    position: relative;
    overflow: hidden
}

.about-video::after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background: rgba(51, 51, 51, .3);
    content: '';
    z-index: 1
}

.about-video .iconfont {
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    width: 80px;
    height: 80px;
    text-align: center;
    line-height: 80px;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 34px;
    border-radius: 50%;
    background: #c8161d;
    z-index: 5;
    transition: all .3s
}

.about-video:hover .iconfont {
    font-size: 30px
}

.about-video img {
    display: block;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover
}

@keyframes changeH {
    0% {
        background: transparent;
        transform: scale(0)
    }

    100% {
        background: rgba(200, 22, 29, .17);
        transform: scale(1)
    }
}

@keyframes changeW {
    0% {
        background: transparent;
        transform: scale(0)
    }

    100% {
        background: rgba(200, 22, 29, .2);
        transform: scale(1)
    }
}

.about-video .iconfont::before {
    display: block;
    position: absolute;
    left: -11px;
    top: -11px;
    width: 102px;
    height: 102px;
    border-radius: 50%;
    content: '';
    background: rgba(200, 22, 29, .2);
    z-index: -1;
    animation: changeW 2s infinite;
    transition: all .3s
}

.about-video .iconfont::after {
    display: block;
    position: absolute;
    left: -25px;
    top: -25px;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    content: '';
    background: rgba(200, 22, 29, .17);
    z-index: -2;
    animation: changeH 2s infinite;
    transition: all .3s
}

.about-content {
    padding-top: 22px;
    font-size: 16px;
    line-height: 24px;
    color: #fff
}

.about-content p {
    margin-top: 20px
}

#about-content .gallery {
    margin-top: 45px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

#about-content .gallery .gallery-item {
    -ms-flex: none;
    flex: none;
    margin: 0 20px 0 0;
    width: auto
}

#about-content .gallery .gallery-item img {
    border: none
}

.about-btns {
    margin-top: 56px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.about-btn1 {
    -ms-flex: none;
    flex: none;
    margin-right: 22px;
    width: 194px;
    height: 56px;
    line-height: 56px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    background: #0086ba
}

.about-btn2 {
    -ms-flex: none;
    flex: none;
    width: 194px;
    height: 56px;
    line-height: 56px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #0086ba;
    background: #fff
}

.about-btn1:hover {
    transform: translateY(-4px)
}

.about-btn2:hover {
    background: #0086ba;
    color: #fff;
    transform: translateY(-4px)
}

.service-sec {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.service-secL {
    -ms-flex: none;
    flex: none;
    width: 50%;
    background: #3087c3
}

.service-secR {
    padding: 40px 98px;
    -ms-flex: none;
    flex: none;
    width: 50%;
    font-size: 18px;
    line-height: 24px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    background: #efefef url(../images/home-ser-bg.png) no-repeat left bottom
}

#menu-about-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#menu-about-menu li {
    -ms-flex: none;
    flex: none;
    width: 33.33%
}

#menu-about-menu li a {
    display: block;
    position: relative;
    padding: 52px 30px 52px 108px;
    font-size: 18px;
    line-height: 24px;
    font-family: Metropolis-Bold, helvetica neue, Helvetica, Tahoma, Arial, sans-serif;
    color: #fff
}

#menu-about-menu li:nth-child(2) {
    background: #126aa8
}

#menu-about-menu li a::before {
    display: block;
    position: absolute;
    left: 48px;
    top: 48px;
    font-family: iconfont;
    font-size: 40px;
    font-weight: 400;
    color: #fff
}

#menu-about-menu li:nth-child(1) a::before {
    content: '\e6f8'
}

#menu-about-menu li:nth-child(2) a::before {
    content: '\e6b4'
}

#menu-about-menu li:nth-child(3) a::before {
    content: '\e68d'
}


.case-sec {
    padding: 106px 0 108px;
    background: url(../images/home-case-bg.jpg) no-repeat top center
}

.case-columns {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.case-columnL {
    -ms-flex: none;
    flex: none;
    width: 50%;
    padding-right: 80px
}

.case-columnR {
    -ms-flex: none;
    flex: none;
    width: 50%;
    padding-left: 48px
}

.case-content {
    padding-top: 25px;
    font-size: 16px;
    line-height: 24px;
    color: #666
}

.case-content p {
    margin-top: 20px;
    text-align: justify;
}

#case-gallery .gallery {
    margin-top: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

#case-gallery .gallery .gallery-item {
    -ms-flex: none;
    flex: none;
    padding-right: 20px;
    margin-top: 18px
}

#case-gallery .gallery .gallery-item img {
    border: none
}

.case-sec-btn {
    display: block;
    margin-top: 40px;
    width: 140px;
    height: 40px;
    line-height: 38px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    color: #0086ba;
    border: 1px solid #0086ba;
    background: #fff
}

.case-sec-btn:hover {
    color: #fff;
    background: #0086ba;
    transform: translateY(-4px)
}

.hot-case-sec {
    position: relative;
    z-index: 0
}

.hot-case-sec::before {
    display: block;
    position: absolute;
    right: -8px;
    top: -8px;
    width: 75px;
    height: 75px;
    background: #0086ba;
    content: '';
    z-index: -1
}

.hot-case-sec::after {
    display: block;
    position: absolute;
    left: -8px;
    bottom: -8px;
    width: 75px;
    height: 75px;
    background: #0086ba;
    content: '';
    z-index: -1
}

.yy-a012-ul .slick-dots {
    position: absolute;
    right: 0;
    bottom: 24px;
    width: 30%;
    text-align: center;
    z-index: 10
}

.yy-a012-ul .slick-dots li {
    display: inline-block;
    margin: 0 14px;
    width: 15px;
    height: 15px;
    background: #dedede;
    cursor: pointer;
    transition: all .3s
}

.yy-a012-ul .slick-dots .slick-active,
.yy-a012-ul .slick-dots li:hover {
    background: #0086ba
}

.yy-a012-ul .slick-dots li button {
    display: none
}

.app-top-sec {
    padding: 60px 0 52px;
    background: #222
}

.app-top-columns {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

.app-top-columnL {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 50px
}

.app-top-columnR {
    -ms-flex: none;
    flex: none;
    width: auto
}

.app-sec-des {
    -ms-flex: none;
    flex: none;
    margin-left: 20px;
    font-size: 18px;
    line-height: 24px;
    color: #bcbcbc
}

.app-sec-btn {
    display: block;
    width: 140px;
    height: 40px;
    line-height: 38px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    color: #0086ba;
    border: 1px solid #0086ba;
    background: #fff
}

.app-sec-btn:hover {
    color: #fff;
    background: #0086ba;
    transform: translateY(-4px)
}

.news-sec {
    padding: 100px 0
}

.news-sec-top {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

.home-news {
    -ms-flex: none;
    flex: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.home-news li {
    -ms-flex: none;
    flex: none;
    margin-left: 15px
}

.home-news li:first-child {
    margin-left: 0
}

.home-news li a {
    display: block;
    width: 168px;
    height: 48px;
    line-height: 46px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    color: #0086ba;
    background: #fff;
    border: 1px solid #0086ba
}

.home-news li a:hover,
.home-news li:first-child a {
    background: #0086ba;
    color: #fff
}


@media screen and (max-width:1750px) {
    .about-secR {
        padding: 70px 150px 60px 98px
    }

    #menu-about-menu li a {
        padding: 40px 30px 40px 108px
    }
}

@media screen and (max-width:1650px) {
    .pro-cat-thumb {
        padding: 20px 14px;
    }

    .hot-pro-sec {
        padding: 102px 0
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        font-size: 52px
    }

    .about-secR {
        padding: 70px 90px 60px 84px
    }
}

@media screen and (max-width:1520px) {

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 90px 0
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        font-size: 48px
    }

    .about-content {
        padding-top: 14px
    }

    .about-btns {
        margin-top: 42px
    }

    .service-secR {
        padding: 32px 84px
    }

    .case-content {
        padding-top: 15px
    }

    #case-gallery .gallery {
        margin-top: 25px
    }

    .case-columnL {
        padding-right: 50px
    }

    .app-top-sec {
        padding: 50px 0 42px
    }
}

@media screen and (max-width:1440px) {
    .pro-cat-sec {
        padding: 0 40px
    }

    .pro-cat-thumb {
        padding: 18px 14px;
    }

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 74px 0
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        font-size: 42px;
        line-height: 48px
    }

    .about-sec-tit::before,
    .app-sec-tit::before,
    .case-sec-tit::before,
    .hot-pro-tit::before,
    .news-sec-tit::before {
        height: 16px
    }

    .about-sec-tit::after,
    .app-sec-tit::after,
    .case-sec-tit::after,
    .hot-pro-tit::after,
    .news-sec-tit::after {
        height: 16px;
        top: 22px
    }

    .about-secR {
        padding: 60px 4rem 60px 74px
    }

    .service-secR {
        padding: 28px 4rem 28px 70px
    }

    #menu-about-menu li a::before {
        font-size: 36px
    }

    #menu-about-menu li a {
        font-size: 17px
    }

    .case-content p {
        margin-top: 16px
    }

    #case-gallery .gallery {
        margin-top: 20px
    }

    .case-columnL {
        padding-right: 36px
    }

    .case-columnR {
        padding-left: 34px
    }

    .app-top-sec {
        padding: 40px 0 34px
    }
}

@media screen and (max-width:1280px) {
    .pro-cat-item {
        width: auto
    }

    .pro-cat-thumb {
        padding: 18px 16px
    }

    .pro-cat-name {
        margin-top: 12px
    }

    .pro-cat-sec {
        padding: 0 2rem
    }

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 60px 0
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        font-size: 36px
    }

    .about-secR {
        padding: 48px 2rem 50px 60px
    }

    .about-btn1,
    .about-btn2 {
        width: 180px;
        height: 50px;
        line-height: 50px
    }

    .yy-a012-ul .slick-dots li {
        margin: 0 10px
    }

    .service-sec {
        display: none
    }

    .app-top-sec {
        padding: 26px 0 24px
    }
}

@media screen and (max-width:1024px) {

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 46px 0
    }

    .pro-cat-show img {
        width: 98px
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        padding-left: 15px;
        font-size: 30px;
        line-height: 40px
    }

    .about-sec-tit::before,
    .app-sec-tit::before,
    .case-sec-tit::before,
    .hot-pro-tit::before,
    .news-sec-tit::before {
        height: 13px
    }

    .about-sec-tit::after,
    .app-sec-tit::after,
    .case-sec-tit::after,
    .hot-pro-tit::after,
    .news-sec-tit::after {
        height: 13px;
        top: 19px
    }

    #about-content .gallery {
        margin-top: 30px
    }

    .about-btns {
        margin-top: 18px
    }

    .about-secR {
        padding: 48px 2rem 50px 40px
    }

    .about-btn1,
    .about-btn2 {
        width: 154px;
        height: 44px;
        line-height: 44px;
        font-size: 15px
    }

    #about-content .gallery .gallery-item {
        margin: 0 12px 16px 0
    }

    .hot-case-sec::after,
    .hot-case-sec::before {
        width: 64px;
        height: 64px
    }

    .yy-a012-ul .slick-dots li {
        margin: 0 8px;
        width: 12px;
        height: 12px
    }

    .case-content {
        padding-top: 6px
    }

    #case-gallery .gallery .gallery-item {
        padding-right: 14px;
        margin-top: 12px
    }

    .case-sec-btn {
        margin-top: 24px
    }

    .case-columnL {
        padding-right: 24px
    }

    .case-columnR {
        padding-left: 24px
    }

    .app-sec-des {
        margin-left: 16px;
        font-size: 17px
    }

    .home-news li a {
        width: 146px;
        height: 42px;
        line-height: 40px
    }
}

@media screen and (max-width:800px) {
    .pro-cat-show img {
        width: 78px
    }

    .pro-cat-thumb {
        padding: 14px 12px
    }

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 36px 0
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        font-size: 24px
    }

    .hot-pro-link {
        font-size: 15px
    }

    .about-video img {
        max-width: 100%
    }

    .about-secL {
        width: 70%
    }

    .about-secR {
        width: 100%;
        padding: 28px 2rem 34px
    }

    .about-content {
        padding-top: 4px;
        font-size: 15px;
        line-height: 22px
    }

    #case-gallery .gallery .gallery-item {
        width: 50%
    }

    #case-gallery .gallery {
        margin-top: 8px
    }

    .hot-case-sec::after,
    .hot-case-sec::before {
        width: 46px;
        height: 46px
    }

    .app-sec-des {
        display: none
    }

    .news-sec-tit {
        width: 100%
    }

    .home-news {
        margin-top: 16px;
        width: 100%
    }
}

@media screen and (max-width:600px) {
    .pro-cat-sec {
        padding: 0 1rem
    }

    .pro-cat-thumb {
        padding: 14px 8px
    }

    .pro-cat-show img {
        width: 68px
    }

    .pro-cat-name {
        margin-top: 5px;
        font-size: 13px;
        line-height: 16px
    }

    .case-sec,
    .hot-pro-sec,
    .news-sec {
        padding: 20px 0 24px
    }

    .about-sec-tit,
    .app-sec-tit,
    .case-sec-tit,
    .hot-pro-tit,
    .news-sec-tit {
        padding-left: 10px;
        font-size: 18px;
        line-height: 24px
    }

    .hot-pro-link {
        font-size: 14px
    }

    .about-sec-tit::before,
    .app-sec-tit::before,
    .case-sec-tit::before,
    .hot-pro-tit::before,
    .news-sec-tit::before {
        height: 8px;
        top: 3px;
        width: 3px
    }

    .about-sec-tit::after,
    .app-sec-tit::after,
    .case-sec-tit::after,
    .hot-pro-tit::after,
    .news-sec-tit::after {
        width: 3px;
        height: 8px;
        top: 11px
    }

    .about-secR {
        padding: 24px 1rem 28px
    }

    .about-secL {
        width: 100%
    }

    .about-content p {
        margin-top: 12px
    }

    #about-content .gallery {
        margin-top: 20px
    }

    .about-btns {
        margin-top: 8px
    }

    .about-btn1,
    .about-btn2 {
        width: 134px;
        height: 38px;
        line-height: 38px;
        font-size: 14px
    }

    .about-btn1 {
        margin-right: 14px
    }

    .about-video .iconfont {
        width: 54px;
        height: 54px;
        line-height: 54px
    }

    .about-video .iconfont::before {
        width: 76px;
        height: 76px
    }

    .about-video .iconfont::after {
        width: 104px;
        height: 104px
    }

    .case-columnR {
        display: none
    }

    .case-columnL {
        width: 100%
    }

    .case-content {
        font-size: 15px;
        line-height: 22px
    }

    .case-content p {
        margin-top: 8px
    }

    .case-sec-btn {
        margin: 20px auto 0
    }

    #case-gallery .gallery .gallery-item {
        padding-right: 8px;
        margin-top: 8px
    }

    .app-sec-btn {
        width: 94px;
        height: 30px;
        line-height: 28px;
        font-size: 13px
    }

    .home-news {
        margin-top: 12px
    }

    .home-news li {
        margin-left: 10px
    }

    .home-news li a {
        width: 124px;
        height: 34px;
        line-height: 32px;
        font-size: 13px
    }

    .app-top-sec {
        padding: 16px 0 14px
    }
}