.bannerimg {
    width: 100%;
    object-fit: cover;
    transform: scale3d(1.15, 1.15, 1);

    transition: all 3s cubic-bezier(0.04, 0.79, 1, 1);
}

.swiper-slide-active .bannerimg {
    transform: scale3d(1, 1, 1);
    transition: all 3s cubic-bezier(0.04, 0.79, 1, 1);
}

.swiper-control {width:200px;
    position: absolute;
    bottom: 1.5rem;
     right:5%; margin: auto;
    display: flex;
    align-items: center;
    z-index: 10
}

.swiper-control .num1 {
    font-size: .18rem;
    color: #333;
    font-family: "DIN"
}

.swiper-control .num2 {
    font-size: .18rem;
    color: #959595;
    font-family: "DIN";
    margin-right: .22rem
}

.swiper-control .line {
    width: .33rem;
    height: 1px;
    background: #959595;
    margin: 0 .1rem
}

.swiper-control .swiperbtn {
    position: relative;
    width: .31rem;
    height: .31rem;
    margin-right: .1rem;
    cursor: pointer;
}

.swiper-control .swiperbtn img {
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s
}

.swiper-control .swiperbtn img:nth-child(2) {
    opacity: 0
}

@media (min-width: 1000px) {
    .swiper-control .swiperbtn:hover img:nth-child(1) {
        opacity: 0
    }
    .swiper-control .swiperbtn:hover img:nth-child(2) {
        opacity: 1
    }
}

@media (min-width: 1100px) {
    .bannerimg {
        /*height: 850px;*/
    }
}

.subnav {
    position: relative;
    z-index: 5
}

.subnav .container {
    position: absolute;
    top: -.5rem;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.05);
    border-radius: .06rem;
    overflow: hidden;
}

.subnav .item {
    flex: 1;
    height: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s;
    font-size: .16rem;
    color: #666;
    background: #fff;
    position: relative;
}

.subnav .item .icon {
    width: .28rem;
    height: .28rem;
    position: relative;
    margin-right: .05rem;
}

.subnav .item .icon img {
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s
}

.subnav .item .icon img:nth-child(2) {
    opacity: 0
}

.subnav .item.on {
    background: #D60A17;
    color: #fff
}

.subnav .item.on .icon img:nth-child(2) {
    opacity: 1
}

.subnav .item.on .icon img:nth-child(1) {
    opacity: 0
}

.subnav .item:not(:last-child):after {
    content: "";
    background: #979797;
    top: 0;
    right: 0;
    bottom: 0;
    width: 1px;
    opacity: .18;
    position: absolute;
}

.banner2 {
    overflow: hidden;
    position: relative;
}

.banner2img {
    width: 100%;
    object-fit: cover;
}

.banner2 .container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
}

.banner2title .en {
    font-size: .48rem;
    color: #D60A17;
    line-height: .66rem;
}

.banner2title .cn {
    font-size: .28rem;
    line-height: 1;
    color: #fff;
    margin-top: .11rem;
}

.newscon {
    background: #F8FAFB;
    padding: 1.48rem 0 .9rem
}

.newscon .item {
    float: left;
    width: 33.33333%;
    padding: 2.3vw 4.5vw 2vw;
    transition: all .3s
}

.newscon .item .title1 {
    font-size: 12px;
    color: #888;
    line-height: 1;
    transition: all .3s;
}

.newscon .item .title2 {
    font-size: .24rem;
    color: #333;
    line-height: 1.333;
    margin-top: 1.3vw;
    transition: all .3s;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: .62rem
}

.newscon .item .time {
    font-size: .14rem;
    color: #333;
    line-height: 1;
    margin-top: 2vw;
    transition: all .3s
}

.newscon .item .imgbox {
    overflow: hidden;
    margin: .9vw 0 2vw
}

.newscon .item .imgbox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s
}

.newscon .item:not(:nth-child(3n)) {
    border-right: 1px solid #e1e1e1
}

.newscon .item .content {
    transition: all .3s;
    height: .72rem;
    line-height: .24rem;
    font-size: .14rem;
    color: #888;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.newscon .item .bottom {
    display: flex;
    align-items: center;
    transition: all .3s;
    color: #fff;
    margin-top: 2vw;
    opacity: 0;
    font-size: 12px;
    text-transform: uppercase;
}

.news2top {
    background: #D60A17
}

.news2top .container {
    height: .9rem;
    display: flex;
    align-items: center;
}

.news2top .back {
    color: #ffa9a9;
    font-size: 12px;
    transition: all .3s
}

.news2top1 {
    display: flex;
    align-items: center;
}

.news2top1 a {
    font-size: 12px;
    color: #ffa9a9;
    transition: all .3s
}

.news2top1 span {
    font-size: 12px;
    color: #ffa9a9;
    margin: 0 .08rem
}

.news2top1 a.on {
    font-size: .18rem;
    color: #fff
}

.news2con {
    padding: .33rem 0 1rem;
    background: #F8FAFB
}

.news2con .container {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
}

.news2left {
    background: #fff;
    padding: 3vw 4vw 0
}

.news2left-top .h1 {
    font-size: .28rem;
    color: #444;
    line-height: 1.45
}

.news2left-top .h2 {
    font-size: .14rem;
    color: #999;
    margin-top: .16rem
}

.news2left-top .h2 span {
    margin-right: 3vw
}

.news2content {
    padding: .5rem 0 .7rem
}

.news2content img {
    margin: 0 auto;
}

.news2jump {
    display: flex;
    align-items: center;
    margin: 0 -4vw
}

.news2jump .item {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: center;
    height: .98rem;
    border-top: 1px solid #EDEDED;
    font-size: .16rem;
    color: #666;
    transition: all .3s
}

.news2jump .item:first-child {
    border-right: 1px solid #EDEDED
}

.news2jump .item .txt {
    max-width: 60%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.news2jump .item .icon {
    margin: 0 1.25vw
}

.news2right {
    background: #fff;
    padding: .2rem .25rem 0;
    width: 4.3rem;
    margin-left: .3rem
}

.news2right .title {
    font-size: .18rem;
    color: #D60A17
}

.news2right .item {
    display: block;
    padding: .28rem 0;
}

.news2right .item .title2 {
    font-size: .16rem;
    color: #555;
    margin-bottom: .1rem;
    transition: all .3s
}

.news2right .item .time {
    font-size: 12px;
    color: #999
}

.news2right .item:not(:last-child) {
    border-bottom: 1px solid #EDEDED
}

.casecon {
    background: #F8FAFB;
    padding: .8rem 0 .65rem;
}

.casetab a {
    line-height: .64rem;
    font-size: .14rem;
    color: #666;
    padding: 0 .12rem;
    transition: all .3s;
    margin-right: .6rem;
    position: relative;
    display: block;
}

.casetab {
    border-bottom: 1px solid #E7ECEE;
    display: flex;
    align-items: center;
    margin-bottom: .45rem;
}

.casetab a:after {
    content: "";
    height: 3px;
    background: #D60A17;
    position: absolute;
    left: 0;
    width: 0;
    bottom: -1px;
    transition: all .3s
}

.casetab a.on:after {
    width: 100%
}

.casetab a.on {
    color: #333
}

.casetab a:not(:first-child):before {
    content: "/";
    font-size: .14rem;
    color: #DCDCDC;
    position: absolute;
    left: -.3rem;
}

.casebox .row {
    margin: 0 -3.5px;
}

.casebox .col-sm-3 {
    padding: 0 3.5px;
    margin-bottom: .5rem
}

.casebox .item {
    display: block;
    background: #fff;
    box-shadow: 0px 2px 11px 0px rgba(0, 0, 0, 0.03);
    border-radius: .06rem;
    overflow: hidden;
    transition: all .3s
}

.casebox .item .imgbox {
    overflow: hidden;
}

.casebox .item .imgbox img {
    transition: all .3s
}

.casebox .item .title {
    line-height: .8rem;
    font-size: .18rem;
    text-align: center;
    color: #333;
    transition: all .3s
}

@media (min-width: 1000px) {
    .subnav .item:hover {
        background: #D60A17;
        color: #fff
    }
    .subnav .item:hover .icon img:nth-child(2) {
        opacity: 1
    }
    .subnav .item:hover .icon img:nth-child(1) {
        opacity: 0
    }
    .newscon .item:hover {
        background: #D60A17
    }
    .newscon .item:hover .title1 {
        color: #fff
    }
    .newscon .item:hover .time {
        color: #fff
    }
    .newscon .item:hover .title2 {
        color: #fff
    }
    .newscon .item:hover .content {
        color: #fff
    }
    .newscon .item:hover .bottom {
        transform: translateX(5px);
        opacity: 1
    }
    .newscon .item:hover .imgbox img {
        transform: scale(1.1);
    }
    .news2top .back:hover {
        color: #fff
    }
    .news2top1 a:hover {
        color: #fff
    }
    .news2right .item:hover .title2 {
        color: #d60a17
    }
    .news2jump .item:hover {
        color: #d60a17
    }
    .casetab a:hover:after {
        width: 100%
    }
    .casetab a:hover {
        color: #333
    }
    .casebox .item:hover {
        transform: translateY(-5px);
    }
    .casebox .item:hover .title {
        color: #d60a17
    }
}

@media (max-width: 1200px) {
    .subnav .container {
        top: -.4rem;
    }
    .subnav .item {
        height: .8rem;
    }
    .newscon {
        padding: 1rem 0 .9rem
    }
    .newscon .item {
        padding: 2.3vw 3vw 2vw
    }
}

@media (max-width: 1000px) {
    .news2right {
        display: none;
    }
    .news2con {
        padding: .35rem 0 .8rem
    }
    .casebox .item .title {
        line-height: .7rem
    }
    .banner2img {
        height: 30vh
    }
}

@media (max-width: 767px) {
    .swiper-control .num1 {
        font-size: 14px;
    }
    .swiper-control .num2 {
        font-size: 14px;
    }
    .swiper-control .swiperbtn {
        width: 24px;
        height: 24px
    }
    .banner2img {
        height: 240px
    }
    .banner2title .en {
        font-size: 24px;
    }
    .banner2title .cn {
        font-size: 16px;
        margin-top: .15rem
    }
    .subnav .item .icon {
        display: none;
    }
    .subnav .item {
        font-size: 12px
    }
    .newscon .item {
        width: 50%;
        padding: 15px;
        border-right: 1px solid #e1e1e1
    }
    .newscon .item .title2 {
        font-size: 13px;
        margin-top: 10px;
        height: auto;
    }
    .newscon .item .imgbox {
        margin: 10px 0 15px
    }
    .newscon .item .time {
        margin-top: 15px
    }
    .newscon .item .time {
        font-size: 12px
    }
    .newscon .item .content {
        font-size: 12px;
        line-height: 18px;
        height: 54px
    }
    .newscon .item:nth-child(2n) {
        border-right: 0
    }
    .news2top1 a.on {
        font-size: 14px;
    }
    .news2con .container {
        display: block;
    }
    .news2con {
        padding: .35rem 0 .5rem
    }
    .news2left {
        padding: 20px 20px 0
    }
    .news2left-top .h1 {
        font-size: 16px;
    }
    .news2left-top .h2 {
        font-size: 12px;
        line-height: 1.33
    }
    .news2content {
        padding: .4rem 0
    }
    .news2jump {
        display: block;
        margin: 0 -20px
    }
    .news2jump .item {
        font-size: 12px;
        height: 56px
    }
    .news2jump .item:first-child {
        border-right: 0
    }
    .casetab a {
        font-size: 12px;
        margin-right: .5rem;
        line-height: .7rem
    }
    .casebox .item .title {
        font-size: 12px
    }
    .casetab {
        margin-bottom: 20px
    }
    .casebox .col-sm-3 {
        margin-bottom: 20px
    }
    .newscon {
        padding: .9rem 0
    }
    .casecon {
        padding: .65rem 0
    }
}

.recruit {
    background: #F8FAFB;
    padding: 1.4rem 0
}

.rctbox .item {
    background: #fff;
    margin-bottom: .12rem
}

.rctbox .item .before {
    display: flex;
    align-items: center;
    height: 1.3rem;
    padding: 0 .3rem
}

.rctbox .item .h1 {
    font-size: .2rem;
    color: #333;
    margin-bottom: .24rem
}

.rctbox .item .h2 {
    font-size: .14rem;
    color: #999;
}

.rctbox .item .h2 span {
    margin-right: 2.4vw
}

.rctbox .item .btn1 {
    display: flex;
    align-items: center;
    font-size: .16rem;
    color: #D60A17;
    cursor: pointer;
}

.rctbox .item .btn1 img {
    width: .14rem;
    margin-left: .11rem;
}

.rctbox .item .after {
    padding: 0 .3rem .4rem;
    display: none;
}

.rctbox .item .after p {
    font-size: .14rem;
    line-height: 2;
    color: #666
}

.rctbox .item .after .btn2 {
    width: 1.37rem;
    line-height: .36rem;
    border-radius: .4rem;
    text-align: center;
    font-size: .16rem;
    color: #fff;
    background: #333;
    cursor: pointer;
    margin-top: .28rem;
    transition: all .3s
}

.rctbox .item .btn1 span:nth-child(2) {
    display: none;
}

.rctbox .item .btn1.on span:nth-child(1) {
    display: none;
}

.rctbox .item .btn1.on span:nth-child(2) {
    display: block;
}

.ideacon {
    padding: 1.5rem 0 1.25rem;
    background: #F8FAFB
}

.ideabox {
    background: #fff;
    border-top: 3px solid #D60A17;
    padding: 1.05rem 0 1.2rem
}

.ideaform {
    width: 4.7rem;
    margin: 0 auto;
}

.ideaform .input1 {
    height: .63rem;
    font-size: .16rem;
    color: #333;
    display: block;
    flex: 1;
    margin-left: .1rem
}

.ideaform textarea {
    height: 1.4rem;
    font-size: .16rem;
    color: #333;
    border: 1px solid #EBEBEB;
    display: block;
    width: 100%;
    padding: .12rem;
    margin: .48rem 0 .26rem
}

.ideaform .btn1 {
    font-size: .16rem;
    color: #fff;
    transition: all .3s;
    width: 1.16rem;
    line-height: .46rem;
    background: #333;
    border-radius: .4rem;
}

.ideatitle {
    max-width: 15.85rem;
    height: 1.05rem;
    background: url(../images/ideatitle.png);
    background-size: cover;
    margin: 0 auto;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ideatitlebox {
    width: 4.7rem;
}

.ideatitle .cn {
    font-size: .2rem;
    color: #333;
    line-height: 1
}

.ideatitle .en {
    font-size: .28rem;
    line-height: .38rem;
    color: #d60a17;
    margin-top: .04rem;
}

.ideaform .item {
    display: flex;
    align-items: center;
    font-size: .16rem;
    color: #333;
    border-bottom: 1px solid #EBEBEB;
    margin-top: .25rem;
}

.ideaform .item em {
    color: red
}

.ctacon {
    position: relative;
}

#map1 {
    height: 9.35rem;
}

.ctacon .container {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.ctabox {
    width: 6rem;
    height: 5rem;
    background: #fff;
    border-radius: .06rem;
    border-top: .03rem solid #D60A17;
    padding: .56rem .62rem .4rem
}

.ctatitle .cn {
    font-size: .2rem;
    line-height: 1;
    color: #333
}

.ctatitle .en {
    font-size: .28rem;
    line-height: .38rem;
    color: #D60A17;
    margin-top: .04rem
}

.ctainfo p {
    font-size: .14rem;
    color: #333;
    line-height: 1.71;
    margin-top: .08rem
}

.ctacode {
    display: flex;
    align-items: center;
    margin-top: .3rem
}

.ctacode img {
    width: 1.28rem;
    margin-right: .22rem
}

.ctacode .h2 {
    font-size: .16rem;
    color: #333
}

.ctacode .h3 {
    font-size: 12px;
    color: #999;
    margin-top: .1rem
}

.ctatitle {
    margin-bottom: .6rem;
}

.anchorBL {
    display: none;
}

.coop1 {
    padding: 1.2rem 0 1.5rem
}

.coop1 .container {
    display: flex;
    align-items: center;
}

.coop1-1title .cn {
    color: #fff;
    font-size: 1.25vw;
    line-height: 1
}

.coop1-1title .en {
    font-size: 1.45vw;
    line-height: 1.95vw;
    color: #fff;
    margin-top: .19rem;
}

.coop1-1title {
    position: absolute;
    top: 39%;
    left: 33%;
    text-align: center;
}

.coop1-2 .btn1 {
    margin-top: 2.1vw
}

.coop1-2 .input1 {
    margin-top: 1.25vw
}

.coop1-2 .input1:first-child {
    margin-top: 0
}

.coop1-2 .ideaform {
    width: auto;
}

.coop1-2 {
    width: 3.6rem;
    margin-left: .35rem;
}

.coop1-1 {
    max-width: 65%;
    position: relative;
}

.coop2 {
    padding: 0 0 10vw 8.333%
}

.coop2box {
    background: #D60A17;
    display: flex;
    padding: 0 8vw;
    height: 5.45rem;
    align-items: center;
}

.coop2-1title .cn {
    font-size: .24rem;
    color: #fff
}

.coop2-1title .line {
    width: .14rem;
    height: .03rem;
    background: rgba(255, 255, 255, .35);
    margin: .25rem 0 .21rem
}

.coop2-1title .en {
    font-size: .26rem;
    line-height: .36rem;
    color: #fff
}

.coop2btn {
    display: flex;
    align-items: center;
    margin-top: 1.34rem
}

.coop2btn img {
    width: .36rem;
    margin-right: .22rem;
    transition: all .3s
}

.coop2-2 {
    width: 75%
}

.coop2-2 .item {
    height: 1.5rem;
    position: relative;
}

.coop2-2 .item img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transition: all .3s
}

.coop2-2 .item img:nth-child(2) {
    opacity: 0
}

.coop2-2 .item:before {
    content: "";
    position: absolute;
    background: #fff;
    top: 0;
    bottom: 0;
    left: -.2rem;
    right: -.2rem;
    transform: scale(.8);
    opacity: 0;
    transition: all .3s
}

.coop2-2 .item:after {
    content: "";
    position: absolute;
    top: .06rem;
    bottom: .06rem;
    left: -.14rem;
    right: -.14rem;
    border: 1px solid #d60a17;
    transform: scale(.8);
    opacity: 0;
    transition: all .3s
}

.coop2-2 .swiper-container {
    margin: 0 -.2rem;
    padding: 0 .2rem
}

@media (max-width: 1200px) {
    .ctabox {
        padding: .5rem;
    }
    .ctatitle {
        margin-bottom: .4rem;
    }
}

@media (max-width: 1000px) {
    .ctabox {
        padding: .5rem;
    }
    .ctatitle {
        margin-bottom: .3rem;
    }
}

@media (min-width: 1000px) {
    .ideaform .btn1:hover {
        background: #D60A17;
    }
    .coop2btn .prev:hover {
        transform: translateX(-5px);
    }
    .coop2btn .next:hover {
        transform: translateX(5px);
    }
    .coop2-2 .item:hover:before {
        transform: scale(1);
        opacity: 1
    }
    .coop2-2 .item:hover:after {
        transform: scale(1);
        opacity: 1
    }
    .coop2-2 .item:hover img:nth-child(1) {
        opacity: 0
    }
    .coop2-2 .item:hover img:nth-child(2) {
        opacity: 1
    }
    .rctbox .item .after .btn2:hover {
        background: #D60A17;
        color: #fff
    }
}

@media (max-width: 767px) {
    .ideaform .item {
        font-size: 13px
    }
    .coop1 {
        padding: .6rem 0
    }
    .coop1 .container {
        display: block;
    }
    .coop1-1 {
        max-width: none;
        margin: 0 -15px;
        margin-bottom: 15px
    }
    .coop1-2 {
        margin: 0;
        width: auto;
    }
    .coop1-2 .btn1 {
        margin-top: 15px
    }
    .coop2 {
        padding: 0 0 .6rem 15px
    }
    .coop2box {
        padding: 0 15px
    }
    .coop2-1title .cn {
        font-size: 16px;
    }
    .coop2-1title .line {
        width: 10px;
        height: 2px;
    }
    .coop2-1title .en {
        font-size: 16px;
    }
    .coop2btn img {
        width: 26px;
        margin-right: .2rem
    }
    .ideacon {
        padding: .9rem 0 .65rem
    }
    .ideabox {
        padding: .65rem 0
    }
    .ideatitle .cn {
        font-size: 14px;
    }
    .ideatitle .en {
        font-size: 18px;
    }
    .ideaform .input1 {
        font-size: 13px;
        height: 42px;
    }
    .ideaform textarea {
        height: 100px;
        font-size: 13px
    }
    .ideaform .btn1 {
        width: 80px;
        line-height: 32px;
        font-size: 13px;
    }
    .ideaform {
        max-width: 85%
    }
    .ideatitlebox {
        max-width: 85%
    }
    .ctacon .container {
        position: relative;
    }
    #map1 {
        height: 80vw
    }
    .ctabox {
        position: relative;
        margin-top: -20vw
    }
    .ctabox {
        width: auto;
        border-top: 2px solid #D60A17;
        height: auto;
    }
    .ctacon {
        padding-bottom: .4rem;
        background: #F8FAFB
    }
    .ctatitle .cn {
        font-size: 14px;
    }
    .ctatitle .en {
        font-size: 18px;
    }
    .ctainfo p {
        font-size: 12px;
    }
    .ctacode .h2 {
        font-size: 13px
    }
    .recruit {
        padding: .9rem 0 .65rem
    }
    .rctbox .item .btn1 img {
        width: 9px;
    }
    .rctbox .item .btn1 {
        font-size: 12px
    }
    .rctbox .item .h2 {
        font-size: 12px;
        width: 85%;
        line-height: 1.5
    }
    .rctbox .item .h1 {
        font-size: 13px;
        margin-bottom: 10px
    }
    .rctbox .item .before {
        height: auto;
        padding: .3rem
    }
    .rctbox .item .btn1 span {
        width: 48px;
        text-align: right;
    }
    .rctbox .item .after p {
        font-size: 12px;
    }
    .rctbox .item .after .btn2 {
        font-size: 13px;
        width: 96px;
        line-height: 30px
    }
}

.banner2title p {
    font-size: .16rem;
    max-width: 7rem;
    line-height: 2;
    color: #fff;
    margin-top: 1.75vw
}

.course1 .container {
    display: flex;
    align-items: center;
    padding: 0 4.2vw 0 3.3vw
}

.course1 {
    padding: 1.04rem 0 .42rem;
}

.course1 p {
    font-size: .14rem;
    line-height: .32rem;
    color: #444;
    flex: 1
}

.course1 p:first-letter {
    font-size: .48rem
}

.course1 .title {
    position: relative;
    width: .65rem;
    height: 2.04rem;
    border: 1px solid rgba(0, 0, 0, 0.92);
    font-size: .24rem;
    color: #444;
    margin-right: 5.2vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.course1 .title>div {
    width: .22rem;
}

.course1 .title:before {
    content: "";
    top: .06rem;
    left: 0;
    right: 0;
    background: #252525;
    position: absolute;
    height: 1px
}

.course1 .title:after {
    content: "";
    bottom: .06rem;
    left: 0;
    right: 0;
    background: #252525;
    position: absolute;
    height: 1px
}

.course1 .imgbox {
    position: relative;
    margin-right: 7vw;
    max-width: 32%;
}

.course1 .imgbox img:nth-child(2) {
    position: absolute;
    bottom: 0;
    right: -85%;
    max-width: 152%;
}

.course2 .imgbox {
    margin: 0 -2vw
}

.course2 .container {
    position: relative;
}

.crs2box {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-68%);
}

.course2 .title {
    font-size: .24rem;
    color: #D60A17;
    text-align: center;
    margin-bottom: 3.3vw
}

.crs2box2 {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.crs2box2 .item .h1 {
    font-size: .18rem;
    color: #333;
    margin-bottom: .15rem
}

.crs2box2 .item p {
    font-size: .14rem;
    color: #333;
    opacity: .5;
    line-height: 2
}

.crs2box2 .item {
    padding: 0 5vw;
    position: relative;
}

.crs2box2 .item:not(:first-child):before {
    content: "";
    width: 1px;
    height: 1.36rem;
    background: rgba(0, 0, 0, .1);
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -.68rem
}

.course3 {
    padding: .65rem 0 1rem
}

.course3 .title {
    font-size: .24rem;
    color: #333;
    text-align: center;
    margin-bottom: .6rem
}

.course3 .row {
    margin: 0 -2.3vw;
}

.course3 .col-sm-4 {
    padding: 0 2.3vw
}

.course3 .imgbox {
    overflow: hidden;
    border-radius: .06rem
}

.course3 .imgbox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .3s;
}

.crs3box .item .h1 {
    padding: 2.2vw 0 1.7vw;
    display: flex;
    align-items: center;
    border-bottom: .02rem solid #D60A17;
    margin-bottom: 1.4vw
}

.crs3box .item .h1-1 {
    font-size: .18rem;
    color: #444
}

.crs3box .item .h1-2 {
    font-size: .14rem;
    color: #444;
    font-family: "DIN"
}

.crs3box .item p {
    line-height: 1.857;
    color: #888;
    font-size: .14rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.crs3box .item {
    display: block;
}

@media (min-width: 1000px) {
    .crs3box .item:hover .h1-1 {
        color: #D60A17
    }
    .crs3box .item:hover .imgbox img {
        transform: scale(1.05);
    }
}

@media (max-width: 1200px) {
    .crs2box {
        transform: translateY(-60%);
    }
    .course2 .title {
        margin-bottom: 3vw
    }
}

@media (max-width: 1000px) {
    .crs2box {
        transform: translateY(-56%);
    }
    .crs2box2 .item {
        padding: 0 3vw
    }
}

@media (max-width: 767px) {
    .banner2title p {
        font-size: 12px;
        margin-top: 2.5vw
    }
    .course1 .container {
        display: block;
        padding: 0 5vw
    }
    .course1 {
        padding: .9rem 0 .4rem
    }
    .course1 .title {
        width: 2.04rem;
        height: .65rem;
        font-size: 14px;
        margin: 0 auto
    }
    .course1 .imgbox {
        max-width: 70%;
        margin: 0 auto .1rem;
    }
    .course1 .title>div {
        width: auto
    }
    .course1 .title:before {
        top: 0;
        left: .06rem;
        height: auto;
        width: 1px;
        right: auto;
        bottom: 0
    }
    .course1 .title:after {
        top: 0;
        right: .06rem;
        height: auto;
        width: 1px;
        left: auto;
        bottom: 0
    }
    .course1 p {
        font-size: 12px;
        line-height: 1.857;
    }
    .course1 p:first-letter {
        font-size: 24px
    }
    .course3 .title {
        margin-bottom: .4rem;
        font-size: 16px
    }
    .course3 {
        padding: .5rem 0 .3rem
    }
    .course3 .col-sm-4 {
        padding: 0 7.5px;
        margin-bottom: 15px
    }
    .course3 .row {
        margin: 0 -7.5px
    }
    .crs3box .item p {
        font-size: 12px
    }
    .crs3box .item .h1 {
        padding: 12px 0;
        margin-bottom: 10px
    }
    .crs3box .item .h1-2 {
        display: none;
    }
    .crs3box .item .h1-1 {
        font-size: 13px
    }
    .course2 .imgbox {
        display: none;
    }
    .crs2box {
        position: static;
        transform: none;
    }
    .course2 {
        padding: .4rem 0 0.2rem;
        background: #f9f9f9
    }
    .course2 .title {
        font-size: 16px;
        margin-bottom: .4rem
    }
    .crs2box2 {
        display: block;
    }
    .crs2box2 .item {
        float: left;
        width: 50%;
        padding: 0 15px;
        margin-bottom: 25px;
    }
    .crs2box2 .item:not(:first-child):before {
        display: none;
    }
}

.abouttitle .cn {
    font-size: .24rem;
    color: #333
}

.abouttitle .line {
    width: .14rem;
    height: .03rem;
    background: #DD4448;
    margin: .2rem 0 .22rem;
}

.abouttitle .en {
    font-size: .26rem;
    color: #333
}

.about1 {
    padding: 1.12rem 0 3.44rem;
    background: url(../images/about1bg.png);
    background-size: cover
}

.about1-1 {
    display: flex;
    align-items: flex-start;
    position: relative;
    z-index: 5
}

.about1-1 .txtbox {
    width: 44%;
    margin-top: .6vw
}

.about1-1 .abouttitle {
    margin-top: 4.5vw
}


/*overflow: hidden; text-overflow: ellipsis;*/

.about1-1 .txtbox .h1 {
    white-space: nowrap;
    font-size: .24rem;
    color: #333;
    margin-bottom: 2.5vw;
    line-height: 1.33
}

.about1-1 .txtbox .h1 span {
    font-size: .42rem;
    color: #D60A17
}

.about1-1 .txtbox p {
    font-size: .14rem;
    color: #444;
    line-height: 2.5;
    /*overflow:hidden; text-overflow:ellipsis;display:-webkit-box; -webkit-box-orient:vertical;-webkit-line-clamp:5;*/
}

.about1-1 .txtbox .h2 {
    font-size: .18rem;
    color: #444;
    margin-top: .5vw;
    line-height: 1.5
}

.about1-1 .imgbox {
    max-width: 23%;
    margin: 0 9vw
}

.about1-2 {
    display: flex;
    align-items: flex-start;
    border-top: 1px dotted #E8E8E8;
    position: absolute;
    left: 0;
    right: 0;
    top: 24vw
}

.about1-2 .item .h1 {
    font-size: .24rem;
    color: #d60a17;
    margin-bottom: 1.25vw
}

.about1-2 .item p {
    font-size: .18rem;
    color: #444
}

.about1-2 .item1 {
    flex: 1
}

.about1-2 .item2 {
    width: 27%;
}

.about1-2 .item3 {
    width: 17%;
}

.about1-2 .item {
    padding-right: .2rem;
    position: relative;
    padding-top: 4vw
}

.about1-2 .item .point {
    width: .15rem;
    height: .15rem;
    background: #D60A17;
    border-radius: 50%;
    position: absolute;
    top: -.08rem;
    left: .05rem
}

.about1-2 .item .point:after {
    content: "";
    width: .32rem;
    height: .32rem;
    background: rgba(221, 68, 72, 0.15);
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -.16rem;
    margin-top: -.16rem;
    border-radius: 50%;
    animation: point1 2s infinite
}

.about1 .container {
    position: relative;
}

.about2 {
    margin-top: -2.1rem
}

.about2box {
    position: relative;
    background: #000
}

.about2title {
    text-align: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 50%;
    background: #D60A17;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -.66rem;
    right: 4vw
}

.about2title .cn {
    color: #fff
}

.about2title .line {
    background: #fff;
    opacity: .5;
    margin: .12rem auto
}

.about2title .en {
    color: #fff
}

.about2-1 {
    position: absolute!important;
    top: 0;
    left: 0;
    right: 0;
    height: 87.5%;
}

.about2-1 .item .h1 {
    font-size: 4vw;
    color: #fff;
    font-family: "DIN";
    font-weight: 600
}

.about2-1 .item .h2 {
    font-size: .16rem;
    color: #fff;
    line-height: 1.857;
    margin-top: 2.5vw
}

.about2-1 .item {
    width: 4.8rem;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    transform: translateY(-30%);
    margin-left: -2.4rem;
    transition: all .5s
}

.about2-2 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 12.5%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about2-2 .item {
    font-size: .18rem;
    color: #fff;
    height: 100%;
    display: flex;
    align-items: center;
    cursor: pointer;
    position: relative;
    transition: all .3s;
    font-family: "DIN";
    width: .4rem;
    margin: 0 auto
}

.about2-2 .item:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #D60A17;
    height: .04rem;
    width: 0;
    transition: all .3s
}

.about2-2 img.prev {
    margin-right: 0.5rem;
}

.about2-2 img.next {
    margin-left: 0.5rem;
}


/*.about2-2 .item.on{color: #D60A17}.about2-2 .item.on:after{width: 100%}*/

.about2-2 .swiper-container {
    width: 70%;
    margin: 0;
    height: 100%
}

.about2-2 img {
    width: .22rem
}

.about2-2 .swiper-slide-thumb-active .item {
    color: #D60A17
}

.about2-2 .swiper-slide-thumb-active .item:after {
    width: 100%
}

.about2-1 .swiper-slide-active .item {
    opacity: 1;
    transform: translateY(-50%);
}

.about3 {
    padding: .9rem 0 .1rem
}

.about3item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6vw
}

.about3item .imgbox {
    max-width: 46%
}

.about3item .imgbox img {
    border-radius: .06rem
}

.about3item .txtbox {
    width: 45%;
    position: relative;
}

.about3item .titlebox {
    display: flex;
    align-items: center;
    font-size: .24rem;
    color: #333;
    margin-bottom: 1.6vw
}

.about3-1 .titlebox img {
    width: .43rem;
    margin-right: .26rem
}

.about3-2 .titlebox img {
    width: .44rem;
    margin-right: .27rem
}

.about3-3 .titlebox img {
    width: .43rem;
    margin-right: .19rem
}

.about3item .txtbox p {
    font-size: .14rem;
    line-height: 2.5;
    color: #444
}

.about3-1 .txtimg {
    position: absolute;
    right: -8.5%;
    bottom: -4.5vw;
    max-width: 38%;
}

.about3-2 .txtimg {
    position: absolute;
    left: 0;
    bottom: -6vw;
    max-width: 38%;
}

.about3-3 .txtimg {
    position: absolute;
    max-width: 25%;
    right: 8%;
    bottom: -2.5vw;
    transform: rotate(35deg);
}

.about3 .abouttitle {
    margin-bottom: .45rem
}

@media (min-width: 1000px) {
    .about2-2 .item:hover {
        color: #D60A17
    }
    .about2-2 .item:hover:after {
        width: 100%
    }
}

@media (max-width: 1400px) {
    .about1-2 {
        top: 30vw;
    }
    .about2 {
        margin-top: -1.2rem
    }
}

@media (max-width: 1100px) {
    .about1-2 {
        position: static;
        margin-top: .6rem
    }
    .about1-2 .item {
        width: 30%;
    }
    .about1-2 .item2 {
        width: 40%;
    }
    .about1 {
        padding: 1.12rem 0 2.7rem
    }
}

@media (max-width: 767px) {
    .about1 {
        padding: .5rem 0 2rem
    }
    .about1-1 {
        display: block;
    }
    .about1-1 .abouttitle {
        margin-top: 0
    }
    .abouttitle {
        text-align: center;
    }
    .abouttitle .line {
        margin: 10px auto 8px;
        width: 10px;
        height: 2px;
    }
    .abouttitle .cn {
        font-size: 16px;
    }
    .abouttitle .en {
        font-size: 18px;
    }
    .about1-1 .imgbox {
        display: none;
    }
    .about1-1 .txtbox {
        margin-top: .3rem;
        width: 100%
    }
    .about1-1 .txtbox .h1 {
        font-size: 14px;
        margin-bottom: 12px
    }
    .about1-1 .txtbox .h1 span {
        font-size: 20px
    }
    .about1-1 .txtbox p {
        font-size: 12px
    }
    .about1-1 .txtbox .h2 {
        font-size: 13px;
        margin-top: 6px
    }
    .about1-2 .item {
        padding-top: 25px
    }
    .about1-2 .item .h1 {
        font-size: 14px;
        margin-bottom: 5px
    }
    .about1-2 .item p {
        font-size: 12px
    }
    .about2box>img {
        height: 6.36rem;
        object-fit: cover;
    }
    .about2title .abouttitle .cn {
        font-size: 14px
    }
    .about2title .abouttitle .en {
        font-size: 14px
    }
    .about2title {
        top: -1rem
    }
    .about2-2 .item {
        font-size: 13px;
        width: 28px
    }
    .about2 {
        margin-top: -.6rem
    }
    .about2-1 .item {
        left: 0;
        margin-left: 0;
        padding: 0 10vw;
        right: 0;
        width: auto
    }
    .about2-1 .item .h2 {
        font-size: 12px;
        margin-top: 12px
    }
    .about2-1 .item .h1 {
        font-size: 7vw
    }
    .about3 {
        padding: .5rem 0 .2rem
    }
    .about3item {
        display: block;
        margin-bottom: .3rem
    }
    .about3item .imgbox {
        max-width: 100%;
        margin-bottom: 15px
    }
    .about3item .txtbox {
        width: 100%
    }
    .about3 .abouttitle {
        margin-bottom: .3rem
    }
    .about3item .txtbox p {
        font-size: 12px
    }
    .about3item .titlebox {
        margin-bottom: 10px;
        font-size: 14px
    }
    .about3item .titlebox img {
        width: 24px;
        margin-right: 10px
    }
}

.mask {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    background: rgba(0, 0, 0, .5);
    display: none;
}

.rctform {
    width: 6.42rem;
    height: 6.77rem;
    background: #fff;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -3.21rem;
    margin-top: -3.38rem;
    z-index: 15;
    padding: .72rem .8rem 0;
    display: none;
}

.rctform .title {
    font-size: .24rem;
    color: #444;
    text-align: center;
    line-height: 1;
    margin-bottom: .46rem
}

.rctform .title span {
    color: #D60A17;
    margin: 0 .05rem
}

.rctform .input1 {
    display: flex;
    align-items: center;
    margin-bottom: .2rem
}

.rctform .input1 .txt1 {
    font-size: .16rem;
    color: #444;
    width: .58rem
}

.rctform .input1 input {
    height: .5rem;
    font-size: .16rem;
    border: 1px solid #DCDCDC;
    border-radius: .03rem;
    padding: 0 .16rem;
    width: 100%;
    color: #444
}

.rctform .input1 select {
    height: .5rem;
    font-size: .16rem;
    border: 1px solid #DCDCDC;
    border-radius: .03rem;
    padding: 0 .16rem;
    width: 100%;
    color: #444
}

.rctform .input1 .file1 {
    text-align: center;
    position: relative;
    width: 1.16rem;
    height: .5rem;
    border: 1px solid #DCDCDC;
    border-radius: .03rem;
    font-size: .16rem;
    color: #333;
    line-height: .5rem;
}

.rctform .input1 .file1 input {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0
}

.rctform .tips3 {
    padding-left: .73rem;
    font-size: .14rem;
    color: #bababa;
    margin-top: -.03rem;
    height: .71rem
}

.rctform .btn1 {
    font-size: .18rem;
    color: #fff;
    height: .6rem;
    border-radius: 40px;
    background: #D60A17;
    width: 100%;
}

.rctform .input1 input::placeholder {
    color: #bababa
}

.rctform .input1 select {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url(../images/down2.png) no-repeat 97% center;
    background-size: 4%
}

.rctform .filename {
    font-size: .14rem;
    color: #bababa;
    margin-left: .15rem
}

.rctform .close1 {
    font-size: .2rem;
    color: #bababa;
    top: .18rem;
    right: .18rem;
    display: block;
    position: absolute;
    line-height: 1;
    cursor: pointer;
}

.catertitle .cn {
    font-size: .24rem;
    line-height: 1;
    color: #333;
    margin-bottom: .06rem;
}

.catertitle .en {
    font-size: .26rem;
    line-height: .36rem;
    color: #D60A17;
}

.cater1 {
    padding: .6rem 0;
    display: flex;
    align-items: center;
}

.cater1 .imgbox {
    max-width: 47%;
}

.cater1 .txtbox {
    padding: 0 13.5vw 0 8vw
}

.cater1 .catertitle .cn {
    font-size: .2rem;
}

.cater1 .h1 {
    font-size: .16rem;
    color: #D60A17;
    margin: 3vw 0 .2rem
}

.cater1 p {
    font-size: .14rem;
    color: #444;
    line-height: 2.35
}

.cater2 {
    position: relative;
}

.cater2:before {
    content: "";
    height: 5.85rem;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: #d60a17
}

.cater2 .catertitle .cn {
    color: #fff
}

.cater2 .catertitle .en {
    color: #fff
}

.cater2 .catertitle {
    margin-right: 3vw
}

.cater2 .title2 {
    font-size: .19rem;
    line-height: 1.857;
    color: #fff;
    opacity: .6
}

.cater2-1 {
    display: flex;
    align-items: center;
    padding: .66rem 0 .58rem;
    position: relative;
    z-index: 3
}

.cater2-2 {
    display: flex;
    align-items: center;
    box-shadow: 0px .12rem .16rem 0px rgba(0, 0, 0, 0.04);
    background: #fff;
    border-radius: .06rem;
    overflow: hidden;
    position: relative;
    z-index: 3;
    height: 5.4rem
}

.cater2-2 .imgbox {
    width: 50%;
    height: 100%;
}

.cater2-2 .imgbox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cater2-2 .itembox {
    width: 50%;
    height: 100%;
}

.cater2-2 .item {
    padding: 0 3.5vw;
    display: flex;
    align-items: center;
    height: 25%;
    transition: all .3s
}

.cater2-2 .item img {
    width: .6rem;
    margin-right: 2.3vw;
}

.cater2-2 .item .h1 {
    font-size: .16rem;
    color: #333;
    line-height: 1;
    margin-bottom: .1rem;
}

.cater2-2 .item p {
    font-size: 12px;
    color: #333;
    line-height: 1.7;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.cater2-2 .item:not(:last-child) {
    border-bottom: 1px solid #EDEDED
}

.cater2-2 .item.on {
    background: rgba(214, 10, 23, 0.03);
}

.cater2-2 .swiper-container {
    height: 100%;
}

.cater3 {
    padding: 1.13rem 0 1.77rem;
}

.cater3 .cater3box {
    display: flex;
    align-items: center;
}

.cater3 .item {
    width: 41.875%;
}

.cater3 .item .box1 {
    position: relative;
}

.cater3 .catertitle {
    margin-bottom: .6rem;
    text-align: center;
}

.cater3 .item2 {
    font-size: 4.5vw;
    color: #D60A17;
    text-align: center;
    font-family: "DIN";
    margin-top: 5vw
}

.cater3 .item1 .box1 {
    background: url(../images/fealeft.jpg);
    background-size: cover;
    background-position: center;
    border-radius: .06rem;
}

.cater3 .item3 .box1 {
    background: url(../images/fearight.jpg);
    background-size: cover;
    background-position: center;
    border-radius: .06rem;
}

.cater3 .item .box1:after {
    content: "";
    position: absolute;
    top: 2.5vw;
    right: 2.5vw;
    bottom: 2.5vw;
    left: 2.5vw;
    opacity: .9;
    border-radius: .06rem
}

.cater3 .item1 .box1:after {
    background: #242222
}

.cater3 .item3 .box1:after {
    background: #D60A17;
    opacity: .85
}

.cater3 .box1 p {
    font-size: .16rem;
    color: #fff;
    line-height: .54rem;
    z-index: 5;
    text-align: center;
}

.cater3 .box1 {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cater3 .item3 .box1 p span {
    font-size: .24rem
}

@media (max-width: 1200px) {
    .cater3 .item {
        width: 43%;
    }
    .cater3 .item3 .box1 p span {
        font-size: 14px
    }
}

@media (max-width: 1000px) {
    .cater3 .item {
        width: 45%;
    }
    .cater3 .item3 .box1 p span {
        font-size: 12px
    }
}

@media (max-width: 767px) {
    .rctform {
        width: auto;
        left: 15px;
        right: 15px;
        margin-left: 0;
        padding: 30px;
    }
    .rctform .title {
        font-size: 14px;
        margin-bottom: 20px
    }
    .rctform .input1 .txt1 {
        font-size: 13px;
        width: 42px;
    }
    .rctform .input1 input {
        font-size: 13px;
        height: 36px
    }
    .rctform .input1 select {
        font-size: 13px;
        height: 36px
    }
    .rctform .input1 .file1 {
        width: 80px;
        line-height: 36px;
        height: 36px;
        font-size: 13px
    }
    .rctform .btn1 {
        font-size: 13px;
    }
    .rctform .filename {
        font-size: 12px;
    }
    .rctform .tips3 {
        padding-left: 0
    }
    .cater1 {
        padding: .6rem 15px;
        display: block;
    }
    .cater1 .imgbox {
        max-width: 100%
    }
    .cater1 .txtbox {
        padding: .3rem 0 0
    }
    .cater1 p {
        font-size: 12px;
        line-height: 2
    }
    .cater1 .h1 {
        font-size: 13px;
        margin: .3rem 0 .2rem
    }
    .catertitle .cn {
        font-size: 14px;
        margin-bottom: .1rem
    }
    .catertitle .en {
        font-size: 18px
    }
    .cater1 .catertitle .cn {
        font-size: 14px;
        margin-bottom: .1rem
    }
    .cater2-1 {
        padding: .6rem 0 .4rem
    }
    .cater2-1 {
        display: block;
    }
    .cater2 .title2 {
        font-size: 12px;
    }
    .cater2 .catertitle {
        margin-bottom: .3rem
    }
    .cater3 .cater3box {
        display: block;
    }
    .cater3 .item {
        width: 100%
    }
    .cater3 .catertitle {
        margin-bottom: .3rem
    }
    .cater3 .item2 {
        font-size: 8vw;
        margin: .3rem 0
    }
    .cater3 .item .box1:after {
        left: 5vw;
        top: 5vw;
        right: 5vw;
        bottom: 5vw;
    }
    .cater3 .box1 p {
        font-size: 12px
    }
    .cater3 {
        padding: .6rem 0
    }
    .cater2-2 {
        height: auto;
        display: block;
    }
    .cater2-2 .item {
        padding: 15px 20px
    }
    .cater2-2 .item .h1 {
        font-size: 13px
    }
    .cater2-2 .item p {
        font-size: 12px
    }
    .cater2-2 .imgbox {
        height: 60vw;
        width: 100%
    }
    .cater2-2 .itembox {
        width: 100%
    }
    .cater2-2 .item img {
        margin-right: 15px
    }
}

.input2 {
    border-bottom: 1px solid #EBEBEB;
    margin-top: 0.65vw !important;
    margin-bottom: 0.65vw;
}

.item-form {
    display: flex;
    align-items: center;
}

.item-form em {
    color: #D60A17;
}

@media (max-width: 1600px) {
    .about1-2 {
        top: 27vw
    }
}