


.disable-hover {
    pointer-events: none
}

.font-fadeIn font {
    display: inline-block
}

::-webkit-scrollbar-thumb {
    border: 0 solid transparent;
    border-radius: 4px
}

::-webkit-scrollbar-corner {
    background-color: transparent
}

::-webkit-scrollbar:horizontal {
    height: 9px
}

::-webkit-selection {
    background: transparent;
    color: transparent
}

::-moz-selection {
    background: transparent;
    color: transparent
}


.fl {
    float: left
}

.fr {
    float: right
}

.fw-100 {
    font-weight: 100
}

.fw-400 {
    font-weight: 400
}

.fw-600, .recruit .r1 .inner .btm .list .msg h3, .recruit .r1 .inner .btm .list .msg p {
    font-weight: 600
}

.cl:after {
    content: " ";
    display: block;
    height: 0;
    line-height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden
}

.hide {
    display: none
}

.show {
    display: block
}

.home .r4 .inner .part .list .msg h3, .text_overflow {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

[data-ahref] {
    cursor: pointer
}

.f-left {
    text-align: left
}

.f-center {
    text-align: center
}

.f-right {
    text-align: right
}

.up-word {
    text-transform: uppercase
}

.v-show {
    visibility: visible
}

.v-hide {
    visibility: hidden
}

.pr {
    position: relative
}

.pa {
    position: absolute
}

.back-cover {
    background-size: cover
}

.back-contain {
    background-size: contain
}

.wid-10 {
    width: 10%
}

.wid-15 {
    width: 15%
}

.wid-20 {
    width: 20%
}

.wid-25 {
    width: 25%
}

.wid-30 {
    width: 30%
}

.wid-35 {
    width: 35%
}

.wid-40 {
    width: 40%
}

.wid-45 {
    width: 45%
}

.wid-50 {
    width: 50%
}

.wid-55 {
    width: 55%
}

.wid-60 {
    width: 60%
}

.wid-65 {
    width: 65%
}

.wid-70 {
    width: 70%
}

.wid-75 {
    width: 75%
}

.wid-80 {
    width: 80%
}

.wid-85 {
    width: 85%
}

.wid-90 {
    width: 90%
}

.wid-95 {
    width: 95%
}

.wid-100 {
    width: 100%
}

.op-0 {
    opacity: 0
}

.op-1 {
    opacity: .1
}

.op-2 {
    opacity: .2
}

.op-3 {
    opacity: .3
}

.op-4 {
    opacity: .4
}

.op-5 {
    opacity: .5
}

.op-6 {
    opacity: .6
}

.op-7 {
    opacity: .7
}

.op-8 {
    opacity: .8
}

.op-9 {
    opacity: .9
}

.op-10 {
    opacity: 1
}

.layer-btn .mask > svg, .layer-col:before, .layout-middle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto
}

.home #banner .inner .group h1 small:after, .home .r5 .inner .part .items .hrefGroup > li > a > i, .layout-v-middle, body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li > a > i {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto
}

.home .r4 .inner .part, .home .r5 .inner .part .toTop, .layout-h-middle, body #bloc .wrapper .rowFoot .inner .part .toTop, body .nav .items > ul > li > svg {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto
}

.pa-v {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.home .bgRow #fn_1 > canvas, .home .r5 .inner .part .items .inter > a .wm, .pa-h, .proPage .bgRow #fn_1 > canvas, body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm {
    position: absolute;
    left: 50%;
    transform: translateX(-50%)
}

.home .tsBox canvas, .pa-mid, .proPage .bgRow .tsBox canvas {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

.fx, .home #banner .inner {
    display: grid
}

.fx_row_lt {
    display: grid;
    align-items: flex-start;
    justify-content: start
}

.fx_row_lc, .home #banner .inner .group h1 small {
    display: grid;
    align-items: center;
    justify-content: start
}

.fx_row_ct {
    align-items: flex-start
}

.fx_row_cc, .fx_row_ct {
    display: grid;
    justify-content: center
}

.fx_row_cc {
    align-items: center
}

.fx_row_bt {
    display: grid;
    align-items: flex-start;
    justify-content: space-between
}

.fx_col_lt {
    align-items: start;
    justify-content: start
}

.fx_col_cc, .fx_col_lt {
    display: grid;
    flex-direction: column
}

.fx_col_cc {
    align-items: center;
    justify-content: center
}

.fx_col_bt {
    display: grid;
    flex-direction: column;
    align-items: start;
    justify-content: space-between
}

.max-wid {
    width: 70%;
    max-width: 1200px;
    margin: auto
}

.maxSize {
    width: 78%;
    max-width: 1500px;
    margin: auto
}

.company .r2 .inner .bg, .company .r3 .inner .bg, .company .r4 .content .sticky .photo, .company .r4 .content .sticky .photo .pic, .company .r4 .content .sticky h2, .contact .r2 .bg, .contact .r2 .bg #map, .contact .r2 .bg:after, .full, .home .bgRow .inner .group .process .bar, .home .bgRow .model, .home .bgRow .model .child, .home .bgRow .model .child .page, .home .bgRow .model .child .page .pic, .home .bgRow .model .child .page .pic video, .home .bgRow .model .child .page .pop, .home .bgRow .model .child .page > .box, .home .bgRow .model .child .page > .box .cover, .home .bgRow .model .first, .home .bgRow .model .first .box, .home .bgRow .model .first .pic, .home .bgRow .model .media, .home .bgRow .model .media .tsBox, .home .bgRow .model .media > video, .home .bgRow .model .total, .home .bgRow .model .total .msg, .home .r5 .inner .part .items .box .pic, .news .r1 .inner .group .topItem .processBox .process .bar, .product .r1 .inner .bg, .product .r2 .inner .bg, .product .r3 .inner .photo, .proPage .bgRow .inner .group .process .bar, .proPage .bgRow .model, .proPage .bgRow .model .child, .proPage .bgRow .model .child .page, .proPage .bgRow .model .child .page .pic, .proPage .bgRow .model .child .page .pic video, .proPage .bgRow .model .child .page .pop, .proPage .bgRow .model .child .page > .box, .proPage .bgRow .model .child .page > .box .cover, .proPage .bgRow .model .first, .proPage .bgRow .model .first .box, .proPage .bgRow .model .first .pic, .proPage .bgRow .model .media, .proPage .bgRow .model .media .tsBox, .proPage .bgRow .model .media > video, .proPage .bgRow .model .total, .proPage .bgRow .model .total .msg, .proPage .r1 .inner .bg, .proPage .r1 .inner .bg .pic, .proPage .r1 .inner .chunk, .proPage .r2 .bg, .proPage .r2 .inner .page, .proPage .r2 .inner .page .pic, .proPage .r2 .inner .page .pic video, .proPage .r2 .inner .page .pop, .proPage .r2 .inner .page > .box, .proPage .r2 .inner .page > .box .cover, .strength .r2 .inner:nth-of-type(4) .content .sticky .photo, .strength .r2 .inner:nth-of-type(4) .content .sticky .photo .pic, .strength .r2 .inner:nth-of-type(4) .content .sticky h2, .strength .r3 .inner .content .sticky .photo, .strength .r3 .inner .content .sticky .photo .pic, .strength .r3 .inner .content .sticky h2, .support .r2 .bg, .support .r3 .bg, .support .r3 .inner .box .photo .pic, body #bloc .wrapper .rowFoot .inner .part .items .box .pic, body .nav nav.app-nav .inner_top .topic .app-logo > a > img.black {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

@font-face {
    font-family: en_b;
    src: url(assets/FuturaMaxiStd-Bold.6ae8343d.ttf) format("truetype")
}

.afterInner .row .afterFirst .group .col h1 span, .en_b {
    font-family: en_b
}

@font-face {
    font-family: en_r;
    src: url(assets/CGFUTURAMAXILT.663a73d4.ttf) format("truetype")
}

.en_r {
    font-family: en_r;
    font-weight: 400
}

@font-face {
    font-family: en_l;
    src: url(assets/EUCLIDCIRCULARA-LIGHT.2b50be80.ttf) format("truetype")
}

.en_l, .en_lang .en_l {
    font-family: en_l;
    font-weight: 400
}

@font-face {
    font-family: num_m;
    src: url(assets/EUCLIDCIRCULARA-MEDIUM.e4eaedb6.ttf) format("truetype")
}

.en_lang .num_m, .num_m {
    font-family: num_m;
    font-weight: 400
}

@font-face {
    font-family: num_b;
    src: url(assets/EUCLIDCIRCULARA-BOLD.cc9c54c9.ttf) format("truetype")
}

.afterInner .row .afterFirst .group .col h1 .en_lang span, .company .r2 .inner .chunk .mid .list .en_lang em, .company .r2 .inner .chunk .mid .list em, .en_lang .afterInner .row .afterFirst .group .col h1 span, .en_lang .company .r2 .inner .chunk .mid .list em, .en_lang .en_b, .en_lang .num_b, .num_b {
    font-family: num_b
}

.en_lang h1, .en_lang h2, .en_lang h3 {
    font-family: num_b;
    font-weight: 400
}

.en_lang a, .en_lang div, .en_lang p, .en_lang small, .en_lang span {
    font-family: en_l
}

.en_lang .en_r {
    font-family: num_m;
    font-weight: 400
}


.mc {
    color: #00d2ff
}

.rc {
    color: #da251d
}

.bc, .home .r4 .inner .other .items .inter > a:hover > i {
    color: #1c509c
}

.home .r5 .inner .part .items .inter > a:hover > i, .wc, body #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i {
    color: #fff
}

.grc {
    color: #081121
}

.lh-1 {
    line-height: 1
}

.lh-14 {
    line-height: 1.4
}

.lh-20 {
    line-height: 2
}

.afterInner .row .afterFirst .group .col h1 span, .f-120 {
    font-size: 1.2rem
}

.f-80 {
    font-size: .8rem
}

.f-72 {
    font-size: .72rem
}

.f-60 {
    font-size: 60px
}

.f-56 {
    font-size: 56px
}

.f-54 {
    font-size: 54px
}

.f-50 {
    font-size: 50px
}

.f-48 {
    font-size: 48px
}

.f-46 {
    font-size: 46px
}

.f-44 {
    font-size: 44px
}

.f-42 {
    font-size: 42px
}

.f-40 {
    font-size: 40px
}

.f-38 {
    font-size: 38px
}

.f-36 {
    font-size: 36px
}

.f-34 {
    font-size: 34px
}

.f-32 {
    font-size: 32px
}

.f-30 {
    font-size: 30px
}

.f-28 {
    font-size: 28px
}

.f-26 {
    font-size: 26px
}

.f-24 {
    font-size: 24px
}

.f-22 {
    font-size: 22px
}

.f-20 {
    font-size: 20px
}

.company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-18 {
    font-size: 18px
}

.f-16 {
    font-size: 16px
}

.f-14 {
    font-size: 14px
}

.f-12 {
    font-size: 12px
}

@media screen and (max-width: 1600px) {

    .f-60 {
        font-size: 58px
    }

    .f-56 {
        font-size: 50px
    }

    .f-50 {
        font-size: 42px
    }

    .f-48 {
        font-size: 46px
    }

    .f-46 {
        font-size: 44px
    }

    .f-44 {
        font-size: 42px
    }

    .f-42 {
        font-size: 40px
    }

    .f-40 {
        font-size: 38px
    }

    .f-38 {
        font-size: 36px
    }

    .f-36 {
        font-size: 34px
    }

    .f-34 {
        font-size: 32px
    }

    .f-32 {
        font-size: 30px
    }

    .f-30 {
        font-size: 28px
    }

    .f-26, .f-28 {
        font-size: 24px
    }

    .f-24 {
        font-size: 22px
    }

    .f-22 {
        font-size: 20px
    }

    .f-20 {
        font-size: 18px
    }

    .company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-18 {
        font-size: 16px
    }

    .f-16 {
        font-size: 14px
    }

    .f-12, .f-14 {
        font-size: 12px
    }
}

@media screen and (max-width: 1450px) {

    .f-60 {
        font-size: 58px
    }

    .f-56 {
        font-size: 50px
    }

    .f-50 {
        font-size: 42px
    }

    .f-48 {
        font-size: 46px
    }

    .f-46 {
        font-size: 44px
    }

    .f-44 {
        font-size: 42px
    }

    .f-42 {
        font-size: 40px
    }

    .f-40 {
        font-size: 38px
    }

    .f-38 {
        font-size: 30px
    }

    .f-34, .f-36 {
        font-size: 28px
    }

    .f-32 {
        font-size: 24px
    }

    .f-30 {
        font-size: 22px
    }

    .f-28 {
        font-size: 20px
    }

    .f-26 {
        font-size: 18px
    }

    .company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-18, .f-20, .f-22, .f-24 {
        font-size: 16px
    }

    .f-16 {
        font-size: 14px
    }

    .f-12, .f-14 {
        font-size: 12px
    }

    p {
        font-size: 14px;
        line-height: 1.8
    }
}

@media screen and (max-width: 1280px) {


    .f-60 {
        font-size: 40px
    }

    .f-56 {
        font-size: 36px
    }

    .f-50 {
        font-size: 34px
    }

    .f-48 {
        font-size: 32px
    }

    .f-46 {
        font-size: 30px
    }

    .f-44 {
        font-size: 28px
    }

    .f-42 {
        font-size: 26px
    }

    .f-40 {
        font-size: 24px
    }

    .f-38 {
        font-size: 22px
    }

    .f-34, .f-36 {
        font-size: 20px
    }

    .f-30, .f-32 {
        font-size: 18px
    }

    .f-24, .f-26, .f-28 {
        font-size: 16px
    }

    .company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-18, .f-20, .f-22 {
        font-size: 14px
    }

    .f-12, .f-14, .f-16 {
        font-size: 12px
    }
}

@media screen and (max-width: 700px) {

    .f-48, .f-50, .f-54, .f-56, .f-60 {
        font-size: 24px
    }

    .f-44, .f-46 {
        font-size: 22px
    }

    .f-40, .f-42 {
        font-size: 20px
    }

    .f-34, .f-36, .f-38 {
        font-size: 18px
    }

    .f-20, .f-22, .f-24, .f-26, .f-28, .f-30, .f-32 {
        font-size: 16px
    }

    .company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-16, .f-18 {
        font-size: 14px
    }

    .f-12, .f-14 {
        font-size: 12px
    }
}

@media screen and (min-width: 700px) {
    .en_lang .f-80 {
        font-size: 3.2vw
    }

    .en_lang .f-50 {
        font-size: 2vw
    }

    .en_lang .f-48 {
        font-size: 1.8vw
    }

    .en_lang .f-40 {
        font-size: 1.7vw
    }

    .en_lang .f-30 {
        font-size: 1.4vw
    }

    .en_lang .f-28 {
        font-size: 1.2vw
    }

    .company .r2 .inner .chunk .mid .en_lang .list > div, .company .r2 .inner .chunk .mid .list .en_lang sup, .en_lang .company .r2 .inner .chunk .mid .list > div, .en_lang .company .r2 .inner .chunk .mid .list sup, .en_lang .f-18, .en_lang .f-20 {
        font-size: 16px
    }

    .en_lang .f-16 {
        font-size: 14px
    }
}

.en_lang .letter {
    font-family: inherit;
    margin-right: 1vw
}

@keyframes fadeInLeftSmall {
    0% {
        opacity: 0;
        transform: translate3d(-10px, 0, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInLeftSmall {
    animation-name: fadeInLeftSmall
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-20%, 0, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInLeft {
    animation-name: fadeInLeftSmall
}

@keyframes fadeInRightSmall {
    0% {
        opacity: 0;
        transform: translate3d(10px, 0, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInRightSmall {
    animation-name: fadeInRightSmall
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translate3d(20%, 0, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInRight {
    animation-name: fadeInRight
}

@keyframes fadeInDownSmall {
    0% {
        opacity: 0;
        transform: translate3d(0, -10px, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInDownSmall {
    animation-name: fadeInDownSmall
}

@keyframes fadeOutDownSmall {
    0% {
        opacity: 1;
        transform: none
    }
    to {
        opacity: 0;
        transform: translate3d(0, 10px, 0)
    }
}

.fadeOutDownSmall {
    animation-name: fadeOutDownSmall
}

@keyframes fadeInUpSmall {
    0% {
        opacity: 0;
        transform: translate3d(0, 30px, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInUpSmall {
    animation-name: fadeInUpSmall
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 30%, 0)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.fadeInUp {
    animation-name: fadeInUp
}

@keyframes rotateInUpSmall {
    0% {
        opacity: 0;
        transform: translate3d(0, 30px, 0) rotate(5deg)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.rotateInUpSmall {
    transform-origin: 0 0;
    animation-name: rotateInUpSmall
}

.letter {
    min-width: .2em;
    text-align: center;
    font-size: inherit;
    font-weight: inherit;
    font-family: inherit;
    color: inherit;
    display: inline-block
}

.layer-btn {
    width: .8rem;
    height: .8rem;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.layer-btn .mask {
    position: absolute;
    left: -.3rem;
    top: -.3rem;
    width: calc(100% + .6rem);
    pointer-events: none;
    height: calc(100% + .6rem);
    background-size: cover
}

.layer-btn .mask > .lazy {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    background-size: cover;
    -webkit-animation-name: spin;
    animation-name: spin;
    -webkit-animation-duration: 4s;
    animation-duration: 4s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear
}

.layer-btn .mask > svg {
    width: calc(100% - .55rem);
    height: calc(100% - .55rem)
}

.layer-btn .mask > svg path {
    transform-origin: 50% 50%
}

.layer-btn .mask > svg .p1 {
    animation: circleRotate 4s linear infinite
}

.layer-btn .mask > svg .p2 {
    animation: circleRotateReverse 4s linear infinite
}

.layer-btn .mask > svg.cm {
    opacity: 1;
    transition: opacity .5s
}

.layer-btn .mask > svg.cr {
    opacity: 0;
    transition: opacity .5s
}

.layer-btn .mask:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid #00d2ff;
    border-right: 1px solid #00d2ff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.layer-btn .mask.noArrow:after {
    opacity: 0
}

.home .r4 .inner .other .items .layer-btn .inter > a:hover > i.mask:after, .layer-btn .home .r4 .inner .other .items .inter > a:hover > i.mask:after, .layer-btn .mask.bc:after {
    border-color: #1c509c;
    border-width: 2px;
    width: 9px;
    height: 9px
}

.layer-btn i {
    color: #fff
}

.layer-btn > svg {
    width: 8px;
    display: block;
    margin-top: 5px
}

.layer-btn:hover .mask > svg.cm {
    opacity: 0
}

.layer-btn:hover .mask > svg.cr {
    opacity: 1
}

.layer-col {
    position: absolute;
    left: 0;
    top: 0;
    cursor: pointer !important
}

.layer-col:before {
    content: "";
    border-radius: .3rem;
    z-index: 1;
    background: linear-gradient(223deg, rgba(99, 229, 242, .2), rgba(58, 174, 239, .8));
    width: 100%;
    height: 100%;
    backdrop-filter: blur(3px)
}

.layer-col:after {
    content: "";
    z-index: 3;
    position: absolute;
    width: calc(100% + 6px);
    height: calc(100% + 6px);
    left: -3px;
    top: -3px;
    border-radius: .5rem;
    border: 3px solid #6ce5ff;
    mask-image: linear-gradient(120deg, #000, rgba(0, 0, 0, .1) 50%, #000)
}

.layer-col > img {
    display: none
}

.layer-col .mask {
    display: grid;
    grid-auto-flow: column;
    z-index: 5;
    align-items: center;
    justify-content: center;
    align-content: center;
    border-radius: .3rem;
    transition: background .7s cubic-bezier(.25, .74, .22, .99);
    position: relative;
    padding: 0 .32rem;
    height: .6rem
}

.layer-col .mask .cir {
    width: .2rem;
    height: .2rem;
    border: 3px solid #fff;
    position: relative;
    background: transparent;
    border-radius: 50%;
    margin-right: .1rem;
    transition: border-color .6s cubic-bezier(.25, .74, .22, .99)
}

.layer-col .mask .cir > img {
    position: absolute;
    display: block;
    width: calc(100% + 6px);
    left: -3px;
    height: calc(100% + 6px);
    top: -3px;
    opacity: 0;
    transition: opacity .6s cubic-bezier(.25, .74, .22, .99)
}

.layer-col .mask small {
    line-height: .23rem;
    text-shadow: 0 2px 2px #2ab6df;
    transition: all .7s cubic-bezier(.25, .74, .22, .99);
    white-space: nowrap
}

.layer-col .mask:hover {
    background: #fff
}

.layer-col .mask:hover .cir {
    border-color: transparent
}

.layer-col .mask:hover .cir > img {
    opacity: 1
}

.layer-col .mask:hover small {
    color: #1c509c;
    text-shadow: none
}

.layer-col.active .mask {
    background: #fff
}

.layer-col.active .mask .cir {
    border-color: transparent
}

.layer-col.active .mask .cir > img {
    opacity: 1
}

.layer-col.active .mask small {
    color: #1c509c;
    text-shadow: none
}

.layer-pop {
    height: 100%;
    top: 0;
    z-index: 30;
    pointer-events: none;
    display: flex;
    align-items: flex-end;
    padding: 0 1.1rem .72rem;
    justify-content: flex-end;
    -webkit-transform: translateX(8rem);
    transform: translateX(8rem);
    transition: transform 1.017s cubic-bezier(.25, .74, .22, .99), visibility 0s 1.017s, -webkit-transform 1.017s cubic-bezier(.25, .74, .22, .99);
    visibility: hidden
}

.layer-pop.on {
    -webkit-transform: none;
    transform: none;
    -webkit-transition: none;
    transition: none;
    visibility: inherit
}

.layer-pop.on .wrap {
    animation: pop-in 1.6s cubic-bezier(.25, .74, .22, .99) backwards
}

.layer-pop .wrap {
    width: 6rem;
    pointer-events: auto;
    background-color: hsla(0, 0%, 100%, .9);
    position: relative;
    box-shadow: 0 .2rem .8rem -.1px rgba(28, 80, 157, .18);
    border-radius: .1rem;
    overflow: hidden
}

.layer-pop .wrap .part {
    padding: .8rem .5rem;
    width: 100%
}

.layer-pop .wrap .part h3 {
    margin-bottom: .4rem;
    line-height: 1
}

.layer-pop .wrap .part p {
    color: #081121;
    min-height: 35vh
}

.layer-pop .wrap .part p a {
    color: #1c509c
}

.layer-pop .wrap .part p a:hover {
    text-decoration: underline
}

.layer-pop .wrap .part > div {
    text-align: right;
    padding-right: .3rem;
    display: none
}

.layer-pop .wrap .part > div .layer-btn {
    display: inline-block
}

.layer-pop .wrap .part > div .layer-btn .mask:after {
    border-width: 2px;
    border-top-color: #1c509c;
    border-right-color: #1c509c
}

.pic {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%
}

[data-pic] {
    overflow: hidden
}

.cursor--group {
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    min-height: 100vh;
    pointer-events: none;
    opacity: 0
}

.cursor--group .cursor {
    position: fixed;
    left: 0;
    top: 0;
    pointer-events: none;
    border-radius: 50%
}

.cursor--group .cursor--inner {
    width: .6rem;
    height: .6rem;
    left: -.3rem;
    top: -.3rem;
    z-index: 11000
}

.cursor--group .cursor--inner > svg {
    width: 100%
}

.cursor--group .cursor--inner > svg circle {
    stroke: #fff;
    fill: transparent;
    stroke-width: 7;
    stroke-dasharray: 160%;
    stroke-dashoffset: 160%;
    transform: rotate(98deg);
    transform-origin: 50% 50%;
    transition: stroke-dashoffset .5s
}

.cursor--group .cursor--inner > svg circle.st0 {
    stroke-width: 7
}

.cursor--group .cursor--inner > svg circle.st0, .cursor--group .cursor--inner > svg path.st0 {
    fill-opacity: 0;
    filter: url(#filter-blur);
    animation: hx 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.cursor--group .cursor--inner > svg path.st0 {
    stroke-width: 4
}

.cursor--group .cursor--inner > svg .st1 {
    fill-rule: evenodd;
    clip-rule: evenodd;
    fill: #fff
}

.cursor--group .cursor--inner.active > svg circle {
    stroke-dashoffset: 48%
}

.cursor--group .cursor--outer {
    width: .6rem;
    height: .6rem;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center
}

.cursor--group .cursor--outer > svg {
    width: 100%
}

.cursor--group .cursor--outer > svg .st0 {
    fill-opacity: 0;
    stroke-width: 4;
    filter: url(#filter-blur)
}

.cursor--group .cursor--outer > svg .st1 {
    fill-rule: evenodd;
    clip-rule: evenodd;
    fill: #fff
}

#Leave {
    position: fixed;
    z-index: 100;
    opacity: 0;
    left: 0;
    bottom: 4vw;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

#Leave span {
    background-color: #000;
    border-radius: .15rem;
    color: #fff;
    text-align: center;
    padding: .16rem .4rem
}

[data-text] {
    line-height: 1.3
}



body .nav {
    position: fixed;
    width: 100%;
    height: 1.28rem;
    left: 0;
    top: 0;
    z-index: 100;
    padding: 0 1.1rem;
    display: flex;
    justify-content: space-between;
    align-items: center
}

body .nav .mask {
    position: absolute;
    width: 100vw;
    height: 22vw;
    z-index: 1;
    left: 0;
    top: 0;
    background-color: #fff;
    transform-origin: 0 0;
    transform: scaleY(.001);
    pointer-events: none;
    transition: transform .5s cubic-bezier(.25, .74, .22, .99)
}

body .nav .logo {
    position: relative;
    z-index: 6
}

body .nav .logo .logoB {
    opacity: 0
}

body .nav .logo .logoB, body .nav .logo .logoW {
    transition: opacity .3s cubic-bezier(.25, .74, .22, .99)
}

body .nav .logo .logoW {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}

body .nav .items {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    z-index: 5
}

body .nav .items > ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 48vw
}

body .nav .items > ul > li {
    position: relative
}

body .nav .items > ul > li > a {
    transition: color .5s;
    font-weight: 600
}

body .nav .items > ul > li > svg {
    width: .15rem;
    top: -.22rem;
    transition: opacity .8s cubic-bezier(.25, .74, .22, .99), transform .8s cubic-bezier(.25, .74, .22, .99);
    opacity: 0;
    transform: translateY(-5px) rotate(-20deg)
}

body .nav .items > ul > li > svg path {
    fill: #00d2ff
}

body .nav .items > ul > li > ol {
    position: absolute;
    padding-top: .2rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    visibility: hidden;
    opacity: 0
}

body .nav .items > ul > li > ol > li {
    transform: translateY(30px);
    opacity: 0
}

body .nav .items > ul > li > ol > li > a {
    padding: 8px 0;
    display: block;
    white-space: nowrap;
    color: #081121;
    opacity: .8;
    transition: color .3s cubic-bezier(.25, .74, .22, .99)
}

body .nav .items > ul > li > ol > li > a:hover {
    color: #1c509c
}

body .nav .items > ul > li.on > a, body .nav .items > ul > li:hover > a {
    color: #00d2ff;
    font-weight: 600
}

body .nav .items > ul > li.on > svg, body .nav .items > ul > li:hover > svg {
    opacity: 1;
    transform: none
}

body .nav .items .language {
    display: flex;
    align-items: center
}

body .nav .items .language .line {
    width: 1px;
    height: 10px;
    margin: 0 .5rem;
    background-color: #00d2ff;
    transition: background-color .5s
}

body .nav .items .language .box > span {
    position: relative;
    transition: color .5s
}

body .nav .items .language .box > span:after {
    content: "";
    width: 0;
    position: absolute;
    height: 0;
    top: 5px;
    bottom: 0;
    margin: auto 0;
    right: -20px;
    border: 5px solid transparent;
    border-top-color: #00d2ff;
    transition: border-color .5s
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .logo .logoB, body .home .r4 .inner .other .items .inter > a:hover > i.nav .logo .logoB, body .nav.active .logo .logoB, body .nav.bc .logo .logoB {
    opacity: 1
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .logo .logoW, body .home .r4 .inner .other .items .inter > a:hover > i.nav .logo .logoW, body .nav.active .logo .logoW, body .nav.bc .logo .logoW {
    opacity: 0
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, .home .r4 .inner .other .items body .inter > a:hover > i.nav .wc, .home .r4 .r5 .inner .other .part .items body .inter > a:hover > i.nav .inter > a:hover > i, .home .r4 .r5 .inner .part .other .items body .inter > a:hover > i.nav .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .other .part .items .inter > a:hover > i.nav .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .part .other .items .inter > a:hover > i.nav .inter > a:hover > i, .home .r5 .inner .part .items body .nav.active .inter > a:hover > i, .home .r5 .inner .part .items body .nav.bc .inter > a:hover > i, .home .r5 .r4 .inner .other .part .items body .inter > a:hover > i.nav .inter > a:hover > i, .home .r5 .r4 .inner .part .other .items body .inter > a:hover > i.nav .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .other .part .items .inter > a:hover > i.nav .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .part .other .items .inter > a:hover > i.nav .inter > a:hover > i, body #bloc .wrapper .rowFoot .inner .part .items .nav.active .inter > a:hover > i, body #bloc .wrapper .rowFoot .inner .part .items .nav.bc .inter > a:hover > i, body .home .r4 .inner .other .items .inter > a:hover > i.nav #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .home .r4 .inner .other .items .inter > a:hover > i.nav .wc, body .home .r4 .r5 .inner .other .part .items .inter > a:hover > i.nav .inter > a:hover > i, body .home .r4 .r5 .inner .part .other .items .inter > a:hover > i.nav .inter > a:hover > i, body .home .r5 .r4 .inner .other .part .items .inter > a:hover > i.nav .inter > a:hover > i, body .home .r5 .r4 .inner .part .other .items .inter > a:hover > i.nav .inter > a:hover > i, body .nav.active #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .nav.active .home .r5 .inner .part .items .inter > a:hover > i, body .nav.active .wc, body .nav.bc #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .nav.bc .home .r5 .inner .part .items .inter > a:hover > i, body .nav.bc .wc {
    color: #081121
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .pwc, body .home .r4 .inner .other .items .inter > a:hover > i.nav .pwc, body .nav.active .pwc, body .nav.bc .pwc {
    fill: #1c509c
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .items > ul > li > a, body .home .r4 .inner .other .items .inter > a:hover > i.nav .items > ul > li > a, body .nav.active .items > ul > li > a, body .nav.bc .items > ul > li > a {
    color: #000
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .items > ul > li:hover > a, .home .r4 .inner .other .items body .inter > a:hover > i.nav .on #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, .home .r4 .inner .other .items body .inter > a:hover > i.nav .on .wc, .home .r4 .r5 .inner .other .part .items body .inter > a:hover > i.nav .on .inter > a:hover > i, .home .r4 .r5 .inner .part .other .items body .inter > a:hover > i.nav .on .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .other .part .items .inter > a:hover > i.nav .on .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .part .other .items .inter > a:hover > i.nav .on .inter > a:hover > i, .home .r5 .inner .part .items body .nav.active .on .inter > a:hover > i, .home .r5 .inner .part .items body .nav.bc .on .inter > a:hover > i, .home .r5 .r4 .inner .other .part .items body .inter > a:hover > i.nav .on .inter > a:hover > i, .home .r5 .r4 .inner .part .other .items body .inter > a:hover > i.nav .on .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .other .part .items .inter > a:hover > i.nav .on .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .part .other .items .inter > a:hover > i.nav .on .inter > a:hover > i, body #bloc .wrapper .rowFoot .inner .part .items .nav.active .on .inter > a:hover > i, body #bloc .wrapper .rowFoot .inner .part .items .nav.bc .on .inter > a:hover > i, body .home .r4 .inner .other .items .inter > a:hover > i.nav .items > ul > li:hover > a, body .home .r4 .inner .other .items .inter > a:hover > i.nav .on #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .home .r4 .inner .other .items .inter > a:hover > i.nav .on .wc, body .home .r4 .r5 .inner .other .part .items .inter > a:hover > i.nav .on .inter > a:hover > i, body .home .r4 .r5 .inner .part .other .items .inter > a:hover > i.nav .on .inter > a:hover > i, body .home .r5 .r4 .inner .other .part .items .inter > a:hover > i.nav .on .inter > a:hover > i, body .home .r5 .r4 .inner .part .other .items .inter > a:hover > i.nav .on .inter > a:hover > i, body .nav.active .items > ul > li:hover > a, body .nav.active .on #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .nav.active .on .home .r5 .inner .part .items .inter > a:hover > i, body .nav.active .on .wc, body .nav.bc .items > ul > li:hover > a, body .nav.bc .on #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, body .nav.bc .on .home .r5 .inner .part .items .inter > a:hover > i, body .nav.bc .on .wc {
    color: #1c509c
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .language .line, body .home .r4 .inner .other .items .inter > a:hover > i.nav .language .line, body .nav.active .language .line, body .nav.bc .language .line {
    background-color: #1c509c
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .language .box > span, body .home .r4 .inner .other .items .inter > a:hover > i.nav .language .box > span, body .nav.active .language .box > span, body .nav.bc .language .box > span {
    color: #1c509c
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav .language .box > span:after, body .home .r4 .inner .other .items .inter > a:hover > i.nav .language .box > span:after, body .nav.active .language .box > span:after, body .nav.bc .language .box > span:after {
    border-color: #1c509c transparent transparent
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav nav.app-nav .inner_top, body .home .r4 .inner .other .items .inter > a:hover > i.nav nav.app-nav .inner_top, body .nav.active nav.app-nav .inner_top, body .nav.bc nav.app-nav .inner_top {
    height: 50px
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav nav.app-nav .inner_top .topic #app-menu .line:before, body .home .r4 .inner .other .items .inter > a:hover > i.nav nav.app-nav .inner_top .topic #app-menu .line:before, body .nav.active nav.app-nav .inner_top .topic #app-menu .line:before, body .nav.bc nav.app-nav .inner_top .topic #app-menu .line:before {
    background-color: #333
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-logo > a .white, body .home .r4 .inner .other .items .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-logo > a .white, body .nav.active nav.app-nav .inner_top .topic .app-logo > a .white, body .nav.bc nav.app-nav .inner_top .topic .app-logo > a .white {
    opacity: 0
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-logo > a .black, body .home .r4 .inner .other .items .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-logo > a .black, body .nav.active nav.app-nav .inner_top .topic .app-logo > a .black, body .nav.bc nav.app-nav .inner_top .topic .app-logo > a .black {
    opacity: 1
}

.home .r4 .inner .other .items body .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-search > i, body .home .r4 .inner .other .items .inter > a:hover > i.nav nav.app-nav .inner_top .topic .app-search > i, body .nav.active nav.app-nav .inner_top .topic .app-search > i, body .nav.bc nav.app-nav .inner_top .topic .app-search > i {
    color: #333
}

body .nav.active .mask {
    pointer-events: auto;
    transform: scaleY(1)
}

body .nav nav.app-nav {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2000;
    width: 100vw;
    height: 50px;
    pointer-events: auto;
    transition: all .5s ease
}

body .nav nav.app-nav .inner_top {
    transition: all .5s ease 0s;
    height: 68px;
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center
}

body .nav nav.app-nav .inner_top .topic {
    padding: 0 5%;
    height: 50px;
    width: 100%;
    border-bottom: 1px solid hsla(0, 0%, 100%, 0);
    display: flex;
    justify-content: space-between;
    align-items: center
}

body .nav nav.app-nav .inner_top .topic #app-menu {
    display: inline-block;
    position: relative;
    z-index: 10
}

body .nav nav.app-nav .inner_top .topic #app-menu .line {
    display: block;
    padding-top: 3px;
    padding-bottom: 3px;
    transition: all .4s ease
}

body .nav nav.app-nav .inner_top .topic #app-menu .line:before {
    content: "";
    display: block;
    height: 2px;
    width: 22px;
    background-color: #fff;
    border-top-right-radius: 2px;
    border-bottom-left-radius: 2px;
    transition: transform .4s ease .2s, background-color .5s ease 0s
}

body .nav nav.app-nav .inner_top .topic #app-menu .line:nth-of-type(2):before {
    width: 15px;
    margin-left: 7px
}

body .nav nav.app-nav .inner_top .topic .app-logo {
    position: relative;
    z-index: 10
}

body .nav nav.app-nav .inner_top .topic .app-logo > a {
    display: inline-block;
    width: 20vw;
    position: relative
}

body .nav nav.app-nav .inner_top .topic .app-logo > a > img {
    position: relative;
    width: 100%;
    transition: opacity .3s ease
}

body .nav nav.app-nav .inner_top .topic .app-logo > a > img.black {
    opacity: 0
}

body .nav nav.app-nav .inner_top .topic .app-search {
    position: relative;
    z-index: 10
}

body .nav nav.app-nav .inner_top .topic .app-search > i {
    color: #fff;
    font-size: 18px
}

body .nav nav.app-nav .inner_top .other-nav {
    position: absolute;
    top: 0;
    z-index: 10;
    left: 0;
    transform: translate3d(0, -100%, 0);
    width: 100%;
    height: 100%;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all .3s cubic-bezier(.25, .74, .22, .99)
}

body .nav nav.app-nav .inner_top .other-nav .search-in {
    border: none;
    border-bottom: 1px solid #00d2ff;
    background-color: transparent;
    width: 4rem;
    line-height: .3rem
}

body .nav nav.app-nav .inner_top .other-nav .sub {
    color: #00d2ff;
    background-color: transparent;
    border: none;
    padding: 12px
}

body .nav nav.app-nav .inner_top .other-nav.on {
    opacity: 1;
    pointer-events: auto;
    transform: none
}

body .nav nav.app-nav .inner_top.on {
    height: 50px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1)
}

body .nav nav.app-nav .inner_top.on .topic {
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

body .nav nav.app-nav .inner_top.on .topic #app-menu .line:before {
    background-color: #333
}

body .nav nav.app-nav .inner_top.on .topic .app-logo > a .white {
    opacity: 0
}

body .nav nav.app-nav .inner_top.on .topic .app-logo > a .black {
    opacity: 1
}

body .nav nav.app-nav .inner_top.on .topic .app-search > i {
    color: #333
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top, body .nav nav.app-nav .inner_top.bc {
    height: 50px
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top .topic, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top .topic, body .nav nav.app-nav .inner_top.bc .topic {
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top .topic #app-menu .line:before, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top .topic #app-menu .line:before, body .nav nav.app-nav .inner_top.bc .topic #app-menu .line:before {
    background-color: #333
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top .topic .app-logo > a .white, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top .topic .app-logo > a .white, body .nav nav.app-nav .inner_top.bc .topic .app-logo > a .white {
    opacity: 0
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top .topic .app-logo > a .black, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top .topic .app-logo > a .black, body .nav nav.app-nav .inner_top.bc .topic .app-logo > a .black {
    opacity: 1
}

.home .r4 .inner .other .items body .nav nav.app-nav .inter > a:hover > i.inner_top .topic .app-search > i, body .nav nav.app-nav .home .r4 .inner .other .items .inter > a:hover > i.inner_top .topic .app-search > i, body .nav nav.app-nav .inner_top.bc .topic .app-search > i {
    color: #333
}

body .nav nav.app-nav .inner_top.active {
    height: 50px
}

body .nav nav.app-nav .inner_top.active .topic #app-menu .line:before {
    background-color: #333
}

body .nav nav.app-nav .inner_top.active .topic .app-logo > a .white {
    opacity: 0
}

body .nav nav.app-nav .inner_top.active .topic .app-logo > a .black {
    opacity: 1
}

body .nav nav.app-nav .inner_top.active .topic .app-search > i {
    color: #333
}

body .nav nav.app-nav .inner_mid {
    position: absolute;
    top: 50px;
    background-color: #fff;
    left: 0;
    width: 100%;
    height: calc(100% - 50px);
    overflow: hidden
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList {
    padding: 0 5%;
    position: relative;
    transition: background-color .5s ease
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList > a {
    color: #333;
    line-height: 48px;
    height: 48px;
    white-space: nowrap;
    display: block;
    font-weight: 700;
    border-bottom: 1px solid rgba(0, 0, 0, .09)
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList > i {
    right: calc(5% - 5px);
    top: 0;
    font-size: 24px;
    position: absolute;
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 48px;
    text-align: right;
    color: #333;
    transition: transform .5s ease-in-out
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList.active {
    background-color: rgba(0, 135, 85, .05)
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList.active > i {
    transform: scaleY(-1)
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second {
    background-color: rgba(0, 135, 85, .05);
    max-height: 0;
    transition: all .5s ease;
    overflow: hidden
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second > li {
    padding: 0 9%;
    position: relative
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second > li > a {
    padding: 12px 0;
    display: block;
    font-weight: 700
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second > li > i {
    opacity: 0;
    right: calc(5% - 5px);
    top: 0;
    font-size: 24px;
    position: absolute;
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 48px;
    text-align: right;
    color: #333
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second > li.active {
    background-color: #f0f1f2
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_second.active {
    max-height: 100vh
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_three {
    background-color: #f0f1f2;
    max-height: 0;
    transition: all .5s ease;
    overflow: hidden
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_three > li {
    padding: 0 14%
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_three > li > a {
    padding: 10px 0;
    display: block
}

body .nav nav.app-nav .inner_mid .nav-items > .child_first .child_three.active {
    max-height: 100vh
}

body .nav nav.app-nav.on {
    height: 100vh
}

body .nav nav.app-nav.on .inner_top .topic #app-menu .line:first-of-type {
    transform: translate3d(0, 8px, 0)
}

body .nav nav.app-nav.on .inner_top .topic #app-menu .line:first-of-type:before {
    transform: rotate(45deg)
}

body .nav nav.app-nav.on .inner_top .topic #app-menu .line:nth-of-type(2) {
    opacity: 0
}

body .nav nav.app-nav.on .inner_top .topic #app-menu .line:nth-of-type(3) {
    transform: translate3d(0, -8px, 0)
}

body .nav nav.app-nav.on .inner_top .topic #app-menu .line:nth-of-type(3):before {
    transform: rotate(-45deg)
}

body #bloc .wrapper .row .topic .group {
    padding-top: 1.8rem;
    width: 76vw;
    margin: 0 auto;
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: end
}

body #bloc .wrapper .row .topic .group .topItem {
    position: relative;
    margin-bottom: .3rem
}

body #bloc .wrapper .row .topic .group .topItem .roll .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate;
    color: #00d2ff
}

body #bloc .wrapper .row .topic .group .topItem .roll .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

body #bloc .wrapper .row .topic .group .topItem .roll .layer-btn > svg path {
    fill: #00d2ff
}

body #bloc .wrapper .rowFoot {
    position: relative;
    z-index: 50;
    overflow: visible
}

body #bloc .wrapper .rowFoot .inner {
    display: grid;
    padding: 0;
    width: 100%;
    grid-template-rows:100%
}

body #bloc .wrapper .rowFoot .inner .part {
    background-color: #244386;
    position: relative;
    padding: .6rem 1.1rem .82rem;
    width: 100vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background-size: auto 100%;
    background-position: 100% 0;
    background-repeat: no-repeat
}

body #bloc .wrapper .rowFoot .inner .part .items .inter {
    margin: .4rem 0 0
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid hsla(0, 0%, 100%, 0);
    position: relative;
    transition: border-color .5s cubic-bezier(.25, .74, .22, .99)
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a > i {
    color: hsla(0, 0%, 100%, .2);
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm {
    padding-bottom: .1rem;
    opacity: 0;
    bottom: 110%;
    transition: all .3s ease-in-out;
    pointer-events: none
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm > img {
    display: block;
    object-fit: cover;
    width: 1.2rem;
    height: 1.2rem
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm em {
    display: block;
    height: 8px;
    background-color: transparent;
    position: relative;
    width: 100%
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm em:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: -7px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border: 8px solid transparent;
    border-top-color: #fff
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover {
    border-color: hsla(0, 0%, 100%, .1)
}

body #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover .wm {
    opacity: 1;
    pointer-events: auto;
    bottom: 100%
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li {
    padding: .1rem
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li > a {
    font-weight: 600;
    position: relative;
    transition: color .8s cubic-bezier(.25, .74, .22, .99)
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li > a > i {
    display: block;
    right: calc(100% + .15rem);
    height: .2rem;
    line-height: .2rem;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-.15rem) rotate(30deg);
    color: #00d2ff;
    transition: opacity .8s cubic-bezier(.25, .74, .22, .99), transform .8s cubic-bezier(.25, .74, .22, .99)
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li > a:hover {
    color: #00d2ff
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li > a:hover > i {
    opacity: 1;
    transform: none
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li:nth-of-type(2) {
    transition-delay: .1s
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li:nth-of-type(3) {
    transition-delay: .2s
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li:nth-of-type(4) {
    transition-delay: .3s
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li:nth-of-type(5) {
    transition-delay: .4s
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup > li:nth-of-type(6) {
    transition-delay: .5s
}

body #bloc .wrapper .rowFoot .inner .part .items .hrefGroup.active > li {
    opacity: 1;
    transform: none
}

body #bloc .wrapper .rowFoot .inner .part .items .box {
    margin-bottom: .3rem;
    position: relative
}

body #bloc .wrapper .rowFoot .inner .part .items .box h2 {
    position: relative;
    z-index: 10
}

body #bloc .wrapper .rowFoot .inner .part .items .box .pic {
    z-index: 20;
    background-size: 6.2rem;
    mix-blend-mode: darken;
    background-position: -8vw 0
}

body #bloc .wrapper .rowFoot .inner .part .items > img {
    margin-bottom: 1.2rem
}

body #bloc .wrapper .rowFoot .inner .part .items h2 small {
    display: block;
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
    font-family: inherit
}

body #bloc .wrapper .rowFoot .inner .part .items p.en_r {
    text-align: right;
    line-height: 2;
    color: hsla(0, 0%, 100%, .8)
}

body #bloc .wrapper .rowFoot .inner .part .items:first-of-type {
    width: 1.3rem
}

body #bloc .wrapper .rowFoot .inner .part .items:nth-of-type(3) {
    width: 25%;
    display: flex;
    justify-content: center
}

body #bloc .wrapper .rowFoot .inner .part .toTop {
    top: -.4rem
}

body #bloc .wrapper .rowFoot .inner .part .toTop .mask:after {
    transform: rotate(-45deg);
    z-index: 6;
    border-width: 1px
}

body #bloc .wrapper .rowFoot .inner .part .toTop .mask:before {
    content: "";
    position: absolute;
    width: 1px;
    height: 14px;
    top: 5px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 5;
    background-color: #1c509c
}

body #bloc .wrapper .rowFoot .inner .part .toTop .mask svg.cm {
    transition: none;
    opacity: 1
}

body #bloc .wrapper .rowFoot .inner .part .toTop .mask svg circle {
    fill: #fff;
    stroke: transparent
}

.afterInner .row {
    width: 100%;
    position: relative;
    z-index: 10
}

.afterInner .row.r1 > .pic {
    opacity: .9
}

.afterInner .row .inner {
    padding: .72rem 1.1rem;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat
}

.afterInner .row .afterFirst {
    display: grid;
    grid-template-columns:100%;
    align-items: end
}

.afterInner .row .afterFirst .group {
    width: 100%;
    display: grid;
    grid-template-columns:auto auto;
    justify-content: space-between;
    align-items: end
}

.afterInner .row .afterFirst .group .col > div {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.afterInner .row .afterFirst .group .col > div:first-of-type {
    margin-bottom: .5rem
}

.afterInner .row .afterFirst .group .col > div img {
    margin-right: .18rem
}

.afterInner .row .afterFirst .group .col small {
    display: block
}

.afterInner .row .afterFirst .group .col h1 {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.afterInner .row .afterFirst .group .col h1 span {
    min-width: .4rem;
    text-align: center;
    opacity: 0;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 4px;
    text-transform: uppercase
}

.afterInner .row .afterFirst .group .col h1 span svg {
    width: 1.07rem;
    height: 1.07rem
}

.afterInner .row .afterFirst .group .col h1 span svg path {
    fill: #fff
}

.afterInner .row .afterFirst .group .col .roll {
    margin-right: .3rem;
    margin-bottom: .3rem
}

.afterInner .row .afterFirst .group .col .roll .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate;
    color: #fff
}

.afterInner .row .afterFirst .group .col .roll .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.afterInner .row .afterFirst .group .col .roll .layer-btn > svg path {
    fill: #fff
}

.home {
    width: 100vw;
    overflow: hidden;
    position: relative;
    background-color: #fff
}

.home, .home .cursorHover {
    cursor: none
}

.home .tsBox {
    opacity: 0;
    transition: opacity .3s cubic-bezier(.25, .74, .22, .99)
}

.home .tsBox canvas {
    height: auto;
    width: 145%
}

.home .tsBox.in {
    opacity: 1
}

.home .tsBox:before {
    top: 0;
    bottom: 70vw;
    background: linear-gradient(180deg, #e9eef2, rgba(232, 237, 241, 0))
}

.home .tsBox:after, .home .tsBox:before {
    content: "";
    pointer-events: none;
    width: 100%;
    height: 12vw;
    position: absolute;
    z-index: 2;
    margin: auto 0;
    left: 0
}

.home .tsBox:after {
    top: 70vw;
    bottom: 0;
    background: linear-gradient(0deg, #e9eef2, rgba(232, 237, 241, 0))
}

.home .tree {
    position: fixed;
    top: 1.6rem;
    right: 0;
    z-index: 40;
    flex-direction: column;
    align-items: flex-start
}

.home .tree, .home .tree .list {
    display: flex;
    justify-content: flex-start
}

.home .tree .list {
    width: 100%;
    align-items: center;
    height: 20px;
    transition: height .5s cubic-bezier(.25, .74, .22, .99)
}

.home .tree .list em {
    display: block;
    color: hsla(0, 0%, 100%, .6);
    margin-right: .2rem;
    width: .5rem;
    text-align: right;
    opacity: 0;
    transform: translateX(-10px)
}

.home .tree .list .line, .home .tree .list em {
    transition: opacity 1s cubic-bezier(.25, .74, .22, .99), transform 1s cubic-bezier(.25, .74, .22, .99)
}

.home .tree .list .line {
    width: 1.35rem;
    background-color: hsla(0, 0%, 100%, .6);
    height: 1px;
    position: relative;
    opacity: .3;
    transform: scaleX(.18);
    transform-origin: 0 50%
}

.home .tree .list .line .dot {
    position: absolute;
    width: 0;
    height: 0;
    border: 3px solid transparent;
    border-right-color: #00d2ff;
    left: -5px;
    top: -3px;
    opacity: 0;
    transition: opacity 1s cubic-bezier(.25, .74, .22, .99), transform 1s cubic-bezier(.25, .74, .22, .99)
}

.home .tree .list.on {
    height: 40px
}

.home .tree .list.on em {
    opacity: 1;
    transform: none
}

.home .tree .list.on .line {
    transform: scaleX(1);
    opacity: 1
}

.home .tree .list.on .line .dot {
    opacity: 1
}

.home .tree.black .list em {
    color: #244386
}

.home .tree.black .list .line {
    background-color: #244386
}

.home .tree.black .list .line .dot {
    border-color: transparent #244386 transparent transparent
}

.home .bgRow {
    position: fixed;
    width: 100%;
    height: 100vh;
    left: 0;
    top: 0;
    z-index: 1
}

.home .bgRow #fn_1 {
    z-index: 3
}

.home .bgRow #fn_1 > video {
    object-fit: cover;
    z-index: 5
}

.home .bgRow #fn_1 .photo {
    z-index: 3
}

.home .bgRow #fn_1 > canvas {
    height: 100%;
    width: auto
}

.home .bgRow #fn_1 > div {
    visibility: hidden
}

.home .bgRow .inner {
    align-items: end;
    display: grid;
    width: 100%;
    height: 100%;
    padding: .72rem 1.1rem;
    z-index: 4;
    position: relative
}

.home .bgRow .inner .group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    width: 7.9rem
}

.home .bgRow .inner .group > span#step-3 {
    opacity: .2
}

.home .bgRow .inner .group .process {
    width: 7rem;
    position: relative;
    height: 1px;
    background: hsla(0, 0%, 100%, .2);
    transform-origin: 0 50%;
    transform: scaleX(.01);
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99), opacity 1s cubic-bezier(.25, .74, .22, .99);
    opacity: 0;
    transition-delay: 1.5s
}

.home .bgRow .inner .group .process .bar {
    background: #fff;
    transform: scaleX(.33);
    transform-origin: 0 50%
}

.home .bgRow .inner .group .process .dot {
    position: absolute;
    top: -2px;
    left: 33%;
    width: 1px;
    height: 5px;
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color .3s
}

.home .bgRow .inner .group .process .dot.on {
    background-color: #fff
}

.home .bgRow .inner .group .process .dot:nth-of-type(2) {
    left: 66%
}

.home .bgRow .inner .group .process.go {
    transform: none;
    opacity: 1
}

.home .bgRow .model {
    z-index: 5;
    opacity: 0;
    visibility: hidden
}

.home .bgRow .model .media {
    z-index: 4;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat
}

.home .bgRow .model .media > video {
    object-fit: cover;
    opacity: 0
}

.home .bgRow .model .media > video.on {
    opacity: 1
}

.home .bgRow .model .media .tsBox, .home .bgRow .model .media .tsBox > div {
    opacity: 0
}

.home .bgRow .model .media .tsBox.on {
    opacity: 1
}

.home .bgRow .model .first {
    z-index: 5
}

.home .bgRow .model .first .pic {
    z-index: 1
}

.home .bgRow .model .first .pic video {
    object-fit: cover
}

.home .bgRow .model .first .box {
    z-index: 2
}

.home .bgRow .model .first .box .layer-col {
    opacity: 0;
    transform: translateY(100px);
    pointer-events: none;
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity .3s
}

.home .bgRow .model .first .box .layer-col:first-of-type {
    left: 18%;
    top: 36%
}

.home .bgRow .model .first .box .layer-col:nth-of-type(2) {
    left: 25%;
    top: 56%;
    transition-delay: .1s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(3) {
    left: 40%;
    top: 68%;
    transition-delay: .2s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(4) {
    left: 42%;
    top: 32%;
    transition-delay: .3s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(5) {
    left: 52%;
    top: 40%;
    transition-delay: .4s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(6) {
    left: 64%;
    top: 66%;
    transition-delay: .5s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(7) {
    left: 76%;
    top: 46%;
    transition-delay: .6s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(8) {
    transition-delay: .7s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(9) {
    transition-delay: .8s
}

.home .bgRow .model .first .box .layer-col:nth-of-type(10) {
    transition-delay: .9s
}

.home .bgRow .model .first .box.on .layer-col {
    opacity: 1;
    transform: none;
    pointer-events: auto;
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity 2s cubic-bezier(.25, .74, .22, .99)
}

.home .bgRow .model .child {
    z-index: 6;
    opacity: 0;
    visibility: hidden
}

.home .bgRow .model .child .page {
    opacity: 0
}

.home .bgRow .model .child .page .pic {
    z-index: 1
}

.home .bgRow .model .child .page .pic video {
    object-fit: cover
}

.home .bgRow .model .child .page .pageReturn {
    position: absolute;
    z-index: 5;
    left: 1.1rem;
    top: 1.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 1.5s cubic-bezier(.25, .74, .22, .99), transform 1.5s cubic-bezier(.25, .74, .22, .99)
}

.home .bgRow .model .child .page .pageReturn > i {
    color: #1c509c
}

.home .bgRow .model .child .page > .box {
    z-index: 2;
    pointer-events: none
}

.home .bgRow .model .child .page > .box .layer-col {
    z-index: 6;
    opacity: 0;
    transform: translateY(100px);
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity 2s cubic-bezier(.25, .74, .22, .99)
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(2) {
    transition-delay: .1s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(3) {
    transition-delay: .2s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(4) {
    transition-delay: .3s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(5) {
    transition-delay: .4s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(6) {
    transition-delay: .5s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(7) {
    transition-delay: .6s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(8) {
    transition-delay: .7s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(9) {
    transition-delay: .8s
}

.home .bgRow .model .child .page > .box .layer-col:nth-of-type(10) {
    transition-delay: .9s
}

.home .bgRow .model .child .page > .box.on {
    pointer-events: auto
}

.home .bgRow .model .child .page > .box.on + .pageReturn, .home .bgRow .model .child .page > .box.on .layer-col {
    opacity: 1;
    transform: none
}

.home .bgRow .model .child .page > .box .cover {
    z-index: 2
}

.home .bgRow .model .child .page .pop {
    z-index: 3;
    pointer-events: none
}

.home .bgRow .model .child .page.on {
    opacity: 1
}

.home .bgRow .model .total {
    z-index: 10;
    pointer-events: none
}

.home .bgRow .model .total .msg .list {
    position: absolute;
    left: 1.1rem;
    bottom: .72rem
}

.home .bgRow .model .total .msg .list h3 {
    line-height: 1;
    perspective: 500px
}

.home .bgRow .model .total .msg .list h3 .letter {
    opacity: 0
}

.home .bgRow .model .total .msg .list p {
    font-size: .66rem;
    margin-top: .2rem;
    perspective: 500px
}

.home .bgRow .model .total .msg .list p .letter {
    opacity: 0
}

.home .bgRow .model .total .msg:first-of-type {
    opacity: 1
}

.home .row {
    height: 100vh;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 10
}

.home #banner .inner, .home .row .inner {
    padding: .72rem 1.1rem;
    width: 100%;
    height: 100%
}

.home #banner .inner {
    justify-content: flex-start;
    align-items: flex-end
}

.home #banner .inner .group {
    padding-bottom: .8rem
}

.home #banner .inner .group h1 {
    position: relative;
    display: inline-block
}

.home #banner .inner .group h1 small {
    height: 100%;
    line-height: 1.8;
    left: calc(100% + .9rem);
    top: 0;
    width: 100%;
    color: hsla(0, 0%, 100%, .2)
}

.home #banner .inner .group h1 small:after {
    content: "";
    width: 1px;
    height: .5rem;
    background-color: hsla(0, 0%, 100%, .1);
    left: -.45rem
}

.home #banner .inner .group p {
    padding: .24rem 0 .32rem
}

.home #banner .inner .group > img {
    width: 7.9rem
}

.home #banner .inner .bannerRight {
    position: absolute;
    bottom: .72rem;
    right: 1.1rem
}

.home #banner .inner .bannerRight .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.home #banner .inner .bannerRight .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.home .r1 .inner .group {
    display: grid;
    height: 100%;
    width: 100%;
    justify-content: space-between;
    grid-auto-flow: column;
    grid-template-columns:1fr 6rem;
    align-items: center
}

.home .r1 .inner .group .col h2 {
    line-height: 1.1
}

.home .r1 .inner .group .col h3 {
    line-height: 1;
    margin-bottom: .5rem
}

.home .r1 .inner .group .col p {
    margin-bottom: 1rem
}

.home .r1 .inner .group .col .layer-btn {
    margin-left: .3rem
}

.home .r2 .inner {
    display: grid;
    align-content: space-between;
    padding: 1.8rem 1.1rem;
    justify-content: start
}

.home .r2 .inner .box {
    display: grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr 1fr
}

.home .r2 .inner .box .col {
    padding-top: .3rem
}

.company .home .r2 .inner .box .col .chunk .mid .list em, .company .home .r2 .inner .chunk .mid .list .box .col em, .home .company .r2 .inner .box .col .chunk .mid .list em, .home .company .r2 .inner .chunk .mid .list .box .col em, .home .r2 .inner .box .col .num_b {
    font-size: .8rem;
    display: inline-block;
    line-height: 1;
    margin-bottom: .1rem;
    position: relative;
    padding-right: .35rem
}

.company .home .r2 .inner .box .col .chunk .mid .list em > em, .company .home .r2 .inner .chunk .mid .list .box .col em > em, .home .company .r2 .inner .box .col .chunk .mid .list em > em, .home .company .r2 .inner .chunk .mid .list .box .col em > em, .home .r2 .inner .box .col .num_b > em {
    position: absolute;
    left: 100%;
    top: .6em
}

.home .r2 .inner .box .col > span {
    display: block
}

.home .r2 .inner .layer-btn {
    position: absolute;
    bottom: .72rem;
    right: 1.1rem
}

.home .r2.bc .r5 .inner .part .items .inter > a:hover > i, .home .r2.bc .wc, .home .r2.bc body #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, .home .r4 .inner .other .items .inter > a:hover > i.r2 .wc, .home .r4 .inner .other .items .inter > a:hover > i.r2 body #bloc .wrapper .rowFoot .inner .part .items .inter > a:hover > i, .home .r4 .r5 .inner .other .part .items .inter > a:hover > i.r2 .inter > a:hover > i, .home .r4 .r5 .inner .part .other .items .inter > a:hover > i.r2 .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .other .part .items .home .inter > a:hover > i.r2 .inter > a:hover > i, .home .r4 body #bloc .wrapper .rowFoot .inner .part .other .items .home .inter > a:hover > i.r2 .inter > a:hover > i, .home .r5 .inner .part .items .r2.bc .inter > a:hover > i, .home .r5 .r4 .inner .other .part .items .inter > a:hover > i.r2 .inter > a:hover > i, .home .r5 .r4 .inner .part .other .items .inter > a:hover > i.r2 .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .other .part .items .home .inter > a:hover > i.r2 .inter > a:hover > i, body #bloc .wrapper .rowFoot .home .r4 .inner .part .other .items .home .inter > a:hover > i.r2 .inter > a:hover > i, body #bloc .wrapper .rowFoot .inner .part .items .home .r2.bc .inter > a:hover > i {
    color: #081121
}

.home .r2.bc .mc, .home .r4 .inner .other .items .inter > a:hover > i.r2 .mc {
    color: #1c509c
}

.home .r3 {
    pointer-events: none;
    height: 200vh
}

.home .r4 .inner {
    position: relative
}

.home .r4 .inner .group {
    padding-top: .8rem;
    width: 70vw;
    margin: 0 auto;
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: center;
    position: relative
}

.home .r4 .inner .group .set {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: absolute;
    bottom: 10px;
    right: 0
}

.home .r4 .inner .group .set > a {
    width: .4rem;
    height: .5rem;
    line-height: .5rem;
    font-size: 24px
}

.home .r4 .inner .group .set > a:first-of-type {
    transform: scale(-1)
}

.home .r4 .inner .group .set > a:nth-of-type(2) {
    text-align: right
}

.home .r4 .inner .part {
    width: 70vw;
    bottom: 0;
    display: grid;
    grid-template-columns:33.3333333333% 33.3333333333% 33.3333333333%
}

.home .r4 .inner .part .list {
    display: flex;
    background-color: #eff1f3;
    flex-direction: column;
    height: 60vh;
    justify-content: space-between
}

.home .r4 .inner .part .list > img {
    width: 100%;
    min-height: 70%;
    object-fit: cover;
    mask-image: linear-gradient(180deg, #000 70%, transparent)
}

.home .r4 .inner .part .list .msg {
    height: 30%;
    padding: 2vw .3rem;
    width: 100%
}

.home .r4 .inner .part .list .msg small {
    display: block
}

.home .r4 .inner .part .list .msg h3 {
    margin-top: .2rem;
    width: 100%
}

.home .r4 .inner .part .list:nth-of-type(2) {
    background-color: #f8fcfd
}

.home .r4 .inner .other {
    position: absolute;
    left: 1.1rem;
    padding-top: 1.52rem;
    height: 100%;
    top: 0;
    display: grid;
    align-content: space-between
}

.home .r4 .inner .other .items .inter {
    margin: .4rem 0
}

.home .r4 .inner .other .items .inter > a {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid rgba(28, 80, 156, 0);
    transition: border-color .5s cubic-bezier(.25, .74, .22, .99)
}

.home .r4 .inner .other .items .inter > a > i {
    color: rgba(8, 17, 33, .2);
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.home .r4 .inner .other .items .inter > a:hover {
    border-color: rgba(28, 80, 156, .1)
}

.home .r5 .inner {
    display: grid;
    padding: 0;
    width: 100%;
    grid-template-rows:50% 50%;
    overflow: hidden
}

.home .r5 .inner .group {
    padding-top: 1.28rem;
    width: 100%
}

.home .r5 .inner .group .items {
    height: 100%;
    display: flex;
    justify-items: flex-start;
    align-items: stretch
}

.home .r5 .inner .group .items .list {
    width: 20vw;
    display: grid;
    justify-items: center;
    align-items: center
}

.home .r5 .inner .group .items .list > img {
    max-width: 62%;
    max-height: 22%
}

.home .r5 .inner .part {
    background-color: #244386;
    position: relative;
    padding: 0 1.1rem .82rem;
    width: 100vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background-size: auto 100%;
    background-position: 100% 0;
    background-repeat: no-repeat
}

.home .r5 .inner .part .items .inter {
    margin: .4rem 0 0
}

.home .r5 .inner .part .items .inter > a {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid hsla(0, 0%, 100%, 0);
    position: relative;
    transition: border-color .5s cubic-bezier(.25, .74, .22, .99)
}

.home .r5 .inner .part .items .inter > a > i {
    color: hsla(0, 0%, 100%, .2);
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.home .r5 .inner .part .items .inter > a .wm {
    padding-bottom: .1rem;
    opacity: 0;
    bottom: 110%;
    transition: all .3s ease-in-out;
    pointer-events: none
}

.home .r5 .inner .part .items .inter > a .wm > img {
    display: block;
    object-fit: cover;
    width: 1.2rem;
    height: 1.2rem
}

.home .r5 .inner .part .items .inter > a .wm em {
    display: block;
    height: 8px;
    background-color: transparent;
    position: relative;
    width: 100%
}

.home .r5 .inner .part .items .inter > a .wm em:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: -7px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border: 8px solid transparent;
    border-top-color: #fff
}

.home .r5 .inner .part .items .inter > a:hover {
    border-color: hsla(0, 0%, 100%, .1)
}

.home .r5 .inner .part .items .inter > a:hover .wm {
    opacity: 1;
    pointer-events: auto;
    bottom: 100%
}

.home .r5 .inner .part .items .hrefGroup > li {
    padding: .1rem
}

.home .r5 .inner .part .items .hrefGroup > li > a {
    font-weight: 600;
    position: relative;
    transition: color .8s cubic-bezier(.25, .74, .22, .99)
}

.home .r5 .inner .part .items .hrefGroup > li > a > i {
    display: block;
    right: calc(100% + .15rem);
    height: .2rem;
    line-height: .2rem;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-.15rem) rotate(30deg);
    color: #00d2ff;
    transition: opacity .8s cubic-bezier(.25, .74, .22, .99), transform .8s cubic-bezier(.25, .74, .22, .99)
}

.home .r5 .inner .part .items .hrefGroup > li > a:hover {
    color: #00d2ff
}

.home .r5 .inner .part .items .hrefGroup > li > a:hover > i {
    opacity: 1;
    transform: none
}

.home .r5 .inner .part .items .hrefGroup > li:nth-of-type(2) {
    transition-delay: .1s
}

.home .r5 .inner .part .items .hrefGroup > li:nth-of-type(3) {
    transition-delay: .2s
}

.home .r5 .inner .part .items .hrefGroup > li:nth-of-type(4) {
    transition-delay: .3s
}

.home .r5 .inner .part .items .hrefGroup > li:nth-of-type(5) {
    transition-delay: .4s
}

.home .r5 .inner .part .items .hrefGroup > li:nth-of-type(6) {
    transition-delay: .5s
}

.home .r5 .inner .part .items .hrefGroup.active > li {
    opacity: 1;
    transform: none
}

.home .r5 .inner .part .items .box {
    margin-bottom: .3rem;
    position: relative
}

.home .r5 .inner .part .items .box h2 {
    position: relative;
    z-index: 10
}

.home .r5 .inner .part .items .box .pic {
    z-index: 20;
    background-size: 6.2rem;
    mix-blend-mode: darken;
    background-position: -8vw 0
}

.home .r5 .inner .part .items > img {
    margin-bottom: 1.2rem
}

.home .r5 .inner .part .items h2 small {
    display: block;
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
    font-family: inherit
}

.home .r5 .inner .part .items p.en_r {
    text-align: right;
    line-height: 2;
    color: hsla(0, 0%, 100%, .8)
}

.home .r5 .inner .part .items:first-of-type {
    width: 1.3rem
}

.home .r5 .inner .part .items:nth-of-type(3) {
    width: 25%;
    display: flex;
    justify-content: center
}

.home .r5 .inner .part .toTop {
    top: -.4rem
}

.home .r5 .inner .part .toTop .mask:after {
    transform: rotate(-45deg);
    z-index: 6;
    border-width: 1px
}

.home .r5 .inner .part .toTop .mask:before {
    content: "";
    position: absolute;
    width: 1px;
    height: 14px;
    top: 5px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 5;
    background-color: #1c509c
}

.home .r5 .inner .part .toTop .mask svg.cm {
    transition: none;
    opacity: 1
}

.home .r5 .inner .part .toTop .mask svg circle {
    fill: #fff;
    stroke: transparent
}

.news {
    background-color: #fff
}

.news .r1 {
    overflow: hidden
}

.news .r1 .inner {
    position: sticky;
    height: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column
}

.news .r1 .inner, .news .r1 .inner .group {
    justify-content: space-between;
    align-items: center
}

.news .r1 .inner .group {
    padding-top: 1.8rem;
    width: 70vw;
    margin: 0 auto;
    display: grid;
    grid-auto-flow: column
}

.news .r1 .inner .group .topItem {
    position: relative
}

.news .r1 .inner .group .topItem .processBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    right: 1.5rem;
    width: 15vw;
    height: 100%
}

.news .r1 .inner .group .topItem .processBox > span {
    width: .4rem;
    text-align: center;
    line-height: 2
}

.news .r1 .inner .group .topItem .processBox > span#step-all {
    color: rgba(28, 80, 156, .4)
}

.news .r1 .inner .group .topItem .processBox .process {
    position: relative;
    flex: 1;
    height: 1px;
    background: rgba(28, 80, 156, .2);
    transform-origin: 0 50%;
    transform: scaleX(.01);
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99), opacity 1s cubic-bezier(.25, .74, .22, .99);
    opacity: 0;
    transition-delay: 1.5s
}

.news .r1 .inner .group .topItem .processBox .process .bar {
    background: #1c509c;
    transform: scaleX(.33);
    transform-origin: 0 50%
}

.news .r1 .inner .group .topItem .processBox .process.go {
    transform: none;
    opacity: 1
}

.news .r1 .inner .group .topItem .roll .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate;
    color: #00d2ff
}

.news .r1 .inner .group .topItem .roll .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.news .r1 .inner .group .topItem .roll .layer-btn > svg path {
    fill: #00d2ff
}

.news .r1 .inner .items {
    width: 70vw;
    padding: 4vw 0 10vw;
    flex: 1;
    display: grid;
    grid-auto-flow: column;
    justify-content: start;
    align-items: stretch;
    align-content: center
}

@media screen and (orientation: landscape) {
    .news .r1 .inner .items {
        grid-auto-flow: row;
        grid-template-columns:23% 23% 23% 23%;
        justify-content: space-between
    }
}

.news .r1 .inner .items .list {
    display: flex;
    background-color: #eff1f3;
    flex-direction: column;
    justify-content: space-between;
    width: 18vw;
    padding-bottom: 1vw
}

@media screen and (orientation: landscape) {
    .news .r1 .inner .items .list {
        width: auto;
        margin-bottom: 10%
    }
}

.news .r1 .inner .items .list > img {
    width: 100%;
    min-height: 70%;
    object-fit: cover;
    -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent)
}

.news .r1 .inner .items .list .msg {
    height: 30%;
    padding: 0 .3rem;
    width: 100%
}

.news .r1 .inner .items .list .msg small {
    display: block
}

.news .r1 .inner .items .list .msg h3 {
    margin-top: .2rem;
    width: 100%;
    font-size: .18rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.news .r1 .inner .items .list:nth-of-type(2) {
    background-color: #f8fcfd
}

.recruit {
    background-color: #fff
}

.recruit .r1 {
    height: auto;
    background-position: top;
    background-size: 100%;
    background-repeat: no-repeat
}

.recruit .r1 .inner {
    background-position: bottom;
    background-size: 100%
}

.recruit .r1 .inner .box {
    width: 76vw;
    margin: 0 auto;
    padding-top: 6vw
}

.recruit .r1 .inner .box .items {
    display: grid;
    grid-template-columns:46.67% 46.67%;
    justify-content: space-between;
    align-items: start;
    width: 100%;
    margin-top: -6.4vw
}

.recruit .r1 .inner .box .items .list {
    position: relative;
    background-color: #fff;
    min-height: 8rem;
    box-shadow: 0 .2rem .8rem -.1rem rgba(28, 80, 157, .18);
    display: grid;
    grid-auto-flow: row;
    justify-content: space-between;
    grid-template-rows:1fr;
    grid-template-columns:1fr
}

.recruit .r1 .inner .box .items .list > img {
    position: absolute;
    width: 100%;
    z-index: 2;
    top: 0;
    left: 0;
    mask-image: linear-gradient(0deg, hsla(0, 0%, 100%, 0), #fff 40%, #fff);
    -webkit-mask-image: linear-gradient(0deg, hsla(0, 0%, 100%, 0), #fff 40%, #fff)
}

.recruit .r1 .inner .box .items .list .set {
    position: relative;
    z-index: 2;
    min-height: 2.2rem
}

.recruit .r1 .inner .box .items .list .group {
    position: relative;
    z-index: 5;
    width: 100%;
    padding: 15% 10% 4%;
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0), #fff 20%, #fff)
}

.recruit .r1 .inner .box .items .list .group .top {
    display: grid;
    width: 100%;
    grid-template-columns:auto auto;
    justify-content: space-between;
    align-items: center
}

.recruit .r1 .inner .box .items .list .group .mid {
    padding-top: .4rem;
    width: 100%
}

.recruit .r1 .inner .box .items .list .group .mid p {
    color: #081121;
    line-height: 2;
    margin-bottom: .3rem
}

.recruit .r1 .inner .box .items .list:nth-of-type(2) {
    margin-top: 11.2vw
}

.recruit .r1 .inner .box .items:first-of-type {
    margin-top: 0
}

.recruit .r1 .inner .btm {
    display: grid;
    padding-top: 9vw;
    padding-bottom: 14vw;
    width: 76vw;
    margin: 0 auto;
    grid-template-columns:22% 22% 22% 22%;
    justify-content: space-between
}

.recruit .r1 .inner .btm .list .lazy {
    width: 100%;
    height: 10vw;
    background-position: 50%;
    background-repeat: no-repeat
}

.recruit .r1 .inner .btm .list .msg {
    text-align: center
}

.recruit .r1 .inner .btm .list .msg h3 {
    margin: 2.08vw 0
}

.recruit .r1 .inner .btm .list .msg p {
    color: #081121;
    line-height: 1.77
}

.recruit .r1 .inner .btm .list .msg b, .recruit .r1 .inner .btm .list .msg small {
    font-size: inherit;
    color: inherit
}


.company canvas {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    pointer-events: none
}

.company .r1 > .pic {
    width: 100%;
    height: 52vw;
    position: relative;
    max-height: 100vh
}

.company .r1 .inner {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.company .r2 {
    padding-top: 10.5vw
}

.company .r2 .inner {
    padding-top: 0
}

.company .r2 .inner .bg {
    pointer-events: none;
    z-index: 0;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%
}

.company .r2 .inner .group {
    display: grid;
    grid-template-columns:auto 34vw;
    justify-content: space-between;
    padding: 0 1rem;
    position: relative;
    z-index: 4
}

.company .r2 .inner .group .col {
    display: grid;
    justify-content: space-between;
    grid-auto-flow: row;
    align-content: space-between
}

.company .r2 .inner .group .col h2 {
    margin-bottom: 1vw
}

.company .r2 .inner .group .col > div {
    line-height: .95;
    text-transform: uppercase
}

.company .r2 .inner .group .col > div:nth-of-type(2) {
    text-align: right
}

.company .r2 .inner .group .col > div:nth-of-type(3) {
    text-align: center
}

.company .r2 .inner .part {
    width: 100%;
    overflow: hidden;
    z-index: 4;
    padding-bottom: 35%;
    position: relative
}

.company .r2 .inner .part > img {
    position: absolute;
    left: 0;
    top: 35%;
    width: 100%
}

.company .r2 .inner .chunk {
    padding: 8.8vw 1rem 3.5vw;
    position: relative;
    z-index: 4
}

.company .r2 .inner .chunk .top {
    display: grid;
    grid-template-columns:auto 33vw;
    justify-content: space-between
}

.company .r2 .inner .chunk .top h3 {
    line-height: 1.8;
    padding-right: 2vw
}

.company .r2 .inner .chunk .top b {
    font-size: inherit
}

.company .r2 .inner .chunk .mid {
    width: 33vw;
    display: grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr 1fr;
    margin: 6vw 0 14vw auto;
    height: 3.4rem
}

.company .r2 .inner .chunk .mid .list em {
    font-size: .9rem;
    margin-right: .3rem;
    color: #1c509c;
    line-height: 1
}

.company .r2 .inner .chunk .mid .list em small {
    font-family: inherit;
    font-size: inherit;
    color: inherit
}

.company .r2 .inner .chunk .mid .list sup {
    color: #1c509c;
    vertical-align: top;
    line-height: .45rem
}

.company .r2 .inner .chunk .mid .list > div {
    margin-top: .2rem;
    color: #081121
}

.company .r2 .inner .chunk .btm p {
    line-height: 1.8
}

.company .r3 .inner {
    padding-left: 0;
    padding-right: 0
}

.company .r3 .inner .bg {
    pointer-events: none;
    z-index: 0
}

.company .r3 .inner .bg #b1 {
    max-width: 1364px;
    width: 71vw;
    position: absolute;
    bottom: -10%;
    left: -40%
}

.company .r3 .inner .bg #b2 {
    max-width: 1284px;
    width: 66.8vw;
    position: absolute;
    right: -59%;
    top: -12%
}

.company .r3 .inner .group {
    padding: 5.8vw 2.1rem 0;
    display: grid;
    grid-template-columns:26vw calc(100% - 31vw);
    justify-content: space-between
}

.company .r3 .inner .group, .company .r3 .inner .group .col {
    position: relative;
    z-index: 4
}

.company .r3 .inner .group .col h2 {
    font-size: .72rem;
    margin-bottom: .2rem;
    line-height: 1.2;
    white-space: nowrap
}

.company .r3 .inner .group .col small {
    line-height: 1.2;
    display: block;
    margin-bottom: 7vw
}

.company .r3 .inner .group .col .part_1 {
    border-top-left-radius: 5rem;
    border-top-right-radius: 5rem;
    border-bottom-left-radius: 5rem;
    overflow: hidden;
    position: relative
}

.company .r3 .inner .group .col .part_1 > img {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.company .r3 .inner .group .col .part_2 {
    width: 100%;
    height: 19vw;
    border-top-left-radius: 5rem;
    border-top-right-radius: 5rem;
    border-bottom-right-radius: 5rem;
    overflow: hidden;
    position: relative
}

.company .r3 .inner .group .col .part_2 > img {
    height: calc(100% + 100px);
    position: absolute;
    right: 0;
    bottom: 0
}

.company .r3 .inner .group .col:nth-of-type(2) {
    display: grid;
    grid-template-columns:48% 48%;
    grid-template-rows:38vw;
    justify-content: space-between
}

.company .r3 .inner .group .col:nth-of-type(2) > div {
    position: relative
}

.company .r3 .inner .group .col:nth-of-type(2) p {
    padding: .4rem;
    width: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    line-height: 1.8
}

.company .r3 .inner .part .items .linkImg {
    display: none
}

.linkImg{
    display: none;
}

.company .r4 {
    overflow: visible
}

.company .r4 .inner {
    padding: 0
}

.company .r4 .content {
    height: 160vh;
    width: 100vw;
    position: relative
}

.company .r4 .content .sticky {
    position: sticky;
    height: 100vh;
    top: 0;
    width: 100%;
    overflow: hidden;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    background-color: #000
}

.company .r4 .content .sticky h2 {
    z-index: 20;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.company .r4 .content .sticky h2 .letter {
    color: #fff;
    line-height: 2;
    max-width: 46vw;
    font-size: .24rem;
    display: block;
    text-align: center;
    margin: 0 auto
}

.company .r4 .content .sticky h2 .letter.first {
    position: absolute;
    top: 10vw;
    right: 0;
    margin: 0 auto;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: .4rem
}

.company .r4 .content .sticky h2 .letter:nth-of-type(2) {
    font-weight: 100
}

.company .r4 .content .sticky .mask {
    background: transparent;
    position: absolute;
    z-index: 7;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-color: #fff;
    border-style: solid;
    border-width: 10vw 20vw
}

.proPage {
    background-color: #fff
}

.proPage .bgRow {
    position: relative;
    width: 100%;
    height: 100vh;
    z-index: 1
}

.proPage .bgRow .tsBox {
    opacity: 0;
    transition: opacity .3s cubic-bezier(.25, .74, .22, .99)
}

.proPage .bgRow .tsBox canvas {
    height: auto;
    width: 145%
}

.proPage .bgRow .tsBox.in {
    opacity: 1
}

.proPage .bgRow .tsBox:before {
    top: 0;
    bottom: 70vw;
    background: linear-gradient(180deg, #e9eef2, rgba(232, 237, 241, 0))
}

.proPage .bgRow .tsBox:after, .proPage .bgRow .tsBox:before {
    content: "";
    pointer-events: none;
    width: 100%;
    height: 12vw;
    position: absolute;
    z-index: 2;
    margin: auto 0;
    left: 0
}

.proPage .bgRow .tsBox:after {
    top: 70vw;
    bottom: 0;
    background: linear-gradient(0deg, #e9eef2, rgba(232, 237, 241, 0))
}

.proPage .bgRow #fn_1 {
    z-index: 3
}

.proPage .bgRow #fn_1 > video {
    object-fit: cover;
    z-index: 5
}

.proPage .bgRow #fn_1 .photo {
    z-index: 3
}

.proPage .bgRow #fn_1 > canvas {
    height: 100%;
    width: auto
}

.proPage .bgRow #fn_1 > div {
    visibility: hidden
}

.proPage .bgRow .inner {
    align-items: end;
    display: grid;
    width: 100%;
    height: 100%;
    padding: .72rem 1.1rem;
    z-index: 4;
    position: relative
}

.proPage .bgRow .inner .group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    width: 7.9rem
}

.proPage .bgRow .inner .group > span#step-3 {
    opacity: .2
}

.proPage .bgRow .inner .group .process {
    width: 7rem;
    position: relative;
    height: 1px;
    background: hsla(0, 0%, 100%, .2);
    transform-origin: 0 50%;
    transform: scaleX(.01);
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99), opacity 1s cubic-bezier(.25, .74, .22, .99);
    opacity: 0;
    transition-delay: 1.5s
}

.proPage .bgRow .inner .group .process .bar {
    background: #fff;
    transform: scaleX(.33);
    transform-origin: 0 50%
}

.proPage .bgRow .inner .group .process .dot {
    position: absolute;
    top: -2px;
    left: 33%;
    width: 1px;
    height: 5px;
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color .3s
}

.proPage .bgRow .inner .group .process .dot.on {
    background-color: #fff
}

.proPage .bgRow .inner .group .process .dot:nth-of-type(2) {
    left: 66%
}

.proPage .bgRow .inner .group .process.go {
    transform: none;
    opacity: 1
}

.proPage .bgRow .model {
    z-index: 5
}

.proPage .bgRow .model .media {
    z-index: 4;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat
}

.proPage .bgRow .model .media > video {
    object-fit: cover;
    opacity: 0
}

.proPage .bgRow .model .media > video.on {
    opacity: 1
}

.proPage .bgRow .model .media .tsBox, .proPage .bgRow .model .media .tsBox > div {
    opacity: 0
}

.proPage .bgRow .model .media .tsBox.on {
    opacity: 1
}

.proPage .bgRow .model .first {
    z-index: 5
}

.proPage .bgRow .model .first .pic {
    z-index: 1
}

.proPage .bgRow .model .first .pic video {
    object-fit: cover
}

.proPage .bgRow .model .first .box {
    z-index: 2
}

.proPage .bgRow .model .first .box .layer-col {
    opacity: 0;
    transform: translateY(100px);
    pointer-events: none;
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity .3s
}

.proPage .bgRow .model .first .box .layer-col:first-of-type {
    left: 18%;
    top: 36%
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(2) {
    left: 25%;
    top: 56%;
    transition-delay: .1s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(3) {
    left: 40%;
    top: 68%;
    transition-delay: .2s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(4) {
    left: 42%;
    top: 32%;
    transition-delay: .3s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(5) {
    left: 52%;
    top: 40%;
    transition-delay: .4s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(6) {
    left: 64%;
    top: 66%;
    transition-delay: .5s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(7) {
    left: 76%;
    top: 46%;
    transition-delay: .6s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(8) {
    transition-delay: .7s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(9) {
    transition-delay: .8s
}

.proPage .bgRow .model .first .box .layer-col:nth-of-type(10) {
    transition-delay: .9s
}

.proPage .bgRow .model .first .box.on .layer-col {
    opacity: 1;
    transform: none;
    pointer-events: auto;
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity 2s cubic-bezier(.25, .74, .22, .99)
}

.proPage .bgRow .model .child {
    z-index: 6;
    opacity: 0;
    visibility: hidden
}

.proPage .bgRow .model .child .page {
    opacity: 0
}

.proPage .bgRow .model .child .page .pic {
    z-index: 1
}

.proPage .bgRow .model .child .page .pic video {
    object-fit: cover
}

.proPage .bgRow .model .child .page .pageReturn {
    position: absolute;
    z-index: 5;
    left: 1.1rem;
    top: 1.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 1.5s cubic-bezier(.25, .74, .22, .99), transform 1.5s cubic-bezier(.25, .74, .22, .99)
}

.proPage .bgRow .model .child .page .pageReturn > i {
    color: #1c509c
}

.proPage .bgRow .model .child .page > .box {
    z-index: 2;
    pointer-events: none
}

.proPage .bgRow .model .child .page > .box .layer-col {
    z-index: 6;
    opacity: 0;
    transform: translateY(100px);
    transition: transform 2s cubic-bezier(.25, .74, .22, .99), opacity 2s cubic-bezier(.25, .74, .22, .99)
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(2) {
    transition-delay: .1s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(3) {
    transition-delay: .2s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(4) {
    transition-delay: .3s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(5) {
    transition-delay: .4s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(6) {
    transition-delay: .5s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(7) {
    transition-delay: .6s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(8) {
    transition-delay: .7s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(9) {
    transition-delay: .8s
}

.proPage .bgRow .model .child .page > .box .layer-col:nth-of-type(10) {
    transition-delay: .9s
}

.proPage .bgRow .model .child .page > .box.on {
    pointer-events: auto
}

.proPage .bgRow .model .child .page > .box.on + .pageReturn, .proPage .bgRow .model .child .page > .box.on .layer-col {
    opacity: 1;
    transform: none
}

.proPage .bgRow .model .child .page > .box .cover {
    z-index: 2
}

.proPage .bgRow .model .child .page .pop {
    z-index: 3;
    pointer-events: none
}

.proPage .bgRow .model .child .page.on {
    opacity: 1
}

.proPage .bgRow .model .total {
    z-index: 10;
    pointer-events: none
}

.proPage .bgRow .model .total .msg .list {
    position: absolute;
    left: 1.1rem;
    bottom: .72rem
}

.proPage .bgRow .model .total .msg .list h3 {
    line-height: 1;
    perspective: 500px
}

.proPage .bgRow .model .total .msg .list h3 .letter {
    opacity: 0
}

.proPage .bgRow .model .total .msg .list p {
    font-size: .66rem;
    margin-top: .2rem;
    perspective: 500px
}

.proPage .bgRow .model .total .msg .list p .letter {
    opacity: 0
}

.proPage .bgRow .model .total .msg:first-of-type {
    opacity: 1
}

.proPage .r1 {
    width: 100vw;
    height: 220vh;
    overflow: visible
}

.proPage .r1 .inner {
    position: sticky;
    height: 100vh;
    top: 0;
    width: 100%;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    overflow: hidden
}

.proPage .r1 .inner .bg {
    background-color: #000
}

.proPage .r1 .inner .bg .pic > img {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0
}

.proPage .r1 .inner .chunk {
    display: grid;
    grid-auto-flow: row;
    justify-content: center;
    align-content: center;
    padding-top: 1.1rem
}

.proPage .r1 .inner .chunk h2 {
    margin-bottom: .8rem;
    line-height: 1.2;
    text-align: center
}

.proPage .r1 .inner .chunk h2 .letter {
    opacity: 0
}

.proPage .r1 .inner .chunk p {
    text-align: center;
    margin-bottom: .5rem;
    line-height: 1.8;
    opacity: 0
}

.proPage .r2 {
    height: 140vh;
    overflow: visible;
    width: 100vw
}

.proPage .r2 .bg {
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    background-attachment: fixed
}

.proPage .r2 .inner {
    position: sticky;
    height: 100vh;
    top: 0;
    width: 100%;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto
}

.proPage .r2 .inner .page .pic {
    z-index: 1
}

.proPage .r2 .inner .page .pic video {
    object-fit: cover
}

.proPage .r2 .inner .page > .box {
    z-index: 2
}

.proPage .r2 .inner .page > .box .childBtn {
    position: absolute;
    left: 0;
    top: 0;
    cursor: pointer;
    height: .6rem
}

.proPage .r2 .inner .page > .box.on {
    pointer-events: auto
}

.proPage .r2 .inner .page > .box.on + .pageReturn, .proPage .r2 .inner .page > .box.on .layer-col {
    opacity: 1;
    transform: none
}

.proPage .r2 .inner .page > .box .cover {
    z-index: 2
}

.proPage .r2 .inner .page .pop {
    z-index: 3;
    pointer-events: none
}

.proPage .r2 .inner .page .pop .layer-pop {
    padding-top: 1.1rem;
    padding-bottom: .4rem;
    align-items: center
}

.proPage .r2 .inner .page.on {
    opacity: 1
}

.proPage .r3 {
    background-color: #fff
}

.proPage .r3 .inner {
    padding-top: 6.35vw;
    padding-bottom: 8.5vw;
    background-position: top;
    background-size: 100%;
    background-repeat: no-repeat
}

.proPage .r3 .inner .group, .proPage .r3 .inner .til {
    padding: 0 1rem
}

.proPage .r3 .inner .group .items {
    display: grid;
    margin-top: .75rem;
    grid-template-columns:32% 32% 32%;
    justify-content: space-between
}

.proPage .r3 .inner .group .items .list {
    background-color: #eef2f6;
    border-radius: .3rem;
    overflow: hidden;
    position: relative;
    margin-bottom: 1.4vw;
    display: block;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.proPage .r3 .inner .group .items .list .photo {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
    z-index: 1
}

.proPage .r3 .inner .group .items .list .photo .pic {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 68%;
    background-size: contain
}

.proPage .r3 .inner .group .items .list .msg {
    position: absolute;
    text-align: center;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    padding: 9% 5%
}

.proPage .r3 .inner .group .items .list .msg p {
    line-height: 1;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.proPage .r3 .inner .group .items .list .msg h3 {
    margin-top: .1rem;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.proPage .r3 .inner .group .items .list:hover {
    background-color: #7d98ba
}

.proPage .r3 .inner .group .items .list:hover .msg h3, .proPage .r3 .inner .group .items .list:hover .msg p {
    color: #fff
}

.proPage .r3 .inner .group .swiper-button-prev {
    width: .4rem;
    height: .6rem;
    z-index: 4;
    position: absolute;
    right: calc(7vw + .5rem)
}

.proPage .r3 .inner .group .swiper-button-prev:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid rgba(0, 0, 0, .5);
    border-right: 1px solid rgba(0, 0, 0, .5);
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

.proPage .r3 .inner .group .swiper-button-next {
    width: .4rem;
    height: .6rem;
    z-index: 4;
    position: absolute;
    right: 7vw
}

.proPage .r3 .inner .group .swiper-button-next:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid rgba(0, 0, 0, .5);
    border-right: 1px solid rgba(0, 0, 0, .5);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.product {
    background-color: #fff
}

.product .r1 {
    min-height: 100vh
}

.product .r1 .inner {
    padding-bottom: 8.5vw;
    position: relative
}

.product .r1 .inner .bg {
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    z-index: 2
}

.product .r1 .inner .topic {
    padding: 1.75rem 1rem 0;
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns:auto 25vw auto;
    justify-content: space-between
}

.product .r1 .inner .topic h1 {
    line-height: 1
}

.product .r1 .inner .topic h2 {
    margin-bottom: .6rem;
    line-height: 1.2rem
}

.product .r1 .inner .topic p {
    line-height: 1.8
}

.product .r1 .inner .topic .roll {
    margin-right: .3rem;
    margin-bottom: .3rem;
    margin-top: .2rem
}

.product .r1 .inner .topic .roll .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate;
    color: #00d2ff
}

.product .r1 .inner .topic .roll .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.product .r1 .inner .topic .roll .layer-btn > svg path {
    fill: #00d2ff
}

.product .r1 .inner .topic .search {
    position: absolute;
    left: 1.1rem;
    bottom: 10px;
    width: 24vw
}

.product .r1 .inner .items {
    margin-top: 1rem;
    position: relative;
    z-index: 4;
    padding: 0 1rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap
}

.product .r1 .inner .items .box {
    margin-bottom: 3.5vw;
    border-left: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    width: 83%;
    grid-template-columns:20% 20% 20% 20% 20%
}

.product .r1 .inner .items .box .tree {
    height: .6rem;
    padding: 0 2vw 0 3.6vw;
    border-bottom: 1px solid rgba(28, 80, 156, .15);
    border-right: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: center;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r1 .inner .items .box .tree:first-of-type, .product .r1 .inner .items .box .tree:nth-of-type(2), .product .r1 .inner .items .box .tree:nth-of-type(3), .product .r1 .inner .items .box .tree:nth-of-type(4), .product .r1 .inner .items .box .tree:nth-of-type(5) {
    border-top: 1px solid rgba(28, 80, 156, .15)
}

.product .r1 .inner .items .box .tree span {
    color: #2b3643
}

.product .r1 .inner .items .box .tree:hover {
    background-color: rgba(28, 80, 156, .05)
}

.product .r1 .inner .items .list {
    width: calc(50% - 10px);
    background-color: #eef2f6;
    border-radius: .3rem;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
    display: block;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r1 .inner .items .list .photo {
    width: 100%;
    padding-bottom: 70%;
    position: relative;
    z-index: 1
}

.product .r1 .inner .items .list .photo .pic {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 88%;
    height: 68%;
    background-size: contain
}

.product .r1 .inner .items .list .msg {
    position: absolute;
    text-align: center;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    padding: 8% 5%;
    transition: opacity .5s ease
}

.product .r1 .inner .items .list .msg p {
    line-height: 1;
    text-transform: uppercase
}

.product .r1 .inner .items .list .msg h3, .product .r1 .inner .items .list .msg p {
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99), color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r1 .inner .items .list .msg h3 {
    margin-top: .15rem
}

.product .r1 .inner .items .list .other {
    position: absolute;
    text-align: left;
    opacity: 0;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    padding: 8% 5%;
    display: grid;
    grid-template-columns:auto auto;
    justify-content: space-between;
    align-content: center;
    transition: opacity .5s ease
}

.product .r1 .inner .items .list .other p {
    line-height: 1;
    text-transform: uppercase
}

.product .r1 .inner .items .list .other h3, .product .r1 .inner .items .list .other p {
    color: #fff;
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99);
    transform: translateX(15%)
}

.product .r1 .inner .items .list .other h3 {
    margin-top: .15rem
}

.product .r1 .inner .items .list .other .layer-btn {
    margin-right: .3rem;
    transform: translateX(-15%);
    transition: transform 1.5s cubic-bezier(.25, .74, .22, .99)
}

.product .r1 .inner .items .list .other .layer-btn .mask:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff
}

@media screen and (orientation: landscape) {
    .product .r1 .inner .items .list:hover {
        background-color: #7d98ba
    }

    .product .r1 .inner .items .list:hover .msg {
        opacity: 0
    }

    .product .r1 .inner .items .list:hover .msg h3, .product .r1 .inner .items .list:hover .msg p {
        transform: translateX(-15%);
        color: #fff
    }

    .product .r1 .inner .items .list:hover .other {
        opacity: 1
    }

    .product .r1 .inner .items .list:hover .other .layer-btn, .product .r1 .inner .items .list:hover .other h3, .product .r1 .inner .items .list:hover .other p {
        transform: none
    }
}

.product .r2 .inner {
    padding-bottom: 8.5vw;
    position: relative
}

.product .r2 .inner .bg {
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    z-index: 2
}

.product .r2 .inner .topic {
    padding: 1.75rem 1rem 0;
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns:auto auto;
    justify-content: space-between
}

.product .r2 .inner .topic h1 {
    line-height: 1
}

.product .r2 .inner .topic p {
    line-height: 1.8
}

.product .r2 .inner .topic .roll {
    margin-right: .3rem;
    margin-bottom: .3rem;
    margin-top: .2rem
}

.product .r2 .inner .topic .roll .layer-btn .jump {
    animation: jump 1s cubic-bezier(.56, .01, .46, 1) infinite alternate;
    color: #00d2ff
}

.product .r2 .inner .topic .roll .layer-btn > svg {
    animation: jump_dot 1s cubic-bezier(.56, .01, .46, 1) infinite alternate
}

.product .r2 .inner .topic .roll .layer-btn > svg path {
    fill: #00d2ff
}

.product .r2 .inner .topic .search {
    position: absolute;
    left: 1.1rem;
    top: calc(100% + .1rem);
    width: 24vw
}

.product .r2 .inner .main {
    text-align: center;
    margin: 1.5rem 0 .5rem;
    position: relative;
    z-index: 5
}

.product .r2 .inner .main > img {
    display: block;
    max-width: 100%;
    margin: auto
}

.product .r2 .inner .items {
    padding: 0 1rem;
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap
}

.product .r2 .inner .items .box {
    margin-bottom: 3.5vw;
    border-left: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    width: 100%;
    grid-template-columns:20% 20% 20% 20% 20%
}

.product .r2 .inner .items .box .tree {
    height: .6rem;
    padding: 0 2vw 0 3.6vw;
    border-bottom: 1px solid rgba(28, 80, 156, .15);
    border-right: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: center;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r2 .inner .items .box .tree:first-of-type, .product .r2 .inner .items .box .tree:nth-of-type(2), .product .r2 .inner .items .box .tree:nth-of-type(3), .product .r2 .inner .items .box .tree:nth-of-type(4), .product .r2 .inner .items .box .tree:nth-of-type(5) {
    border-top: 1px solid rgba(28, 80, 156, .15)
}

.product .r2 .inner .items .box .tree span {
    color: #2b3643
}

.product .r2 .inner .items .box .tree:hover {
    background-color: rgba(28, 80, 156, .05)
}

.product .r2 .inner .items .list {
    width: 32%;
    background-color: #eef2f6;
    border-radius: .3rem;
    overflow: hidden;
    position: relative;
    margin-bottom: 1.4vw;
    display: block;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r2 .inner .items .list .photo {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
    z-index: 1
}

.product .r2 .inner .items .list .photo .pic {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 68%;
    background-size: contain
}

.product .r2 .inner .items .list .msg {
    position: absolute;
    text-align: center;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    padding: 9% 5%
}

.product .r2 .inner .items .list .msg p {
    line-height: 1;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r2 .inner .items .list .msg h3 {
    margin-top: .15rem;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r2 .inner .items .list:hover {
    background-color: #7d98ba
}

.product .r2 .inner .items .list:hover .msg h3, .product .r2 .inner .items .list:hover .msg p {
    color: #fff
}

.product .r3 {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #7d98ba
}

.product .r3 .inner .photo {
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    z-index: 2
}

.product .r3 .inner .topic {
    padding: 1.2rem 1rem 0;
    position: relative;
    z-index: 6;
    display: grid;
    grid-template-columns:auto;
    justify-content: space-between
}

.product .r3 .inner .topic h1 {
    line-height: 1
}

.product .r3 .inner .topic p {
    line-height: 1.8
}

.product .r3 .inner .topic .return {
    width: .6rem;
    height: .6rem;
    border-radius: .1rem;
    border: 2px solid hsla(0, 0%, 100%, .3);
    position: relative;
    margin-top: .6rem;
    cursor: pointer
}

.product .r3 .inner .topic .return:after {
    content: "";
    position: absolute;
    top: 0;
    left: 4px;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.product .r3 .inner .group {
    position: absolute;
    width: 100%;
    bottom: 8vw;
    left: 0;
    z-index: 5;
    text-align: center;
    padding: .5rem 2.2rem
}

.product .r3 .inner .group > img {
    height: 3.47rem;
    display: inline-block;
    max-height: 347px
}

.product .r3 .inner .group p {
    line-height: 1.8;
    width: 21vw;
    position: absolute;
    right: 2.2rem;
    bottom: 1rem;
    text-align: justify
}

.product .r4 {
    pointer-events: none
}

.product .r4 .clear {
    width: 100%;
    height: calc(100vh - 8vw);
    clear: both;
    pointer-events: none
}

.product .r4 .inner {
    padding: 0 2.1rem 8.5vw;
    pointer-events: auto
}

.product .r4 .inner .group {
    background-color: #fff;
    overflow: hidden;
    border-radius: .3rem
}

.product .r4 .inner .group .top {
    width: 100%;
    position: relative;
    height: .5rem;
    background-color: rgba(125, 152, 186, .08)
}

.product .r4 .inner .group .top:after {
    content: "";
    position: absolute;
    top: 0;
    left: 4px;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid rgba(28, 80, 156, .3);
    border-left: 1px solid rgba(28, 80, 156, .3);
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

.product .r4 .inner .group .til {
    margin: .6rem 0 .4rem;
    text-align: center
}

.product .r4 .inner .group .til p {
    line-height: 1
}

.product .r4 .inner .group .til h2 {
    margin-top: .15rem;
    line-height: 1.2
}

.product .r4 .inner .group .main {
    max-width: 12rem;
    width: 90%;
    margin: 0 auto;
    padding-bottom: 3vw
}

.product .r4 .inner .group .main > img {
    display: block;
    margin: 0 auto;
    max-width: 100%
}

.product .r4 .inner .group .main table {
    table-layout: fixed;
    width: 100%;
    max-width: 100%;
    min-width: 99%;
    margin: 0 auto
}

.product .r4 .inner .group .main table td, .product .r4 .inner .group .main table th {
    text-align: center;
    vertical-align: middle;
    line-height: 2;
    padding-top: 10px !important;
    padding-bottom: 10px !important
}

.product .r4 .inner .group .down {
    padding: 3vw 0;
    display: flex;
    justify-content: space-around;
    align-items: center
}

.product .r4 .inner .group .down > a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #7e98ba;
    padding: 1vw 3vw;
    border-radius: 10px;
    transition: background-color .3s ease-in-out
}

.product .r4 .inner .group .down > a > span {
    margin-right: 15px;
    color: #fff
}

.product .r4 .inner .group .down > a > i {
    color: #fff
}

.product .r4 .inner .group .down > a:hover {
    background-color: #1c509c
}

.product .r4 .inner .group .items {
    display: grid;
    margin-top: .75rem;
    position: relative;
    z-index: 4;
    padding: 0 1rem 5vw;
    grid-template-columns:24% 24% 24% 24%;
    justify-content: space-between
}

.product .r4 .inner .group .items .list {
    background-color: #eef2f6;
    border-radius: .3rem;
    overflow: hidden;
    position: relative;
    margin-bottom: 1.4vw;
    display: block;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r4 .inner .group .items .list .photo {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
    z-index: 1
}

.product .r4 .inner .group .items .list .photo .pic {
    position: absolute;
    bottom: 2vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 60%;
    background-size: contain
}

.product .r4 .inner .group .items .list .photo .set {
    position: absolute;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    bottom: 1vw;
    left: 0
}

.product .r4 .inner .group .items .list .photo .set > a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #7e98ba;
    margin: 0 .5vw;
    padding: .5vw 1vw;
    border-radius: 10px;
    transition: background-color .3s ease-in-out
}

.product .r4 .inner .group .items .list .photo .set > a > span {
    margin-right: 10px;
    color: #fff
}

.product .r4 .inner .group .items .list .photo .set > a > i {
    color: #fff
}

.product .r4 .inner .group .items .list .photo .set > a:hover {
    background-color: #1c509c
}

.product .r4 .inner .group .items .list .msg {
    position: absolute;
    text-align: center;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    padding: 9% 5%
}

.product .r4 .inner .group .items .list .msg p {
    line-height: 1;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.product .r4 .inner .group .items .list .msg h3 {
    margin-top: .15rem;
    transition: color .5s cubic-bezier(.25, .74, .22, .99)
}

.contact .r1 > .pic {
    width: 100%;
    height: 52vw;
    position: relative;
    max-height: 100vh
}

.contact .r1 .inner {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.contact .r1 .inner .group .col > span {
    display: block
}

.contact .r1 .inner .group .col h1 span {
    text-transform: none
}

.contact .r2 {
    height: 100vh;
    display: grid;
    padding-right: 5.7vw;
    align-content: center;
    justify-content: end;
    grid-template-columns:44.27vw;
    grid-template-rows:75vh
}

.contact .r2 .bg #map {
    z-index: 5
}

.contact .r2 .bg:after {
    content: "";
    z-index: 10;
    pointer-events: none;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0) 30%, #fff 70%)
}

.contact .r2 .inner {
    position: relative;
    z-index: 10;
    background-color: #fff;
    padding: 5vw 4vw 4vw
}

.contact .r2 .inner .box {
    display: grid;
    align-content: space-between;
    grid-auto-flow: row;
    height: 100%;
    grid-template-rows:auto auto 1fr
}

.contact .r2 .inner .box h2 {
    font-weight: 400
}

.contact .r2 .inner .box .line {
    width: 100%;
    margin: 2vw 0 4vw;
    display: block;
    background-color: #1c509c;
    height: 1px
}

.contact .r2 .inner .box .items {
    display: grid;
    grid-auto-flow: row;
    align-content: space-between
}

.contact .r2 .inner .box .items li {
    padding-left: 5vw;
    position: relative;
    cursor: pointer;
    margin-bottom: 1vw
}

.contact .r2 .inner .box .items li h3 {
    line-height: .4rem;
    margin-bottom: 2vw
}

.contact .r2 .inner .box .items li p {
    line-height: 1.8
}

.contact .r2 .inner .box .items li em {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1
}

.support .r1 > .pic {
    width: 100%;
    height: 52vw;
    position: relative;
    max-height: 100vh
}

.support .r1 .inner {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.support .r1 .inner .group .col > span {
    display: block
}

.support .r1 .inner .group .col h1 span {
    text-transform: none
}

.support .r2 {
    min-height: 100vh;
    height: 100vh;
    background-color: #fff;
    display: grid;
    padding-right: 5.7vw;
    align-content: center;
    justify-content: end;
    grid-template-columns:44.27vw;
    grid-template-rows:75vh
}

.support .r2 .bg {
    background-color: rgba(28, 80, 156, .05)
}

.support .r2 .bg .col {
    width: 50vw;
    display: grid;
    height: 100%;
    grid-template-columns:auto;
    justify-content: center;
    justify-items: center;
    align-content: center;
    align-items: center
}

.support .r2 .bg .col .map {
    position: relative
}

.support .r2 .bg .col .map > img {
    max-width: 752px;
    width: 32vw
}

.support .r2 .bg .col .map .dot {
    position: absolute
}

.support .r2 .bg .col .map .dot > img {
    position: relative;
    z-index: 6;
    width: .25rem;
    transition: transform .5s cubic-bezier(.25, .74, .22, .99)
}

.support .r2 .bg .col .map .dot:after {
    content: "";
    position: absolute;
    z-index: 2;
    width: 50%;
    height: 50%;
    left: 25%;
    top: 40%;
    border-radius: 50%;
    box-shadow: 0 .05rem .2rem rgba(28, 80, 156, .9), 0 .05rem .28rem rgba(0, 0, 0, .3)
}

.support .r2 .bg .col .map .dot.on > img {
    transform: scale(1.4)
}

.support .r2 .inner {
    position: relative;
    z-index: 10;
    background-color: #fff;
    padding: 5vw 4vw 4vw
}

.support .r2 .inner .box {
    display: grid;
    align-content: space-between;
    grid-auto-flow: row;
    height: 100%;
    grid-template-rows:auto auto 1fr
}

.support .r2 .inner .box h2 {
    font-weight: 600
}

.support .r2 .inner .box .line {
    width: 100%;
    margin: 2vw 0 4vw;
    display: block;
    background-color: #1c509c;
    height: 1px
}

.support .r2 .inner .box .items {
    display: grid;
    grid-auto-flow: row;
    align-content: space-between
}

.support .r2 .inner .box .items li {
    padding-left: 5vw;
    position: relative;
    margin-bottom: 1vw
}

.support .r2 .inner .box .items li h3 {
    line-height: .4rem;
    margin-bottom: 2vw
}

.support .r2 .inner .box .items li p {
    line-height: 1.8
}

.support .r2 .inner .box .items li em {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1
}

.support .r3 {
    min-height: 100vh;
    display: grid;
    padding: 0 5.7vw;
    background-color: #fff;
    align-content: center;
    justify-content: space-between;
    grid-template-columns:44vw;
    grid-auto-flow: column;
    grid-template-rows:auto
}

.support .r3 .bg {
    background-position: 0 100%;
    background-size: contain;
    background-repeat: no-repeat
}

.support .r3 .inner {
    position: relative;
    z-index: 10;
    padding: 0
}

.support .r3 .inner:first-of-type {
    padding: 0 5vw
}

.support .r3 .inner .box {
    display: grid;
    align-content: center;
    grid-auto-flow: row;
    height: 100%;
    grid-template-rows:auto auto auto
}

.support .r3 .inner .box h2 {
    font-weight: 600
}

.support .r3 .inner .box .line {
    width: 100%;
    margin: 2vw 0 4vw;
    display: block;
    background-color: #1c509c;
    height: 1px
}

.support .r3 .inner .box .items {
    display: grid;
    grid-auto-flow: row;
    align-content: space-between
}

.support .r3 .inner .box .items li {
    position: relative;
    margin-bottom: 6.25vw
}

.support .r3 .inner .box .items li:last-of-type {
    margin-bottom: 0
}

.support .r3 .inner .box .items li h3 {
    line-height: .4rem;
    margin-bottom: 2vw
}

.support .r3 .inner .box .items li p {
    line-height: 1.8
}

.support .r3 .inner .box .items li em {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1
}

.support .r3 .inner .box .photo {
    width: 44vw;
    height: 44vw;
    margin: 3.8vw 0;
    position: relative
}

.support .r4 {
    background-color: #fff;
    padding-top: 8vw;
    padding-bottom: 6vw
}

.support .r4 .topic {
    display: grid;
    justify-content: space-between;
    grid-template-columns:auto auto;
    margin-bottom: 3.6vw
}

.support .r4 .mid > div {
    display: inline-block
}

.support .r4 .mid > div.on .lab {
    border-color: #1c509c;
    color: #1c509c;
    background: rgba(28, 80, 156, .1)
}

.support .r4 .mid .lab {
    min-width: 1.2rem;
    padding: .2rem;
    font-weight: 600;
    background: rgba(28, 80, 156, .05);
    display: inline-block;
    border: 1px solid rgba(28, 80, 156, 0);
    border-radius: .1rem;
    cursor: pointer;
    color: rgba(28, 80, 156, .8);
    margin: 0 .2rem .2rem 0;
    transition: all .7s cubic-bezier(.25, .74, .22, .99)
}

.support .r4 .mid .lab:hover {
    border-color: #1c509c;
    background: rgba(28, 80, 156, .1)
}

.support .r4 .box {
    margin-top: 3.5vw;
    width: 100%;
    border-left: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    grid-template-columns:33.3333333333% 33.3333333333% 33.3333333333%
}

.support .r4 .box .tree {
    height: 1.1rem;
    padding: 0 2vw 0 3.6vw;
    border-bottom: 1px solid rgba(28, 80, 156, .15);
    border-right: 1px solid rgba(28, 80, 156, .15);
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
    align-items: center;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99)
}

.support .r4 .box .tree:first-of-type, .support .r4 .box .tree:nth-of-type(2), .support .r4 .box .tree:nth-of-type(3) {
    border-top: 1px solid rgba(28, 80, 156, .15)
}

.support .r4 .box .tree span {
    color: #2b3643
}

.support .r4 .box .tree:hover {
    background-color: rgba(28, 80, 156, .05)
}

.support .r5 {
    padding-top: 6.25vw;
    background-color: #f6f8fb;
    padding-bottom: 4vw
}

.support .r5 .topic {
    margin-bottom: 4vw;
    text-align: center
}

.support .r5 .mid .items {
    display: grid;
    justify-content: space-between;
    grid-template-columns:48% 48%;
    align-items: end;
    overflow: hidden
}

.support .r5 .mid .items > li {
    display: grid;
    padding: 2.5vw 0;
    position: relative;
    grid-template-columns:auto auto;
    cursor: pointer;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(28, 80, 156, .2)
}

.support .r5 .mid .items > li .key {
    position: absolute;
    left: 0;
    font-weight: 600;
    top: calc(2.5vw + .2rem);
    opacity: 0;
    transform: translateY(.2rem)
}

.support .r5 .mid .other {
    padding-top: 2.5vw;
    text-align: center
}

.support .r5 .mid .other .moreItem {
    display: grid;
    align-items: center;
    justify-content: center;
    grid-auto-flow: column;
    width: 2rem;
    margin: auto
}

.support .r5 .mid .other .moreItem span {
    font-weight: 600;
    margin-right: .3rem
}

.support .r5 .mid .other .moreItem > i {
    color: rgba(28, 80, 156, .5);
    padding-top: 6px;
    text-shadow: 0 -8px 1px rgba(28, 80, 156, .2)
}

.support .r6 {
    padding-top: 6.25vw;
    padding-bottom: 8vw;
    background-size: 100% 100%
}

.support .r6 .topic {
    margin-bottom: 3vw;
    text-align: center
}

.support .r6 .mid form {
    display: grid;
    align-content: start;
    justify-items: center
}

.support .r6 .mid form textarea {
    width: 52vw;
    padding: 1vw;
    background: #f6f8fb;
    margin-bottom: 3vw;
    border: none
}

.support .r6 .mid form input[type=submit] {
    border-radius: 2rem;
    width: 3rem;
    height: 1rem;
    font-weight: 600;
    background: #1c509c;
    color: #fff;
    border: 1px solid transparent;
    transition: background-color .5s cubic-bezier(.25, .74, .22, .99), border-color .5s cubic-bezier(.25, .74, .22, .99)
}

.support .r6 .mid form input[type=submit]:hover {
    border-color: #fff;
    background-color: #183a6a
}

.strength {
    background-color: #fff
}

.strength .r1 > .pic {
    width: 100%;
    height: 52vw;
    position: relative;
    max-height: 100vh
}

.strength .r1 .inner {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.strength .r1 .inner .group .col > span {
    display: block
}

.strength .r1 .inner .group .col h1 span {
    text-transform: none
}

.strength .r2 {
    padding-top: 15.625vw
}

.strength .r2 .bg {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.strength .r2 .inner {
    display: grid;
    width: 100%;
    padding: 1.4rem 1.1rem;
    justify-content: space-between;
    position: relative;
    z-index: 10;
    align-items: stretch;
    grid-auto-flow: column
}

.strength .r2 .inner .topic {
    width: 40vw;
    padding-left: 1rem
}

.strength .r2 .inner .topic h2 {
    line-height: 1.5;
    margin-bottom: 3.5vw
}

.strength .r2 .inner .topic p {
    line-height: 2
}

.strength .r2 .inner .group {
    padding-top: 8.75vw;
    display: grid;
    justify-content: end;
    grid-auto-flow: column
}

.strength .r2 .inner .group .photo {
    width: 18.23vw;
    margin-left: .2rem
}

.strength .r2 .inner .group .photo .pic {
    padding-bottom: 128.57%
}

.strength .r2 .inner:first-of-type {
    padding-bottom: .2rem;
    overflow: hidden
}

.strength .r2 .inner:nth-of-type(2) {
    padding-top: 0;
    overflow: hidden
}

.strength .r2 .inner:nth-of-type(2) .photo {
    width: 69.27vw
}

.strength .r2 .inner:nth-of-type(2) .photo .pic {
    width: 100%;
    padding-bottom: 60.1%
}

.strength .r2 .inner:nth-of-type(3) {
    grid-template-columns:50% 50%;
    overflow: hidden
}

.strength .r2 .inner:nth-of-type(3) .col1 {
    display: grid;
    justify-content: start;
    grid-auto-flow: column
}

.strength .r2 .inner:nth-of-type(3) .col1 .photo {
    width: 18.23vw;
    margin-right: .2rem;
    background: #eef2f6
}

.strength .r2 .inner:nth-of-type(3) .col1 .photo .pic {
    padding-bottom: 128.57%;
    background-size: 100%;
    background-position: 50%
}

.strength .r2 .inner:nth-of-type(3) .col2 {
    position: relative
}

.strength .r2 .inner:nth-of-type(3) .col2 p {
    line-height: 2;
    width: 36vw
}

.strength .r2 .inner:nth-of-type(3) .col2 p b {
    font-size: inherit
}

.strength .r2 .inner:nth-of-type(3) .col2 .layer-btn {
    position: absolute;
    bottom: .3rem;
    left: .3rem
}

.strength .r2 .inner:nth-of-type(3) .col2 .layer-btn .mask:after {
    border-top: 2px solid #1c509c;
    border-right: 2px solid #1c509c
}

.strength .r2 .inner:nth-of-type(4) {
    padding: 0
}

.strength .r2 .inner:nth-of-type(4) .content {
    height: 160vh;
    width: 100vw;
    position: relative
}

.strength .r2 .inner:nth-of-type(4) .content .sticky {
    position: sticky;
    height: 100vh;
    top: 0;
    width: 100%;
    overflow: hidden;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    background-color: #000
}

.strength .r2 .inner:nth-of-type(4) .content .sticky h2 {
    z-index: 20;
    display: grid;
    align-content: center;
    align-items: center
}

.strength .r2 .inner:nth-of-type(4) .content .sticky h2 .letter {
    color: #fff;
    line-height: 2;
    display: block
}

.strength .r2 .inner:nth-of-type(4) .content .sticky .photo {
    opacity: .5
}

.strength .r2 .inner:nth-of-type(4) .content .sticky .mask {
    background: transparent;
    position: absolute;
    z-index: 7;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-color: #fff;
    border-style: solid;
    border-width: 10vw 20vw
}

.strength .r3 {
    overflow: visible
}

.strength .r3 .inner {
    display: grid;
    width: 100%;
    justify-content: space-between;
    position: relative;
    z-index: 10;
    align-items: stretch;
    grid-auto-flow: column;
    padding: 0
}

.strength .r3 .inner .content {
    height: 160vh;
    width: 100vw;
    position: relative
}

.strength .r3 .inner .content .sticky {
    position: sticky;
    height: 100vh;
    top: 0;
    width: 100%;
    overflow: hidden;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    background-color: #000
}

.strength .r3 .inner .content .sticky h2 {
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

.strength .r3 .inner .content .sticky h2 .letter {
    color: #fff;
    line-height: 1;
    display: block
}

.strength .r3 .inner .content .sticky .mask {
    background: transparent;
    position: absolute;
    z-index: 7;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-color: #fff;
    border-style: solid;
    border-width: 10vw 20vw
}

.newDetail .r1 > .pic {
    width: 100%;
    height: 33.85vw;
    position: relative;
    max-height: 100vh
}

.newDetail .r1 .inner {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.newDetail .r1 .inner .group {
    display: grid;
    max-width: 1000px;
    margin: 0 auto;
    grid-template-columns:100%;
    grid-auto-flow: row;
    justify-content: start;
    align-content: end
}

.newDetail .r1 .inner .group h1 {
    line-height: 1.33;
    margin-bottom: .3rem
}

.newDetail .r2 {
    padding-top: 5.7vw;
    padding-bottom: 6.4vw;
    background-color: #fff
}

.newDetail .r2 .details {
    max-width: 900px;
    margin: auto
}

.newDetail .r2 .details p {
    line-height: 2;
    margin-bottom: 3vw
}

.newDetail .r2 .details img {
    margin: 0 auto 3vw;
    display: block;
    max-width: 100%
}

.newDetail .r2 .roll {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    margin-right: .3rem;
    margin-bottom: .3rem
}

.newDetail .r2 .roll .layer-btn .jump {
    color: #00d2ff
}

@media screen and (orientation: landscape) {
    .app {
        display: none !important
    }

    .en_lang .support .r2 .inner .box .line {
        margin: 2vw 0 3vw
    }

    .en_lang .support .r2 .inner .box .items li {
        margin-bottom: 2vw
    }

    .en_lang .support .r2 .inner .box .items li h3 {
        margin-bottom: 1vw
    }

    .en_lang .contact .r2 .inner .box .line {
        margin: 2vw 0 3vw
    }

    .en_lang .contact .r2 .inner .box .items li {
        margin-bottom: 2vw
    }

    .en_lang .contact .r2 .inner .box .items li h3 {
        margin-bottom: 1vw
    }

    .en_lang .strength .r3 .inner .content .sticky h2 {
        padding: 0 10vw
    }

    .en_lang .strength .r3 .inner .content .sticky h2 .letter {
        line-height: 1.6
    }

    .en_lang .product .r1 .inner .topic h2 {
        height: 0;
        opacity: 0
    }
}

@media screen and (orientation: portrait) {
    .pc {
        display: none !important
    }

    .maxSize {
        width: 86%
    }

    .layer-btn {
        width: 13vw;
        height: 13vw
    }

    .layer-pop {
        padding-left: 7vw;
        padding-right: 7vw
    }

    .layer-pop .wrap {
        width: 86vw
    }

    .layer-pop .wrap .part {
        padding: .5rem .4rem
    }

    .layer-pop .wrap .part p {
        height: auto;
        padding-bottom: 5vw;
        min-height: 0
    }

    .layer-col .mask {
        height: .8rem
    }

    .layer-btn .mask > svg {
        width: calc(100% - 6vw);
        height: calc(100% - 6vw)
    }

    .layer-btn .mask:after {
        width: 2.5vw;
        height: 2.5vw
    }

    .afterInner .row .afterFirst .group .col h1 span:before, .en_b:before, .en_r:before {
        content: "";
        display: inline-block;
        vertical-align: middle;
        width: 0;
        height: 100%;
        margin-top: 1px
    }

    .f-80 {
        font-size: 8.5vw
    }

    .f-60 {
        font-size: 8vw
    }

    .f-48 {
        font-size: 7vw
    }

    .f-26 {
        font-size: 4.26vw
    }

    .company .r2 .inner .chunk .mid .list > div, .company .r2 .inner .chunk .mid .list sup, .f-18, .f-20 {
        font-size: 3.7vw
    }

    .lh-20 {
        line-height: 1.6
    }

    .layer-col {
        background-size: contain
    }

    .layer-col > img {
        width: 28vw
    }

    .layer-col .mask {
        border-radius: 50px
    }

    .layer-col .mask small {
        line-height: 1
    }

    .letter {
        min-width: 5px;
        backface-visibility: hidden
    }

    body .nav {
        padding: 0 7vw
    }

    body .nav .logo {
        width: 20vw
    }

    body .nav .logo .logoB {
        width: 100%
    }

    body .nav nav.app-nav .inner_mid .nav-items > .child_first > .firstList > a {
        height: 55px;
        line-height: 55px;
        font-size: 16px
    }

    body #bloc .wrapper .rowFoot {
        height: auto
    }

    body #bloc .wrapper .rowFoot .inner .part {
        padding: 16vw 7vw 7vw;
        flex-wrap: wrap;
        background-size: cover;
        background-position: 80% 0
    }

    body #bloc .wrapper .rowFoot .inner .part .items > img {
        width: 86vw;
        padding: 0 20vw
    }

    body #bloc .wrapper .rowFoot .inner .part .items:first-of-type {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap
    }

    body #bloc .wrapper .rowFoot .inner .part .items .inter {
        margin: 0 .15rem .2rem
    }

    body #bloc .wrapper .rowFoot .inner .part .items .inter > a > i {
        color: hsla(0, 0%, 100%, .5);
        font-size: 16px
    }

    body #bloc .wrapper .rowFoot .inner .part .items .inter > a {
        width: 1rem;
        height: 1rem
    }

    body #bloc .wrapper .rowFoot .inner .part .items:nth-of-type(2) {
        display: none
    }

    body #bloc .wrapper .rowFoot .inner .part .items:nth-of-type(3) {
        width: 100%;
        display: none
    }

    body #bloc .wrapper .rowFoot .inner .part .items:nth-of-type(3) > ul {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center
    }

    body #bloc .wrapper .rowFoot .inner .part .items:nth-of-type(4) {
        width: 100%
    }

    body #bloc .wrapper .rowFoot .inner .part .items > img {
        width: 100vw;
        margin: .4rem auto;
        display: block;
        padding: 0 25vw
    }

    body #bloc .wrapper .rowFoot .inner .part .items p.en_r {
        text-align: center
    }

    body #bloc .wrapper .rowFoot .inner .part .items .inter > a .wm > img {
        width: 2rem;
        height: 2rem
    }

    .afterInner .row .afterFirst .group .col small {
        font-size: 26px
    }

    .home .tree {
        display: none
    }

    .home .bgRow .inner {
        padding: .72rem 7vw
    }

    .home .bgRow .inner .group .process {
        width: 72vw
    }

    .home .bgRow .inner .group {
        width: 86vw
    }

    .home .bgRow .inner .group #barNum, .home .bgRow .inner .group #step-3 {
        animation: none
    }

    .home .bgRow .model {
        background-color: #e8edf1
    }

    .home .bgRow .model .first .box {
        display: flex;
        justify-content: flex-start;
        height: 60vw;
        top: auto;
        bottom: 0;
        align-items: center;
        width: 100vw;
        right: 0;
        margin: 0 auto
    }

    .home .bgRow .model .first .box .layer-col {
        position: relative;
        margin: 0 15px;
        left: auto !important;
        top: auto !important
    }

    .home .bgRow .model .first .box .layer-col .mask {
        height: .85rem;
        width: 2.4rem
    }

    .home .bgRow .model .child .page > .box {
        display: grid;
        grid-template-columns:35vw 35vw;
        grid-template-rows:18vw;
        align-items: start;
        justify-content: space-between;
        align-content: center;
        height: 32vw;
        top: 50vw;
        width: 86vw;
        right: 0;
        margin: 0 auto
    }

    .home .bgRow .model .child .page > .box .layer-col {
        position: relative;
        left: auto !important;
        top: auto !important
    }

    .home .bgRow .model .child .page .pageReturn {
        left: auto;
        right: 7vw;
        top: 21vw
    }

    .home .bgRow .model .child .page > .box.on .layer-col > img {
        width: 35vw
    }

    .home .bgRow .model .child .page .pic, .home .bgRow .model .media {
        background-size: 145%
    }

    .home .bgRow .model .child .page .pic:before {
        top: 0;
        bottom: 70vw;
        background: linear-gradient(180deg, #e9eef2, rgba(232, 237, 241, 0))
    }

    .home .bgRow .model .child .page .pic:after, .home .bgRow .model .child .page .pic:before {
        content: "";
        pointer-events: none;
        width: 100%;
        height: 12vw;
        position: absolute;
        z-index: 1;
        margin: auto 0;
        left: 0
    }

    .home .bgRow .model .child .page .pic:after {
        top: 70vw;
        bottom: 0;
        background: linear-gradient(0deg, #e9eef2, rgba(232, 237, 241, 0))
    }

    .home #banner .inner .group > img {
        width: 86vw
    }

    .home #banner .inner .group h1 small {
        display: none
    }

    .home #banner .inner .group {
        height: 100%;
        padding-bottom: 1.5rem;
        padding-top: 50vw;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-end
    }

    .home #banner .inner .bannerRight {
        display: none;
        bottom: 30vw;
        right: calc(7vw + .3rem);
        top: 0;
        margin: auto;
        height: 13vw
    }

    .home .bgRow .model .total .msg .list {
        left: 7vw;
        bottom: auto;
        top: 22vw
    }

    .home .bgRow .model .total .msg .list p {
        font-size: 8.5vw;
        line-height: 1
    }

    .home .bgRow .model .first .pic {
        background-size: 145%;
        background-color: #e8edf1
    }

    .home .r1 {
        overflow: visible
    }

    .home .r1 .inner .group {
        grid-auto-flow: row;
        grid-template-columns:1fr
    }

    .home #banner .inner, .home .row .inner {
        padding: .72rem 7vw
    }

    .home .r1 .inner .group > .col {
        width: 100%
    }

    .home .r1 .inner .group .col h2 {
        font-size: 14vw
    }

    .home .r1 .inner .group .col h3 {
        font-size: 8vw
    }

    .home .r1 .inner .group .col p {
        font-size: 3.73vw;
        line-height: 1.5
    }

    .home .r2 {
        height: 110vw;
        overflow: visible;
        width: 100%
    }

    .home .r2 .inner .til h2 {
        font-size: 11vw;
        line-height: 1;
        margin-bottom: 5vw
    }

    .home .r2 .inner {
        grid-template-columns:86vw
    }

    .home .r2 .inner .til h2 .letter:nth-of-type(6) {
        display: block
    }

    .company .home .r2 .inner .box .col .chunk .mid .list em, .company .home .r2 .inner .chunk .mid .list .box .col em, .home .company .r2 .inner .box .col .chunk .mid .list em, .home .company .r2 .inner .chunk .mid .list .box .col em, .home .r2 .inner .box .col .num_b {
        font-size: 8.5vw
    }

    .company .home .r2 .inner .box .col .chunk .mid .list em > em, .company .home .r2 .inner .chunk .mid .list .box .col em > em, .home .company .r2 .inner .box .col .chunk .mid .list em > em, .home .company .r2 .inner .chunk .mid .list .box .col em > em, .home .r2 .inner .box .col .num_b > em {
        top: 1vw
    }

    .home .r2 .inner .layer-btn {
        bottom: -1.5rem;
        right: calc(7vw + .3rem)
    }

    .home .r4 .inner .group {
        width: 86vw
    }

    .home .r4 .inner .group .til {
        width: 100%;
        margin-bottom: 15vw
    }

    .home .r4 .inner .group .til h2 {
        display: flex;
        justify-content: flex-start;
        align-items: center
    }

    .home .r4 .inner .group .layer-btn {
        display: none
    }

    .home .r4 .inner .part {
        width: 100vw;
        bottom: auto;
        grid-auto-flow: column;
        grid-template-columns:auto;
        padding-left: 6vw
    }

    .home .r4 .inner .part .list {
        width: 80vw;
        padding: 0
    }

    .home .r4 .inner .other {
        display: none
    }

    .home .r4 .inner .part .list .msg {
        height: auto;
        padding-bottom: 10vw;
        position: relative;
        z-index: 10
    }

    .home .r4 .inner .part .list .msg h3 {
        white-space: normal;
        font-size: 18px
    }

    .home .r5 {
        height: auto
    }

    .home .r5 .inner {
        padding: 0;
        display: block
    }

    .home .r5 .inner .group {
        height: 60vw;
        padding-top: 0
    }

    .home .r5 .inner .group .items {
        display: grid;
        grid-auto-flow: column
    }

    .home .r5 .inner .group .items .list {
        width: 50vw
    }

    .home .r5 .inner .part {
        padding: 15vw 7vw 7vw;
        flex-wrap: wrap;
        background-position-x: 80%
    }

    .home .r5 .inner .part .items:first-of-type {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center
    }

    .home .r5 .inner .part .items .inter {
        margin: 0 .15rem .2rem
    }

    .home .r5 .inner .part .items .inter > a > i {
        color: hsla(0, 0%, 100%, .5);
        font-size: 16px
    }

    .home .r5 .inner .part .items .inter > a {
        width: 1rem;
        height: 1rem
    }

    .home .r5 .inner .part .items:nth-of-type(2) {
        display: none
    }

    .home .r5 .inner .part .items:nth-of-type(3) {
        width: 100%;
        display: none
    }

    .home .r5 .inner .part .items:nth-of-type(3) > ul {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center
    }

    .home .r5 .inner .part .items:nth-of-type(4) {
        width: 100%
    }

    .home .r5 .inner .part .items > img {
        width: 100vw;
        padding: 0 25vw;
        margin: .4rem auto;
        display: block
    }

    .home .r5 .inner .part .items p.en_r {
        text-align: center
    }

    .afterInner .row .afterFirst .group .col h1 span, .f-120 {
        font-size: 9vw
    }

    .afterInner, .afterInner .wrapper {
        width: 100vw
    }

    .afterInner .row .afterFirst .group .col h1 span {
        margin-right: 1px
    }

    .afterInner .row .afterFirst .group .col h1 span svg {
        width: 8.5vw;
        height: 8.5vw
    }

    .afterInner .row .afterFirst .group .col > div img {
        width: 10px
    }

    .afterInner .row .inner {
        padding: .5rem 7vw
    }

    .afterInner .row .afterFirst .group .col > div img {
        vertical-align: middle
    }

    .afterInner .row .afterFirst .group .col .roll {
        margin-right: -.1rem
    }

    .afterInner .row .afterFirst .group .col h1 span {
        font-size: 7vw;
        min-width: 0
    }

    #Leave {
        bottom: 50vw
    }

    .company .r1 > .pic {
        height: 108vw
    }

    .company .r2 .inner .group {
        grid-template-columns:100%;
        padding: 0
    }

    .company .r2 .inner .group .col {
        grid-template-columns:86vw
    }

    .company .r2 .inner .group .col:first-of-type {
        margin-bottom: 10vw
    }

    .company .r2 .inner .group .col > div {
        line-height: 1.1
    }

    .company .r2 .inner .group .col > h2 {
        margin-bottom: 6vw
    }

    .company .r2 .inner .group .col > div:nth-of-type(2), .company .r2 .inner .group .col > div:nth-of-type(3) {
        text-align: left
    }

    .company .r2 .inner .part {
        padding-bottom: 60%
    }

    .company .r2 .inner .chunk {
        padding: 10vw 0 5vw
    }

    .company .r2 .inner .chunk .top {
        grid-template-columns:86vw
    }

    .company .r2 .inner .chunk .top h3 {
        line-height: 1.2;
        margin-bottom: 6vw
    }

    .company .r2 .inner .chunk .mid {
        width: 86vw;
        margin-top: 16vw;
        margin-bottom: 16vw
    }

    .company .r2 .inner .chunk .mid .list {
        margin-bottom: 10vw
    }

    .company .r2 .inner .chunk .btm p {
        line-height: 1.5;
        font-size: 3.2vw
    }

    .company .r3 .inner .group {
        padding: 8vw 0 0;
        grid-template-columns:86vw
    }

    .company .r3 .inner .group .col:first-of-type {
        margin-bottom: 10vw
    }

    .company .r3 .inner .group .col:nth-of-type(2) {
        grid-template-rows:60vw
    }

    .company .r3 .inner .group .col .part_1 {
        border-radius: .25rem
    }

    .company .r3 .inner .group .col .part_2 {
        height: 60vw;
        border-radius: .25rem
    }

    .company .r3 .inner .group .col .part_1 > img {
        width: calc(100% + 20vw);
        object-fit: cover
    }

    .company .r3 .inner .group .col:nth-of-type(2) {
        padding-bottom: 30vw
    }

    .company .r3 .inner .group .col:nth-of-type(2) p {
        width: 86vw;
        line-height: 1.5;
        bottom: auto;
        top: 100%;
        padding: .4rem 0;
        text-align: justify
    }


    .company .r4 .inner {
        padding: 0
    }

    .company .r4 .content .sticky h2 .letter.first {
        top: 35vw
    }

    .company .r4 .content .sticky h2 .letter {
        max-width: 80vw;
        font-size: 14px
    }

    .product .r1 .inner .items .list .photo {
        padding-bottom: 130%
    }

    .product .r3 .inner .topic {
        padding: 1.2rem 0 0
    }

    .product .r3 .inner .topic h1 {
        font-size: 6vw
    }

    .product .r3 .inner .group {
        padding: 0;
        position: relative;
        width: 100%;
        bottom: auto
    }

    .product .r3 .inner .group > img {
        width: 120vw;
        height: auto;
        max-height: 100vh;
        margin-left: -10vw
    }

    .product .r3 .inner .group p {
        position: relative;
        width: 86vw;
        right: auto;
        bottom: auto;
        line-height: 1.5;
        text-align: justify
    }

    .product .r4 .inner .group .til {
        margin: .6rem 0
    }

    .product .row.r4 .inner {
        padding-bottom: 15vw
    }

    .product .r4 .inner .group .main {
        overflow-x: auto
    }

    .product .r4 .inner .group .main table {
        min-width: 1000px
    }

    .news .r1 {
        height: auto !important
    }

    .news .r1 .inner {
        height: 100%
    }

    .news .r1 .inner .group {
        width: 86vw;
        padding-top: 1.2rem;
        align-items: end
    }

    .news .r1 .inner .group .topItem {
        height: 12vw
    }

    .news .r1 .inner .group .topItem .processBox {
        right: 0;
        width: 42vw;
        display: none
    }

    .news .r1 .inner .group .topItem .processBox > span {
        width: .8rem
    }

    .news .r1 .inner .group .topItem .roll {
        display: none
    }

    .news .r1 .inner .items {
        width: 86vw;
        align-content: center;
        display: block;
        padding-top: 10vw
    }

    .news .r1 .inner .items .list {
        width: 86vw;
        height: 55vh;
        margin-bottom: 5vw
    }

    .news .r1 .inner .items .list .msg h3 {
        font-size: 14px;
        white-space: inherit;
        line-height: 24px;
        height: 48px;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2
    }

    .product .r1 .inner .topic .search {
        width: 100%;
        left: 0;
        bottom: -.8rem
    }

    .search input[type=submit], .search input[type=text] {
        height: .6rem
    }

    .product .row.r1 .inner {
        padding-bottom: 10vw
    }

    .product .r1 .inner .topic {
        padding: 2rem 0 0;
        grid-template-columns:100%
    }

    .product .r1 .inner .topic .roll {
        display: none
    }

    .product .r1 .inner .items {
        padding: 0;
        grid-template-columns:100%
    }

    .product .r1 .inner .items .list .photo .pic {
        height: 70%;
        background-size: 160%
    }

    .product .r1 .inner .items .box {
        grid-template-columns:25% 25% 25% 25%
    }

    .product .r1 .inner .items .box .tree {
        height: .7rem
    }

    .product .r1 .inner .topic h1 {
        font-size: 14vw
    }

    .product .row.r2 .inner {
        padding-bottom: 10vw
    }

    .product .r2 .inner .items .box {
        grid-template-columns:25% 25% 25% 25%
    }

    .product .r2 .inner .items .box .tree {
        height: .7rem
    }

    .product .r2 .inner .topic {
        padding: 2rem 0 0;
        grid-template-columns:100%
    }

    .product .r2 .inner .topic .roll {
        display: none
    }

    .product .r2 .inner .items {
        padding: 0;
        grid-template-columns:100%
    }

    .product .r2 .inner .items .list {
        margin-bottom: 4vw;
        width: 48%
    }

    .product .r2 .inner .items .list .photo {
        padding-bottom: 130%
    }

    .product .r2 .inner .items .list .photo .pic {
        background-size: 120%;
        height: 58%
    }

    .product .r2 .inner .topic .search {
        width: 100%;
        left: 0
    }

    .product .r4 .inner .group .down {
        padding: 5vw 0 7vw
    }

    .product .r4 .inner .group .down > a {
        padding: 3vw 5vw
    }

    .product .r4 .inner .group .down > a > span {
        margin-right: 6px
    }

    .proPage .bgRow .inner {
        padding: .72rem 7vw
    }

    .proPage .bgRow .inner .group .process {
        width: 72vw
    }

    .proPage .bgRow .inner .group {
        width: 86vw
    }

    .proPage .bgRow .inner .group #barNum, .proPage .bgRow .inner .group #step-3 {
        animation: none
    }

    .proPage .bgRow .model {
        background-color: #e8edf1
    }

    .proPage .bgRow .model .first .box {
        display: flex;
        justify-content: flex-start;
        height: 60vw;
        top: auto;
        bottom: 0;
        align-items: center;
        width: 100vw;
        right: 0;
        margin: 0 auto
    }

    .proPage .bgRow .model .first .box .layer-col {
        position: relative;
        margin: 0 15px;
        left: auto !important;
        top: auto !important
    }

    .proPage .bgRow .model .first .box .layer-col .mask {
        height: .85rem;
        width: 2.4rem
    }

    .proPage .bgRow .model .child .page > .box {
        display: grid;
        grid-template-columns:35vw 35vw;
        grid-template-rows:18vw;
        align-items: start;
        justify-content: space-between;
        align-content: center;
        height: 32vw;
        top: 50vw;
        width: 86vw;
        right: 0;
        margin: 0 auto
    }

    .proPage .bgRow .model .child .page > .box .layer-col {
        position: relative;
        left: auto !important;
        top: auto !important
    }

    .proPage .bgRow .model .child .page .pageReturn {
        left: auto;
        right: 7vw;
        top: 21vw
    }

    .proPage .bgRow .model .child .page > .box.on .layer-col > img {
        width: 35vw
    }

    .proPage .bgRow .model .child .page .pic, .proPage .bgRow .model .media {
        background-size: 145%
    }

    .proPage .bgRow .model .child .page .pic:before {
        top: 0;
        bottom: 70vw;
        background: linear-gradient(180deg, #e9eef2, rgba(232, 237, 241, 0))
    }

    .proPage .bgRow .model .child .page .pic:after, .proPage .bgRow .model .child .page .pic:before {
        content: "";
        pointer-events: none;
        width: 100%;
        height: 12vw;
        position: absolute;
        z-index: 1;
        margin: auto 0;
        left: 0
    }

    .proPage .bgRow .model .child .page .pic:after {
        top: 70vw;
        bottom: 0;
        background: linear-gradient(0deg, #e9eef2, rgba(232, 237, 241, 0))
    }

    .proPage .bgRow .model .total .msg .list {
        left: 7vw;
        bottom: auto;
        top: 22vw
    }

    .proPage .bgRow .model .total .msg .list p {
        font-size: 8.5vw;
        line-height: 1
    }

    .proPage .bgRow .model .first .pic {
        background-size: 145%;
        background-color: #e8edf1
    }

    .proPage .r1 {
        overflow: hidden
    }

    .proPage .r1 .inner {
        padding-top: 0;
        padding-bottom: 0
    }

    .proPage .r1 .inner .chunk {
        padding-left: 7vw;
        padding-right: 7vw;
        position: absolute;
        top: auto;
        bottom: 0;
        left: 0;
        width: 100%
    }

    .proPage .r1 .inner .bg #r1Alan {
        position: fixed
    }

    .afterInner.proPage .row .afterFirst {
        align-items: start
    }

    .afterInner .row .afterFirst .group {
        padding-bottom: 4vw
    }

    .proPage .r2 {
        overflow: hidden
    }

    .proPage .r2 .bg {
        background-attachment: unset
    }

    .proPage .r2 .inner .page .pop .layer-pop {
        align-items: flex-end;
        padding-bottom: 1rem
    }

    .proPage .r2 .inner .page > .box {
        display: grid;
        padding-top: 1.8rem;
        padding-left: 7vw;
        padding-right: 7vw;
        align-items: start;
        justify-items: start;
        height: 5rem;
        grid-auto-flow: row;
        align-content: space-around
    }

    .proPage .r2 .inner .page > .box .childBtn {
        position: relative;
        left: auto !important;
        top: auto !important
    }

    .proPage .r2 .inner .page > .box .childBtn .layer-col {
        position: relative
    }

    .proPage .row.r3 .inner {
        padding-bottom: 12vw
    }

    .proPage .r3 .inner .til {
        padding: 0
    }

    .proPage .r3 .inner .group {
        padding: 0 0 .4rem
    }

    .proPage .r3 .inner .group .items {
        grid-template-columns:auto;
        grid-auto-flow: column
    }

    .proPage .r3 .inner .group .items .list {
        width: 86vw
    }

    .proPage.afterInner .row .afterFirst .group > col:first-of-type {
        padding-bottom: 26vw
    }

    body #bloc .wrapper .row .topic .group {
        width: 86vw;
        padding-top: 1.5rem
    }

    .recruit .r1 .inner .box {
        width: 86vw
    }

    .recruit .r1 .inner .box .items {
        grid-template-columns:100%;
        margin-top: 11.2vw
    }

    .recruit .r1 .inner .box .items .list .group {
        padding: 15% 5% 5%
    }

    .recruit .r1 .inner .box .items .list .group .mid p {
        font-size: 13px
    }

    .recruit .r1 .inner .btm {
        width: 86vw;
        grid-template-columns:49% 49%
    }

    .recruit .r1 .inner .btm .list {
        margin-bottom: 8vw
    }

    .recruit .r1 .inner .btm .list .lazy {
        background-size: auto 100%;
        height: 30vw
    }

    .support .r1 > .pic {
        height: 88vw
    }

    .proPage .row .afterFirst .group .col h1 {
        font-size: 8vw;
        color: #fff;
        font-family: en_b
    }

    .afterInner .row .afterFirst .group .col h1 span {
        min-width: 10px;
        opacity: 1;
        backface-visibility: hidden
    }

    .support .r2 {
        background-color: #f4f6fa;
        height: auto;
        min-height: 0;
        padding-top: 120vw;
        padding-bottom: 10vw;
        grid-template-columns:86vw;
        grid-template-rows:102vw;
        padding-right: 0;
        justify-content: center
    }

    .support .r2 .bg {
        height: 120vw;
        background-color: transparent
    }

    .support .r2 .inner .box .line {
        margin: 5vw 0 10vw
    }

    .support .r2 .inner .box .items li {
        padding-left: 10vw
    }

    .support .r2 .bg .col {
        width: 100vw
    }

    .support .r2 .bg .col .map > img {
        width: 80vw
    }

    .support .r3 {
        grid-auto-flow: row;
        grid-template-columns:92vw;
        min-height: auto;
        padding: 10vw 4vw
    }

    .support .r3 .inner {
        padding: .5rem 5vw 0
    }

    .support .r3 .inner .box .line {
        margin: 5vw 0 10vw
    }

    .support .r3 .inner .box .photo {
        width: 100%;
        height: 54vw
    }

    .support .r4 .topic {
        margin-bottom: 8vw
    }

    .support .r4 .topic .search {
        width: 25vw
    }

    .support .r4 .topic .search input[type=text] {
        width: calc(100% - .4rem)
    }

    .support .r4 {
        padding-top: 10vw;
        padding-bottom: 10vw
    }

    .support .r4 .box {
        grid-template-columns:100%
    }

    .support .r4 .mid {
        display: grid;
        grid-auto-flow: column
    }

    .support .r4 .mid .lab {
        white-space: nowrap
    }

    .support .r5 {
        padding-top: 10vw;
        padding-bottom: 10vw
    }

    .support .r5 .mid .items {
        grid-template-columns:100%
    }

    .support .r5 .mid .items > li {
        padding: 6vw 0
    }

    .support .r5 .mid .other {
        padding-top: 5vw
    }

    .support .r5 .mid .items > li .key {
        top: calc(9vw + .2rem)
    }

    .support .r6 {
        padding-top: 10vw;
        padding-bottom: 15vw
    }

    .support .r6 .mid form textarea {
        width: 100%
    }

    .contact .r1 > .pic {
        height: 88vw
    }

    .contact .r2 {
        height: auto;
        min-height: 0;
        padding-top: 80vw;
        padding-bottom: 10vw;
        grid-template-columns:86vw;
        grid-template-rows:102vw;
        padding-right: 0;
        justify-content: center
    }

    .contact .r2 .bg:after {
        background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 30%, #fff 70%)
    }

    .contact .r2 .inner {
        box-shadow: 0 -20px 30px rgba(0, 0, 0, .05)
    }

    .contact .r2 .inner .box .line {
        margin: 5vw 0 10vw
    }

    .contact .r2 .inner .box .items li {
        padding-left: 10vw
    }

    .newDetail .r1 > .pic {
        height: 88vw
    }

    .newDetail .r2 .details {
        padding: 5vw 7vw
    }

    .newDetail .r2 .details p {
        line-height: 1.7;
        margin-bottom: 5vw
    }

    .newDetail .r2 .details img {
        margin: 0 auto 5vw;
        max-width: 100%;
        height: auto !important
    }

    .newDetail .r2 .roll {
        right: .1rem;
        bottom: .1rem
    }

    .strength .r1 > .pic {
        height: 88vw
    }

    .strength .r2 {
        padding-top: 10vw
    }

    .strength .r2 .inner {
        grid-auto-flow: row;
        grid-template-columns:100%
    }

    .strength .r2 .inner .topic {
        width: 100%;
        padding-left: 0
    }

    .strength .r2 .inner .group {
        grid-template-columns:48% 48%;
        justify-content: space-between
    }

    .strength .r2 .inner .group .photo {
        width: 100%;
        margin-left: 0
    }

    .strength .r2 .inner:nth-of-type(2) .photo {
        width: 100%
    }

    .strength .r2 .inner:nth-of-type(3) {
        grid-auto-flow: row;
        grid-template-columns:100%
    }

    .strength .r2 .inner:nth-of-type(3) .col1 {
        grid-template-columns:48% 48%;
        justify-content: space-between
    }

    .strength .r2 .inner:nth-of-type(3) .col1 .photo {
        width: 100%;
        margin-right: 0
    }

    .strength .r2 .inner:nth-of-type(3) .col2 p {
        width: 100%;
        padding-top: 5vw
    }

    .strength .r2 .inner:nth-of-type(3) .col2 .layer-btn {
        display: none
    }

    .strength .r2 .inner:nth-of-type(4) {
        margin-top: 10vw
    }

    .strength .r2 .inner:nth-of-type(4) .content .sticky h2 {
        width: 88vw;
        margin: 0 6vw
    }

    .strength .r3 .inner {
        padding: 0
    }

    .strength .r3 .inner .content .sticky h2 {
        padding: 0 5vw
    }

    .strength .r3 .inner .content .sticky h2 .letter {
        line-height: 1.6
    }

    .support .r4 .box .tree:nth-of-type(2), .support .r4 .box .tree:nth-of-type(3) {
        border-top: none
    }

    .product .r4 .inner .group .items {
        grid-template-columns:49% 49%;
        padding: 0 .2rem 5vw
    }

    .product .r4 .inner .group .items .list .photo {
        padding-bottom: 160%
    }

    .product .r4 .inner .group .items .list .photo .pic {
        bottom: 15vw;
        background-size: 150%
    }

    .product .r4 .inner .group .items .list .photo .set > a {
        padding: 1.6vw 2.4vw;
        margin: 1vw .5vw
    }

    .product .r4 .inner .group .items .list .photo .set > a > span {
        font-size: 12px
    }

    .en_lang .layer-col .mask small {
        white-space: normal
    }

    .en_lang .home .bgRow .model .first .box .layer-col .mask {
        width: 3rem
    }

    .en_lang .product .r1 .inner .items .list .msg h3, .en_lang .product .r2 .inner .items .list .msg h3 {
        font-size: 14px
    }

    .en_lang .product .r4 .inner .group .items .list .photo .set {
        flex-direction: column
    }

    .en_lang .proPage .bgRow .model .first .box .layer-col .mask {
        width: 3rem
    }

    .en_lang .contact .r2, .en_lang .support .r2 {
        grid-template-rows:140vw
    }

    .en_lang .support .r4 .topic .search {
        margin-bottom: 2vw
    }

    .en_lang .support .r4 .topic {
        align-items: end
    }

    .en_lang .afterInner .row .afterFirst .group .col h1 span {
        margin-right: 5px
    }

    .en_lang .proPage .bgRow .model {
        overflow: hidden
    }

    .en_lang .home .bgRow .model .child .page > .box, .en_lang .proPage .bgRow .model .child .page > .box {
        top: 40vw
    }

    .en_lang .layer-pop .wrap .part p {
        font-size: 3.2vw
    }

    .en_lang .home .bgRow .model .child .page > .box .layer-col, .en_lang .proPage .bgRow .model .child .page > .box .layer-col {
        min-width: 36vw;
        margin-bottom: 15px
    }

    .en_lang .home .bgRow .model .child .page > .box, .en_lang .proPage .bgRow .model .child .page > .box {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap
    }

    .en_lang .layer-pop {
        padding-bottom: .2rem;
        padding-right: 4vw;
        padding-left: 4vw
    }

    .en_lang .layer-pop .wrap {
        width: 92vw
    }

    .en_lang .home .bgRow .model .total .msg .list h3, .en_lang .proPage .bgRow .model .total .msg .list p {
        font-size: 6.4vw
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes circleRotateReverse {
    0% {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes circleRotate {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes pop-in {
    0% {
        opacity: 0;
        transform: translateY(40vw)
    }
}

@keyframes jump {
    0% {
        transform: translateY(4px)
    }
    to {
        transform: translateY(-4px)
    }
}

@keyframes jump_dot {
    0% {
        transform: translateY(1px)
    }
    to {
        transform: translateY(-3px)
    }
}

@keyframes hx {
    0% {
        stroke: rgba(49, 197, 255, .9)
    }
    to {
        stroke: rgba(49, 197, 255, .5)
    }
}