@font-face {
    font-family: "Plex Sans VF";
    src: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/57225/IBMPlexSansVar-Roman.woff2") format("woff2 supports variations"), url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/57225/IBMPlexSansVar-Roman.woff2") format("woff2-variations");
    font-display: swap;
    font-weight: 100 700;
    font-stretch: 85% 100%;
}

:root {
    --minf: 10px;
    --maxf: 30px;
    --minw: 1280px;
    --maxw: 2560px;
}

html,
body {
    position: relative;
    font-size: 16px;
    height: 100%;
}

body {
    margin: 0;
    padding: 0;
    background-color: #fff;
    color: #000;
    line-height: 1.5rem;
    font-family: "Heiti SC", "Microsoft YaHei", Tahoma, Helvetica, Arial, sans-serif;
}

a {
    color: #000;
    text-decoration: none;
    outline: none;
}

.d-none {
    display: none;
}

.navbar {
    position: fixed;
    width: initial;
    z-index: 999;
    left: 5%;
    top: 3%;
    width: 90%;
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: stretch;
    mix-blend-mode: exclusion;
}

.navbar a {
    color: #fff;
    line-height: 1.2rem;
    display: inline-block;
}

.navbar .btn-menu {
    cursor: pointer;
    width: 2.2rem;
    height: 1rem;
    position: absolute;
    left: 0;
    top: 0;
}

.navbar .btn-menu:before {
    content: '';
    width: .5rem;
    height: .5rem;
    overflow: hidden;
    border-radius: 50%;
    /* box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5); */
    background-color: #fff;
    position: absolute;
    left: 0;
    top: .25rem;
    transition-property: background-color box-shadow;
    transition-duration: .3s;
}

.navbar .btn-menu:after {
    content: '';
    width: .5rem;
    height: .5rem;
    overflow: hidden;
    border-radius: 50%;
    /* box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5); */
    background-color: #fff;
    position: absolute;
    right: 0;
    top: .25rem;
    transition-property: background-color box-shadow;
    transition-duration: .3s;
}

.navbar .btn-menu span {
    cursor: pointer;
    content: '';
    width: .5rem;
    height: .5rem;
    overflow: hidden;
    border-radius: 50%;
    /* box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5); */
    background-color: #fff;
    position: absolute;
    left: .85rem;
    top: .25rem;
    transition-property: background-color box-shadow;
    transition-duration: .3s;
}

.navbar ul {
    display: none;
    margin: 0;
    width: 100%;
    min-height: 1.2rem;
    padding: .5rem 0 0;
    list-style: none;
    font-size: .85rem;
    letter-spacing: 1px;
    line-height: 1.2rem;
    text-align: center;
    z-index: 99;
}

.navbar ul li {
    display: inline-block;
}

.navbar ul li a {
    padding: .1rem .5rem;
}

.navbar ul li.active a,
.navbar a:hover {
    opacity: .7;
}

.language-menu {
    display: none;
    cursor: pointer;
    text-transform: capitalize;
    border-color: #fff;
    border-style: solid;
    border-width: 0 0 1px;
    font-size: .6rem;
    padding-bottom: .15rem;
    margin: -10px auto 0;
    width: initial;
    line-height: 1.2rem;
    z-index: 99;
}

.language-menu span {
    padding: 0 .25rem;
    color: #fff;
}

.navbar:hover ul,
.navbar:hover .language-menu {
    display: block;
}

.navbar.white {
    mix-blend-mode: normal;
}

.navbar.white a:hover {
    color: #ffe36f !important;
}

.navscroll {
    text-transform: capitalize;
    position: fixed;
    z-index: 999;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 1%;
    overflow: hidden;
}

.navscroll p {
    margin: 0;
    font-style: italic;
    font-family: Verdana;
}

.navscroll .scroll-button-next {
    display: inline-block;
    cursor: pointer;
    margin: 0 auto;
}

.navscroll .scroll-button-next:after {
    font-family: swiper-icons;
    content: 'next';
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
    font-size: 1.6rem;
    overflow: hidden;
    transform: rotate(90deg);
    text-transform: none;
    font-weight: bold;
    display: block;
    margin: 0 auto;
    font-variant: initial;
    transition-property: color;
    transition-duration: .2s;
}

.navscroll.white {
    color: #fff;
}

.swiper-container {
    height: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
}

.swiper-slide {
    text-align: center;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

#carousel .title {
    position: absolute;
    z-index: 99;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-transform: capitalize;
    text-align: center;
}

#carousel .title img {
    max-width: 90%;
}

#carousel .title h2 {
    margin: .2rem;
    line-height: 3.2rem;
    font-size: 3.2rem;
    font-weight: normal;
    font-variation-settings: 'wght' 200;
}

#carousel .title h3 {
    margin: 0;
    font-weight: normal;
}

#slogan {
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
}

#slogan p {
    line-height: 2rem;
    margin-top: 0;
    color: rgb(11, 11, 80);
}

#slogan p span {
    color: rgb(104, 0, 35);
}

#studio {
    display: flex;
    flex-direction: column;
    text-align: left;
    align-items: center;
    justify-content: center;
}

#studio h3 {
    font-size: .75rem;
    margin: 0 0 .2rem;
}

#studio .txt {
    width: 100%;
    margin: -0.3rem 0 .6rem;
    font-size: .7rem;
    line-height: 1.3rem;
}

#studio .pic img {
    width: 100%;
    display: block;
}

#team {
    display: flex;
    flex-direction: column;
    text-align: left;
    align-items: center;
}

#team h3 {
    font-size: .75rem;
    margin: 7vh 0 .2rem;
    width: 90%;
}

#team .txt {
    width: 100%;
    margin: -0.13rem 0 .6rem;
    font-size: .7rem;
    line-height: 1.1rem;
    color: #888;
    overflow: hidden;
    /* font-family: 'SimSun'; */
}

#team .txt .txtb {
    color: #000;
}

#team .txt p {
    margin-top: 0;
    margin-bottom: .5rem;
}

#team .pic img {
    width: 100%;
    display: block;
}

#studio,
#team {
    font-family: TimesNewRoman, "Times New Roman", Times;
}

#studio .pic,
#team .pic {
    width: 100%;
    margin: 0 0 .6rem;
}

#studio .panel,
#team .panel {
    width: 90%;
    text-align: justify;
}

#award .swiper-slide {
    flex-direction: column;
}

#award .swiper-slide h3 {
    width: 80%;
    text-align: left;
    font-weight: normal;
    color: rgb(226, 33, 70);
    margin: 0 0 1rem;
}

#award .swiper-slide h3 strong {
    font-size: 2rem;
    vertical-align: baseline;
    /* font-family: Cambria, Georgia, Times, 'Times New Roman', serif; */
}

#award .swiper-slide .panel {
    width: 80%;
    text-align: left;
    line-height: 1.3rem;
    font-size: .75rem;
    max-height: 60vh;
    overflow: auto;
}

#award .swiper-slide p.li {
    padding: 0 0 0 1.5rem;
    margin: 0 0 .5rem 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    color: rgb(2, 24, 129);
}

#award .swiper-slide p.li strong {
    display: inline-block;
    font-weight: normal;
}

#award .swiper-slide p.li span,
#award .swiper-slide p.li em {
    display: inline-block;
    font-style: normal;
}

#award .swiper-slide p.txt {
    padding: 0 0 0 1.5rem;
    margin: 0 0 .5rem 0;
    position: relative;
    display: flex;
    color: rgb(2, 24, 129);
}

#award .swiper-slide p.txt:before,
#award .swiper-slide p.li:before {
    content: '';
    position: absolute;
    left: 0;
    top: .35rem;
    height: .5rem;
    width: .5rem;
    border-radius: 50%;
    overflow: hidden;
    background-color: rgb(2, 24, 129);
}

.loading {
    position: fixed;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #929292;
    display: flex;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.loading .box {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    transform: scale(.5);
}

.meter {
    height: 3px;
    width: 660px;
    overflow: hidden;
    max-width: 86%;
    margin-top: 30px;
    margin-bottom: 20px;
    background-color: #fff;
}

.meter span {
    display: block;
    float: left;
    font-size: 0;
    overflow: hidden;
    width: 0%;
    height: 100%;
    background-size: 200%;
    background-image: -webkit-linear-gradient(to right, rgb(210, 210, 210) 0%, rgb(110, 110, 110) 30%, rgb(20, 20, 20) 50%, rgb(110, 110, 110) 70%, rgb(210, 210, 210) 100%);
    background-image: linear-gradient(to right, rgb(210, 210, 210) 0%, rgb(110, 110, 110) 30%, rgb(20, 20, 20) 50%, rgb(110, 110, 110) 70%, rgb(210, 210, 210) 100%);
    background-color: rgb(0, 0, 0);
    /* animation: progress 2s linear infinite; */
    transition-property: width;
    transition-duration: .5s;
}

#contact {
    height: 100%;
    display: flex;
    align-items: center;
    text-align: left;
    justify-content: center;
    background-color: #fff;
}

#contact section {
    width: 90%;
    color: rgb(1, 38, 145);
    /* font-family: Cambria, Georgia, Times, 'Times New Roman', serif; */
}

#contact section h2 {
    color: rgb(226, 36, 69);
    font-size: 2rem;
    font-variation-settings: 'wght' 200;
}

#contact section h3 {
    margin-bottom: .5rem;
}

#contact section p {
    margin-top: .5rem;
    font-weight: 700;
    font-size: .7rem;
    /* font-family: 'SimSun'; */
}

#contact section small {
    display: inline-block;
    font-size: .6rem;
    line-height: 1rem;
    /* font-family: 'SimSun'; */
}

#contact section a {
    color: rgb(1, 38, 145);
    text-decoration: underline;
}

#contact section .my-links {
    margin-top: 1.5rem;
}

#contact section .my-links a {
    display: inline-block;
    margin-right: 1rem;
    height: 64px;
    width: 64px;
}

#contact section .my-links a svg {
    fill: rgb(1, 38, 145);
    vertical-align: top;
    height: 100%;
    width: 100%;
}

#contact section .my-links a:hover {
    -webkit-animation: tada2 1s .2s ease both;
    animation: tada2 1s .2s ease both;
}

.grid-pics {
    width: 100%;
    margin-left: 5vw;
    margin-right: 5vw;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
}

.grid-pics .grid-item {
    width: 100%;
    height: 90vw;
    position: relative;
    margin-bottom: 5vw;
}

.grid-pics .grid-item .pic {
    height: 100%;
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #F6F6F6;
}

.grid-pics .grid-item .pic .title {
    cursor: pointer;
    display: flex;
    opacity: 0;
    margin: 0;
    height: 100%;
    color: #fff;
    text-align: center;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 10, 146, 0.7);
    transition-property: opacity;
    transition-duration: .5s;
}

.grid-pics .grid-item .pic:hover .title {
    opacity: 1;
}

.grid-videos {
    width: 100%;
    margin-left: 5%;
    margin-right: 5%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.grid-videos .grid-item {
    width: 100%;
    height: calc(90vw * 0.5625);
    margin-bottom: 5vw;
    position: relative;
}

.grid-videos .video {
    width: 100%;
    height: 100%;
    display: block;
    background-color: black;
}

.grid-videos .pic {
    height: 100%;
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #F6F6F6;
}

.grid-videos .grid-item .title {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    cursor: pointer;
    display: flex;
    opacity: 0;
    margin: 0;
    height: 100%;
    color: #fff;
    text-align: center;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 10, 146, 0.7);
    transition-property: opacity;
    transition-duration: .5s;
}

.grid-videos .grid-item:hover .title {
    opacity: 1;
}

.pop-box {
    display: none;
    color: #fff;
    height: 100%;
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    overflow: hidden;
    z-index: 100;
    background-color: rgb(255, 255, 255);
}

.pop-box .swiper-container-b {
    background-color: rgb(255, 255, 255);
}

.pop-box .swiper-slide .pic {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: flex;
    justify-content: center;
    align-items: center;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.pop-box .swiper-slide .pic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pop-box .info {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 2;
}

.pop-box .info p {
    width: 0%;
    min-height: 15vh;
    overflow: hidden;
    margin: 0;
    text-align: right;
    font-size: .6rem;
    line-height: 1.1rem;
    background-color: rgba(0, 0, 0, 0.7);
}

.pop-box .info strong {
    display: block;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: normal;
    padding: 1rem 2rem .5rem;
}

.pop-box .info span {
    display: block;
    padding: 0 2rem 1rem;
}

.pop-box .btn-info {
    position: absolute;
    left: 5%;
    bottom: 5%;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 2rem;
    text-align: center;
    display: inline-block;
    background-color: #000;
    border-radius: 50%;
    overflow: hidden;
    z-index: 2;
}

.pop-box .btn-info span {
    cursor: pointer;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
    line-height: 2.5rem;
    display: block;
    font-family: cursive;
    font-variation-settings: 'wght' 500;
}

.pop-box .btn-info em {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
}

.pop-box .swiper-pagination {
    letter-spacing: -2px;
    mix-blend-mode: exclusion;
}

.pop-box .video {
    height: 100%;
    width: 100%;
    display: block;
    background-color: black;
}

.swiper-container-t .swiper-slide {
    align-items: flex-start;
}

.swiper-container-h .swiper-slide .pic {
    width: 100%;
    height: auto;
    min-height: 100%;
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    transition: 0s linear 3s;
    transform: scale(1, 1);
    -moz-transform-origin: 50%;
}

/* .swiper-container-h .swiper-slide-active,
.swiper-container-h .swiper-slide-duplicate-active {
    z-index: 99;
    position: relative;
} */

.swiper-container-h .swiper-slide-active .pic,
.swiper-container-h .swiper-slide-duplicate-active .pic {
    transition: 10.5s cubic-bezier(0, 0, 0.36, 0.81);
    transform: scale(1.45, 1.45);
}

.swiper-container-pic .swiper-wrapper,
.swiper-container-video .swiper-wrapper {
    height: auto;
}

.swiper-container-pic .swiper-slide,
.swiper-container-video .swiper-slide {
    height: auto;
}

.swiper-container-pic .swiper-slide:first-child,
.swiper-container-video .swiper-slide:first-child {
    padding-top: 10vh;
}

.swiper-container-pic .swiper-slide:last-child,
.swiper-container-video .swiper-slide:last-child {
    padding-bottom: 10vh;
}

.swiper-container-pic .swiper-slide:last-child .grid-item:last-child,
.swiper-container-video .swiper-slide:last-child .grid-item:last-child {
    margin-bottom: 0;
}

.swiper-container-pic .swiper-slide.end:after,
.swiper-container-video .swiper-slide.end:after {
    display: inline-block;
    content: 'End';
    position: absolute;
    width: 100%;
    line-height: 10vh;
    bottom: 0;
    font-size: .9rem;
}

.swiper-button-prev,
.swiper-button-next {
    color: #fff;
    font-size: .9rem;
    font-weight: bold;
    z-index: 99;
    mix-blend-mode: exclusion;
}

.msglandscape {
    position: fixed;
    z-index: 999;
    height: 100%;
    width: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    color: #fff;
    background-color: #929292;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.icon-orient {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -webkit-animation: rotation infinite 1.5s ease-in-out;
    animation: rotation infinite 1.5s ease-in-out
}

body.en #studio .txt {
    line-height: 1.2rem;
}

body.en #team .txt {
    line-height: 12px;
}

#url {
    display: none;
}

.beian {
    position: fixed;
    bottom: 10px;
    left: 0;
    right: 0;
    font-size: .6rem;
    text-align: center;
    color: rgb(1, 38, 145);
}

:root {
    --swiper-navigation-size: 1.6rem;
    --animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 1
}

/* 动画 */
.animate__animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-duration: var(--animate-duration);
    animation-duration: var(--animate-duration);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animate__animated.animate__infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.animate__animated.animate__repeat {
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-iteration-count: var(--animate-repeat);
    animation-iteration-count: var(--animate-repeat)
}

.animate__animated.animate__delay {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    -webkit-animation-delay: var(--animate-delay);
    animation-delay: var(--animate-delay)
}

@keyframes rotation {
    10% {
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg)
    }

    50%,
    60% {
        transform: rotate(0);
        -webkit-transform: rotate(0)
    }

    100%,
    90% {
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg)
    }
}

@keyframes shakeX {
    50% {
        -webkit-transform: translate3d(-2px, 0, 0);
        transform: translate3d(-2px, 0, 0)
    }

    0%,
    100% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0)
    }
}

.animate__shakeX {
    -webkit-animation-name: shakeX;
    animation-name: shakeX
}

@keyframes shakeX2 {
    50% {
        -webkit-transform: translate3d(4px, 0, 0);
        transform: translate3d(4px, 0, 0)
    }

    0%,
    100% {
        -webkit-transform: translate3d(-4px, 0, 0);
        transform: translate3d(-4px, 0, 0)
    }
}

.animate__shake-X {
    -webkit-animation-name: shakeX2;
    animation-name: shakeX2
}

@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }

    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }

    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

.animate__swing {
    -webkit-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing
}

@keyframes tada {
    0% {
        -webkit-transform: rotate(4deg) translate3d(2px, 0, 0);
        transform: rotate(4deg) translate3d(2px, 0, 0)
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: rotate(4deg);
        transform: rotate(4deg)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: rotate(-4deg);
        transform: rotate(-4deg)
    }

    25%,
    75% {
        -webkit-transform: translate3d(-2px, 0, 0);
        transform: translate3d(-2px, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0)
    }

    100% {
        -webkit-transform: rotate(4deg) translate3d(2px, 0, 0);
        transform: rotate(4deg) translate3d(2px, 0, 0)
    }
}

.animate__tada {
    -webkit-animation-name: tada;
    animation-name: tada
}

@keyframes tada2 {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    10%,
    20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate(-3deg);
        transform: scale3d(.9, .9, .9) rotate(-3deg)
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg)
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg)
    }

    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.animate__tada2 {
    -webkit-animation-name: tada2;
    animation-name: tada2
}

@-webkit-keyframes progress {
    to {
        background-position: 330px 0;
    }
}

@keyframes progress {
    to {
        background-position: -200% 0;
    }
}

@media (min-width:480px) {
    .navbar {
        top: 6%;
        width: auto;
        display: block;
    }

    .navbar ul {
        padding: 1.3rem 0 .2rem;
        text-align: justify;
        font-size: .75rem;
    }

    .navbar ul li {
        display: list-item;
    }

    .navbar ul li a {
        padding: .1rem 0;
    }

    .language-menu {
        margin-top: 0;
        border-width: 1px 0 0;
        padding: .15rem 0 0;
    }

    #slogan p {
        font-size: 1.1rem;
    }

    #team {
        justify-content: center;
    }

    #studio h3 {
        text-indent: 8%;
    }

    #team h3 {
        width: 85%;
        margin-top: 6vh;
    }

    #team h3 span {
        padding-left: 8%;
    }

    #studio .panel,
    #team .panel {
        width: 85%;
        flex-direction: row;
    }

    #studio .pic {
        float: left;
        width: 30%;
        padding-left: 8%;
        margin-bottom: 0;
    }

    #team .pic {
        float: left;
        width: 23%;
        padding-left: 8%;
        margin-bottom: 0;
    }

    #studio .txt {
        float: right;
        width: 58%;
        margin-bottom: 0;
    }

    #team .txt {
        float: right;
        width: 65%;
        line-height: 1rem;
        margin-bottom: 0;
    }

    #award .swiper-slide h3 {
        width: 70%;
    }

    #award .swiper-slide h3 strong {
        font-size: 1.8rem;
    }

    #award .swiper-slide .panel {
        width: 70%;
        font-size: .7rem;
        line-height: 1.2rem;
        max-height: 15.5rem;
    }

    #contact section {
        width: 65%;
    }

    #contact section h2 {
        margin-top: 0;
        margin-bottom: 1rem;
    }

    #contact section .my-links {
        margin-top: 1rem;
        margin-bottom: 0;
    }

    #contact section .my-links a {
        width: 48px;
        height: 48px;
    }

    .grid-pics {
        margin-right: 10vw;
        margin-left: 25vw;
    }

    .grid-pics .grid-item {
        width: 30%;
        height: 19.5vw;
        margin: 0 1.66% 3.2vw 1.66%;
    }

    .pop-box .swiper-slide .pic {
        width: 100%;
    }

    .grid-videos {
        margin-right: 10vw;
        margin-left: 25vw;
    }

    .grid-videos .grid-item {
        width: 48%;
        height: calc(65vw * 0.27);
        margin-bottom: 3vw;
    }

    .swiper-container-pic .swiper-slide:last-child .grid-item,
    .swiper-container-video .swiper-slide:last-child .grid-item {
        margin-bottom: 0;
    }

    .swiper-container-pic .swiper-slide.end:after,
    .swiper-container-video .swiper-slide.end:after {
        width: auto;
        padding-left: 20%;
    }
}

@media (min-width:768px) {
    #carousel .title img {
        width: 50%;
    }

    .pop-box .info p {
        font-size: .75rem;
        line-height: 1.2rem;
    }

    .pop-box .info strong {
        font-size: 1.3rem;
        padding-bottom: 1rem;
    }

}

@media (min-width:1024px) {
    #carousel .title img {
        width: 40%;
    }

    #studio .panel,
    #team .panel {
        width: 87%;
    }

    #studio h3 {
        text-indent: 7%;
    }

    #studio .pic {
        width: 30%;
        padding-left: 7%;
    }

    #studio .txt {
        width: 60%;
    }

    #team h3 {
        width: 87%;
    }

    #team h3 span {
        padding-left: 7%;
    }

    #team .txt {
        width: 70%;
        line-height: 1.2rem;
    }

    #team .pic {
        width: 20%;
        padding-left: 7%;
    }

    #team .txt p {
        margin-bottom: .4em;
    }

    #award .swiper-slide .panel {
        max-height: 15.5rem;
    }

    body.en #team .txt {
        font-size: .65rem;
        line-height: 1rem;
    }
}

@media (min-width:1280px) {

    html,
    body {
        font-size: calc(16px + 14 * ((100vw - 1280px) / 1280));
    }

    #studio .panel,
    #team .panel {
        width: 86%;
    }

    #studio h3 {
        text-indent: 10%;
    }

    #studio .pic {
        width: 30%;
        padding-left: 10%;
    }

    #studio .txt {
        width: 56%;
    }

    #team h3 {
        width: 86%;
    }

    #team h3 span {
        padding-left: 10%;
    }

    #team .txt {
        width: 63%;
        font-size: .65rem;
        line-height: 1.2rem;
    }

    #team .pic {
        width: 23%;
        padding-left: 10%;
    }

    #team .txt p {
        margin-bottom: .4em;
    }

    #award .swiper-slide .panel {
        max-height: 18.5rem;
    }

    #award .swiper-slide p.li {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }

    #award .swiper-slide p.li strong {
        width: 60%;
    }

    #award .swiper-slide p.li em {
        text-align: right;
        width: 10%;
    }

    #contact section h2 {
        margin-bottom: 3rem;
    }

    #contact section .my-links {
        margin-top: 3rem;
    }

    #contact section .my-links a {
        width: 64px;
        height: 64px;
    }

    .loading .box {
        transform: scale(1);
    }

    .meter {
        width: 660px;
    }

    .pop-box .swiper-slide .pic .title {
        padding: 2rem;
        min-height: calc(33vh - 4rem);
    }

    body.en #team .txt {
        line-height: 1rem;
    }
}

@media (min-width:2560px) {

    html,
    body {
        font-size: var(--maxf);
    }
}