*,
:after,
:before {
    box-sizing: border-box;
    backface-visibility: hidden;
    margin: 0;
    padding: 0;
    font-family: Microsoft YaHei, Microsoft JhengHei, Source Han Sans CN, PingFang SC, Source Han Serif SC, sans-serif
}

ol,
ul,
li {
    vertical-align: middle;
    list-style-type: none
}

img {
    vertical-align: top;
    border: 0
}

input,
select,
textarea,
button {
    vertical-align: middle
}

textarea,
input {
    text-indent: 10px
}

input[type=submit],
input[type=button],
button {
    text-indent: 0;
    text-align: center;
    cursor: pointer
}

label,
button,
a {
    cursor: pointer
}

ins,
em,
b,
i {
    font-style: normal;
    text-decoration: none
}

select:focus,
textarea:focus,
input:focus,
button {
    outline: none
}

.disable-hover {
    pointer-events: none
}

.scroll-animate.animated,
.scroll-animate:not(.father) {
    visibility: hidden
}

.animated {
    animation-duration: 1.2s;
    animation-fill-mode: both
}

.font-fadeIn font {
    display: inline-block
}

::-webkit-scrollbar {
    width: 5px;
    background-color: transparent
}

::-webkit-scrollbar-thumb {
    width: 3px;
    background-color: #b2b9ff;
    border: 1px solid transparent;
    border-radius: 4px
}

::-webkit-scrollbar-corner {
    background-color: transparent
}

::-webkit-scrollbar:horizontal {
    height: 9px
}

::-webkit-selection {
    color: transparent;
    background: 0 0
}

::-moz-selection {
    color: transparent;
    background: 0 0
}

.scrollBar-type2::-webkit-scrollbar {
    width: 0;
    background-color: transparent
}

.scrollBar-type2::-webkit-scrollbar-thumb {
    width: 0;
    background-color: #b2b9ff;
    border-radius: 4px
}

.scrollBar-type2::-webkit-scrollbar-corner {
    background-color: transparent
}

.scrollBar-type2::-webkit-scrollbar:horizontal {
    height: 9px
}

.scrollBar-type2::-webkit-selection {
    color: transparent;
    background: 0 0
}

.scrollBar-type2::-moz-selection {
    color: transparent;
    background: 0 0
}

::selection {
    background-color: transparent
}

input::-webkit-input-placeholder,
input::-moz-input-placeholder,
textarea::-webkit-textarea-placeholder,
textarea::-moz-textarea-placeholder {
    color: #999;
    transition: color .5s
}

input:focus::-webkit-input-placeholder,
input:focus::-moz-input-placeholder,
input:hover::-webkit-input-placeholder,
input:hover::-moz-input-placeholder,
textarea:focus::-webkit-input-placeholder,
textarea:focus::-moz-input-placeholder,
textarea:hover::-webkit-input-placeholder,
textarea:hover::-moz-input-placeholder {
    color: #c2c2c2
}

a {
    color: inherit;
    text-decoration: none
}

a[href] {
    cursor: pointer
}

a:hover {
    cursor: pointer;
    text-decoration: none
}

a:focus {
    background-color: transparent
}

audio,
canvas,
progress,
video {
    vertical-align: baseline;
    display: inline-block
}

body {
    -webkit-tap-highlight-color: transparent
}

html {
    width: 100%;
    scroll-behavior: initial;
    font-size: 5.20833vw;
    overflow-x: hidden
}

a:focus,
input:focus,
p:focus,
div:focus {
    -webkit-tap-highlight-color: transparent
}

img[src=""],
img:not([src]) {
    opacity: 0
}

b {
    font-size: inherit;
    color: inherit;
    font-family: inherit
}

font {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    font-family: inherit;
    font-style: inherit;
    text-transform: inherit
}

.fl {
    float: left
}

.fr {
    float: right
}

.fw-100 {
    font-weight: 100
}

.fw-400 {
    font-weight: 400
}

.fw-600 {
    font-weight: 600
}

.cl:after {
    content: " ";
    height: 0;
    clear: both;
    visibility: hidden;
    font-size: 0;
    line-height: 0;
    display: block
}

.hide {
    display: none
}

.show {
    display: block
}

.text_overflow {
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    overflow: hidden
}

[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
}

.layout-v-middle,
.videoPop .videoBox video,
.layout-middle,
#detail .r3Pc .right .msg,
#detail .r3Pc .left .msg,
#detail .r3 .photo .pic .goBtn .arrow,
#home .loading .loadImg,
.cursor--group .cursor--outer .close {
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0
}

.layout-h-middle,
#about #main .r4 .inner {
    margin: auto;
    position: absolute;
    left: 0;
    right: 0
}

.layout-middle,
#detail .r3Pc .right .msg,
#detail .r3Pc .left .msg,
#detail .r3 .photo .pic .goBtn .arrow,
#home .loading .loadImg,
.cursor--group .cursor--outer .close {
    left: 0;
    right: 0
}

.pa-v {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.pa-h,
#contact .r2 .shareBox .layer-icon .inter,
#contact .r1 .inner .bm>.shareBox .layer-icon .inter,
#contact .r1 .inner .mid>.list .shareBox .layer-icon .inter,
#about #main .r4 .video .tsBox canvas,
#app footer>.shareBox .layer-icon .inter,
#app footer .topApp .c2>.list .shareBox .layer-icon .inter,
#app footer .top .c2>li .shareBox .layer-icon .inter {
    position: absolute;
    left: 50%;
    transform: translate(-50%)
}

.pa-mid,
#work #main .box .items .col>a .photo figure .appTs canvas,
#work #main .box .items .col>div .photo figure .appTs canvas,
#home #other #banner .photo .tsBox,
.cursor--group .cursor--outer .get,
.cursor--group .cursor--inner .get {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.pic {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

.fxc,
#maPop,
#pop .group .con .form .btm a .after,
#pop,
#detail .toBackBtn .layer-icon .txt .after,
#detail .toTopBtn .layer-icon .txt .after,
#detail .r3Pc .right .msg,
#detail .r3Pc .left .msg,
#work .toTopBtn .layer-icon .txt .after,
#home .loading .loadMsg,
#app header .pc-nav .navItems>li>a .after,
#toast,
.layer-icon {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.fxb {
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-row-cc,
#about #main .r6 .group .items .list>a,
#about #main .r6 .group .items .list,
#about #main .r6 .group .items,
#about #main .r6 .group .bg .other,
#about #main .r4 .inner,
#about #main .r1 {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-row-cb,
#about #main .r5 .inner {
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-row-cs {
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-col-cb {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-col-cc {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.flex-col-cs {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.layer-photo {
    position: relative
}

.max-wid {
    width: 74%;
    max-width: 66.6667vw;
    margin: auto
}

.maxSize {
    width: 78%;
    max-width: 78.125vw;
    margin: auto
}

.full,
#maPop .group .imgMask,
#maPop .mask,
#pop .mask,
#join .mid .inner .group .tab .lists .cir,
#detail .toBackBtn .layer-icon,
#detail .toTopBtn .layer-icon,
#detail .r3Pc .right .pic:after,
#detail .r3Pc .left .pic:after,
#detail .r3 .photo .pic:after,
#detail .r3 .photo .pic,
#about #main .r6 .group .bg .other .mask,
#about #main .r4 .video .tsBox,
#about #main .r4 .video video,
#about #main .r4 .video:after,
#about #main .r3 .group .wrap>canvas,
#about #main .r3 .imgBox .pic .img,
#work .toTopBtn .layer-icon,
#work #main .box .items .col>a .photo figure .appTs,
#work #main .box .items .col>div .photo figure .appTs,
#work #main .box .items .col>a .photo figure img,
#work #main .box .items .col>div .photo figure img,
#work #main .box .items .col>a .photo figure .videoBox video,
#work #main .box .items .col>div .photo figure .videoBox video,
#work #main .box .items .col>a .photo figure .videoBox,
#work #main .box .items .col>div .photo figure .videoBox,
#home #other .inner .group .process>small,
#home #other #banner .mask,
#home #other #banner .pager,
#home #other #banner>canvas,
#home #other #banner .photo .tsBox>canvas,
#home #other #banner .photo video,
#home #other #banner .photo,
#home #other #banner,
#home .loading,
#app footer #linearCv canvas,
#app .foot .get .mask,
#app header nav.app-nav .msg #menu .icon,
.videoPop .videoBox:after,
.layout-btn-2:after,
#mainCanvas img,
#mainCanvas canvas,
#stage canvas,
.cursor--group .cursor--inner .more,
.layer-photo .pic {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.f-120 {
    font-size: .12rem
}

.f-70 {
    font-size: .7rem
}

.f-60 {
    font-size: .6rem
}

.f-56 {
    font-size: .56rem
}

.f-54 {
    font-size: .54rem
}

.f-50 {
    font-size: .5rem
}

.f-48 {
    font-size: .48rem
}

.f-46 {
    font-size: .46rem
}

.f-44 {
    font-size: .44rem
}

.f-42 {
    font-size: .42rem
}

.f-40 {
    font-size: .4rem
}

.f-38 {
    font-size: .38rem
}

.f-36 {
    font-size: .36rem
}

.f-34 {
    font-size: .34rem
}

.f-32 {
    font-size: .32rem
}

.f-30 {
    font-size: .3rem
}

.f-28 {
    font-size: .28rem
}

.f-26 {
    font-size: .26rem
}

.f-24 {
    font-size: .24rem
}

.f-22 {
    font-size: .22rem
}

.f-20 {
    font-size: .2rem
}

.f-18 {
    font-size: .18rem
}

.f-16 {
    font-size: .16rem
}

.f-14 {
    font-size: .14rem
}

.f-12 {
    font-size: .12rem
}

@keyframes fadeInLeftSmall {
    0% {
        opacity: 0;
        transform: translate(-10px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInLeftSmall {
    animation-name: fadeInLeftSmall
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translate(-20%)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInLeft {
    animation-name: fadeInLeftSmall
}

@keyframes fadeInRightSmall {
    0% {
        opacity: 0;
        transform: translate(10px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInRightSmall {
    animation-name: fadeInRightSmall
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translate(20%)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInRight {
    animation-name: fadeInRight
}

@keyframes fadeInDownSmall {
    0% {
        opacity: 0;
        transform: translateY(-10px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInDownSmall {
    animation-name: fadeInDownSmall
}

@keyframes fadeOutDownSmall {
    0% {
        opacity: 1;
        transform: none
    }

    to {
        opacity: 0;
        transform: translateY(10px)
    }
}

.fadeOutDownSmall {
    animation-name: fadeOutDownSmall
}

@keyframes fadeInUpSmall {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInUpSmall {
    animation-name: fadeInUpSmall
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30%)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.fadeInUp {
    animation-name: fadeInUp
}

@keyframes rotateInUpSmall {
    0% {
        opacity: 0;
        transform: translateY(30px)rotate(5deg)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.rotateInUpSmall {
    transform-origin: 0 0;
    animation-name: rotateInUpSmall
}

@font-face {
    font-family: word;
    src: url(GOTHAM-BOOK_0.ddc1817f.otf)
}

.word {
    font-family: word
}

@font-face {
    font-family: en-xb;
    src: url(uunn-black.d65c4c26.otf)
}

.en-xb {
    font-family: en-xb;
    font-weight: 400 !important
}

@font-face {
    font-family: en-b;
    src: url(uunn-bold.9249d177.otf)
}

.en-b,
#app header .pc-nav .navItems>li>a,
.cursor--group .cursor--outer h4 span {
    font-family: en-b
}

@font-face {
    font-family: en;
    src: url(NexaRegular.0497a361.otf)
}

.en,
#work #main .box .tree>li>a {
    font-family: en
}

.mc {
    color: #989eff
}

.gray {
    color: #707070
}

.wc {
    color: #fff
}

.smallTxt {
    color: #4d4d4d
}

a,
span,
div {
    font-size: 14px
}

p {
    line-height: 1.65
}

.mb-90 {
    margin-bottom: 4.6875vw
}

.mb-80 {
    margin-bottom: 4.16667vw
}

.mb-70 {
    margin-bottom: 3.64583vw
}

.mb-60 {
    margin-bottom: 3.125vw
}

.mb-50 {
    margin-bottom: 2.60417vw
}

.mb-40 {
    margin-bottom: 2.08333vw
}

.mb-30 {
    margin-bottom: 1.5625vw
}

.mb-20 {
    margin-bottom: 1.04167vw
}

.mb-10 {
    margin-bottom: 10px
}

.letter {
    min-width: .2em;
    font-size: inherit;
    font-family: inherit;
    display: inline-block
}

.letter small {
    font-size: inherit;
    transform-origin: 0;
    font-family: inherit;
    display: block
}

.alan {
    opacity: 0
}

.alanFn {
    transform-origin: -50%;
    perspective: 26.0417vw;
    backface-visibility: hidden;
    opacity: 0
}

.layer-icon .icon {
    display: block
}

.layer-icon .mr {
    margin-right: .16rem
}

.icon {
    width: 1em;
    height: 1em;
    vertical-align: -.15em;
    fill: currentColor;
    overflow: hidden
}

.cursor--group {
    z-index: 250;
    min-height: 100vh;
    pointer-events: none;
    opacity: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    position: absolute
}

.cursor--group.on {
    mix-blend-mode: difference;
    z-index: 257
}

.cursor--group.onBig {
    mix-blend-mode: soft-light;
    z-index: 257
}

.cursor--group .cursor {
    pointer-events: none;
    border-radius: 50%;
    position: fixed;
    top: 0;
    left: 0
}

.cursor--group .cursor--inner {
    width: .86rem;
    height: .86rem;
    z-index: 11000;
    opacity: 0;
    background-color: transparent;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.cursor--group .cursor--inner>.arrow {
    width: .38rem;
    opacity: 0;
    height: .38rem;
    transition: opacity .5s ease-in-out, transform .5s cubic-bezier(.53, .52, .25, .99);
    transform: scale(.5)rotate(90deg)
}

.cursor--group .cursor--inner>.arrow i {
    color: #000;
    font-size: .38rem
}

.cursor--group .cursor--inner h5 {
    opacity: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: .28rem;
    transition: opacity .5s ease-in-out;
    display: -ms-flexbox;
    display: flex
}

.cursor--group .cursor--inner h5 span {
    color: #fff;
    opacity: 0;
    font-size: .9375vw;
    font-weight: 400;
    line-height: .28rem;
    transition: opacity 1s cubic-bezier(0, 0, 0, 1), transform 1s cubic-bezier(0, 0, 0, 1);
    transform: translateY(10px)
}

.cursor--group .cursor--inner h5 span:nth-of-type(1) {
    transition-delay: 0s
}

.cursor--group .cursor--inner h5 span:nth-of-type(2) {
    transition-delay: .1s
}

.cursor--group .cursor--inner h5 span:nth-of-type(3) {
    transition-delay: .2s
}

.cursor--group .cursor--inner h5 span:nth-of-type(4) {
    transition-delay: .3s
}

.cursor--group .cursor--inner .get {
    width: 18.75vw;
    height: 18.75vw;
    opacity: 0;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    top: 35%;
    transform: scale(.6)translate(-50%, -50%)
}

.cursor--group .cursor--inner .get>img.go {
    width: 11.4583vw
}

.cursor--group .cursor--inner .get h4 {
    text-align: center;
    width: 100%;
    white-space: nowrap;
    margin-top: -.15rem
}

.cursor--group .cursor--inner .more {
    opacity: 0;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    transition: opacity .5s ease-in-out;
    display: -ms-flexbox;
    display: flex
}

.cursor--group .cursor--inner .more h4 {
    text-align: center;
    width: 100%;
    white-space: nowrap
}

.cursor--group .cursor--inner.on h5 {
    opacity: 1
}

.cursor--group .cursor--inner.on h5 span {
    opacity: 1;
    transform: none
}

.cursor--group .cursor--outer {
    width: .86rem;
    height: .86rem;
    z-index: 12000;
    background-color: #fff;
    border-radius: 50%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    transition: background-color .3s ease-in-out;
    display: -ms-flexbox;
    display: flex
}

.cursor--group .cursor--outer>img.arrow {
    width: .3rem;
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .5s cubic-bezier(.53, .52, .25, .99)
}

.cursor--group .cursor--outer h4 {
    opacity: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: .28rem;
    transition: opacity .5s ease-in-out;
    display: -ms-flexbox;
    display: flex
}

.cursor--group .cursor--outer h4 span {
    color: #000;
    opacity: 0;
    font-size: .14rem;
    line-height: .28rem;
    transition: opacity 1s cubic-bezier(0, 0, 0, 1), transform 1s cubic-bezier(0, 0, 0, 1)
}

.cursor--group .cursor--outer .get {
    width: calc(100% + 5px);
    height: calc(100% + 5px);
    opacity: 0;
    background-image: url(mk.defdead7.jpg);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    border-radius: 50%;
    transition: opacity .5s ease-in-out
}

.cursor--group .cursor--outer .close {
    z-index: 4;
    width: 100%;
    height: 100%;
    opacity: 0;
    border-radius: 50%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: absolute
}

.cursor--group .cursor--outer .close .icon {
    width: 60%;
    display: block
}

.cursor--group .cursor--outer .close .icon path {
    fill: #fff
}

.cursor--group .cursor--outer.on {
    background-color: transparent;
    border-color: transparent
}

.cursor--group .cursor--outer.on h5 {
    opacity: 1
}

.cursor--group .cursor--outer.on h5 span {
    opacity: 1;
    transform: none
}

.cursor--group.left .cursor--inner {
    z-index: 12001
}

.cursor--group.left .cursor--inner>.arrow {
    opacity: 1;
    transform: scale(1)rotate(0)
}

.cursor--group.right .cursor--inner {
    z-index: 12001
}

.cursor--group.right .cursor--inner>.arrow {
    opacity: 1;
    transform: rotate(180deg)scale(1)
}

.cursor--group.go .cursor--outer {
    background-color: transparent;
    border-color: transparent
}

.cursor--group.go .cursor--outer .get {
    opacity: .7
}

.cursor--group.go .cursor--inner {
    opacity: 1;
    z-index: 40000
}

.cursor--group.go .cursor--inner .get {
    transform-origin: 0 0;
    opacity: 1;
    transition: opacity .5s cubic-bezier(.68, .68, 0, .99), transform .5s cubic-bezier(.68, .68, 0, .99);
    transform: scale(1)translate(-50%, -50%)
}

.cursor--group.more .cursor--inner {
    opacity: 1;
    z-index: 40000
}

.cursor--group.more .cursor--inner .more,
.cursor--group.playActive .cursor--outer h4,
.cursor--group.playActive .cursor--outer h4 span {
    opacity: 1
}

.cursor--group.playClose .cursor--outer {
    background-color: #989eff
}

.cursor--group.playClose .cursor--outer h4 {
    transition: opacity ease-in-out;
    opacity: 0 !important
}

.cursor--group.playClose .cursor--outer .close {
    opacity: 1
}

.cursorSlider_Foot {
    cursor: none
}

.cursorSlider_left,
.cursorSlider_right,
.cursorSlider_more,
.cursorPlay {
    cursor: none !important
}

#bgCv {
    opacity: .5;
    width: 100%;
    z-index: -1;
    height: 100vh;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0
}

@media screen and (orientation:landscape) {
    #bgCv {
        opacity: .7
    }
}

#stage {
    width: 100%;
    height: 100vh;
    z-index: 10;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0
}

#mainCanvas {
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0
}

@media screen and (orientation:landscape) {
    #mainCanvas {
        opacity: 0
    }
}

@media screen and (orientation:portrait) {
    #mainCanvas {
        opacity: 0
    }

    #mainCanvas.loaded {
        opacity: 1;
        transition: opacity .3s .1s
    }
}

#mainCanvas canvas {
    z-index: 10;
    mix-blend-mode: hard-light;
    background-color: #000
}

#mainCanvas img {
    object-fit: cover;
    z-index: 9
}

#three-container {
    width: 100%;
    height: 100vh;
    z-index: 1;
    pointer-events: none;
    opacity: .7;
    position: fixed;
    top: 0;
    left: 0
}

.scrFx,
#about #main .r2 .inner .col h2 span:after,
.lAfter:after {
    will-change: transform, opacity;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-play-state: paused;
    animation-delay: calc(var(--go)*-1s);
    animation-timing-function: linear
}

.dropdown {
    text-align: left;
    width: 100%;
    display: inline-block;
    position: relative
}

.dropdown select {
    display: none
}

.dropdown>ul {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 1;
    transform-origin: 0 0;
    background: #151924;
    border: 2px solid #9ea5ff;
    margin: 0;
    padding: 0;
    list-style: none;
    transition: opacity .2s, transform .3s cubic-bezier(.4, .6, .5, 1.32);
    position: absolute;
    top: .6rem;
    left: 0;
    right: 0;
    overflow-x: hidden;
    overflow-y: auto;
    transform: matrix(.8, 0, 0, .8, 0, 3.2)
}

.dropdown>ul>li {
    opacity: 0;
    transition: all .3s;
    transform: translate(6px)
}

.dropdown>ul>li>a {
    cursor: pointer;
    color: #cdd9ed;
    outline: none;
    padding: 10px .83333vw;
    text-decoration: none;
    transition: all .3s;
    display: block;
    position: relative
}

.dropdown>ul>li>a:hover {
    color: #eee
}

.dropdown>ul>li.active>a {
    color: #fff;
    background-color: #000
}

.dropdown>span {
    cursor: pointer;
    height: .7rem;
    text-indent: .1rem;
    color: #fff;
    background-color: #181a2e;
    border: 2px solid #9ea5ff;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding: 9px .83333vw;
    font-size: .18rem;
    font-weight: 600;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

.dropdown>span:before {
    content: "";
    width: 8px;
    height: 2px;
    background: #99a3ba;
    border-radius: 1px;
    margin-right: 4px;
    transition: all .3s;
    display: block;
    position: absolute;
    top: 50%;
    right: .15rem;
    transform: scale(.96, .8)rotate(50deg)
}

.dropdown>span:after {
    content: "";
    width: 8px;
    height: 2px;
    background: #99a3ba;
    border-radius: 1px;
    transition: all .3s;
    display: block;
    position: absolute;
    top: 50%;
    right: .15rem;
    transform: scale(.96, .8)rotate(-50deg)
}

.dropdown.open>ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity .3s, transform .3s cubic-bezier(.4, .6, .5, 1.32);
    transform: scale(1)translateY(.625vw)
}

.dropdown.open>ul>li {
    opacity: 1;
    transform: translate(0)
}

.dropdown.open>span:before {
    transform: scale(.96, .8)rotate(-50deg)
}

.dropdown.open>span:after {
    transform: scale(.96, .8)rotate(50deg)
}

.dropdown.open ul li:nth-child(1) {
    transition-delay: 80ms
}

.dropdown.open ul li:nth-child(2) {
    transition-delay: .16s
}

.dropdown.open ul li:nth-child(3) {
    transition-delay: .24s
}

.dropdown.open ul li:nth-child(4) {
    transition-delay: .32s
}

.dropdown.open ul li:nth-child(5) {
    transition-delay: .4s
}

.dropdown.open ul li:nth-child(6) {
    transition-delay: .48s
}

.dropdown.open ul li:nth-child(7) {
    transition-delay: .56s
}

.dropdown.open ul li:nth-child(8) {
    transition-delay: .64s
}

.dropdown.open ul li:nth-child(9) {
    transition-delay: .72s
}

.dropdown.open ul li:nth-child(10) {
    transition-delay: .8s
}

.layout-btn {
    color: #fff;
    background: rgba(0, 0, 0, .3);
    border: 2px solid #fff;
    border-radius: 4px;
    padding: 10px 1.5625vw;
    font-size: .83333vw;
    transition: all .3s ease-in-out;
    display: inline-block
}

.layout-btn:hover {
    background: rgba(0, 0, 0, .6)
}

.layout-btn-2 {
    width: 100%;
    height: 100%;
    display: inline-block;
    position: relative;
    overflow: hidden
}

@media screen and (orientation:landscape) {
    .layout-btn-2 {
        transition: transform .6s ease-in-out, border-color .6s ease-in-out
    }
}

.layout-btn-2:after {
    content: "";
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 1rem;
    transition: background-color .3s ease-in-out
}

@media screen and (orientation:landscape) {
    .layout-btn-2:after {
        transition: all .5s cubic-bezier(.165, .84, .44, 1)
    }
}

.layout-btn-2>span {
    z-index: 10;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    border-radius: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 .35rem;
    font-size: .2rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: color .5s ease-in-out;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

.layout-btn-2>span.mc {
    color: #989eff
}

@media screen and (orientation:landscape) {
    .layout-btn-2>span {
        transition: all .7s ease-in-out
    }
}

.layout-btn-2>span>i {
    margin-right: .2rem;
    font-size: .2rem;
    transition: transform .4s cubic-bezier(.165, .84, .44, 1), color .5s ease-out;
    display: inline-block
}

.layout-btn-2>span>small {
    font-size: inherit;
    color: inherit;
    letter-spacing: 1px;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    overflow: visible
}

.layout-btn-2>span>small>em {
    font-size: inherit;
    color: inherit;
    min-width: .67708vw;
    text-align: center;
    transition: transform .3s cubic-bezier(.645, .045, .355, 1), color .3s cubic-bezier(.645, .045, .355, 1);
    display: inline-block;
    position: relative
}

.layout-btn-2>span>small>em:before {
    content: attr(data-word);
    white-space: nowrap;
    text-align: center;
    z-index: 3;
    font-size: inherit;
    color: rgba(255, 255, 255, 0);
    transition: color .3s cubic-bezier(.645, .045, .355, 1);
    display: block;
    position: absolute;
    top: 102%
}

.layout-btn-2>span>small>em.mc:before {
    color: rgba(0, 135, 85, 0)
}

.layout-btn-2>span>small>em:nth-of-type(1),
.layout-btn-2>span>small>em:nth-of-type(1):before {
    transition-delay: 0s
}

.layout-btn-2>span>small>em:nth-of-type(2),
.layout-btn-2>span>small>em:nth-of-type(2):before {
    transition-delay: 30ms
}

.layout-btn-2>span>small>em:nth-of-type(3),
.layout-btn-2>span>small>em:nth-of-type(3):before {
    transition-delay: 60ms
}

.layout-btn-2>span>small>em:nth-of-type(4),
.layout-btn-2>span>small>em:nth-of-type(4):before {
    transition-delay: 90ms
}

.layout-btn-2>span>small>em:nth-of-type(5),
.layout-btn-2>span>small>em:nth-of-type(5):before {
    transition-delay: .12s
}

.layout-btn-2>span>small>em:nth-of-type(6),
.layout-btn-2>span>small>em:nth-of-type(6):before {
    transition-delay: .15s
}

.layout-btn-2>span>small>em:nth-of-type(7),
.layout-btn-2>span>small>em:nth-of-type(7):before {
    transition-delay: .18s
}

.layout-btn-2>span>small>em:nth-of-type(8),
.layout-btn-2>span>small>em:nth-of-type(8):before {
    transition-delay: .21s
}

.layout-btn-2>span>small>em:nth-of-type(9),
.layout-btn-2>span>small>em:nth-of-type(9):before {
    transition-delay: .24s
}

.layout-btn-2>span>small>em:nth-of-type(10),
.layout-btn-2>span>small>em:nth-of-type(10):before {
    transition-delay: .27s
}

@media screen and (orientation:landscape) {
    .layout-btn-2>span:hover>i {
        transform: translate(-3px)
    }

    .layout-btn-2>span:hover>i:after,
    .layout-btn-2>span:hover>i:before {
        background-color: #000 !important
    }

    .layout-btn-2>span:hover>small>em {
        color: rgba(255, 255, 255, 0);
        transform: translateY(-100%)
    }

    .layout-btn-2>span:hover>small>em:before {
        color: #000
    }

    .layout-btn-2>span:hover>small>em.mc:before {
        color: #008755
    }

    .layout-btn-2:hover {
        transform: translateY(-5px)
    }

    .layout-btn-2:hover>span>i {
        color: #fff
    }

    .layout-btn-2:hover:after {
        background-color: #fff
    }
}

.videoPop {
    width: 100%;
    height: 100%;
    z-index: 259;
    opacity: 0;
    pointer-events: none;
    display: none;
    position: fixed;
    top: 0;
    left: 0
}

.videoPop .videoBox {
    width: 100%;
    height: 100%;
    background-color: #000;
    position: relative
}

.videoPop .videoBox video {
    object-fit: cover;
    width: 100%;
    left: 0
}

.videoPop .videoBox:after {
    content: "";
    z-index: 2;
    background-color: rgba(0, 0, 0, .6);
    transition: opacity .8s ease-in-out
}

.videoPop .close {
    z-index: 4;
    width: .9rem;
    height: .9rem;
    opacity: 0;
    background-color: #fff;
    border-radius: 50%;
    transition: opacity .5s ease-in-out 2s, background-color .5s ease-in-out;
    position: absolute;
    top: 2.4vw;
    right: 5vw
}

.videoPop .close i {
    transition: color .5s ease-in-out
}

.videoPop .close:hover {
    background-color: #989eff
}

.videoPop .close:hover i {
    color: #fff
}

.videoPop.active {
    opacity: 1;
    pointer-events: auto
}

.videoPop.active .videoBox:after {
    opacity: 0
}

.videoPop.active .close {
    opacity: 1
}

#toast {
    pointer-events: none;
    opacity: 0;
    z-index: 3000;
    width: 100%;
    height: 40vw;
    position: fixed;
    bottom: 0;
    left: 0
}

#toast span {
    max-width: 70vw;
    color: #fff;
    text-align: center;
    background-color: #989eff;
    border-radius: .05rem;
    padding: 8px .2rem;
    font-size: .16rem;
    display: inline-block;
    box-shadow: 0 10px 1.5625vw -3px rgba(0, 0, 0, .2)
}

.sha_nav {
    width: 100%;
    height: 100%;
    z-index: 200;
    opacity: 0;
    pointer-events: none;
    transition: opacity .6s;
    position: fixed;
    top: 0;
    left: 0
}

.sha_nav .sha_nav_bg {
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background-color: rgba(0, 0, 0, .7);
    position: absolute;
    top: 0;
    left: 0
}

.sha_nav .nav_con_ {
    width: calc(100% - .9rem);
    position: absolute;
    top: 50%;
    left: .45rem;
    transform: translateY(-50%)
}

.sha_nav .nav_con_>div {
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.sha_nav .nav_con_>div .btnNav_close {
    width: 1rem;
    height: 1rem;
    cursor: pointer;
    z-index: 4;
    border: 2px solid rgba(152, 158, 255, .5);
    border-radius: 50%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    transform: scale(0)
}

.sha_nav .nav_con_>div .btnNav_close svg {
    width: .2rem;
    height: .2rem;
    transform: rotate(45deg)
}

.sha_nav .nav_con_>div .btnNav_close svg path {
    fill: #989eff
}

.sha_nav .nav_con_>div .nav_con_con {
    width: calc(100% - 1.1rem);
    position: relative
}

.sha_nav .nav_con_>div .nav_con_con a {
    text-align: right;
    color: rgba(255, 255, 255, .5);
    transform-origin: 115%;
    width: 100%;
    opacity: 0;
    margin-top: calc(-.5em - .12rem);
    padding-top: .12rem;
    padding-bottom: .12rem;
    padding-right: .24rem;
    font-size: .32rem;
    line-height: 1;
    transition: all .3s;
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    transform: rotate(75deg)scale(.7)
}

.sha_nav .nav_con_>div .nav_con_con a.on {
    color: #fff
}

.sha_nav.on {
    opacity: 1;
    pointer-events: all;
    transition: opacity .3s
}

.sha_nav.on .nav_con_>div .btnNav_close {
    transition: transform .3s ease-in-out;
    transform: scale(1)
}

.sha_nav.on .nav_con_>div .btnNav_close svg {
    transition: transform .3s ease-in-out;
    transform: rotate(0)
}

.sha_nav.on .nav_con_>div .nav_con_con a {
    opacity: 1;
    font-weight: 600;
    transition-property: transform, opacity;
    transition-duration: .3s;
    transition-timing-function: ease
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(0) {
    transform: rotate(90deg)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(1) {
    transform: rotate(65deg)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(2) {
    transform: rotate(40deg)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(3) {
    transform: rotate(15deg)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(4) {
    transform: rotate(-10deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(5) {
    transform: rotate(-35deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(6) {
    transform: rotate(-60deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(7) {
    transform: rotate(-85deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(8) {
    transform: rotate(-110deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(9) {
    transform: rotate(-135deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(10) {
    transform: rotate(-160deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(11) {
    transform: rotate(-185deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(12) {
    transform: rotate(-210deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(13) {
    transform: rotate(-235deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(14) {
    transform: rotate(-260deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(15) {
    transform: rotate(-285deg)scale(1)
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(0) {
    transition-delay: .1s, .1s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(1) {
    transition-delay: .15s, .15s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(2) {
    transition-delay: .2s, .2s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(3) {
    transition-delay: .25s, .25s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(4) {
    transition-delay: .3s, .3s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(5) {
    transition-delay: .35s, .35s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(6) {
    transition-delay: .4s, .4s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(7) {
    transition-delay: .45s, .45s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(8) {
    transition-delay: .5s, .5s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(9) {
    transition-delay: .55s, .55s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(10) {
    transition-delay: .6s, .6s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(11) {
    transition-delay: .65s, .65s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(12) {
    transition-delay: .7s, .7s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(13) {
    transition-delay: .75s, .75s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(14) {
    transition-delay: .8s, .8s
}

.sha_nav.on .nav_con_>div .nav_con_con a:nth-child(15) {
    transition-delay: .85s, .85s
}

#app.loadActive {
    height: 100vh;
    overflow: hidden
}

#app.loadActive header {
    opacity: 0;
    pointer-events: none;
    transform: scale(1.1)
}

#app header {
    width: 100%;
    height: 1.8rem;
    z-index: 256;
    opacity: 1;
    transform-origin: 50% 50vh;
    transition: transform .8s cubic-bezier(.38, 0, 0, 1) .5s, opacity .8s cubic-bezier(.38, 0, 0, 1) .5s;
    position: fixed;
    top: 0;
    left: 0
}

#app header .pc-nav {
    height: 100%;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 .8rem;
    display: -ms-flexbox;
    display: flex
}

#app header .pc-nav .logo {
    height: .48rem;
    position: relative
}

#app header .pc-nav .logo>img {
    height: 100%;
    display: block
}

#app header .pc-nav .logo .img1 {
    height: 100%;
    transition: opacity .3s ease-in-out;
    display: block;
    position: relative
}

#app header .pc-nav .logo .img2 {
    width: 100%;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

#app header .pc-nav .navItems {
    height: .8rem;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    transform: translateZ(0)
}

#app header .pc-nav .navItems>li {
    transition: opacity .5s ease-in-out, transform .5s ease-in-out
}

#app header .pc-nav .navItems>li>a {
    color: #fff;
    padding: .2rem;
    font-size: .83333vw;
    transition: color .3s ease-in-out;
    display: block;
    position: relative
}

#app header .pc-nav .navItems>li>a .before {
    overflow: hidden
}

#app header .pc-nav .navItems>li>a .before>.letter {
    transition: opacity .3s ease-in-out, transform .3s ease-in-out
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#app header .pc-nav .navItems>li>a .before>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#app header .pc-nav .navItems>li>a .after {
    width: 100%;
    height: calc(100% - .4rem);
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    overflow: hidden
}

#app header .pc-nav .navItems>li>a .after>.letter {
    opacity: 0;
    font-size: .16rem;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: translateY(100%)
}

#app header .pc-nav .navItems>li>a .after>.letter .wordLine0 {
    color: #000;
    font-weight: 600
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#app header .pc-nav .navItems>li>a .after>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#app header .pc-nav .navItems>li>a:hover .before>.letter {
    opacity: 0;
    transform: translateY(-100%)
}

#app header .pc-nav .navItems>li>a:hover .after>.letter {
    opacity: 1;
    transform: translate(0, 0)
}

#app header .pc-nav .navItems>li:nth-of-type(2) {
    transition-delay: 50ms
}

#app header .pc-nav .navItems>li:nth-of-type(3) {
    transition-delay: .1s
}

#app header .pc-nav .navItems>li:nth-of-type(4) {
    transition-delay: .15s
}

#app header .pc-nav .navItems>li:nth-of-type(5) {
    transition-delay: .2s
}

#app header .pc-nav .navItems>li:nth-of-type(6) {
    transition-delay: .25s
}

#app header .pc-nav .navItems>li:nth-of-type(7) {
    transition-delay: .3s
}

#app header .pc-nav .navItems>li:nth-of-type(8) {
    transition-delay: .35s
}

#app header .pc-nav .navItems>li:nth-of-type(9) {
    transition-delay: .4s
}

#app header .pc-nav .navItems>li:nth-of-type(10) {
    transition-delay: .45s
}

#app header .pc-nav.gray .logo .img1 {
    opacity: 0
}

#app header .pc-nav.gray .logo .img2 {
    opacity: 1
}

#app header .pc-nav.gray .navItems>li>a {
    color: #000
}

#app header .pc-nav.up .navItems>li {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-.2rem)
}

#app header nav.app-nav .msg {
    height: 1.6rem;
    width: 100%;
    z-index: 2;
    opacity: 1;
    transform-origin: 0;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 6%;
    transition: opacity 1s cubic-bezier(.43, .195, .02, 1), transform 1s cubic-bezier(.43, .195, .02, 1);
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: 0
}

#app header nav.app-nav .msg .logo {
    pointer-events: auto;
    width: 20vw;
    transition: all .5s ease-in-out;
    position: relative
}

#app header nav.app-nav .msg .logo>img {
    display: block
}

#app header nav.app-nav .msg .logo .img1 {
    width: 100%;
    transition: opacity .3s ease-in-out;
    display: block;
    position: relative
}

#app header nav.app-nav .msg .logo .img2 {
    width: 100%;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

#app header nav.app-nav .msg #menu {
    cursor: pointer;
    pointer-events: auto;
    text-align: right;
    width: 1.5rem;
    height: .7rem;
    background-color: #fff;
    border: .6px solid #fff;
    border-radius: 1rem;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: auto;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    overflow: hidden
}

#app header nav.app-nav .msg #menu .txt {
    transition: transform .3s, opacity .3s
}

#app header nav.app-nav .msg #menu .icon {
    opacity: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    transition: transform .3s, opacity .3s;
    display: -ms-flexbox;
    display: flex;
    transform: translateY(-100%)
}

#app header nav.app-nav .msg #menu.is-opened-navi .txt {
    opacity: 0;
    transform: translateY(100%)
}

#app header nav.app-nav .msg #menu.is-opened-navi .icon {
    opacity: 1;
    transform: translate(0, 0)
}

#app header nav.app-nav:before {
    content: "";
    z-index: 1;
    width: 100%;
    height: 1.8rem;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(rgba(0, 0, 0, .8) 40%, transparent 100%);
    transition: opacity .5s ease-in-out;
    position: fixed;
    top: 0;
    left: 0
}

#app header nav.app-nav.down:before {
    opacity: 1
}

#app header nav.app-nav.up:before {
    opacity: 0
}

#app header nav.app-nav.up .msg {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-100%)rotate(-3deg)
}

#app header nav.app-nav.gray:before,
#app header nav.app-nav.gray .msg .logo .img1 {
    opacity: 0
}

#app header nav.app-nav.gray .msg .logo .img2 {
    opacity: 1
}

#app header nav.app-nav.gray .msg #menu {
    border-color: #010101
}

#app header nav.app-nav.gray .msg #menu .wc {
    color: #010101
}

#app header nav.app-nav.navi:before {
    opacity: 0
}

#app header nav.app-nav.navi .msg .logo .img1 {
    opacity: 1
}

#app header nav.app-nav.navi .msg .logo .img2 {
    opacity: 0
}

#app header nav.app-nav.navi .msg #menu {
    border-color: #fff
}

#app header nav.app-nav.navi .msg #menu .wc,
#app header.on nav.app-nav .msg>span {
    color: #fff
}

#app header.on nav.app-nav .msg #menu>em {
    background-color: #fff
}

#app nav.menu {
    width: 100%;
    height: 100%;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    position: fixed
}

#app nav.menu .items {
    width: 100vw;
    z-index: 100;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    top: 0;
    left: 0
}

#app nav.menu .items .content {
    width: 100%;
    padding-top: 1rem;
    padding-left: 6vw;
    padding-right: 6vw
}

#app nav.menu .items .content .lists {
    text-align: left;
    opacity: 0;
    margin: .6rem 0;
    display: block;
    position: relative
}

#app nav.menu .items .content .lists>span {
    text-align: left;
    letter-spacing: -1px;
    color: rgba(255, 255, 255, .5);
    padding-top: .1em;
    padding-left: 7vw;
    font-size: 10.6vw;
    line-height: 1.1;
    display: block
}

#app nav.menu .items .content .lists>span .letter {
    overflow: hidden
}

#app nav.menu .items .content .lists>small {
    color: rgba(255, 255, 255, .5);
    text-align: center;
    font-size: 3.6vw;
    font-weight: 600;
    display: block;
    position: absolute;
    bottom: 82%;
    left: 0
}

#app nav.menu .items .content .lists.on>span {
    color: #989eff
}

#app nav.menu .items .content .lists.on>small {
    color: #fff
}

#app nav.menu .items .content .telList {
    opacity: 0;
    border: 1px solid #989eff;
    border-radius: 1rem;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    margin: 1.2rem 0 0;
    padding: 2vw 5vw;
    display: -ms-flexbox;
    display: flex
}

#app nav.menu .items .content .telList>h5 i {
    margin: 0 .3rem 0 .2rem
}

#app nav.menu .items .note {
    opacity: 0;
    border: 1px solid #989eff;
    border-radius: 1rem;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding: 2vw 5vw;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 90%;
    left: 6vw
}

#app nav.menu .items .note>h5 i {
    margin: 0 .3rem 0 .2rem
}

#app nav.menu .shape-overlays {
    width: 300vw;
    height: 100vh;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0
}

#app nav.menu .shape-overlays .path {
    fill: #000;
    transition: transform 1.3s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(-100%)
}

#app nav.menu .shape-overlays .shape-overlays__path:nth-of-type(1) {
    fill: #99a1ff
}

#app nav.menu .shape-overlays .shape-overlays__path:nth-of-type(2) {
    fill: #282a49
}

#app nav.menu .shape-overlays .shape-overlays__path:nth-of-type(3) {
    fill: #000
}

#app nav.menu .shape-overlays.is-opened .path {
    transform: translate(0, 0)
}

#app main {
    z-index: 5;
    position: relative
}

#app .foot {
    z-index: 50;
    background-color: #000;
    padding: 5.20833vw 0 13.0208vw;
    position: relative
}

#app .foot h3 {
    color: #242640;
    white-space: nowrap;
    text-align: center;
    letter-spacing: -.04em;
    font-size: 19.2708vw;
    line-height: .8
}

#app .foot h3>span {
    overflow: hidden
}

#app .foot .get {
    width: 3.6rem;
    height: 3.6rem;
    pointer-events: none;
    z-index: 10;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#app .foot .get .mask {
    opacity: .7;
    background-image: url(mk.defdead7.jpg);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    border-radius: 50%
}

#app .foot .get>img.go {
    width: 2.2rem;
    z-index: 10;
    position: relative
}

#app .foot .get h4 {
    text-align: center;
    width: 100%;
    white-space: nowrap;
    z-index: 10;
    margin-top: -.15rem;
    position: relative
}

#app .footerMak {
    clear: both;
    width: 100%;
    z-index: 3;
    pointer-events: none;
    position: relative
}

#app .footerMak:after {
    content: "";
    height: 120vh;
    width: 100%;
    pointer-events: none;
    background: linear-gradient(transparent 0%, #000 20%);
    position: absolute;
    bottom: 100%;
    left: 0
}

#app .footerMak.go+footer .moveFn {
    opacity: 1;
    transform: translate(0, 0)
}

#app footer {
    z-index: 2;
    width: 100%;
    opacity: 0;
    background-color: #000;
    padding: 5.20833vw 4.16667vw 4.16667vw;
    position: fixed;
    bottom: 0;
    left: 0
}

#app footer .moveFn {
    opacity: 0;
    transition: opacity 1.5s cubic-bezier(.43, .195, .02, 1), transform 1.5s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(-.6rem)
}

#app footer .moveFn:nth-of-type(1) {
    transition-delay: .1s
}

#app footer .moveFn:nth-of-type(2) {
    transition-delay: .2s
}

#app footer .moveFn:nth-of-type(3) {
    transition-delay: .3s
}

#app footer #linearCv canvas {
    min-height: 100%
}

#app footer .top {
    z-index: 10;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 2.60417vw;
    padding: 1.82292vw 0;
    position: relative
}

#app footer .top .c1 img {
    height: 2.5vw;
    margin-bottom: 1.5625vw;
    display: block
}

#app footer .top .c2 {
    grid-template-rows: repeat(2, auto);
    grid-template-columns: repeat(2, auto);
    -ms-flex-pack: start;
    justify-content: start;
    gap: 3.64583vw 10.4167vw;
    display: grid
}

#app footer .top .c2>li {
    position: relative
}

#app footer .top .c2>li span {
    display: block
}

#app footer .top .c2>li small {
    margin-bottom: 5px;
    display: block
}

#app footer .top .c2>li p {
    color: rgba(255, 255, 255, .5)
}

#app footer .top .c2>li .img {
    width: 1rem;
    opacity: .8;
    margin-top: .2rem;
    display: block
}

#app footer .top .c2>li .shareBox {
    position: absolute;
    bottom: 0;
    left: 0
}

#app footer .top .c2>li .shareBox .layer-icon {
    margin-right: .2rem;
    position: relative
}

#app footer .top .c2>li .shareBox .layer-icon .icon {
    transition: transform .3s ease-in-out
}

#app footer .top .c2>li .shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#app footer .top .c2>li .shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#app footer .top .c2>li .shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

@media screen and (orientation:landscape) {
    #app footer .top .c2>li .shareBox .layer-icon:hover i {
        color: #fff
    }

    #app footer .top .c2>li .shareBox .layer-icon:hover .icon {
        transform: scale3d(1.2, 1.2, 1.2)
    }

    #app footer .top .c2>li .shareBox .layer-icon:hover .inter {
        opacity: 1;
        pointer-events: auto
    }
}

#app footer .topApp {
    width: 100%
}

#app footer .topApp .c2 {
    width: 100%;
    margin-bottom: .5rem
}

#app footer .topApp .c2>.list {
    height: 2rem;
    pointer-events: auto;
    width: 100%;
    background-color: rgba(0, 0, 0, .2);
    border-radius: .2rem;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: .2rem;
    padding: 0 .3rem;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#app footer .topApp .c2>.list span {
    display: block
}

#app footer .topApp .c2>.list small {
    margin-bottom: 8px;
    display: block
}

#app footer .topApp .c2>.list p {
    color: rgba(255, 255, 255, .5);
    margin-top: 8px;
    line-height: 1.2
}

#app footer .topApp .c2>.list .rightBox {
    height: 1rem;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    margin: auto 0;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    right: .3rem
}

#app footer .topApp .c2>.list .rightBox .img {
    width: 1.5rem;
    height: 1.5rem;
    display: block
}

#app footer .topApp .c2>.list .rightBox .layer-icon {
    width: 1rem;
    height: 1rem;
    background-color: #242152;
    border-radius: 50%
}

#app footer .topApp .c2>.list .shareBox {
    position: absolute;
    bottom: 0;
    left: 0
}

#app footer .topApp .c2>.list .shareBox .layer-icon {
    margin-right: .2rem;
    position: relative
}

#app footer .topApp .c2>.list .shareBox .layer-icon .icon {
    transition: transform .3s ease-in-out
}

#app footer .topApp .c2>.list .shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#app footer .topApp .c2>.list .shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#app footer .topApp .c2>.list .shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

#app footer .topApp .c2>.list .shareBox .layer-icon:hover i {
    color: #fff
}

#app footer .topApp .c2>.list .shareBox .layer-icon:hover .icon {
    transform: scale3d(1.2, 1.2, 1.2)
}

#app footer .topApp .c2>.list .shareBox .layer-icon:hover .inter {
    opacity: 1;
    pointer-events: auto
}

#app footer .mid {
    transition-delay: .4s;
    position: relative
}

#app footer .mid .line {
    width: 50vw;
    height: 1px;
    background-color: rgba(255, 255, 255, .2);
    position: absolute;
    bottom: 10px;
    left: 50%
}

#app footer .mid .layout-btn {
    background-color: rgba(0, 0, 0, .5);
    border-color: transparent;
    border-radius: 2rem;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .07rem .15rem .07rem .2rem;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1), background-color .3s ease-in-out;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    bottom: calc(100% + .2rem);
    left: 0
}

#app footer .mid .layout-btn .txt {
    margin-right: .15rem;
    transition: color .3s ease-in-out
}

#app footer .mid .layout-btn .txt .letter {
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#app footer .mid .layout-btn .txt .letter:nth-child(2) {
    transition-delay: 50ms
}

#app footer .mid .layout-btn .txt .letter:nth-child(3) {
    transition-delay: .1s
}

#app footer .mid .layout-btn .txt .letter:nth-child(4) {
    transition-delay: .15s
}

#app footer .mid .layout-btn .txt .letter:nth-child(5) {
    transition-delay: .2s
}

#app footer .mid .layout-btn .txt .letter:nth-child(6) {
    transition-delay: .25s
}

#app footer .mid .layout-btn .txt .letter:nth-child(7) {
    transition-delay: .3s
}

#app footer .mid .layout-btn .wordTxt {
    color: #000;
    height: 100%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem 0;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: .2rem
}

#app footer .mid .layout-btn .wordTxt .letter {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(80%)
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(2) {
    transition-delay: 50ms
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(3) {
    transition-delay: .1s
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(4) {
    transition-delay: .15s
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(5) {
    transition-delay: .2s
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(6) {
    transition-delay: .25s
}

#app footer .mid .layout-btn .wordTxt .letter:nth-child(7) {
    transition-delay: .3s
}

#app footer .mid .layout-btn .iconfont {
    color: #989eff;
    transition: opacity .3s ease-in-out, color .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#app footer .mid .layout-btn:hover {
    background-color: #fff;
    transform: scale(1.03)
}

#app footer .mid .layout-btn:hover .txt,
#app footer .mid .layout-btn:hover .iconfont {
    color: #000
}

#app footer>.shareBox {
    width: 100%;
    border-top: 1px solid rgba(255, 255, 255, .2);
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: .3rem 0;
    position: relative
}

#app footer>.shareBox .layout-btn {
    height: .72rem;
    background-color: rgba(0, 0, 0, .5);
    border-color: transparent;
    border-radius: 2rem;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: auto 0;
    padding: 0 .25rem 0 .3rem;
    line-height: .72rem;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1), background-color .3s ease-in-out;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0
}

#app footer>.shareBox .layout-btn .txt {
    margin-right: .15rem;
    transition: color .3s ease-in-out
}

#app footer>.shareBox .layout-btn .txt .letter {
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(2) {
    transition-delay: 50ms
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(3) {
    transition-delay: .1s
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(4) {
    transition-delay: .15s
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(5) {
    transition-delay: .2s
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(6) {
    transition-delay: .25s
}

#app footer>.shareBox .layout-btn .txt .letter:nth-child(7) {
    transition-delay: .3s
}

#app footer>.shareBox .layout-btn .wordTxt {
    color: #000;
    height: 100%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem 0;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: .2rem
}

#app footer>.shareBox .layout-btn .wordTxt .letter {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(80%)
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(2) {
    transition-delay: 50ms
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(3) {
    transition-delay: .1s
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(4) {
    transition-delay: .15s
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(5) {
    transition-delay: .2s
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(6) {
    transition-delay: .25s
}

#app footer>.shareBox .layout-btn .wordTxt .letter:nth-child(7) {
    transition-delay: .3s
}

#app footer>.shareBox .layout-btn .iconfont {
    color: #989eff;
    font-size: 22px;
    transition: opacity .3s ease-in-out, color .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#app footer>.shareBox .layer-icon {
    margin-left: .2rem;
    position: relative
}

#app footer>.shareBox .layer-icon .icon {
    font-size: 8vw;
    transition: transform .3s ease-in-out
}

#app footer>.shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#app footer>.shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#app footer>.shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

#home {
    width: 100vw;
    height: 100vh;
    position: relative;
    overflow: hidden
}

#home .loading {
    z-index: 10000
}

#home .loading .loadImg {
    width: 16.6667vw;
    height: 16.6667vw;
    opacity: 0;
    z-index: 200;
    transform: scale(0)
}

#home .loading .loadMsg {
    height: 100%;
    opacity: 0;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    position: absolute;
    left: calc(50% + 11.4583vw);
    transform: translateY(.1rem)
}

#home .loading .loadMsg p {
    color: rgba(255, 255, 255, .4);
    letter-spacing: 0;
    margin-top: 5px
}

#home .loading .loadMsg.active {
    opacity: 1;
    transition: opacity .6s ease-in-out, transform .6s ease-in-out;
    transform: translate(0, 0)
}

#home .loading #loadSum {
    opacity: 0;
    font-size: 1.2rem;
    line-height: .7;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: 0;
    left: 0
}

#home .loading #loadSum:after {
    content: attr(data-note);
    font-size: inherit;
    color: inherit;
    font-family: inherit;
    position: absolute;
    bottom: 0;
    left: 100%
}

#home .loading #loadSum.active {
    opacity: 1
}

#home #other {
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden
}

#home #other #banner {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

#home #other #banner .photo {
    opacity: 0;
    z-index: 1;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    transition: opacity .3s .3s
}

#home #other #banner .photo video {
    object-fit: cover;
    opacity: 0
}

#home #other #banner .photo .tsBox {
    opacity: 0
}

#home #other #banner .photo .tsBox>canvas {
    display: block
}

#home #other #banner .photo .tsBox .fillImg {
    height: 100%;
    min-width: 100vw;
    display: block
}

#home #other #banner .photo.active {
    opacity: 1
}

#home #other #banner .photo.next {
    animation-name: bannerIn;
    animation-duration: 1.15s;
    animation-timing-function: cubic-bezier(.38, 0, 0, 1);
    animation-fill-mode: both
}

#home #other #banner .photo.first video,
#home #other #banner .photo.first .tsBox {
    opacity: 1
}

#home #other #banner>canvas {
    z-index: 2;
    opacity: 0;
    display: block
}

#home #other #banner>canvas.loadCv,
#home #other #banner>canvas.active {
    opacity: 1
}

#home #other #banner .msg {
    width: 100%;
    z-index: 5;
    position: absolute;
    bottom: 0;
    left: 0
}

#home #other #banner .msg .topic {
    height: 5.3125vw;
    position: relative;
    overflow: hidden
}

#home #other #banner .msg .topic h2 {
    letter-spacing: -5px;
    height: 100%;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    font-size: 6.77083vw;
    display: none;
    position: absolute;
    top: 2px;
    left: 0
}

#home #other #banner .msg .topic h2 .letter small {
    letter-spacing: -.08em
}

#home #other #banner .msg .topic h2 .letter {
    min-width: .2em;
    color: #fff;
    animation-duration: .6s;
    animation-timing-function: cubic-bezier(.38, 0, 0, 1);
    animation-fill-mode: both
}

#home #other #banner .msg .topic h2 .letter.fontOut {
    animation-name: fontOut
}

#home #other #banner .msg .topic h2.txtCh {
    font-size: 5.3125vw
}

#home #other #banner .msg .topic h2.on {
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .topic h2.nextOut .letter {
    animation-name: fontNextOut
}

#home #other #banner .msg .topic h2.nextIn,
#home #other #banner .msg .topic h2.loadIn {
    z-index: 10;
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .topic h2.nextIn .letter,
#home #other #banner .msg .topic h2.loadIn .letter {
    animation-name: fontUp
}

#home #other #banner .msg .topic h2.prevIn {
    z-index: 10;
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .topic h2.prevIn .letter {
    animation-name: fontDown
}

#home #other #banner .msg .topic h2.prevOut .letter {
    animation-name: fontPrevOut
}

#home #other #banner .msg .note {
    height: 4.94792vw;
    position: relative;
    overflow: hidden
}

#home #other #banner .msg .note h3 {
    letter-spacing: -5px;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    font-size: 6.77083vw;
    line-height: .75;
    display: none;
    position: absolute;
    top: 0;
    left: 0
}

#home #other #banner .msg .note h3 .letter small {
    letter-spacing: -.08em
}

#home #other #banner .msg .note h3.txtCh {
    font-size: 5.3125vw;
    line-height: .8
}

#home #other #banner .msg .note h3 .letter {
    min-width: .2em;
    color: #fff;
    animation-duration: .6s;
    animation-timing-function: cubic-bezier(.38, 0, 0, 1);
    animation-fill-mode: both
}

#home #other #banner .msg .note h3.on {
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .note h3.nextOut .letter {
    animation-name: fontNextOut
}

#home #other #banner .msg .note h3.nextIn,
#home #other #banner .msg .note h3.loadIn {
    z-index: 10;
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .note h3.nextIn .letter,
#home #other #banner .msg .note h3.loadIn .letter {
    animation-name: fontUp
}

#home #other #banner .msg .note h3.prevIn {
    z-index: 10;
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .msg .note h3.prevIn .letter {
    animation-name: fontDown
}

#home #other #banner .msg .note h3.prevOut .letter {
    animation-name: fontPrevOut
}

#home #other #banner>.note {
    z-index: 6;
    pointer-events: none;
    height: 100%;
    width: 20%;
    transform-origin: 50vw;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    transition: transform .8s cubic-bezier(.38, 0, 0, 1) .5s, opacity .8s cubic-bezier(.38, 0, 0, 1) .5s;
    position: absolute;
    top: 0;
    left: .8rem
}

#home #other #banner>.note p {
    letter-spacing: 0;
    line-height: 2
}

#home #other #banner .pager {
    z-index: 4;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

#home #other #banner .pager .ml {
    width: 35%;
    height: 100%;
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0
}

#home #other #banner .pager .mr {
    width: 35%;
    height: 100%;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0
}

#home #other #banner .mask {
    pointer-events: none;
    z-index: 3;
    opacity: 0;
    background-color: rgba(0, 0, 0, .7)
}

#home #other .inner {
    z-index: 50;
    width: 100%;
    height: .9rem;
    transform-origin: 50% 0;
    padding: 0 1rem;
    transition: transform .8s cubic-bezier(.38, 0, 0, 1) .5s, opacity .8s cubic-bezier(.38, 0, 0, 1) .5s;
    position: absolute;
    bottom: .9rem;
    left: 0
}

#home #other .inner>ul {
    position: absolute;
    top: 0;
    right: 2rem
}

#home #other .inner>ul>li {
    color: #fff;
    white-space: nowrap;
    letter-spacing: 1px;
    opacity: 0;
    pointer-events: none;
    font-size: .83333vw;
    font-weight: 600;
    transition: opacity .3s ease-in-out;
    position: absolute;
    top: 0;
    right: 0
}

#home #other .inner>ul>li.on {
    opacity: 1
}

#home #other .inner>ul>li small {
    text-align: right;
    letter-spacing: 0;
    padding-top: .8vw;
    display: block
}

#home #other .inner .group {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    bottom: 0;
    right: 1rem
}

#home #other .inner .group #sum.in+.process>small {
    transition: transform 6s ease-in-out;
    transform: scaleX(1)
}

#home #other .inner .group .process {
    width: 1.25rem;
    height: 1px;
    background-color: rgba(255, 255, 255, .5);
    margin: 0 8px;
    position: relative
}

#home #other .inner .group .process>small {
    transform-origin: 0;
    background-color: #fff;
    transform: scaleX(.001)
}

#home #other .inner .group .til {
    pointer-events: none;
    margin-bottom: .2rem;
    display: block
}

#home #other .inner .group .set {
    height: .46rem;
    white-space: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

@media screen and (orientation:landscape) {
    #home #other .inner .group .set {
        cursor: pointer;
        background-color: rgba(255, 255, 255, .8);
        border-radius: 1rem;
        padding: 0 .25rem;
        transition: transform .3s ease-in-out, background-color .3s ease-in-out
    }

    #home #other .inner .group .set:hover {
        background-color: #fff;
        transform: scale(1.05)
    }
}

#home #other .inner .group .set .hi {
    border: .6px solid rgba(255, 255, 255, .8);
    border-radius: 2rem;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding: .14rem .32rem;
    display: -ms-flexbox;
    display: flex
}

#home #other .inner .group .set .hand {
    height: .28rem;
    transform-origin: 70% 80%;
    margin-left: .15rem;
    animation: .6s ease-in-out infinite alternate handMove
}

#home #other .inner .group .set>span {
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

#home #other .inner .group .set>span .like {
    width: .2rem;
    margin: 0 .1rem
}

#home #other .inner .group .set>span .like path {
    fill: red
}

#home #other .inner .group .set .src {
    color: #fff;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    bottom: 0;
    right: 0
}

#home #other .inner .group .set .src .icon {
    width: .5rem;
    height: .5rem;
    margin-right: .1rem
}

#home #other .inner .group .set .src .icon .st0 {
    fill: #989eff
}

#home #other .inner .group .set .src .icon .st1 {
    stroke: #989eff;
    stroke-width: .8rem;
    animation: .5s ease-in-out infinite alternate lingScroll
}

#home #other .inner .cursorSlider_more {
    width: 74%;
    cursor: pointer;
    height: 300%;
    position: absolute;
    top: 0;
    left: 0
}

#home #other .inner .cursorSlider_more>.hrefGo {
    pointer-events: none;
    cursor: none;
    display: block
}

#home #other .inner .cursorSlider_more>.hrefGo.on {
    pointer-events: auto
}

#home #other .inner .cursorSlider_more>.hrefGo.nextIn {
    pointer-events: auto;
    z-index: 10
}

#home #other.loadActive {
    pointer-events: none
}

#home #other.loadActive #banner>.note,
#home #other.loadActive .inner {
    opacity: 0;
    transform: scale(1.1)
}

#work {
    background-color: #000
}

#work #main {
    width: 70%;
    max-width: 66.6667vw;
    margin: 0 auto;
    padding-top: 3rem;
    padding-bottom: 2.4rem;
    position: relative
}

#work #main #topClear {
    pointer-events: none;
    width: 100%;
    height: calc(100% - 300vh);
    position: absolute;
    top: 200vh;
    left: 0
}

#work #main .title {
    margin-bottom: 1.4rem;
    padding-left: .3rem
}

#work #main .title h1 {
    color: #fff;
    height: 1.6rem;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    line-height: 1;
    position: relative;
    overflow: hidden
}

#work #main .title h1>.letter {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    min-width: .2em;
    text-align: left;
    z-index: 3;
    display: inline-block;
    position: relative
}

#work #main .title h1>.letter .wordLine0 {
    opacity: 0;
    transform-origin: 0;
    color: #989eff
}

#work #main .title h1>.letter:nth-of-type(1) .wordLine0 {
    background-position-x: 0%
}

#work #main .title h1>.letter:nth-of-type(2) .wordLine0 {
    background-position-x: 4%
}

#work #main .title h1>.letter:nth-of-type(3) .wordLine0 {
    background-position-x: 8%
}

#work #main .title h1>.letter:nth-of-type(4) .wordLine0 {
    background-position-x: 12%
}

#work #main .title h1>.letter:nth-of-type(5) .wordLine0 {
    background-position-x: 16%
}

#work #main .title h1>.letter:nth-of-type(6) .wordLine0 {
    background-position-x: 20%
}

#work #main .title h1>.letter:nth-of-type(7) .wordLine0 {
    background-position-x: 24%
}

#work #main .title h1>.letter:nth-of-type(8) .wordLine0 {
    background-position-x: 28%
}

#work #main .title h1>.letter:nth-of-type(9) .wordLine0 {
    background-position-x: 32%
}

#work #main .title h1>.letter:nth-of-type(10) .wordLine0 {
    background-position-x: 36%
}

#work #main .title h1>.letter:nth-of-type(11) .wordLine0 {
    background-position-x: 42%
}

#work #main .title h1>.letter:nth-of-type(12) .wordLine0 {
    background-position-x: 46%
}

#work #main .title .child {
    padding-left: .4rem
}

#work #main .title .child h2 {
    color: #fff;
    margin-bottom: .2rem;
    font-size: .36rem;
    line-height: 1
}

#work #main .title .child p {
    color: rgba(255, 255, 255, .3);
    line-height: 1.3
}

#work #main .box {
    width: 100%;
    position: relative
}

#work #main .box .tree {
    z-index: 4;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0
}

#work #main .box .tree>li {
    width: 100%
}

#work #main .box .tree>li>a {
    text-align: right;
    color: rgba(255, 255, 255, .4);
    line-height: .36rem;
    transition: color .5s ease-in-out;
    display: block
}

#work #main .box .tree>li>a:hover,
#work #main .box .tree>li.on>a {
    color: #fff
}

#work #main .box .items {
    width: 100%;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#work #main .box .items .col {
    width: 100%;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: -2rem;
    display: -ms-flexbox;
    display: flex
}

#work #main .box .items .col:nth-of-type(1) {
    margin-top: 0
}

#work #main .box .items .col:nth-of-type(1)>div:nth-of-type(2) {
    margin-top: 5.5rem
}

#work #main .box .items .col>a,
#work #main .box .items .col>div {
    width: 42.96%
}

#work #main .box .items .col>a:nth-of-type(2),
#work #main .box .items .col>div:nth-of-type(2) {
    margin-top: 7rem
}

#work #main .box .items .col>a .photo,
#work #main .box .items .col>div .photo {
    width: 100%;
    height: 36vw;
    position: relative;
    overflow: hidden
}

#work #main .box .items .col>a .photo figure,
#work #main .box .items .col>div .photo figure {
    width: 100%;
    height: 100%;
    pointer-events: none;
    margin: 0;
    position: absolute;
    top: 0%;
    left: 0
}

#work #main .box .items .col>a .photo figure .videoBox,
#work #main .box .items .col>div .photo figure .videoBox {
    pointer-events: auto;
    width: calc(100% + 2px);
    background-position: bottom;
    background-size: cover;
    left: -1px
}

#work #main .box .items .col>a .photo figure .videoBox video,
#work #main .box .items .col>div .photo figure .videoBox video {
    object-fit: cover;
    opacity: 0;
    transition: opacity .5s linear
}

#work #main .box .items .col>a .photo figure .videoBox.active video,
#work #main .box .items .col>div .photo figure .videoBox.active video {
    opacity: 1
}

#work #main .box .items .col>a .photo figure img,
#work #main .box .items .col>div .photo figure img {
    object-fit: cover
}

#work #main .box .items .col>a .photo figure img.js-image,
#work #main .box .items .col>div .photo figure img.js-image {
    opacity: 0
}

#work #main .box .items .col>a .photo figure .appTs,
#work #main .box .items .col>div .photo figure .appTs {
    opacity: 0;
    transition: opacity .8s linear
}

#work #main .box .items .col>a .photo figure .appTs canvas,
#work #main .box .items .col>div .photo figure .appTs canvas {
    opacity: 0;
    width: 100%;
    height: auto;
    transition: opacity .3s linear
}

#work #main .box .items .col>a .photo figure .appTs.loaded,
#work #main .box .items .col>div .photo figure .appTs.loaded,
#work #main .box .items .col>a .photo figure .appTs.go canvas,
#work #main .box .items .col>div .photo figure .appTs.go canvas {
    opacity: 1
}

#work #main .box .items .col>a .photo.sliderGl,
#work #main .box .items .col>div .photo.sliderGl {
    cursor: none
}

#work #main .box .items .col>a .msg,
#work #main .box .items .col>div .msg {
    margin-top: .4rem
}

#work #main .box .items .col>a .msg h3,
#work #main .box .items .col>div .msg h3 {
    color: #fff;
    height: .42rem;
    perspective: 26.0417vw;
    margin-bottom: .2rem;
    font-weight: 600;
    line-height: 1;
    position: relative;
    overflow: hidden
}

#work #main .box .items .col>a .msg h3 .letter,
#work #main .box .items .col>div .msg h3 .letter {
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
    min-width: .2em;
    transform-origin: 0 0
}

#work #main .box .items .col>a .msg h3 .letter:nth-of-type(1),
#work #main .box .items .col>div .msg h3 .letter:nth-of-type(1) {
    transform-origin: 0%;
    transition: opacity .5s ease-in-out, transform .5s cubic-bezier(.51, .29, .06, .68);
    position: relative
}

@media screen and (orientation:landscape) {

    #work #main .box .items .col>a .msg h3 .letter:nth-of-type(1),
    #work #main .box .items .col>div .msg h3 .letter:nth-of-type(1) {
        letter-spacing: -1px;
        font-size: .38rem
    }
}

#work #main .box .items .col>a .msg h3 .letter:nth-of-type(2),
#work #main .box .items .col>div .msg h3 .letter:nth-of-type(2) {
    width: auto;
    opacity: 0;
    transform-origin: 0%;
    white-space: nowrap;
    transition: opacity .5s ease-in-out, transform .5s cubic-bezier(.51, .29, .06, .68);
    position: absolute;
    top: 0;
    left: 0;
    transform: rotateX(-90deg)rotateX(30deg)rotate(5deg)translateY(80%)
}

#work #main .box .items .col>a .msg h3 .letter:nth-of-type(2) small,
#work #main .box .items .col>div .msg h3 .letter:nth-of-type(2) small {
    transform-origin: 0
}

#work #main .box .items .col>a .msg p,
#work #main .box .items .col>div .msg p {
    color: #666;
    letter-spacing: 0;
    line-height: 1
}

#work #main .box .items .col>a:hover .msg h3 .letter:nth-of-type(1),
#work #main .box .items .col>div:hover .msg h3 .letter:nth-of-type(1) {
    opacity: 0;
    transform: rotateX(90deg)rotateX(-30deg)rotate(-5deg)translateY(-80%)
}

#work #main .box .items .col>a:hover .msg h3 .letter:nth-of-type(2),
#work #main .box .items .col>div:hover .msg h3 .letter:nth-of-type(2) {
    opacity: 1;
    transform: none
}

#work .toTopBtn {
    height: 1rem;
    z-index: 120;
    cursor: pointer;
    width: 1rem;
    background-color: transparent;
    border-radius: 50%;
    transition: opacity .3s ease-in-out, background-color .5s ease-in-out, transform .3s ease-in-out;
    position: fixed;
    bottom: 1rem;
    left: .8rem
}

#work .toTopBtn.hideIn {
    opacity: 0;
    pointer-events: none;
    transform: scale(.6)
}

#work .toTopBtn .layer-icon {
    z-index: 10;
    -webkit-backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background-color: rgba(86, 85, 93, .4);
    border-radius: 50%;
    -ms-flex-direction: column;
    flex-direction: column
}

#work .toTopBtn .layer-icon .wc {
    line-height: .2rem;
    transition: color .3s ease-in-out
}

#work .toTopBtn .layer-icon .txt {
    position: relative
}

#work .toTopBtn .layer-icon .txt .before {
    overflow: hidden
}

#work .toTopBtn .layer-icon .txt .before>.letter {
    transition: opacity .3s ease-in-out, transform .3s ease-in-out
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#work .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#work .toTopBtn .layer-icon .txt .after {
    width: calc(100% + 1.2rem);
    height: 100%;
    letter-spacing: 1px;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -.6rem;
    overflow: hidden
}

#work .toTopBtn .layer-icon .txt .after>.letter {
    opacity: 0;
    font-size: .14rem;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: translateY(100%)
}

#work .toTopBtn .layer-icon .txt .after>.letter .wordLine0 {
    color: #fff;
    font-weight: 600
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#work .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(8) {
    transition-delay: .21s
}

@media screen and (orientation:landscape) {
    #work .toTopBtn:hover .layer-icon .txt .before>.letter {
        opacity: 0;
        transform: translateY(-100%)
    }

    #work .toTopBtn:hover .layer-icon .txt .after>.letter {
        opacity: 1;
        transform: translate(0, 0)
    }
}

@media screen and (orientation:portrait) {
    #work .toTopBtn {
        left: auto;
        right: .4rem
    }
}

#about {
    z-index: 6;
    width: 100vw;
    position: relative
}

#about #main .r1 {
    height: 100vh;
    width: 100%
}

#about #main .r1 .group {
    width: 100%;
    padding-top: 4%
}

#about #main .r1 .group>span {
    color: #fefefe;
    display: block
}

#about #main .r1 .group h1 {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: .4rem 0 .7rem;
    line-height: 1;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#about #main .r1 .group h1 span {
    overflow: hidden
}

#about #main .r1 .group h1 span small {
    opacity: 0
}

#about #main .r1 .group>small {
    color: rgba(255, 254, 254, .5);
    letter-spacing: 0;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

#about #main .r1 .group>small .icon {
    width: .28rem;
    height: auto;
    margin-right: .1rem
}

#about #main .r1 .group>small .icon .st0 {
    fill: #989eff
}

#about #main .r1 .group>small .icon .st1 {
    stroke: #989eff;
    stroke-width: .8rem;
    animation: .5s ease-in-out infinite alternate lingScroll
}

#about #main .r2 {
    min-height: 100vh;
    width: 100%
}

#about #main .r2 .inner {
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 1rem;
    display: -ms-flexbox;
    display: flex
}

#about #main .r2 .inner>span {
    margin-right: 2.2rem
}

#about #main .r2 .inner .col h2 {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.14;
    display: -ms-flexbox;
    display: flex
}

#about #main .r2 .inner .col h2 span {
    color: #2e304c;
    position: relative
}

#about #main .r2 .inner .col h2 span:after {
    content: attr(data-note);
    width: 100%;
    color: #fff;
    font-size: inherit;
    font-weight: inherit;
    animation-name: clip;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r2 .group {
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-top: 3.8rem;
    padding-bottom: 5.5rem;
    display: -ms-flexbox;
    display: flex
}

#about #main .r2 .group>a {
    height: .5rem;
    display: inline-block
}

#about #main .r2 .group>a img {
    height: 100%;
    display: block
}

#about #main .r2 .group .line {
    width: 1px;
    height: .5rem;
    border: 1px solid rgba(255, 255, 255, .3);
    margin: 0 2.2rem
}

#about #main .r2 .group .col h3 {
    white-space: nowrap;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-weight: 400;
    line-height: 1.58;
    display: -ms-flexbox;
    display: flex
}

#about #main .r2 .group .col h3 span {
    overflow: hidden
}

#about #main .r2 .group .col h3 span small {
    white-space: nowrap;
    opacity: 0
}

#about #main .r2 .group .col .layout-btn-2 {
    width: auto;
    height: .64rem;
    margin-top: .7rem
}

#about #main .r2 .group .col .layout-btn-2>span>i {
    width: .67708vw;
    height: 1.04167vw;
    position: relative
}

#about #main .r2 .group .col .layout-btn-2>span>i:before {
    content: "";
    width: .625vw;
    height: 2px;
    -webkit-transform: scale(.96, .8)rotate(50deg);
    background: #99a3ba;
    border-radius: 1px;
    margin-right: 4px;
    transition: all .3s;
    display: block;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
    transform: scale(.98, .8)rotate(50deg)
}

#about #main .r2 .group .col .layout-btn-2>span>i:after {
    content: "";
    width: .625vw;
    height: 2px;
    -webkit-transform: scale(.96, .8)rotate(-50deg);
    background: #99a3ba;
    border-radius: 1px;
    transition: all .3s;
    display: block;
    position: absolute;
    top: calc(50% + 3.5px);
    left: 0;
    transform: scale(.98, .8)rotate(-50deg)
}

#about #main .r2 .group .col .layout-btn-2>span small em {
    height: 1.1em;
    text-transform: lowercase;
    margin: 0 2px
}

#about #main .r3 {
    background: #f5f5f5;
    position: relative
}

#about #main .r3 .imgBox {
    height: 30vw;
    width: 66.56vw;
    position: absolute;
    top: -16vw;
    left: 0;
    overflow: hidden
}

#about #main .r3 .imgBox .pic {
    width: 100%;
    height: calc(100% + 100px);
    position: absolute;
    top: -50px;
    left: 0
}

#about #main .r3 .imgBox .pic .img {
    object-fit: cover;
    opacity: 0
}

#about #main .r3 .imgBox .pic .img:first-of-type {
    opacity: 1
}

#about #main .r3 .inner {
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 4.2rem;
    padding-bottom: 2rem;
    display: -ms-flexbox;
    display: flex
}

#about #main .r3 .inner p {
    color: rgba(0, 0, 0, .3);
    width: 50%;
    line-height: 1.53
}

#about #main .r3 .group {
    box-sizing: content-box;
    height: 220vh;
    position: relative
}

#about #main .r3 .group .wrap {
    height: 100vh;
    width: 100vw;
    z-index: 3;
    background-color: #fff;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    position: sticky;
    top: 1.04167vw;
    left: 0
}

#about #main .r3 .group .wrap .layout-btn {
    z-index: 10;
    background-color: transparent;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 2rem;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem .2rem .1rem .3rem;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 2.2rem;
    right: 13vw
}

#about #main .r3 .group .wrap .layout-btn .txt {
    color: #000;
    margin-right: .1rem
}

#about #main .r3 .group .wrap .layout-btn:hover {
    transform: scale(1.05)
}

#about #main .r3 .group .wrap:after {
    content: "";
    z-index: 0;
    width: 100%;
    height: 1.42rem;
    background-color: #f5f5f5;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r3 .group .wrap>canvas {
    z-index: 50;
    pointer-events: none
}

#about #main .r3 .group .wrap h3 {
    color: #000;
    z-index: 5;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 1;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r3 .group .wrap h3>.letter {
    height: 1em;
    padding-top: .1em
}

#about #main .r3 .group .wrap h3 span {
    overflow: hidden
}

#about #main .r3 .group .wrap .con {
    z-index: 4;
    margin-top: 0;
    position: relative
}

#about #main .r3 .group .wrap .con .child {
    pointer-events: none;
    height: 100%;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
    animation-name: fxSlide;
    display: -ms-flexbox;
    display: flex
}

#about #main .r3 .group .wrap .con .child>ul {
    width: 28vw;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r3 .group .wrap .con .child>ul>li {
    pointer-events: auto;
    width: 60%
}

#about #main .r3 .group .wrap .con .child>ul>li:first-of-type {
    margin-bottom: .5rem
}

#about #main .r3 .group .wrap .con .child>ul>li:last-of-type {
    width: auto;
    pointer-events: none;
    -ms-flex: 1;
    flex: 1;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -ms-flexbox;
    display: flex
}

#about #main .r3 .group .wrap .con .child>ul>li>h4 {
    line-height: 1
}

#about #main .r3 .group .wrap .con .child>ul>li>a {
    transform-origin: 0;
    padding: 5px .8rem 5px 0;
    line-height: 1.5;
    transition: all .3s ease-in-out;
    display: block;
    position: relative
}

#about #main .r3 .group .wrap .con .child>ul>li>a>img {
    opacity: 0;
    width: 3rem;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r3 .group .wrap .con .child>ul>li>a:hover {
    color: #000;
    font-weight: 600;
    transform: translate(5%)scale(1.05)
}

#about #main .r3 .group .wrap .con .child>ul>li>p {
    color: rgba(0, 0, 0, .25);
    width: 28vw;
    min-height: 1.2rem;
    margin-top: .6rem;
    padding-right: 2rem;
    line-height: 1.5
}

#about #main .r3-1 .chunk {
    padding-top: 2.4rem
}

#about #main .r3-1 .chunk h3 {
    color: #fff;
    z-index: 5;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 15vw;
    line-height: .85;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r3-1 .chunk h3 span {
    overflow: hidden
}

#about #main .r3-1 .chunk .item {
    padding: .6rem 0 2rem;
    display: block
}

#about #main .r3-1 .chunk .item .item__image {
    width: 100%;
    margin-bottom: .8rem
}

#about #main .r3-1 .chunk .item .item__image .js-image {
    width: 100%;
    object-fit: cover
}

#about #main .r3-1 .chunk .item .msg h2 {
    margin-bottom: .3rem;
    font-size: 12vw;
    font-weight: 400;
    overflow: hidden
}

#about #main .r3-1 .chunk .item .msg p {
    color: rgba(255, 255, 255, .25);
    line-height: 1.4
}

#about #main .r3-1 .chunk .item .msg .box {
    grid-template-columns: repeat(2, 1fr);
    gap: .1rem .2rem;
    padding: .5rem 0 .6rem;
    display: grid;
    position: relative;
    overflow: hidden
}

#about #main .r3-1 .chunk .item .msg .box li {
    grid-template-columns: auto auto;
    -ms-flex-pack: start;
    justify-content: start;
    -ms-flex-align: center;
    align-items: center;
    padding-left: .14rem;
    display: grid
}

#about #main .r3-1 .chunk .item .msg .box li .dot {
    width: 4px;
    height: 4px;
    background-color: #989eff;
    border-radius: 50%;
    margin-right: .2rem
}

#about #main .r3-1 .chunk .item .msg .box .line {
    width: 100%;
    height: .6px;
    transform-origin: 0;
    opacity: .5;
    background-color: #989eff;
    transition: transform 1.5s, opacity 1.5s;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(.001)
}

#about #main .r3-1 .chunk .item .msg .box .line.go {
    transform: scaleX(1)
}

#about #main .r3-1 .chunk .item:last-of-type {
    padding-bottom: 0
}

#about #main .r4 {
    width: 100%;
    background-color: #000;
    padding-bottom: 100vh;
    position: relative
}

#about #main .r4>img {
    width: 100%;
    opacity: .7;
    position: absolute;
    top: -5.20833vw;
    left: 0
}

#about #main .r4 .video {
    width: 100%;
    height: 100%;
    z-index: 3;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r4 .video:after {
    content: "";
    background-color: rgba(0, 0, 0, .4);
    transition: opacity .5s ease-in-out
}

#about #main .r4 .video video {
    object-fit: cover
}

#about #main .r4 .video .tsBox canvas {
    height: 100%;
    width: 177vw
}

#about #main .r4 .video.active:after {
    opacity: 0
}

#about #main .r4 .video.fx {
    z-index: 300;
    pointer-events: auto;
    position: fixed
}

#about #main .r4 .inner {
    pointer-events: auto;
    height: 100%;
    z-index: 4;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#about #main .r4 .inner.cursorPlay {
    cursor: pointer
}

#about #main .r4 .inner>span {
    height: 1.5rem
}

#about #main .r4 .inner .til {
    transition: transform .3s ease-in-out
}

#about #main .r4 .inner .til h3 {
    font-size: 2.2rem;
    line-height: 1;
    overflow: hidden
}

#about #main .r4 .inner .til h3 .letter {
    overflow: hidden
}

@media screen and (orientation:landscape) {
    #about #main .r4 .inner .til:hover {
        transform: translateY(-.1rem)
    }
}

#about #main .r5 {
    padding-top: 2.5rem
}

#about #main .r5 .inner {
    -ms-flex-align: start;
    align-items: flex-start
}

#about #main .r5 .inner>span {
    color: rgba(255, 255, 255, .3)
}

#about #main .r5 .inner h2 {
    width: 50%;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.14;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r5 .inner h2 span {
    white-space: nowrap;
    color: #2e304c;
    position: relative
}

#about #main .r5 .inner h2 span:after {
    content: attr(data-note);
    width: 100%;
    color: #fff;
    font-size: inherit;
    font-weight: inherit;
    animation-name: clip;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r5 .inner h2 small {
    color: #fff;
    position: absolute;
    top: 0;
    right: calc(100% + .3rem)
}

#about #main .r6 {
    padding-top: 1.6rem
}

#about #main .r6 .inner {
    border-bottom: 1px solid rgba(255, 255, 255, .3)
}

#about #main .r6 .inner>span {
    color: #fefefe;
    display: block
}

#about #main .r6 .inner h2 {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: .4rem 0 .7rem;
    padding-top: .1em;
    font-size: 1.4rem;
    line-height: 1;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#about #main .r6 .inner h2>span {
    overflow: hidden
}

#about #main .r6 .inner p {
    text-align: right;
    color: transparent;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-top: .5rem;
    padding-bottom: .6rem;
    line-height: 1.58;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#about #main .r6 .inner p span {
    overflow: hidden
}

#about #main .r6 .inner p span small {
    color: rgba(255, 255, 255, .5)
}

#about #main .r6 .group {
    padding-top: 1.3rem;
    position: relative
}

#about #main .r6 .group .bg {
    width: 100%;
    z-index: 5;
    height: 100vh;
    pointer-events: none;
    position: sticky;
    top: 0;
    left: 0
}

#about #main .r6 .group .bg .other {
    width: 100%;
    height: 3rem;
    padding-top: .8rem;
    position: absolute;
    bottom: 0;
    left: 0
}

#about #main .r6 .group .bg .other .mask {
    background: linear-gradient(transparent 0%, #000 70%);
    transition: opacity .5s ease-in-out
}

#about #main .r6 .group .bg .other h4 {
    color: transparent;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1.5;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#about #main .r6 .group .bg .other h4 span {
    overflow: hidden
}

#about #main .r6 .group .bg .other h4 span small {
    color: #989eff
}

#about #main .r6 .group .items {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -100vh;
    padding-bottom: 2rem
}

#about #main .r6 .group .items .list {
    width: 25%;
    position: relative
}

#about #main .r6 .group .items .list>a {
    width: 2rem;
    height: 2rem
}

#about #main .r6 .group .items .list>a>img {
    max-width: 90%;
    max-height: 80%;
    -webkit-filter: grayscale();
    filter: grayscale()
}

#about #main .r6 .group.active .bg .other .mask {
    opacity: 0
}

#about #main .r7 {
    padding-top: 3rem;
    padding-bottom: 10.4167vw
}

#about #main .r7 .wordLine1,
#about #main .r7 .wordLine2 {
    opacity: 0
}

#about #main .r7 .inner .til {
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#about #main .r7 .inner .til h2 {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.14;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r7 .inner .til h2 span {
    color: #2e304c;
    position: relative
}

#about #main .r7 .inner .til h2 span:after {
    content: attr(data-note);
    width: 100%;
    color: #fff;
    font-size: inherit;
    font-weight: inherit;
    animation-name: clip;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r7 .inner .til h2 small {
    color: #fff;
    position: absolute;
    top: 0;
    right: calc(100% + .3rem)
}

#about #main .r7 .inner .til span {
    color: #fefefe;
    display: block
}

#about #main .r7 .inner p {
    color: rgba(255, 255, 255, .3);
    margin-top: .7rem
}

#about #main .r7 .group {
    margin-top: 4.5rem;
    position: relative
}

#about #main .r7 .group .box {
    z-index: 10;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: .6rem;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#about #main .r7 .group .box .col:nth-of-type(1) {
    margin-right: 1rem
}

#about #main .r7 .group .box .col:nth-of-type(2) {
    -ms-flex: 1;
    flex: 1;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

@media screen and (orientation:landscape) {
    #about #main .r7 .group .box .col:nth-of-type(2) .list {
        padding-left: 13%
    }
}

#about #main .r7 .group .box .col:nth-of-type(2) .list>span {
    color: #313458;
    margin-bottom: .15rem;
    line-height: 1;
    display: block
}

#about #main .r7 .group .box .col:nth-of-type(2) .list h3 {
    color: transparent;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.1;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#about #main .r7 .group .box .col:nth-of-type(2) .list h3 span {
    color: #2e304c;
    position: relative
}

#about #main .r7 .group .box .col:nth-of-type(2) .list h3 span:after {
    content: attr(data-note);
    width: 100%;
    color: #fff;
    font-size: inherit;
    font-weight: inherit;
    animation-name: clip;
    position: absolute;
    top: 0;
    left: 0
}

#about #main .r7 .group .box .col:nth-of-type(2) .list h3 small {
    color: #fff;
    position: absolute;
    top: 0;
    right: calc(100% + .3rem)
}

#about #main .r7 .group .box .col:nth-of-type(2) .list p {
    color: #fff;
    opacity: 0;
    white-space: nowrap;
    margin-top: 1.5rem;
    line-height: 1.58
}

#about #main .r7 .group .box .col:nth-of-type(2) .list:nth-of-type(2) {
    margin-top: 6.8rem
}

#about #main .r7 .group>img {
    margin: 0 auto;
    position: absolute;
    top: 5vw;
    left: 0;
    right: 0
}

#detail {
    background-color: #000;
    padding-bottom: 1.5rem;
    position: relative;
    z-index: 51 !important
}

#detail #topClear {
    pointer-events: none;
    width: 100%;
    height: calc(100% - 300vh);
    position: absolute;
    top: 200vh;
    left: 0
}

#detail .r1 {
    padding-top: 35vw
}

#detail .r1 .top {
    margin-bottom: 11vw
}

#detail .r1 .top .small {
    color: #4d4d4d;
    text-align: center;
    margin-bottom: 7.4vw;
    font-size: 2.4vw
}

#detail .r1 .top .small .letter {
    overflow: hidden
}

#detail .r1 .top h1 {
    text-align: center;
    font-size: 10.5vw;
    line-height: .833
}

#detail .r1 .top h1 .letter {
    overflow: hidden
}

#detail .r1 .top h3 {
    color: #4d4d4d
}

#detail .r1 .mid {
    margin-bottom: 17.24vw
}

#detail .r1 .mid .small {
    color: #4d4d4d;
    text-align: center;
    margin-bottom: 5.4vw;
    font-size: 2.4vw
}

#detail .r1 .mid .small .letter {
    overflow: hidden
}

#detail .r1 .mid h2 {
    text-align: center;
    letter-spacing: 2px;
    font-size: 5.7vw;
    font-weight: 400;
    line-height: 1
}

#detail .r1 .mid h2 .letter {
    overflow: hidden
}

#detail .r1 .btm .small {
    color: #4d4d4d;
    text-align: center;
    margin-bottom: 5.4vw;
    font-size: 2.4vw
}

#detail .r1 .btm .small .letter {
    overflow: hidden
}

#detail .r1 .btm h3 {
    font-size: 12px;
    line-height: 1.5
}

#detail .r1 .btm h3 .letter {
    text-align: center;
    margin: 5px 0;
    display: block;
    overflow: hidden
}

#detail .r1 .other {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 11vw 0 10vw;
    display: -ms-flexbox;
    display: flex
}

#detail .r1 .other .layout-btn {
    border: 1px solid rgba(153, 161, 255, .4);
    border-radius: 2rem;
    margin-bottom: 4vw;
    padding-left: .3rem;
    padding-right: .3rem;
    display: -ms-flexbox;
    display: flex
}

#detail .r1 .other .layout-btn>span {
    color: #99a1ff;
    text-align: center;
    padding: .1rem 0;
    font-size: 3vw;
    display: block
}

#detail .r1Pc {
    width: 100%;
    position: relative
}

#detail .r1Pc .photo {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden
}

#detail .r1Pc .inner {
    width: 100%;
    height: 100vh;
    z-index: 10;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 0 3.2rem 1rem;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: 0
}

#detail .r1Pc .inner h2 {
    margin-bottom: .3rem;
    font-size: 1.5rem;
    line-height: .8
}

#detail .r1Pc .inner h2>.letter {
    display: block;
    overflow: hidden
}

#detail .r1Pc .inner h2>.letter small {
    transform-origin: 0 0
}

#detail .r1Pc .inner h3 {
    font-size: .6rem
}

#detail .r1Pc .inner>small {
    color: #fff;
    letter-spacing: 0;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    margin-top: .3rem;
    display: -ms-flexbox;
    display: flex
}

#detail .r1Pc .inner>small .icon {
    width: .28rem;
    height: auto;
    margin-right: .1rem
}

#detail .r1Pc .inner>small .icon .st0 {
    fill: #fff
}

#detail .r1Pc .inner>small .icon .st1 {
    stroke: #fff;
    stroke-width: .8rem;
    animation: .5s ease-in-out infinite alternate lingScroll
}

#detail .r1Pc .inner .note {
    width: 100%;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    bottom: 8%;
    left: 3.2rem
}

#detail .r1Pc .inner .note .layout-btn {
    background-color: #fff;
    border-radius: 2rem;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem .2rem;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    display: -ms-flexbox;
    display: flex
}

#detail .r1Pc .inner .note .layout-btn .txt {
    color: #000;
    margin-right: .05rem
}

#detail .r1Pc .inner .note .layout-btn .txt .letter {
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(2) {
    transition-delay: 50ms
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(3) {
    transition-delay: .1s
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(4) {
    transition-delay: .15s
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(5) {
    transition-delay: .2s
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(6) {
    transition-delay: .25s
}

#detail .r1Pc .inner .note .layout-btn .txt .letter:nth-child(7) {
    transition-delay: .3s
}

#detail .r1Pc .inner .note .layout-btn .wordTxt {
    color: #000;
    height: 100%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem 0;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: .2rem
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(80%)
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(2) {
    transition-delay: 50ms
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(3) {
    transition-delay: .1s
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(4) {
    transition-delay: .15s
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(5) {
    transition-delay: .2s
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(6) {
    transition-delay: .25s
}

#detail .r1Pc .inner .note .layout-btn .wordTxt .letter:nth-child(7) {
    transition-delay: .3s
}

#detail .r1Pc .inner .note .layout-btn .iconfont {
    color: #000;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#detail .r1Pc .inner .note .layout-btn:hover {
    transform: scale(1.05)
}

#detail .r1Pc .inner.title_right {
    -ms-flex-align: end;
    align-items: flex-end
}

#detail .r1Pc .inner.title_right h2,
#detail .r1Pc .inner.title_right h3,
#detail .r1Pc .inner.title_right .note {
    text-align: right
}

#detail .r1Pc .inner.title_hide {
    display: none
}

#detail .r1Pc .part {
    width: 100%;
    height: 100vh;
    grid-auto-flow: column;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 0 2.6rem;
    display: grid;
    position: relative
}

#detail .r1Pc .part .left {
    width: 3.2rem;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#detail .r1Pc .part .left .list {
    margin-bottom: .7rem
}

#detail .r1Pc .part .left .list:last-of-type {
    margin-bottom: 0
}

#detail .r1Pc .part .left .list small {
    color: rgba(255, 255, 255, .3);
    margin-bottom: .1rem;
    display: block
}

#detail .r1Pc .part .left .list p img {
    border-color: rgba(255, 255, 255, .3);
    margin-right: .2rem
}

#detail .r1Pc .part .line {
    width: 1px;
    background-color: rgba(255, 255, 255, .5)
}

#detail .r1Pc .part .right {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-left: 1.5rem;
    display: -ms-flexbox;
    display: flex
}

#detail .r1Pc .part .right .list {
    margin-bottom: .7rem
}

#detail .r1Pc .part .right .list:last-of-type {
    margin-bottom: 0
}

#detail .r1Pc .part .right .list>small {
    margin-bottom: .3rem;
    display: block
}

#detail .r1Pc .part .right .list .layout-btn-2 {
    height: .7rem
}

#detail .r1Pc .part .right .list .layout-btn-2:hover {
    transform: translate(0, 0)
}

#detail .r1Pc .part .right .list .layout-btn-2:hover:after {
    background-color: #989eff
}

#detail .r1Pc .part .right .list .layout-btn-2>span {
    color: #989eff
}

#detail .r1Pc .part .right .list .layout-btn-2>span i {
    margin-left: .1rem;
    margin-right: 0
}

#detail .r1Pc .part .right .list .layout-btn-2>span small>em {
    text-transform: lowercase;
    margin-bottom: .01rem;
    margin-right: .08rem
}

#detail .r1Pc .part .right .list .layout-btn-2>span small>em:before {
    top: 99%
}

#detail .r1Pc .part .right .list .layout-btn-2>span:hover small>em:before {
    color: #fff !important
}

#detail .r1Pc .part .right .list .layout-btn-2:after {
    border: 2px solid #9ea5ff
}

#detail .r2 {
    padding: 0 2.6rem
}

#detail .r2 video {
    width: 100%;
    display: block;
    height: auto !important
}

#detail .r2 .appTs canvas {
    display: block;
    position: relative
}

#detail .r2>img {
    width: 100%;
    min-height: 5.20833vw;
    display: block
}

#detail .r3 {
    background-color: #000;
    margin-top: 1rem;
    padding-top: 1.2rem;
    position: relative
}

#detail .r3 h4 {
    text-align: center;
    width: 100%;
    z-index: 10;
    font-size: 10.5vw;
    line-height: 10.5vw;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

#detail .r3 h4 .letter {
    line-height: 1;
    overflow: hidden
}

#detail .r3 .photo {
    width: 90%;
    background-color: #000;
    margin: 0 auto;
    padding-bottom: 60%;
    display: block;
    position: relative
}

#detail .r3 .photo .pic {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

#detail .r3 .photo .pic:after {
    content: "";
    z-index: 1;
    background-color: rgba(0, 0, 0, .5)
}

#detail .r3 .photo .pic .goBtn {
    z-index: 5;
    position: relative
}

#detail .r3 .photo .pic .goBtn>.img {
    width: 20vw;
    display: block;
    position: relative
}

#detail .r3 .photo .pic .goBtn .arrow {
    width: 7.5vw
}

#detail .r3 .photo .pic .msg {
    width: 100%;
    z-index: 4;
    margin-top: .3rem;
    position: relative
}

#detail .r3 .photo .pic .msg h5 {
    text-align: center;
    margin-bottom: .15rem;
    font-size: 4vw;
    line-height: 1.1
}

#detail .r3 .photo .pic .msg h5 .letter {
    overflow: hidden
}

#detail .r3 .photo .pic .msg small {
    text-align: center;
    color: #4d4d4d;
    font-size: 2.1vw;
    display: block
}

#detail .r3 .btm {
    padding-top: .6rem;
    padding-bottom: 1.6rem
}

#detail .r3 .btm h5 {
    text-align: center;
    margin-bottom: .15rem;
    font-size: 4vw;
    line-height: 1.1
}

#detail .r3 .btm h5 .letter {
    overflow: hidden
}

#detail .r3 .btm small {
    text-align: center;
    color: #4d4d4d;
    font-size: 2.1vw;
    display: block
}

#detail .r3Pc {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 1.3rem .84rem 0;
    display: -ms-flexbox;
    display: flex
}

#detail .r3Pc .left {
    width: calc(50% - .34rem);
    perspective: 26.0417vw;
    position: relative
}

#detail .r3Pc .left .pic {
    width: 100%;
    padding-bottom: 67%;
    position: relative
}

#detail .r3Pc .left .pic:after {
    content: "";
    background-color: rgba(0, 0, 0, .6);
    transition: opacity .5s ease-in-out
}

#detail .r3Pc .left .msg {
    width: 100%;
    height: 2rem;
    -ms-flex-direction: column;
    flex-direction: column;
    transition: background-color .5s ease-in-out
}

#detail .r3Pc .left .msg>img {
    margin-bottom: .2rem
}

#detail .r3Pc .left .msg .layer-icon {
    width: .6rem;
    height: .64rem;
    margin-bottom: .3rem
}

#detail .r3Pc .left .msg .layer-icon i {
    transition: color .5s ease-in-out
}

#detail .r3Pc .left .msg p {
    text-align: center;
    text-transform: capitalize;
    line-height: 1.1;
    transition: color .5s ease-in-out
}

#detail .r3Pc .left .msg small {
    color: rgba(255, 255, 255, .7);
    margin-top: .1rem;
    display: block
}

#detail .r3Pc .left:hover .pic:after {
    opacity: .4
}

#detail .r3Pc .right {
    width: calc(50% - .34rem);
    perspective: 26.0417vw;
    position: relative
}

#detail .r3Pc .right .pic {
    width: 100%;
    padding-bottom: 67%;
    position: relative
}

#detail .r3Pc .right .pic:after {
    content: "";
    background-color: rgba(0, 0, 0, .6);
    transition: opacity .5s ease-in-out
}

#detail .r3Pc .right .msg {
    width: 100%;
    height: 2rem;
    border-radius: 50%;
    -ms-flex-direction: column;
    flex-direction: column;
    transition: background-color .5s ease-in-out
}

#detail .r3Pc .right .msg>img {
    margin-bottom: .2rem
}

#detail .r3Pc .right .msg .layer-icon {
    width: .6rem;
    height: .64rem;
    margin-bottom: .3rem
}

#detail .r3Pc .right .msg .layer-icon i {
    transition: color .5s ease-in-out
}

#detail .r3Pc .right .msg p {
    text-align: center;
    text-transform: capitalize;
    line-height: 1.1;
    transition: color .5s ease-in-out
}

#detail .r3Pc .right .msg small {
    color: rgba(255, 255, 255, .7);
    margin-top: .1rem;
    display: block
}

#detail .r3Pc .right:hover .pic:after {
    opacity: .4
}

#detail .r3Pc .col {
    width: 100%;
    padding-top: .8rem;
    padding-bottom: .8rem
}

#detail .r3Pc .col .toTop {
    width: 1.8rem;
    height: .7rem;
    border: 1px solid rgba(255, 255, 255, .5);
    border-radius: 1rem;
    -ms-flex-direction: column;
    flex-direction: column;
    transition: background-color .5s ease-in-out
}

#detail .r3Pc .col .toTop>i {
    color: rgba(238, 238, 238, .5);
    transition: color .5s ease-in-out
}

#detail .r3Pc .col .toTop span {
    transition: color .5s ease-in-out;
    transform: translateY(-40%)
}

#detail .r3Pc .col .toTop:hover {
    background-color: #fff
}

#detail .r3Pc .col .toTop:hover>i,
#detail .r3Pc .col .toTop:hover span {
    color: #000
}

#detail .toTopBtn {
    height: .8rem;
    z-index: 120;
    cursor: pointer;
    width: .8rem;
    background-color: transparent;
    border: .6px solid rgba(255, 255, 255, .6);
    border-radius: 50%;
    transition: opacity .3s ease-in-out, background-color .5s ease-in-out, transform .3s ease-in-out;
    position: fixed;
    bottom: 2rem;
    left: .8rem
}

#detail .toTopBtn.hideIn {
    opacity: 0;
    pointer-events: none;
    transform: scale(.6)
}

#detail .toTopBtn .layer-icon {
    z-index: 10;
    -ms-flex-direction: column;
    flex-direction: column
}

#detail .toTopBtn .layer-icon .wc {
    line-height: .2rem;
    transition: color .3s ease-in-out
}

#detail .toTopBtn .layer-icon .txt {
    position: relative
}

#detail .toTopBtn .layer-icon .txt .before {
    overflow: hidden
}

#detail .toTopBtn .layer-icon .txt .before>.letter {
    transition: opacity .3s ease-in-out, transform .3s ease-in-out
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#detail .toTopBtn .layer-icon .txt .before>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#detail .toTopBtn .layer-icon .txt .after {
    width: calc(100% + 1.2rem);
    height: 100%;
    letter-spacing: 1px;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -.6rem;
    overflow: hidden
}

#detail .toTopBtn .layer-icon .txt .after>.letter {
    opacity: 0;
    font-size: .14rem;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: translateY(100%)
}

#detail .toTopBtn .layer-icon .txt .after>.letter .wordLine0 {
    color: #fff;
    font-weight: 600
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#detail .toTopBtn .layer-icon .txt .after>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#detail .toTopBtn:hover .layer-icon .txt .before>.letter {
    opacity: 0;
    transform: translateY(-100%)
}

#detail .toTopBtn:hover .layer-icon .txt .after>.letter {
    opacity: 1;
    transform: translate(0, 0)
}

#detail .toBackBtn {
    height: .8rem;
    width: .8rem;
    z-index: 120;
    cursor: pointer;
    background-color: transparent;
    border-radius: 50%;
    transition: opacity .3s ease-in-out, background-color .5s ease-in-out, transform .3s ease-in-out;
    position: fixed;
    bottom: 1rem;
    left: .8rem
}

#detail .toBackBtn.hideIn {
    opacity: 0;
    pointer-events: none;
    transform: scale(.6)
}

#detail .toBackBtn .img {
    width: .8rem;
    height: .8rem;
    transition: opacity .5s ease-in-out
}

#detail .toBackBtn .layer-icon {
    z-index: 10;
    -ms-flex-direction: column;
    flex-direction: column
}

@media screen and (orientation:portrait) {
    #detail .toBackBtn .layer-icon {
        -webkit-backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        background-color: rgba(86, 85, 93, .4);
        border-radius: 50%
    }
}

#detail .toBackBtn .layer-icon .wc {
    line-height: .25rem;
    transition: color .3s ease-in-out
}

#detail .toBackBtn .layer-icon .iconfont {
    transform: scaleX(-1)
}

#detail .toBackBtn .layer-icon .txt {
    position: relative
}

#detail .toBackBtn .layer-icon .txt .before {
    overflow: hidden
}

#detail .toBackBtn .layer-icon .txt .before>.letter {
    transition: opacity .3s ease-in-out, transform .3s ease-in-out
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#detail .toBackBtn .layer-icon .txt .before>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#detail .toBackBtn .layer-icon .txt .after {
    width: calc(100% + 1.2rem);
    height: 100%;
    letter-spacing: 1px;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -.6rem;
    overflow: hidden
}

#detail .toBackBtn .layer-icon .txt .after>.letter {
    opacity: 0;
    font-size: .14rem;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: translateY(100%)
}

#detail .toBackBtn .layer-icon .txt .after>.letter .wordLine0 {
    color: #fff;
    font-weight: 600
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#detail .toBackBtn .layer-icon .txt .after>.letter:nth-of-type(8) {
    transition-delay: .21s
}

@media screen and (orientation:landscape) {
    #detail .toBackBtn:hover .layer-icon .txt .before>.letter {
        opacity: 0;
        transform: translateY(-100%)
    }

    #detail .toBackBtn:hover .layer-icon .txt .after>.letter {
        opacity: 1;
        transform: translate(0, 0)
    }
}

#contact {
    overflow: hidden
}

#contact .alanFn {
    opacity: 0
}

#contact .r1 {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 2rem;
    padding-bottom: 1rem;
    display: -ms-flexbox;
    display: flex
}

#contact .r1 .inner {
    width: 100%;
    height: 100%;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

#contact .r1 .inner .top {
    width: 100%;
    margin-bottom: 6vw
}

#contact .r1 .inner .mid {
    width: 100%;
    padding: 0 6vw
}

#contact .r1 .inner .mid>.list {
    height: 2rem;
    pointer-events: auto;
    width: 100%;
    background-color: rgba(148, 155, 255, .15);
    border-radius: .2rem;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: .2rem;
    padding: 0 .3rem;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#contact .r1 .inner .mid>.list span {
    display: block
}

#contact .r1 .inner .mid>.list small {
    margin-bottom: 8px;
    display: block
}

#contact .r1 .inner .mid>.list p {
    color: rgba(255, 255, 255, .5);
    margin-top: 8px;
    line-height: 1.2
}

#contact .r1 .inner .mid>.list .rightBox {
    height: 1rem;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: .5rem;
    right: .3rem
}

#contact .r1 .inner .mid>.list .rightBox .img {
    width: 1.2rem;
    height: 1.2rem;
    display: block
}

#contact .r1 .inner .mid>.list .rightBox .layer-icon {
    width: 1rem;
    height: 1rem;
    background-color: #242152;
    border-radius: 50%
}

#contact .r1 .inner .mid>.list .shareBox {
    position: absolute;
    bottom: 0;
    left: 0
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon {
    margin-right: .2rem;
    position: relative
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon .icon {
    transition: transform .3s ease-in-out
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon:hover i {
    color: #fff
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon:hover .icon {
    transform: scale3d(1.2, 1.2, 1.2)
}

#contact .r1 .inner .mid>.list .shareBox .layer-icon:hover .inter {
    opacity: 1;
    pointer-events: auto
}

#contact .r1 .inner .mid>.list #mapApp {
    height: 46vw;
    width: calc(100% - .6rem);
    border-radius: .2rem;
    bottom: .3rem;
    left: .3rem;
    overflow: hidden;
    position: absolute !important
}

#contact .r1 .inner .mid>.list #mapApp .anchorBL {
    display: none
}

#contact .r1 .inner .mid>.list #mapApp .BMap_Marker {
    pointer-events: none
}

#contact .r1 .inner .mid>.list:nth-child(3) {
    height: calc(2rem + 50vw);
    padding-bottom: 50vw
}

#contact .r1 .inner .bm {
    width: 100%;
    padding: 4vw 6%
}

#contact .r1 .inner .bm .note {
    padding-bottom: 4vw;
    position: relative
}

#contact .r1 .inner .bm .note .line {
    width: 50vw;
    height: 1px;
    background-color: rgba(255, 255, 255, .2);
    position: absolute;
    bottom: 10px;
    left: 50%
}

#contact .r1 .inner .bm>.shareBox {
    width: 100%;
    border-top: 1px solid rgba(255, 255, 255, .2);
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: .3rem 0;
    position: relative
}

#contact .r1 .inner .bm>.shareBox .layout-btn {
    height: .72rem;
    background-color: rgba(148, 155, 255, .15);
    border-color: transparent;
    border-radius: 2rem;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: auto 0;
    padding: 0 .25rem 0 .3rem;
    line-height: .72rem;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt {
    margin-right: .15rem
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter {
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(2) {
    transition-delay: 50ms
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(3) {
    transition-delay: .1s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(4) {
    transition-delay: .15s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(5) {
    transition-delay: .2s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(6) {
    transition-delay: .25s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .txt .letter:nth-child(7) {
    transition-delay: .3s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt {
    color: #000;
    height: 100%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .1rem 0;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    left: .2rem
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1);
    transform: translateY(80%)
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(2) {
    transition-delay: 50ms
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(3) {
    transition-delay: .1s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(4) {
    transition-delay: .15s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(5) {
    transition-delay: .2s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(6) {
    transition-delay: .25s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .wordTxt .letter:nth-child(7) {
    transition-delay: .3s
}

#contact .r1 .inner .bm>.shareBox .layout-btn .iconfont {
    color: #989eff;
    font-size: 22px;
    transition: opacity .3s ease-in-out, transform .6s cubic-bezier(.43, .195, .02, 1)
}

#contact .r1 .inner .bm>.shareBox .layout-btn:hover {
    transform: scale(1.05)
}

#contact .r1 .inner .bm>.shareBox .layer-icon {
    margin-left: .2rem;
    position: relative
}

#contact .r1 .inner .bm>.shareBox .layer-icon .icon {
    font-size: 8vw;
    transition: transform .3s ease-in-out
}

#contact .r1 .inner .bm>.shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#contact .r1 .inner .bm>.shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#contact .r1 .inner .bm>.shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

#contact .r2 {
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 2rem 3.2rem 1.1rem;
    display: -ms-flexbox;
    display: flex
}

#contact .r2 .title {
    margin-bottom: .8rem
}

#contact .r2 .title h1 {
    color: #fff;
    height: 1.4rem;
    margin-bottom: 1rem;
    font-size: 1.4rem;
    line-height: 1;
    position: relative;
    overflow: hidden
}

#contact .r2 .title h1>.letter {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    min-width: .2em;
    text-align: left;
    z-index: 3;
    display: inline-block;
    position: relative
}

#contact .r2 .title h1>.letter .wordLine0 {
    opacity: 0;
    transform-origin: 0;
    color: #989eff
}

#contact .r2 .title h1>.letter:nth-of-type(1) .wordLine0 {
    background-position-x: 0%
}

#contact .r2 .title h1>.letter:nth-of-type(2) .wordLine0 {
    background-position-x: 4%
}

#contact .r2 .title h1>.letter:nth-of-type(3) .wordLine0 {
    background-position-x: 8%
}

#contact .r2 .title h1>.letter:nth-of-type(4) .wordLine0 {
    background-position-x: 12%
}

#contact .r2 .title h1>.letter:nth-of-type(5) .wordLine0 {
    background-position-x: 16%
}

#contact .r2 .title h1>.letter:nth-of-type(6) .wordLine0 {
    background-position-x: 20%
}

#contact .r2 .title h1>.letter:nth-of-type(7) .wordLine0 {
    background-position-x: 24%
}

#contact .r2 .title h1>.letter:nth-of-type(8) .wordLine0 {
    background-position-x: 28%
}

#contact .r2 .title h1>.letter:nth-of-type(9) .wordLine0 {
    background-position-x: 32%
}

#contact .r2 .title h1>.letter:nth-of-type(10) .wordLine0 {
    background-position-x: 36%
}

#contact .r2 .title h1>.letter:nth-of-type(11) .wordLine0 {
    background-position-x: 42%
}

#contact .r2 .title h1>.letter:nth-of-type(12) .wordLine0 {
    background-position-x: 46%
}

#contact .r2 .left {
    padding-bottom: .5rem
}

#contact .r2 .items {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: .8rem;
    display: -ms-flexbox;
    display: flex
}

#contact .r2 .items>li {
    margin-bottom: .5rem;
    display: block
}

#contact .r2 .items>li>small {
    margin-bottom: .1rem;
    display: block
}

#contact .r2 .items>li h2 {
    overflow: hidden
}

#contact .r2 .shareBox {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#contact .r2 .shareBox h3 {
    width: 100%;
    color: rgba(255, 255, 255, .5);
    margin-bottom: .2rem;
    font-weight: 600
}

#contact .r2 .shareBox .layer-icon {
    margin-right: .3rem;
    position: relative
}

#contact .r2 .shareBox .layer-icon i {
    color: rgba(255, 255, 255, .5);
    transition: color .3s ease-in-out
}

#contact .r2 .shareBox .layer-icon .icon {
    transition: transform .3s ease-in-out
}

#contact .r2 .shareBox .layer-icon .inter {
    width: 1.6rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    position: absolute;
    bottom: calc(100% + 10px)
}

#contact .r2 .shareBox .layer-icon .inter:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-top-color: #989eff;
    margin: auto;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0
}

#contact .r2 .shareBox .layer-icon .inter>img {
    width: 100%;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .1rem;
    padding: .8vw
}

#contact .r2 .shareBox .layer-icon:hover i {
    color: #fff
}

#contact .r2 .shareBox .layer-icon:hover .icon {
    transform: scale3d(1.2, 1.2, 1.2)
}

#contact .r2 .shareBox .layer-icon:hover .inter {
    opacity: 1;
    pointer-events: auto
}

#contact .r2 .right {
    position: relative
}

#contact .r2 .right #map {
    width: 4.3rem;
    height: 4.3rem;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    z-index: 10 !important;
    background-color: transparent !important
}

#contact .r2 .right .box {
    width: 4.3rem;
    height: 4.3rem;
    z-index: 1;
    cursor: none;
    border: 3px solid #fff;
    border-radius: 50%;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    bottom: 3.5rem;
    left: 0
}

#contact .r2 .right .box .maImg {
    height: 1rem
}

#contact .r2 .right .box p {
    margin: .1rem 0 .2rem
}

#contact .r2 .right .box .arrow {
    height: .35rem
}

#contact #bgCv {
    position: absolute
}

#roll canvas {
    z-index: 3;
    position: fixed;
    top: 0;
    left: 0
}

#news .top {
    padding-top: 3rem;
    padding-left: 3.2rem;
    padding-right: 3.2rem
}

#news .top .title {
    margin-bottom: 1.4rem;
    margin-left: -.1rem
}

#news .top .title h1 {
    color: #fff;
    height: 1.6rem;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    line-height: 1;
    position: relative;
    overflow: hidden
}

#news .top .title h1>.letter {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    min-width: .2em;
    text-align: left;
    z-index: 3;
    display: inline-block;
    position: relative
}

#news .top .title h1>.letter .wordLine0 {
    opacity: 0;
    transform-origin: 0;
    color: #989eff
}

#news .top .title h1>.letter:nth-of-type(1) .wordLine0 {
    background-position-x: 12%
}

#news .top .title h1>.letter:nth-of-type(2) .wordLine0 {
    background-position-x: 16%
}

#news .top .title h1>.letter:nth-of-type(3) .wordLine0 {
    background-position-x: 20%
}

#news .top .title h1>.letter:nth-of-type(4) .wordLine0 {
    background-position-x: 24%
}

#news .top .title h1>.letter:nth-of-type(5) .wordLine0 {
    background-position-x: 28%
}

#news .top .title h1>.letter:nth-of-type(6) .wordLine0 {
    background-position-x: 32%
}

#news .top .title h1>.letter:nth-of-type(7) .wordLine0 {
    background-position-x: 36%
}

#news .top .title h1>.letter:nth-of-type(8) .wordLine0 {
    background-position-x: 42%
}

#news .top .title h1>.letter:nth-of-type(9) .wordLine0 {
    background-position-x: 46%
}

#news .mid {
    width: 100%;
    padding-left: 3.2rem;
    padding-right: 3.2rem
}

#news .mid h2 {
    margin-bottom: .5rem
}

#news .mid .spaced {
    width: 100%;
    margin: 0 auto
}

#news .mid .spaced .item {
    width: 100%;
    grid-template-rows: repeat(1, 4rem);
    grid-template-columns: 6rem calc(100% - 7rem);
    grid-auto-flow: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto 2rem;
    display: grid
}

#news .mid .spaced .item .item__image {
    width: 6rem
}

#news .mid .spaced .item .item__image .js-image {
    opacity: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

#news .mid .spaced .item .msg {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#news .mid .spaced .item .msg small {
    color: rgba(255, 255, 255, .3);
    width: 100%;
    padding: .2rem 0
}

#news .mid .spaced .item .msg .box {
    width: 100%;
    padding-bottom: .4rem
}

#news .mid .spaced .item .msg .box h3 {
    margin-bottom: .5rem
}

#news .mid .spaced .item .msg .box p {
    color: rgba(255, 255, 255, .5)
}

#newDetail {
    z-index: 251;
    position: relative
}

#newDetail .r1 {
    padding-top: 3.6rem
}

#newDetail .r1 .inner {
    max-width: 9rem;
    margin: 0 auto;
    display: block
}

#newDetail .r1 .inner .til {
    margin-bottom: 1.6rem
}

#newDetail .r1 .inner .til h1 {
    margin-bottom: .3rem
}

#newDetail .r1 .inner .til small {
    color: rgba(255, 255, 255, .3);
    display: block
}

#newDetail .r1 .inner .detail {
    color: #fff;
    padding-bottom: 1.5rem;
    font-size: .18rem
}

#newDetail .r1 .inner .detail img {
    width: 100%;
    margin: .5rem 0;
    display: block;
    height: auto !important
}

#newDetail .r1 .inner .bm {
    padding-bottom: 1.6rem
}

#newDetail .r1 .inner .bm .prev i {
    transition: color .3s ease-in-out;
    transform: scaleX(-1)
}

#newDetail .r1 .inner .bm .prev span {
    transition: color .3s ease-in-out
}

#newDetail .r1 .inner .bm .prev:hover i,
#newDetail .r1 .inner .bm .prev:hover span {
    color: #000
}

#newDetail .r1 .inner .bm .next i,
#newDetail .r1 .inner .bm .next span {
    transition: color .3s ease-in-out
}

#newDetail .r1 .inner .bm .next:hover i,
#newDetail .r1 .inner .bm .next:hover span {
    color: #000
}

#newDetail .r1 .inner .bm .line {
    width: 5rem;
    height: 1px;
    background-color: rgba(255, 255, 255, .1)
}

#join {
    background-color: #000
}

#join .mid {
    cursor: none;
    position: relative
}

#join .mid .inner {
    padding: 1.5rem 3.2rem 0;
    position: relative
}

#join .mid .inner .title>span {
    color: #fefefe;
    display: block
}

#join .mid .inner .title h1 {
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: .2rem 0;
    line-height: 1.14;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#join .mid .inner .title h1 span {
    overflow: hidden
}

#join .mid .inner .title h1 span small {
    opacity: 0;
    font-weight: 400
}

#join .mid .inner .group {
    position: relative
}

#join .mid .inner .group .box {
    height: 100vh;
    width: 74%;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

#join .mid .inner .group .box:after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, .1);
    position: absolute;
    bottom: 0;
    left: 0
}

#join .mid .inner .group .box h2 {
    padding-bottom: .4rem;
    position: relative
}

#join .mid .inner .group .box h2>span {
    font-family: inherit;
    font-size: 1.6rem;
    line-height: .8;
    display: block;
    position: relative;
    overflow: hidden
}

#join .mid .inner .group .box h2>span>.letter {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    min-width: .2em;
    text-align: left;
    z-index: 3;
    display: inline-block;
    position: relative
}

#join .mid .inner .group .box h2>span>.letter .wordLine0 {
    opacity: 0
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(1) .wordLine0 {
    background-position-x: 0%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(2) .wordLine0 {
    background-position-x: 4%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(3) .wordLine0 {
    background-position-x: 8%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(4) .wordLine0 {
    background-position-x: 12%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(5) .wordLine0 {
    background-position-x: 16%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(6) .wordLine0 {
    background-position-x: 20%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(7) .wordLine0 {
    background-position-x: 24%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(8) .wordLine0 {
    background-position-x: 28%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(9) .wordLine0 {
    background-position-x: 32%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(10) .wordLine0 {
    background-position-x: 36%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(11) .wordLine0 {
    background-position-x: 42%
}

#join .mid .inner .group .box h2>span>.letter:nth-of-type(12) .wordLine0 {
    background-position-x: 46%
}

#join .mid .inner .group .box h3 {
    margin: 0 0 1rem
}

#join .mid .inner .group .box p {
    color: #fff;
    opacity: 0
}

#join .mid .inner .group .tab {
    height: 100vh;
    z-index: 50;
    width: 2.8rem;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0
}

#join .mid .inner .group .tab .lists {
    width: 1.2rem;
    height: 1.2rem;
    will-change: width;
    background-color: rgba(128, 136, 235, .15);
    border-radius: 50%;
    margin: .1rem 0;
    transition: all .5s ease-in-out;
    position: relative
}

#join .mid .inner .group .tab .lists:after {
    content: "";
    width: 0;
    height: 0;
    opacity: 0;
    border: 8px solid transparent;
    border-right-color: #989eff;
    margin: auto 0;
    transition: opacity .7s ease-in-out .3s, transform .7s ease-in-out .3s;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(100% + .2rem);
    transform: translate(.1rem)
}

#join .mid .inner .group .tab .lists>img {
    height: 45%
}

#join .mid .inner .group .tab .lists .cir {
    opacity: 0;
    transition: opacity .5s ease-in-out;
    position: absolute
}

#join .mid .inner .group .tab .lists .cir circle {
    fill: transparent;
    stroke: #989eff;
    stroke-width: 1px;
    transform-origin: 50%;
    stroke-dasharray: 314%;
    stroke-dashoffset: 314%;
    transform: scaleX(-1)
}

#join .mid .inner .group .tab .lists.active {
    width: 2.3rem;
    height: 2.3rem;
    background-color: transparent;
    border-color: #8088eb
}

#join .mid .inner .group .tab .lists.active .cir {
    opacity: 1
}

#join .mid .inner .group .tab .lists.active>img {
    height: 52%
}

#join .mid .inner .group .tab .lists.active:after {
    opacity: 1;
    transform: translate(0, 0)
}

#join .mid .inner .group .tab.fx {
    position: fixed;
    right: 3.2rem
}

#join .mid .inner .send {
    z-index: 1;
    padding: 2.2rem 0;
    position: relative
}

#join .mid .inner .send .txt {
    margin-right: .6rem;
    font-size: .72rem
}

#join .mid .inner .send .go {
    width: 1.5rem;
    margin-bottom: .5rem;
    margin-right: 2.2rem
}

#join .mid .inner .send .note {
    color: #fff;
    font-size: .8rem;
    display: block;
    position: relative
}

#join .mid .inner .send .note:after {
    content: attr(data-note);
    color: #9ea5ff;
    height: 140%;
    z-index: 2;
    font-family: inherit;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%);
    mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%)
}

#join .mid .js-mask {
    pointer-events: none;
    height: 100%;
    width: 100%;
    z-index: 4;
    -webkit-mask-size: var(--size), contain;
    -webkit-mask-size: var(--size), contain;
    mask-size: var(--size), contain;
    -webkit-mask-position: calc(var(--x) - var(--size)/2)calc(var(--y) - var(--size)/2), center;
    -webkit-mask-position: calc(var(--x) - var(--size)/2)calc(var(--y) - var(--size)/2), center;
    mask-position: calc(var(--x) - var(--size)/2)calc(var(--y) - var(--size)/2), center;
    background-color: #989eff;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-mask-image: url(test-mask.fc5b7500.svg);
    mask-image: url(test-mask.fc5b7500.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-origin: content-box;
    mask-origin: content-box
}

#join .mid .js-mask .title {
    padding: 1.5rem 3.2rem 0
}

#join .mid .js-mask .title span {
    color: #000;
    display: block
}

#join .mid .js-mask .title h1 {
    color: transparent;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: .2rem 0;
    line-height: 1.14;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

#join .mid .js-mask .title h1 span {
    overflow: hidden
}

#join .mid .js-mask .title h1 span small {
    font-weight: 400
}

#join .mid .js-mask .box {
    height: 100vh;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 0 3.2rem;
    display: -ms-flexbox;
    display: flex
}

#join .mid .js-mask .box h2 {
    margin-bottom: .4rem;
    position: relative
}

#join .mid .js-mask .box h2 span {
    color: #000;
    font-family: inherit;
    font-size: 1.6rem;
    line-height: .8;
    display: block;
    position: relative
}

#join .mid .js-mask .box h3 {
    margin: 0 0 1rem
}

#join .mid .js-mask .send {
    z-index: 1;
    padding: 2.2rem 0;
    position: relative
}

#join .mid .js-mask .send .txt {
    margin-right: .6rem;
    font-size: .72rem
}

#join .mid .js-mask .send .go {
    width: 1.5rem;
    margin-bottom: .5rem;
    margin-right: 2.2rem
}

#join .mid .js-mask .send .note {
    color: #fff;
    font-size: .8rem;
    display: block;
    position: relative
}

#join .mid .js-mask .send .note:after {
    content: attr(data-note);
    color: #9ea5ff;
    height: 140%;
    z-index: 2;
    font-family: inherit;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%);
    mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%)
}

#pop {
    width: 100%;
    height: 100%;
    z-index: 300;
    opacity: 0;
    pointer-events: none;
    display: none;
    position: fixed;
    top: 0;
    left: 0
}

#pop .moveFn {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .5s ease-in-out;
    transform: translateY(20%)
}

#pop .mask {
    background-color: rgba(0, 0, 0, .6)
}

#pop .group {
    width: 9rem;
    z-index: 4;
    position: relative
}

#pop .group .con {
    background-color: #242640;
    padding: .6rem 1.4rem
}

#pop .group .con h3 {
    text-align: center;
    color: #fff;
    margin-bottom: .4rem;
    font-family: inherit;
    font-size: .4rem;
    transition-delay: .1s;
    display: block;
    position: relative
}

#pop .group .con h3:after {
    content: attr(data-note);
    text-align: center;
    color: #9ea5ff;
    height: 140%;
    width: 100%;
    z-index: 2;
    font-family: inherit;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%);
    mask: linear-gradient(-120deg, #9ea5ff 20%, rgba(178, 185, 255, 0) 90%)
}

#pop .group .con .form {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-flexbox;
    display: flex
}

#pop .group .con .form .col {
    margin-bottom: .15rem
}

#pop .group .con .form .col.half {
    width: calc(50% - 6px)
}

#pop .group .con .form .col .inRow {
    height: .7rem;
    width: 100%;
    color: #fff;
    text-align: center;
    background-color: #181a2e;
    border: 2px solid #9ea5ff;
    font-size: .18rem;
    font-weight: 600
}

#pop .group .con .form .col textarea {
    height: 1.8rem;
    width: 100%;
    color: #fff;
    background-color: #181a2e;
    border: none;
    padding: .2rem;
    font-size: .18rem;
    font-weight: 600
}

#pop .group .con .form .col:nth-of-type(1) {
    z-index: 10;
    transition-delay: .15s;
    position: relative
}

#pop .group .con .form .col:nth-of-type(2) {
    transition-delay: .2s
}

#pop .group .con .form .col:nth-of-type(3) {
    transition-delay: .25s
}

#pop .group .con .form .btm {
    width: 100%;
    padding-top: .5rem;
    transition-delay: .3s
}

#pop .group .con .form .btm a {
    width: 2.8rem;
    height: .66rem;
    background: #9ea5ff;
    border-radius: 1.71875vw;
    transition: background .5s ease-in-out;
    position: relative
}

#pop .group .con .form .btm a .before {
    overflow: hidden
}

#pop .group .con .form .btm a .before>.letter {
    transition: opacity .3s ease-in-out, transform .3s ease-in-out
}

#pop .group .con .form .btm a .before>.letter .wordLine0 {
    font-weight: 600
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#pop .group .con .form .btm a .before>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#pop .group .con .form .btm a .after {
    width: 100%;
    height: 100%;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    overflow: hidden
}

#pop .group .con .form .btm a .after>.letter {
    opacity: 0;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: translateY(100%)
}

#pop .group .con .form .btm a .after>.letter .wordLine0 {
    color: #000;
    font-weight: 600
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(2) {
    transition-delay: 30ms
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(3) {
    transition-delay: 60ms
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(4) {
    transition-delay: 90ms
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(5) {
    transition-delay: .12s
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(6) {
    transition-delay: .15s
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(7) {
    transition-delay: .18s
}

#pop .group .con .form .btm a .after>.letter:nth-of-type(8) {
    transition-delay: .21s
}

#pop .group .con .form .btm a:hover {
    background: #c5c9ff
}

#pop .group .con .form .btm a:hover .before>.letter {
    opacity: 0;
    transform: translateY(-100%)
}

#pop .group .con .form .btm a:hover .after>.letter {
    opacity: 1;
    transform: translate(0, 0)
}

#pop .group .close {
    width: 1.5rem;
    height: 1.5rem;
    border: 1px solid #fff;
    border-radius: 50%;
    transition: background-color .5s ease-in-out;
    position: absolute;
    top: 0;
    left: calc(100% + .3rem)
}

#pop .group .close:hover {
    background-color: #989eff
}

#pop.active {
    pointer-events: auto
}

#pop.active .moveFn {
    opacity: 1;
    transform: translate(0, 0)
}

#maPop {
    width: 100%;
    height: 100%;
    z-index: 300;
    opacity: 0;
    pointer-events: none;
    display: none;
    position: fixed;
    top: 0;
    left: 0
}

#maPop .moveFn {
    opacity: 0;
    transition: opacity .5s ease-in-out, transform .5s ease-in-out;
    transform: translateY(20%)
}

#maPop .mask {
    background-color: rgba(0, 0, 0, .8)
}

#maPop .group {
    width: 68vw;
    z-index: 10;
    background-color: #000;
    border: 2px solid #989eff;
    border-radius: .5rem;
    padding: 8% 3%;
    position: relative;
    overflow: hidden
}

#maPop .group>img.img {
    width: 42vw;
    margin: auto auto .3rem;
    display: block
}

#maPop .group h5 {
    text-align: center;
    width: 100%;
    pointer-events: none;
    z-index: 5;
    position: relative
}

#maPop .group .imgMask {
    opacity: 0;
    z-index: 1
}

#maPop.active {
    pointer-events: auto
}

#maPop.active .moveFn {
    opacity: 1;
    transform: translate(0, 0)
}

@keyframes clip {
    0% {
        -webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)
    }

    5% {
        -webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)
    }

    30% {
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
    }

    to {
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
    }
}

@keyframes clipDot {
    0% {
        -webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)
    }

    10% {
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
    }

    to {
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
    }
}

@keyframes fxSlide {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(-60%)
    }
}

@keyframes fontUp {
    0% {
        transform: translateY(180%)
    }

    to {
        transform: translate(0, 0)
    }
}

@keyframes fontDown {
    0% {
        transform: translateY(-180%)
    }

    to {
        transform: translate(0, 0)
    }
}

@keyframes fxFade {
    0% {
        opacity: 1
    }

    80% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fxFade2 {
    0% {
        opacity: 1
    }

    60% {
        opacity: 1
    }

    95% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.fontUp {
    animation-name: fontUp
}

@keyframes fontNextOut {
    0% {
        transform: translate(0, 0)
    }

    to {
        transform: translateY(-200%)
    }
}

@keyframes fontPrevOut {
    0% {
        transform: translate(0, 0)
    }

    to {
        transform: translateY(150%)
    }
}

@keyframes bannerIn {
    0% {
        filter: brightness(3);
        transform: scale(1.3)
    }

    to {
        filter: brightness();
        transform: scale(1)
    }
}

@keyframes lingScroll {
    0% {
        transform: translate(0, 0)
    }

    to {
        transform: translateY(20%)
    }
}

@keyframes handMove {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(-20deg)
    }
}

@media screen and (orientation:landscape) {
    .en-xb {
        letter-spacing: -.03em
    }

    .app {
        display: none !important
    }
}

@media screen and (orientation:portrait) {
    html {
        font-size: 50px
    }

    .f-70 {
        font-size: .6rem
    }

    .f-60 {
        font-size: .4rem
    }

    .f-36,
    .f-34 {
        font-size: 16px
    }

    .f-32,
    .f-24,
    .f-20,
    .f-18 {
        font-size: 14px
    }

    .f-16,
    .f-14 {
        font-size: 13px
    }

    .f-12 {
        font-size: 12px
    }

    .pc {
        display: none !important
    }

    .layout-btn-2>span {
        font-size: .24rem
    }

    .yAni {
        will-change: transform
    }

    .max-wid {
        max-width: 88%;
        width: 88%
    }

    .cursor--group {
        display: none
    }

    #app footer {
        pointer-events: none;
        padding: calc(.8rem + 20px) 6vw .7rem
    }

    #app footer #linearCv {
        background-position: 96% 0;
        background-size: auto 500%
    }

    #app footer .top {
        -ms-flex-direction: column;
        flex-direction: column
    }

    #app footer .top .c1 {
        display: none
    }

    #app footer .top .c2 {
        width: 100%;
        grid-template-columns: 100%;
        gap: .05rem 0
    }

    #app footer .top .c2>li.app {
        margin-bottom: 12vw
    }

    #app footer .top .c2>li small {
        white-space: nowrap;
        font-size: 4vw
    }

    #app footer .top .c2>li span {
        font-size: 5vw
    }

    #app footer .top .c2>li p {
        white-space: nowrap;
        font-size: 3vw
    }

    #app footer .top .c2>li p.f-20 {
        color: #fff;
        margin-top: .1rem;
        font-size: 3.8vw
    }

    #app footer .top .c2>li {
        position: relative
    }

    #app footer .top .c2>li .img {
        width: 18vw;
        opacity: 1;
        pointer-events: auto;
        margin-top: 0;
        position: absolute;
        top: 0;
        right: 0
    }

    #app footer .top .c2>li:last-of-type {
        padding-bottom: 1.8rem
    }

    #app footer .mid p a {
        font-size: 2.6vw
    }

    #app footer .top .c2>li .shareBox {
        width: 100%;
        border-bottom: 1px solid rgba(255, 255, 255, .3);
        -ms-flex-pack: end;
        justify-content: flex-end;
        padding-bottom: .3rem;
        display: -ms-flexbox;
        display: flex
    }

    #app footer .top .c2>li .shareBox:after {
        content: attr(data-note);
        color: #b2b9ff;
        font-size: 14px;
        position: absolute;
        bottom: .3rem;
        left: 0
    }

    #app footer .top .c2>li .shareBox .layer-icon .inter {
        display: none
    }

    #app footer .top .c2>li .shareBox .layer-icon {
        pointer-events: auto;
        margin-left: .4rem;
        margin-right: 0
    }

    #app footer .top .c2>li .shareBox .layer-icon .icon {
        font-size: 7vw
    }

    #app footer .mid .line {
        display: none
    }

    #app footer .mid {
        padding-bottom: .3rem
    }

    #app footer .mid>p {
        color: rgba(255, 255, 255, .5);
        font-size: 2.6vw
    }

    #app .foot h3 {
        height: 100%;
        width: 100%;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        top: 0;
        left: 0
    }

    #app .foot {
        padding: 1rem 0
    }

    #home .loading .loadImg {
        width: 50vw;
        height: 50vw
    }

    #home .loading .loadMsg {
        width: 100%;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        padding-top: 80vw;
        left: 0
    }

    #home .loading #loadSum {
        font-size: 1.8rem
    }

    #home #other .inner>ul,
    #home #other .inner .group {
        right: 5vw
    }

    #home #other .inner {
        height: 1.8rem;
        bottom: 35vw
    }

    #home #other #banner .msg .topic,
    #home #other #banner .msg .note {
        height: 10vw
    }

    #home #other #banner .msg .topic h2,
    #home #other #banner .msg .note h3 {
        letter-spacing: -2px;
        font-size: 10vw;
        line-height: .8
    }

    #home #other #banner .msg .topic h2.txtCh {
        font-size: 9vw
    }

    #home #other #banner .msg .note h3.txtCh {
        font-size: 9vw;
        line-height: .9
    }

    #home #other .inner>ul>li {
        font-size: 14px
    }

    #about [data-scroll-container] {
        overflow: visible
    }

    #about #main .r1 {
        min-height: 140vw;
        height: 140vw;
        width: 100vw;
        overflow: hidden
    }

    #about #main .r1 .group {
        width: 90vw
    }

    #about #main .r1 .group>small .icon {
        width: .45rem
    }

    #about #main .r1 .group>small .icon .st1 {
        stroke-width: 1.4rem
    }

    #about {
        pointer-events: none
    }

    #about #main .r2 {
        width: 100vw;
        min-height: 150vw;
        overflow: hidden
    }

    #about #main .r2 .inner {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    #about #main .r2 .inner .col h2 {
        margin: 8vw 0;
        font-size: 12vw
    }

    #about #main .r2 {
        width: 90%
    }

    #about #main .r2 .group {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-top: 2.4rem;
        padding-bottom: 2.5rem;
        position: relative
    }

    #about #main .r2 .group>a {
        height: .8rem;
        margin-bottom: .4rem
    }

    #about #main .r2 .group .line {
        height: 1px;
        width: 50%;
        background-color: rgba(255, 255, 255, .6);
        border: none;
        margin: 0;
        position: absolute;
        top: 2.8rem;
        right: 0
    }

    #about #main .r2 .group .col .layout-btn-2 {
        height: .85rem
    }

    #about #main .r3 {
        width: 100vw;
        overflow: hidden
    }

    #about #main .r3 .imgBox {
        width: 100vw;
        height: 68vw;
        top: 0
    }

    #about #main .r3 .inner p {
        width: 100%
    }

    #about #main .r3 .group .wrap h3 {
        margin-top: auto
    }

    #about #main .r3 .group .wrap h3 span small {
        color: #000
    }

    #about #main .r3 .group .wrap .con {
        width: 1000vw
    }

    #about #main .r3 .group .wrap {
        width: 100%;
        position: sticky;
        top: 0;
        left: 0;
        overflow: hidden
    }

    #about #main .r3 .group .wrap .con .child>ul {
        width: 80vw;
        padding: 0 5vw
    }

    #about #main .r3 .group .wrap .con .child>ul>li>a {
        color: rgba(0, 0, 0, .7)
    }

    #about #main .r3 .group .wrap .con .child>ul>li>p {
        width: 80vw;
        padding-right: .2rem
    }

    #about #main .r3 .group .wrap .con .child>ul>li>a>img,
    #about #main .r3 .group .wrap:after {
        display: none
    }

    #about #main .r3 .inner {
        padding-top: 84vw
    }

    #about #main .r3 .group {
        background-color: #fff
    }

    #about #main .r4 {
        padding-bottom: 100%
    }

    #about #main .r4 .inner {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: start;
        align-items: flex-start
    }

    #about #main .r4 .inner .til h3 {
        width: 100%;
        height: 2rem;
        text-align: center;
        margin: auto 0;
        font-size: 19vw;
        line-height: 2rem;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0
    }

    #about #main .r5 {
        width: 100vw;
        padding-top: 1.8rem;
        padding-right: 0;
        overflow: hidden
    }

    #about #main .r5 .inner {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    #about #main .r5 .inner h2 {
        margin: 8vw;
        font-size: 11vw
    }

    #about #main .r6 {
        width: 100vw
    }

    #about #main .r6 .group .bg {
        width: 100%;
        position: sticky;
        top: 0;
        left: 0;
        overflow: hidden
    }

    #about #main .r6 .inner p span small {
        color: rgba(255, 255, 255, .5)
    }

    #about #main .r6 .group .bg .other {
        width: 100vw
    }

    #about #main .r6 .group .items {
        width: 100vw;
        margin-top: -100vh;
        overflow: hidden
    }

    #about #main .r6 .group .items .list {
        width: 50%
    }

    #about #main .r6 .group .bg .other .mask {
        animation-name: fxFade2
    }

    #about #main .r6 .group .items .list>a {
        width: 100%
    }

    #about #main .r6 .group .items .list>a>img {
        max-width: 64%;
        max-height: 60%
    }

    #about #main .r7 {
        width: 100vw;
        overflow: hidden
    }

    #about #main .r7 .inner .til {
        position: relative
    }

    #about #main .r7 .inner .til h2 {
        font-size: .64rem
    }

    #about #main .r7 .inner .til span {
        position: absolute;
        bottom: calc(100% + 4vw)
    }

    #about #main .r7 .group {
        margin-top: 2.5rem
    }

    #about #main .r7 .group>img {
        display: none
    }

    #about #main .r7 .group .box {
        -ms-flex-direction: column;
        flex-direction: column
    }

    #about #main .r7 .group .box .col:nth-of-type(1) span {
        color: rgba(255, 255, 255, .5);
        margin-bottom: .4rem
    }

    #about #main .r7 .group .box .col:nth-of-type(2) {
        -ms-flex-direction: column;
        flex-direction: column
    }

    #about #main .r7 .group .box .col:nth-of-type(2) .list {
        width: 100%
    }

    #about #main .r7 .group .box .col:nth-of-type(2) .list h3 {
        -ms-flex-direction: row;
        flex-direction: row
    }

    #about #main .r7 .group .box .col:nth-of-type(2) .list p {
        margin-top: .4rem
    }

    #about #main .r7 .group .box .col:nth-of-type(2) .list:nth-of-type(2) {
        margin-top: 1rem
    }

    #about #main .r7 .group .box:nth-of-type(2) {
        margin-top: .8rem
    }

    #work #main .title {
        margin-bottom: 1rem
    }

    #work #main .title .child h2 {
        font-size: 20px
    }

    #work #main .box .tree>li>a {
        line-height: 1.6
    }

    #work #main .box {
        width: 100%;
        margin: 0 auto
    }

    #work #main .box .items {
        padding-top: 3rem
    }

    #work #main .box .items .col>a .photo figure,
    #work #main .box .items .col>div .photo figure {
        height: 110%;
        top: -5%
    }

    #work #main .box .items .col {
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0;
        padding-top: 3rem
    }

    #work #main .box .items .col>div,
    #work #main .box .items .col>a {
        width: 100%
    }

    #work #main {
        width: 88%;
        max-width: 88%;
        padding-top: 3rem;
        padding-bottom: 3rem
    }

    #work #main .title h1 {
        margin-bottom: .5rem;
        font-size: 1rem
    }

    #work #main .title .child {
        padding-left: .1rem
    }

    #work #main .box .items .col>div .photo,
    #work #main .box .items .col>a .photo {
        height: 100vw
    }

    #work #main .box .items .col:nth-of-type(1)>div:nth-of-type(2),
    #work #main .box .items .col:nth-of-type(1)>a:nth-of-type(2) {
        margin-top: 3rem
    }

    #work #main .box .items .col:nth-of-type(1) {
        padding-top: 0
    }

    #work #main .box .items .col>div:nth-of-type(2),
    #work #main .box .items .col>a:nth-of-type(2) {
        margin-top: 3rem
    }

    #work #main .box .items .col>a .msg h3,
    #work #main .box .items .col>div .msg h3 {
        height: .48rem
    }

    #detail .r1 .top .small,
    #detail .r1 .mid .small,
    #detail .r1 .btm .small {
        font-size: 3.6vw
    }

    #detail .r2 {
        padding: 0
    }

    #detail .toBackBtn {
        width: 1rem;
        height: 1rem;
        left: 5%
    }

    #detail .toBackBtn .layer-icon .iconfont {
        line-height: .6
    }

    #detail .toBackBtn .img {
        width: 1rem;
        height: 1rem
    }

    #news .top {
        padding: 3rem 6% 0
    }

    #news .top .title {
        margin-bottom: .5rem
    }

    #news .top .title h1 {
        margin-bottom: .4rem;
        font-size: 1rem
    }

    #news .mid {
        padding: 0 6%
    }

    #news .mid .spaced .item {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -ms-flexbox;
        display: flex
    }

    #news .mid .spaced .item .item__image {
        width: 100%;
        margin-bottom: .2rem
    }

    #join .mid .inner {
        padding: 2.5rem 6% 0
    }

    #join .mid .js-mask {
        display: none
    }

    #join .mid .inner .group .box {
        height: auto;
        width: 100%;
        padding: 1rem 0
    }

    #join .mid .inner .group .tab {
        pointer-events: none;
        display: none
    }

    #join .mid .inner .group .box h2 span {
        font-size: 1.2rem
    }

    #join .mid .inner .send {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding: 1rem 0;
        display: -ms-flexbox;
        display: flex
    }

    #join .mid .inner .send .go {
        display: none
    }

    #join .mid .inner .group .tab {
        height: 100%;
        width: 1.6rem;
        display: -ms-flexbox;
        display: flex;
        position: fixed;
        right: 6vw
    }

    #join .mid .inner .group .tab .lists.active {
        width: 1.6rem;
        height: 1.6rem;
        background-color: #000
    }

    #join .mid .inner .group .tab .lists.active>img {
        height: 60%
    }

    #join .mid .inner .group .box h2 span {
        height: .8em;
        padding-top: .12em;
        font-size: .8rem;
        line-height: .5
    }

    #join .mid .inner .group .box>div {
        width: 100%;
        position: relative
    }

    #join .mid .inner .group .box>div .imgBox {
        width: 1.3rem;
        height: 1.3rem;
        border: 1px solid transparent;
        border-radius: 50%;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        top: 0;
        right: 0
    }

    #join .mid .inner .group .box>div .imgBox>img {
        height: 100%
    }

    #newDetail .r1 {
        padding-top: 2.5rem
    }

    #newDetail .r1 .inner {
        max-width: 88%
    }

    #newDetail .r1 .inner .til {
        margin-bottom: 1rem
    }

    #newDetail .r1 .inner .detail {
        font-size: 14px
    }

    #newDetail .r1 .inner .bm .line {
        width: 50%
    }

    #pop .group {
        width: 90%
    }

    #pop .group .con {
        padding: .9rem .6rem .6rem
    }

    #pop .group .con .form .col.half {
        width: 100%
    }

    .dropdown>span {
        height: 1rem;
        padding: .2rem;
        font-size: 14px
    }

    #pop .group .con .form .col {
        margin-bottom: .25rem
    }

    #pop .group .con .form .col .inRow {
        height: 1rem;
        text-align: left;
        font-size: 14px
    }

    #pop .group .con .form .col textarea {
        height: 2.4rem;
        font-size: 14px
    }

    #pop .group .close {
        width: .7rem;
        height: .7rem;
        top: .2rem;
        left: calc(100% - 1rem)
    }

    #contact .r1 {
        padding-bottom: .3rem
    }

    #contact .r1 .inner .mid .list {
        margin-bottom: .3rem
    }

    #contact .r1 .inner .mid .list .note {
        margin-bottom: .1rem
    }

    #contact .r1 .inner .mid .list .msg .txt {
        margin-bottom: .2rem
    }

    #contact .r2 {
        padding: 0
    }

    #contact .r2 .right {
        width: 100%
    }

    #contact .r2 .right #map {
        width: 100%;
        height: 64vw;
        border-radius: 0
    }

    #contact .r2 .right #map .anchorBL {
        display: none
    }
}