.en {
    color: rgba(26, 32, 44, 0.1);
    font-size: 64px;
    font-family: 'SourceHanSansCN-Bold';
    text-transform: uppercase
}

.cn {
    color: #1a202c;
    font-size: 60px;
    font-family: 'SourceHanSansCN-Bold'
}

.types {
    display: flex;
    justify-content: center;
    margin: 203px 0 60px 0;
    background: #e4e4e4;padding: 20px;
}

.types a {
    margin: 0 51px;
    color: #1a202c;
    opacity: .2;
    font-family: 'SourceHanSansCN-Bold';
    transition: all 600ms;
    cursor: pointer
}

.types a:hover {
    opacity: 1
}

.types .active {
    opacity: 1
}

.title {
    margin: 0 160px 58px 160px
}

.banner {
    position: relative;
    height: 100vh;
    z-index: -1;
    overflow: hidden
}

.banner .fix {
    width: 100%;
    height: 100vh;
    position: relative;
    top: 0
}

.banner .fix .after {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    opacity: 0;
    z-index: 25
}

.banner .bg {
    height: 100vh
}

.banner .bg img {
    width: 100%;
    height: 100vh !important
}

.banner .text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
    color: #FFF;
    font-size: 42px
}

.banner .text p:not(:first-child) {
    opacity: 0
}

.intro {
    padding: 100px 200px;
    background: #F7F7F7;
    text-align: justify;
    font-size: 20px;
    line-height: 1.8
}

.section1 {
    background: url(../images/hxbg.png) no-repeat;
    background-size: cover
}

.section1 .title2 {
    padding: 120px 160px 54px 160px
}

.section1 .list {
    margin: 75px 300px 0 300px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px
}

.section1 .list .item {
    width: 100%;
    position: relative;
    overflow: hidden;
    color: white;
    background: #323A3B;
    padding: 50px 42px;
    z-index: 2;
    height: 425px
}

.section1 .list .item::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: url(../images/jzbg.png) no-repeat;
    background-size: 100% 100%;
    opacity: .2;
    pointer-events: none
}

.section1 .list .item .p1 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 32px
}

.section1 .list .item .des {
    text-align: justify;
    font-size: 18px;
    line-height: 1.67;
    font-family: 'SourceHanSansCN-Light'
}

.section2 {
    margin: 90px 160px 120px 160px
}

.section2 .title2 {
    margin-bottom: 50px
}

.section2 .wrap .swiper2 {
    margin: 39px 72px
}

.section2 .wrap .swiper2 .swiper-slide {
    opacity: .2;
    transition: all 600ms
}

.section2 .wrap .swiper2 .swiper-slide .item {
    display: flex;
    cursor: pointer
}

.section2 .wrap .swiper2 .swiper-slide .item .pic img {
    width: 70px;
    border-radius: 10px
}

.section2 .wrap .swiper2 .swiper-slide .item .text {
    margin-left: 20px
}

.section2 .wrap .swiper2 .swiper-slide .item .text .name {
    color: #0A1E23;
    font-size: 16px;
    font-weight: 700
}

.section2 .wrap .swiper2 .swiper-slide .item .text .des {
    color: #F27800;
    font-size: 14px;
    font-family: 'SourceHanSansCN-Light';
    margin-top: 17px;
    width: 170px;
    transition: all 600ms
}

.section2 .wrap .swiper2 .swiper-slide-active {
    opacity: 1
}

.section2 .wrap .swiper2 .swiper-slide-active .item .text .des {
    color: #CA062C
}

.section2 .wrap .box {
    position: relative
}

.section2 .wrap .box img {
    width: 100%;
    border-radius: 20px
}

.section2 .wrap .box .swiper3 {
    position: absolute;
    left: 40px;
    top: 40px;
    width: 807px
}

.section2 .wrap .box .swiper3 .info {
    display: flex;
    justify-content: space-between;
    padding: 30px 48px 100px 30px;
    gap: 62px;
    border-radius: 16px;
    background: #FFF;
    position: relative
}

.section2 .wrap .box .swiper3 .info .l,
.section2 .wrap .box .swiper3 .info .r {
    color: #333;
    font-size: 16px;
    line-height: 1.875
}

.section2 .wrap .box .swiper3 .info .l p::before,
.section2 .wrap .box .swiper3 .info .r p::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    background: #333;
    border-radius: 50%;
    margin-right: 10px;
    transform: translateY(-2px)
}

.section2 .wrap .box .swiper3 .info .l .p1,
.section2 .wrap .box .swiper3 .info .r .p1 {
    font-weight: 700
}

.section2 .wrap .box .swiper3 .info .l .p1::before,
.section2 .wrap .box .swiper3 .info .r .p1::before {
    display: none
}

.section2 .wrap .box .swiper3 .info .l {
    width: 60%
}

.section2 .wrap .box .swiper3 .info .r {
    width: 40%
}

.section2 .wrap .box .swiper3 .info .btn {
    width: 100%;
    position: absolute;
    left: 30px;
    bottom: 30px
}

.section2 .wrap .box .swiper3 .info .btn a {
    color: #CA062C;
    font-size: 16px;
    text-decoration: underline
}

.section3 {
    margin: 0 160px
}

.section3 .wrap {
    margin-top: 28px;
    position: relative
}

.section3 .wrap .pic {
    overflow: hidden
}

.section3 .wrap .pic img {
    width: 54.16667vw;
    display: block;
    transition: all 600ms;
    object-fit: cover
}

.section3 .wrap .pic:hover img {
    transform: scale(1.05)
}

.section3 .wrap .content {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: #F5F5F5;
    width: 36.51042vw;
    padding: 5.72917vw 3.07292vw 3.125vw 3.07292vw
}

.section3 .wrap .content .p1 {
    font-size: 24px;
    font-weight: 700
}

.section3 .wrap .content .p2 {
    margin: 39px 0 12px 0;
    color: #CA062C;
    font-size: 16px;
    font-weight: 700
}

.section3 .wrap .content .tags {
    display: flex;
    flex-wrap: wrap
}

.section3 .wrap .content .tags p {
    width: 50%;
    color: #000;
    font-size: 16px
}

.section3 .wrap .content .tags p::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    background: #000;
    border-radius: 50%;
    margin-right: 10px;
    transform: translateY(-2px)
}

.section3 .wrap .content .slogo {
    margin: 28px 0 65px 0;
    display: flex;
    align-items: center;
}
.section3 .wrap .content .slogo .it{
    display: flex;
    align-items: center;
    margin-right: 39px;
}
.section3 .wrap .content .slogo .it p{
    color: #666;
    font-size: 16px;
    margin-left: 8px;
}

.section3 .wrap .content .six {
    border-top: 1px solid #D9D9D9;
    padding-top: 28px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.section3 .wrap .content .six .is {
    width: 30%;
    display: flex;
    align-items: center;
    margin-bottom: 45px
}

.section3 .wrap .content .six .is p {
    color: #000;
    font-size: 18px;
    font-family: 'SourceHanSansCN-Medium';
    margin-left: 10px
}

.section4 {
    margin: 120px 160px
}

.section4 .wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 110px
}

.section4 .wrap .l {
    width: 45%
}

.section4 .wrap .l .box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.section4 .wrap .l .box .item {
    width: 50%;
    margin-bottom: 110px;
    transition: all 600ms
}

.section4 .wrap .l .box .item .p1 .num {
    color: #CA062C;
    font-size: 60px;
    font-weight: 700
}

.section4 .wrap .l .box .item .p1 span {
    color: #000;
    font-size: 26px;
    font-weight: 400
}

.section4 .wrap .l .box .item .tag {
    color: #000;
    font-size: 24px;
    margin-top: 24px
}

.section4 .wrap .l .box .item:hover {
    transform: scale(1.05)
}

.section4 .wrap .l .box .item_1 {
    width: 100%
}

.section4 .wrap .r {
    width: 48%;
    margin-top: -190px
}

.section4 .wrap .r .box1 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 280px;
    overflow-y: scroll
}

.section4 .wrap .r .box1 .ib {
    width: 48%;
    line-height: 2
}

.section4 .wrap .r .box1 .ib svg {
    display: inline;
    transform: translateY(-3px)
}

.section4 .wrap .r .box1 .ib p {
    display: inline;
    color: #666;
    font-size: 18px;
    margin-left: 10px
}

.section4 .wrap .r .box2 {
    margin-top: 75px
}

.section4 .wrap .r .box2 .list {
    padding: 15px 32px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: space-between
}

.section4 .wrap .r .box2 .list .item {
    text-align: center;
    width: 20%
}

.section4 .wrap .r .box2 .list .item .icon {
    position: relative
}

.section4 .wrap .r .box2 .list .item .icon img {
    opacity: 0;
    transition: all 600ms
}

.section4 .wrap .r .box2 .list .item .icon .cp {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

.section4 .wrap .r .box2 .list .item .icon .cp img {
    width: 60px;
    border-radius: 50%;
    opacity: 1
}

.section4 .wrap .r .box2 .list .item p {
    color: rgba(0, 0, 0, 0.5);
    font-size: 18px;
    line-height: 1.3;
    margin-top: 10px;
    transition: all 600ms
}

.section4 .wrap .r .box2 .list .item:hover .icon img {
    opacity: 1
}

.section4 .wrap .r .box2 .list:not(:first-child) {
    margin-top: 30px
}

.cases {
    margin: 120px 160px 150px 160px
}

.cases .content {
    position: relative;
    margin-top: 64px
}

.cases .content .prev {
    position: absolute;
    left: -80px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 10
}

.cases .content .next {
    position: absolute;
    right: -80px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 10
}

.cases .content .swiper-container a {
    display: block;
    width: 100%
}

.cases .content .swiper-container a .pic {
    overflow: hidden;
    transition: all 600ms
}

.cases .content .swiper-container a .pic img {
    width: 100%;
    display: block;
    object-fit: cover;
    transition: all 600ms
}

.cases .content .swiper-container a .text {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    align-items: center
}

.cases .content .swiper-container a .text .name {
    color: #333;
    font-size: 20px;
    font-family: 'SourceHanSansCN-Bold'
}

.cases .content .swiper-container a .text .city {
    color: #333;
    font-size: 16px
}

.cases .content .swiper-container a:hover .pic {
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.36)
}

.cases .content .swiper-container a:hover .pic img {
    transform: scale(1.05)
}

@media screen and (max-width: 1465px) {
    .title {
        margin: 0 5% 58px 5%
    }

    .intro {
        padding: 80px 5%
    }

    .section1 .title2 {
        padding: 120px 5% 54px 5%
    }

    .section1 .list {
        margin: 75px 5% 0 5%
    }

    .section2 {
        margin: 90px 5% 120px 5%
    }

    .section3 {
        margin: 0 5%
    }

    .section3 .wrap .content {
        width: 50%
    }

    .section4 {
        margin: 120px 5%
    }

    .section4 .wrap .l {
        width: 50%
    }

    .section4 .wrap .r .box2 .list {
        flex-direction: column
    }

    .section4 .wrap .r .box2 .list .item {
        width: 100%;
        margin-bottom: 15px
    }

    .cases {
        margin: 120px 5% 160px 5%
    }

    .cases .content .prev {
        left: -50px
    }

    .cases .content .next {
        right: -50px
    }
}

@media screen and (max-width: 1024px) {
    .types {
        margin: 80px 5% 30px 5%;
        display: block;
        overflow-x: scroll;
        white-space: nowrap
    }

    .types a {
        margin: 0 10px;
        display: inline-block
    }

    .en {
        font-size: 32px
    }

    .cn {
        font-size: 30px
    }

    .banner .bg img {
        height: 500px
    }

    .banner .text {
        padding: 0 5%
    }

    .banner .text p {
        font-size: 24px
    }

    .intro {
        padding: 30px 5%;
        font-size: 18px
    }

    .section1 .title2 {
        padding: 60px 5%
    }

    .section1 .list {
        margin: 20px 5%;
        grid-template-columns: repeat(1, 1fr);
        gap: 15px 0
    }

    .section1 .list .item {
        height: auto;
        min-height: 350px;
        padding: 30px 20px
    }

    .section2 {
        margin: 50px 5%
    }

    .section2 .wrap .swiper2 {
        margin: 20px 0
    }

    .section2 .wrap .swiper2 .swiper-slide .item .text .des {
        width: 120px
    }

    .section2 .wrap .box .swiper3 {
        position: static;
        width: 100%
    }

    .section2 .wrap .box .swiper3 .info {
        flex-direction: column;
        padding: 20px;
        gap: 0
    }

    .section2 .wrap .box .swiper3 .info .l,
    .section2 .wrap .box .swiper3 .info .r {
        width: 100%
    }

    .section2 .wrap .box .swiper3 .info .r {
        margin-top: 15px
    }

    .section2 .wrap .box .swiper3 .info .btn {
        position: static
    }

    .section3 .wrap .pic img {
        width: 100%
    }

    .section3 .wrap .content {
        position: static;
        width: 100%;
        transform: translateY(0)
    }

    .section3 .wrap .content .p1 {
        font-size: 18px
    }

    .section3 .wrap .content .p2 {
        margin: 20px 0 10px 0
    }

    .section3 .wrap .content .tags p {
        width: 100%
    }

    .section3 .wrap .content .slogo {
        margin: 14px 0 20px 0;
        justify-content: space-between;
    }
    .section3 .wrap .content .slogo .it{
        margin-right: 0;
    }

    .section3 .wrap .content .six .is {
        width: 50%;
        margin-bottom: 20px
    }

    .section4 {
        margin: 60px 5%
    }

    .section4 .wrap {
        margin-top: 40px;
        flex-direction: column
    }

    .section4 .wrap .l {
        width: 100%
    }

    .section4 .wrap .l .box .item {
        width: 100%;
        margin-bottom: 30px
    }

    .section4 .wrap .l .box .item .p1 .num {
        font-size: 30px
    }

    .section4 .wrap .l .box .item .tag {
        margin-top: 15px
    }

    .section4 .wrap .r {
        width: 100%;
        margin-top: 0
    }

    .section4 .wrap .r .box1 .ib {
        width: 100%
    }

    .cases {
        margin: 60px 5%
    }

    .cases .content {
        margin-top: 30px
    }

    .cases .content .prev,
    .cases .content .next {
        display: none
    }
}