html {
    font-family:Impact,'Microsoft YaHei';
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block
}

audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}

    audio:not([controls]) {
        display: none;
        height: 0
    }

[hidden], template {
    display: none
}

a {
    background-color: transparent
}

    a:active, a:hover {
        outline: 0
    }

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 0
}

hr {
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

code, kbd, pre, samp {
    font-family: monospace,monospace;
    font-size: 1em
}

button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button, select {
    text-transform: none
}

button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

    button[disabled], html input[disabled] {
        cursor: default
    }

    button::-moz-focus-inner, input::-moz-focus-inner {
        border: 0;
        padding: 0
    }

input {
    line-height: normal
}

    input[type=checkbox], input[type=radio] {
        box-sizing: border-box;
        padding: 0
    }

    input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
        height: auto
    }

    input[type=search] {
        -webkit-appearance: textfield;
        box-sizing: content-box
    }

        input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
            -webkit-appearance: none
        }

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    padding: 0
}

html {
    -webkit-text-size-adjust: none;
    font-size: 10px
}

body {
    overflow-y: scroll;
    line-height: 1;
    font-size: 62.5%;
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    -webkit-backface-visibility: hidden;
    background-color: #000
}

* {
    -webkit-font-smoothing: antialiased
}

*, :after, :before {
    box-sizing: border-box
}

footer, header, section {
    display: block
}

section {
    position: relative
}

svg {
    -webkit-backface-visibility: hidden
}

dd, dt, li, p, pre, td, th {
    line-break: strict;
    word-break: break-strict
}

a {
    color: inherit;
    text-decoration: none
}

dd, div, dl, dt, li, ol, p, ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

em {
    font-style: normal
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    margin: 0
}

button, input, select, textarea {
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    font-size: inherit;
    line-height: inherit;
    box-shadow: none;
    border: none;
    border-radius: 0
}

    input[type=text], textarea {
        -webkit-appearance: none
    }

        button:focus, input:focus, select:focus, textarea:focus {
            outline: none
        }

hr {
    box-shadow: none;
    border: none;
    border-radius: 0
}

img {
    vertical-align: middle
}

@keyframes translate-down-out-axis-Y-origin-top-0-100 {
    0% {
        transform: translateY(0);
        transform-origin: top
    }

    to {
        transform: translateY(100%);
        transform-origin: top
    }
}

@keyframes translate-down-in-axis-Y-origin-top--100-0 {
    0% {
        transform: translateY(-100%);
        transform-origin: top
    }

    to {
        transform: translateY(0);
        transform-origin: top
    }
}

@keyframes translate-up-out-axis-Y-origin-bottom-0--100 {
    0% {
        transform: translateY(0);
        transform-origin: bottom
    }

    to {
        transform: translateY(-100%);
        transform-origin: bottom
    }
}

@keyframes translate-up-in-axis-Y-origin-bottom-100-0 {
    0% {
        transform: translateY(100%);
        transform-origin: bottom
    }

    to {
        transform: translateY(0);
        transform-origin: bottom
    }
}

@keyframes scaleDownOut-axis-Y-origin-bottom-100-0 {
    0% {
        transform: scaleY(1);
        transform-origin: bottom
    }

    to {
        transform: ScaleY(0);
        transform-origin: bottom
    }
}

@keyframes scaleDownIn-axis-Y-origin-bottom-0-100 {
    0% {
        transform: scaleY(0);
        transform-origin: bottom
    }

    to {
        transform: ScaleY(1);
        transform-origin: bottom
    }
}

@keyframes scaleUpOut-axis-Y-origin-top-100-0 {
    0% {
        transform: scaleY(1);
        transform-origin: top
    }

    to {
        transform: ScaleY(0);
        transform-origin: top
    }
}

@keyframes scaleUpIn-axis-Y-origin-top-0-100 {
    0% {
        transform: scaleY(0);
        transform-origin: top
    }

    to {
        transform: ScaleY(1);
        transform-origin: top
    }
}

@keyframes scaleLeftIn-axis-X-origin-left-0-100 {
    0% {
        transform: scaleX(0);
        transform-origin: left
    }

    to {
        transform: ScaleX(1);
        transform-origin: left
    }
}

@keyframes scaleLeftOut-axis-X-origin-left-100-0 {
    0% {
        transform: scaleX(1);
        transform-origin: left
    }

    to {
        transform: ScaleX(0);
        transform-origin: left
    }
}

@keyframes scaleRightIn-axis-X-origin-right-0-100 {
    0% {
        transform: scaleX(0);
        transform-origin: right
    }

    to {
        transform: ScaleX(1);
        transform-origin: right
    }
}

@keyframes scaleRightOut-axis-X-origin-right-100-0 {
    0% {
        transform: scaleX(1);
        transform-origin: right
    }

    to {
        transform: ScaleX(0);
        transform-origin: right
    }
}

@keyframes fade-0-1 {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fade-1-0 {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-no-flexbox .swiper-slide {
    float: left
}

.swiper-container-vertical > .swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    transform: translateZ(0)
}

.swiper-container-multirow > .swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-invisible-blank-slide {
    visibility: hidden
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto
}

    .swiper-container-autoheight .swiper-wrapper {
        align-items: flex-start;
        transition-property: transform,height
    }

.swiper-container-3d {
    perspective: 1200px
}

    .swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
        transform-style: preserve-3d
    }

    .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 10
    }

    .swiper-container-3d .swiper-slide-shadow-left {
        background-image: linear-gradient(270deg,rgba(0,0,0,.5),transparent)
    }

    .swiper-container-3d .swiper-slide-shadow-right {
        background-image: linear-gradient(90deg,rgba(0,0,0,.5),transparent)
    }

    .swiper-container-3d .swiper-slide-shadow-top {
        background-image: linear-gradient(0deg,rgba(0,0,0,.5),transparent)
    }

    .swiper-container-3d .swiper-slide-shadow-bottom {
        background-image: linear-gradient(180deg,rgba(0,0,0,.5),transparent)
    }

.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
    touch-action: pan-y
}

.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
    touch-action: pan-x
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: 50%;
    background-repeat: no-repeat
}

    .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
        opacity: .35;
        cursor: auto;
        pointer-events: none
    }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");
    left: 10px;
    right: auto
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");
    right: 10px;
    left: auto
}

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")
}

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")
}

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")
}

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity .3s;
    transform: translateZ(0);
    z-index: 10
}

    .swiper-pagination.swiper-pagination-hidden {
        opacity: 0
    }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
        transform: scale(.33);
        position: relative
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
        transform: scale(1)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
        transform: scale(.66)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
        transform: scale(.33)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
        transform: scale(.66)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
        transform: scale(.33)
    }

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007aff
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0,-50%,0)
}

    .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 6px 0;
        display: block
    }

    .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
        top: 50%;
        transform: translateY(-50%);
        width: 8px
    }

        .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
            display: inline-block;
            transition: transform .2s,top .2s
        }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

    .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
        transition: transform .2s,left .2s
    }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s,right .2s
}

.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}

    .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
        background: #007aff;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        transform: scale(0);
        transform-origin: left top
    }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal > .swiper-pagination-progressbar {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #fff
}

.swiper-pagination-progressbar.swiper-pagination-white {
    background: hsla(0,0%,100%,.25)
}

    .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
        background: #fff
    }

.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000
}

.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0,0,0,.25)
}

    .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
        background: #000
    }

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0,0,0,.1)
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0,0,0,.5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

    .swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain
    }

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s steps(12) infinite
}

    .swiper-lazy-preloader:after {
        display: block;
        content: "";
        width: 100%;
        height: 100%;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
        background-position: 50%;
        background-size: 100%;
        background-repeat: no-repeat
    }

.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")
}

@keyframes swiper-preloader-spin {
    to {
        transform: rotate(1turn)
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

    .swiper-container-fade .swiper-slide .swiper-slide {
        pointer-events: none
    }

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

    .swiper-container-cube .swiper-slide {
        pointer-events: none;
        backface-visibility: hidden;
        z-index: 1;
        visibility: hidden;
        transform-origin: 0 0;
        width: 100%;
        height: 100%
    }

        .swiper-container-cube .swiper-slide .swiper-slide {
            pointer-events: none
        }

    .swiper-container-cube.swiper-container-rtl .swiper-slide {
        transform-origin: 100% 0
    }

    .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
        pointer-events: auto
    }

    .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
        pointer-events: auto;
        visibility: visible
    }

    .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
        z-index: 0;
        backface-visibility: hidden
    }

    .swiper-container-cube .swiper-cube-shadow {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        background: #000;
        opacity: .6;
        filter: blur(50px);
        z-index: 0
    }

.swiper-container-flip {
    overflow: visible
}

    .swiper-container-flip .swiper-slide {
        pointer-events: none;
        backface-visibility: hidden;
        z-index: 1
    }

        .swiper-container-flip .swiper-slide .swiper-slide {
            pointer-events: none
        }

    .swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
        pointer-events: auto
    }

    .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
        z-index: 0;
        backface-visibility: hidden
    }

.swiper-container-coverflow .swiper-wrapper {
    -ms-perspective: 1200px
}

.ps {
    overflow: hidden !important;
    overflow-anchor: none;
    -ms-overflow-style: none;
    touch-action: auto;
    -ms-touch-action: auto
}

.ps__rail-x {
    opacity: 0;
    height: 15px;
    bottom: 0
}

.ps__rail-x, .ps__rail-y {
    display: none;
    transition: background-color .2s linear,opacity .2s linear;
    -webkit-transition: background-color .2s linear,opacity .2s linear;
    position: absolute
}

.ps__rail-y {
    opacity: 1;
    width: 6px;
    right: 0
}

.ps--active-x > .ps__rail-x, .ps--active-y > .ps__rail-y {
    display: block;
    background-color: hsla(0,0%,100%,.1)
}

.ps__thumb-x {
    transition: background-color .2s linear,height .2s ease-in-out;
    -webkit-transition: background-color .2s linear,height .2s ease-in-out;
    height: 6px;
    bottom: 2px
}

.ps__thumb-x, .ps__thumb-y {
    background-color: #fff;
    border-radius: 6px;
    position: absolute
}

.ps__thumb-y {
    transition: background-color .2s linear,width .2s ease-in-out;
    -webkit-transition: background-color .2s linear,width .2s ease-in-out;
    width: 2px;
    right: 2px
}

@supports (-ms-overflow-style:none) {
    .ps {
        overflow: auto !important
    }
}

@font-face {
    font-family: Impact,'Microsoft YaHei';
}

@font-face {
    font-family: Impact,'Microsoft YaHei';
}

.row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -7%;
    margin-right: -7%
}

.col-0 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 1 1 auto;
    max-width: none
}

.col-offset-0 {
    margin-left: 0
}

.col-1 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 8.33333%;
    max-width: 8.33333%
}

.col-offset-1 {
    margin-left: 8.33333%
}

.col-2 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 16.66667%;
    max-width: 16.66667%
}

.col-offset-2 {
    margin-left: 16.66667%
}

.col-3 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 25%;
    max-width: 25%
}

.col-offset-3 {
    margin-left: 25%
}

.col-4 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 33.33333%;
    max-width: 33.33333%
}

.col-offset-4 {
    margin-left: 33.33333%
}

.col-5 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 41.66667%;
    max-width: 41.66667%
}

.col-offset-5 {
    margin-left: 41.66667%
}

.col-6 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 50%;
    max-width: 50%
}

.col-offset-6 {
    margin-left: 50%
}

.col-7 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 58.33333%;
    max-width: 58.33333%
}

.col-offset-7 {
    margin-left: 58.33333%
}

.col-8 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 66.66667%;
    max-width: 66.66667%
}

.col-offset-8 {
    margin-left: 66.66667%
}

.col-9 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 75%;
    max-width: 75%
}

.col-offset-9 {
    margin-left: 75%
}

.col-10 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 83.33333%;
    max-width: 83.33333%
}

.col-offset-10 {
    margin-left: 83.33333%
}

.col-11 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 91.66667%;
    max-width: 91.66667%
}

.col-offset-11 {
    margin-left: 91.66667%
}

.col-12 {
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 100%;
    max-width: 100%
}

.col-offset-12 {
    margin-left: 100%
}

.no-gutters {
    margin-right: 0 !important;
    margin-left: 0 !important
}

    .no-gutters > [class*=" col-"], .no-gutters > [class^=col-] {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

@keyframes fade-zoom-0-1 {
    0% {
        opacity: 0;
        transform: translate(0) scale(1.3)
    }

    to {
        opacity: 1;
        transform: translate(0) scale(1)
    }
}

@keyframes fade-zoom-1-0 {
    0% {
        opacity: 1;
        transform: translate(0) scale(1)
    }

    to {
        opacity: 0;
        transform: translate(0) scale(1.3)
    }
}

@keyframes text-link-hover {
    0% {
        transform: scale(1);
        transform-origin: right
    }

    33% {
        transform: scale(0);
        transform-origin: right
    }

    66% {
        transform: scale(0);
        transform-origin: left
    }

    to {
        transform: scale(1);
        transform-origin: left
    }
}

.a-angle {
    overflow: hidden;
    display: inline-block;
    position: relative;
    width: 20px;
    height: 10px
}

    .a-angle:after, .a-angle:before {
        position: absolute;
        top: 50%;
        left: 45%;
        width: 6px;
        height: 6px;
        content: "";
        transform: translate(-150%,-50%) rotate(-45deg);
        transform-origin: 50% 50%;
        text-indent: 0;
        vertical-align: 3px;
        border-right: 1px solid hsla(0,0%,100%,.95);
        border-bottom: 1px solid hsla(0,0%,100%,.95);
        transition: .3s cubic-bezier(.22,1,.36,1) 0s;
        opacity: 0
    }

    .a-angle:after, .hover .a-angle:before {
        transition: .3s cubic-bezier(.22,1,.36,1) .2s;
        transform: translate(-50%,-50%) rotate(-45deg);
        opacity: 1
    }

.hover .a-angle:after {
    transition: .3s cubic-bezier(.22,1,.36,1);
    transform: translate(150%,-50%) rotate(-45deg);
    opacity: 0
}

.a-angle:hover:before {
    transition: .3s cubic-bezier(.22,1,.36,1) .2s;
    transform: translate(-50%,-50%) rotate(-45deg);
    opacity: 1
}

.a-angle:hover:after {
    transition: .3s cubic-bezier(.22,1,.36,1);
    transform: translate(150%,-50%) rotate(-45deg);
    opacity: 0
}

.a-angle.black {
    border-color: rgba(0,0,0,.3)
}

    .a-angle.black:after, .a-angle.black:before {
        border-color: rgba(0,0,0,.95)
    }

.a-arrow {
    overflow: hidden;
    display: inline-block;
    position: relative;
    border: 1px solid hsla(0,0%,100%,.3);
    border-radius: 50%;
    width: 29px;
    height: 29px
}

    .a-arrow:after, .a-arrow:before {
        position: absolute;
        top: 50%;
        left: 45%;
        width: 6px;
        height: 6px;
        content: "";
        transform: translate(-150%,-50%) rotate(-45deg);
        transform-origin: 50% 50%;
        text-indent: 0;
        vertical-align: 3px;
        border-right: 1px solid hsla(0,0%,100%,.95);
        border-bottom: 1px solid hsla(0,0%,100%,.95);
        transition: .3s cubic-bezier(.22,1,.36,1) 0s;
        opacity: 0
    }

    .a-arrow:after, .hover .a-arrow:before {
        transition: .3s cubic-bezier(.22,1,.36,1) .2s;
        transform: translate(-50%,-50%) rotate(-45deg);
        opacity: 1
    }

.hover .a-arrow:after {
    transition: .3s cubic-bezier(.22,1,.36,1);
    transform: translate(150%,-50%) rotate(-45deg);
    opacity: 0
}

.a-arrow:hover:before {
    transition: .3s cubic-bezier(.22,1,.36,1) .2s;
    transform: translate(-50%,-50%) rotate(-45deg);
    opacity: 1
}

.a-arrow:hover:after {
    transition: .3s cubic-bezier(.22,1,.36,1);
    transform: translate(150%,-50%) rotate(-45deg);
    opacity: 0
}

.a-arrow.black {
    border-color: rgba(0,0,0,.3)
}

    .a-arrow.black:after, .a-arrow.black:before {
        border-color: rgba(0,0,0,.95)
    }

.a-body {
    word-break: break-all;
    font-size: 1.26667rem;
    line-height: 1.842;
    letter-spacing: 0
}

    .a-body, .a-body.white {
        color: hsla(0,0%,100%,.5)
    }

        .a-body.black {
            color: rgba(0,0,0,.5)
        }

        .a-body.size2 {
            font-size: 1.1rem;
            line-height: 1.842;
            letter-spacing: 0
        }

.a-button {
    overflow: hidden;
    position: relative;
    padding: 27px;
    display: inline-block;
    background-color: #fff;
    white-space: nowrap;
    font-weight: 300;
    font-family: Impact,'Microsoft YaHei';
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

    .a-button span {
        z-index: 10;
        position: relative;
        color: #b30606
    }

    .a-button:before {
        transform: translateX(0)
    }

    .a-button:after, .a-button:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #b30606
    }

    .a-button:after {
        transform: translateX(-100%)
    }

    .a-button:hover:not(:disabled) {
        border-color: #b30606;
        color: #fff
    }

        .a-button:hover:not(:disabled) span {
            animation-name: color-b30606-to-fff;
            animation-duration: .6s;
            animation-delay: 0s;
            animation-timing-function: cubic-bezier(.215,.61,.355,1);
            animation-iteration-count: 1;
            animation-direction: normal;
            animation-fill-mode: both
        }

@keyframes color-b30606-to-fff {
    0% {
        color: #b30606
    }

    49.9% {
        color: #fff
    }

    50% {
        color: #fff
    }

    to {
        color: #b30606
    }
}

.a-button:hover:not(:disabled):before {
    animation-name: translateX-hover-1;
    animation-duration: .3s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes translateX-hover-1 {
    0% {
        transform: translateX(0);
        transform-origin: 100% 0
    }

    to {
        transform: translateX(100%);
        transform-origin: 100% 0
    }
}

.a-button:hover:not(:disabled):after {
    animation-name: translateX-hover-2;
    animation-duration: .3s;
    animation-delay: .2s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes translateX-hover-2 {
    0% {
        transform: translateX(-100%);
        transform-origin: 0 0
    }

    to {
        transform: translateX(0);
        transform-origin: 0 0
    }
}

.a-button:disabled {
    opacity: .6
}

.a-button.tiny {
    font-size: .8rem;
    line-height: 1;
    letter-spacing: 0
}

.a-button.small {
    font-size: 1rem;
    line-height: 1;
    letter-spacing: 0
}

.a-button.large {
    max-width: 400px;
    width: 100%;
    padding: 27px;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.a-button.expanded {
    width: 100%
}

.a-button.red {
    background-color: #fff
}

    .a-button.red span {
        color: #fff
    }

    .a-button.red:after, .a-button.red:before {
        background-color: #b30606
    }

    .a-button.red:hover:not(:disabled) span {
        animation-name: color-fff-to-b30606;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

@keyframes color-fff-to-b30606 {
    0% {
        color: #fff
    }

    49.9% {
        color: #b30606
    }

    50% {
        color: #b30606
    }

    to {
        color: #fff
    }
}

.a-button.red-dark {
    background-color: #640000
}

    .a-button.red-dark span {
        color: #fff
    }

    .a-button.red-dark:after, .a-button.red-dark:before {
        background-color: #b30606
    }

    .a-button.red-dark:hover:not(:disabled) span {
        animation-name: color-fff-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

@keyframes color-fff-to-fff {
    0% {
        color: #fff
    }

    49.9% {
        color: #fff
    }

    50% {
        color: #fff
    }

    to {
        color: #fff
    }
}

.a-button.white {
    background-color: #b30606
}

    .a-button.white span {
        color: #b30606
    }

    .a-button.white:after, .a-button.white:before {
        background-color: #fff
    }

    .a-button.white:hover:not(:disabled) span {
        animation-name: color-b30606-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.a-button.white-dark {
    background-color: #640000
}

    .a-button.white-dark span {
        color: #b30606
    }

    .a-button.white-dark:after, .a-button.white-dark:before {
        background-color: #fff
    }

    .a-button.white-dark:hover:not(:disabled) span {
        animation-name: color-b30606-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.a-button.success {
    background-color: #fff
}

    .a-button.success span {
        color: #fff
    }

    .a-button.success:after, .a-button.success:before {
        background-color: #3364a7
    }

    .a-button.success:hover:not(:disabled) span {
        animation-name: color-fff-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.a-button.warning {
    background-color: #fff
}

    .a-button.warning span {
        color: #fff
    }

    .a-button.warning:after, .a-button.warning:before {
        background-color: #a7a32d
    }

    .a-button.warning:hover:not(:disabled) span {
        animation-name: color-fff-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.a-button.alert {
    background-color: #fff
}

    .a-button.alert span {
        color: #fff
    }

    .a-button.alert:after, .a-button.alert:before {
        background-color: #cb251e
    }

    .a-button.alert:hover:not(:disabled) span {
        animation-name: color-fff-to-fff;
        animation-duration: .6s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.a-checkbox {
    appearance: none;
    outline: none;
    border-radius: 0;
    background: none;
    margin-right: 2.13333vw;
    position: relative;
    width: 6.4vw;
    height: 6.4vw;
    background-color: #fff;
    border: 1px solid #707070
}

    .a-checkbox:checked {
        background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNi4wNTQiIGhlaWdodD0iMjMuOTg5IiB2aWV3Qm94PSIwIDAgMjYuMDU0IDIzLjk4OSI+CiAgPHBhdGggaWQ9IuODkeOCuV80IiBkYXRhLW5hbWU9IuODkeOCuSA0IiBkPSJNNjAyMy43NjEsMjkwMy42NzdsNi45MTUsMTAuMzQ0LDEyLjE3MS0xNi4xNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYwMjAuMjkzIC0yODk0LjM1KSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmUxOTA2IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iNSIvPgo8L3N2Zz4K);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: contain
    }

.a-cross {
    position: relative;
    width: 20px;
    height: 20px
}

    .a-cross .bar {
        position: absolute;
        display: block;
        top: 0;
        right: 0;
        height: 2px;
        background-color: #fff;
        width: 20px;
        transform: translateY(5px) rotate(45deg)
    }

        .a-cross .bar:nth-child(2) {
            top: 6px;
            transform: translateY(-1px) rotate(-45deg)
        }

.a-hamburger {
    position: relative;
    margin: 0 auto;
    width: 20px;
    height: 20px
}

.a-hamburger_open .bar {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    width: 20px;
    height: 2px;
    background-color: #fff;
    transition: transform .5s cubic-bezier(.14,1,.34,1) .3s,width .5s cubic-bezier(.14,1,.34,1)
}

    .a-hamburger_open .bar:nth-child(2) {
        top: 7px;
        width: 10px;
        transition: transform .5s cubic-bezier(.14,1,.34,1) .35s,width .5s cubic-bezier(.14,1,.34,1)
    }

    .a-hamburger_open .bar:nth-child(3) {
        top: 14px;
        width: 14px;
        transition: transform .5s cubic-bezier(.14,1,.34,1) .4s,width .5s cubic-bezier(.14,1,.34,1)
    }

.a-hamburger_open.white .bar {
    background-color: #000
}

.open .a-hamburger_open .bar:first-child {
    transform: translate3d(100px,0,0) !important;
    transition: transform .5s cubic-bezier(.14,1,.34,1),width .5s cubic-bezier(.14,1,.34,1) !important
}

.open .a-hamburger_open .bar:nth-child(2) {
    transform: translate3d(100px,0,0) !important;
    transition: transform .5s cubic-bezier(.14,1,.34,1) .05s,width .5s cubic-bezier(.14,1,.34,1) !important
}

.open .a-hamburger_open .bar:nth-child(3) {
    transform: translate3d(100px,0,0) !important;
    transition: transform .5s cubic-bezier(.14,1,.34,1) .1s,width .5s cubic-bezier(.14,1,.34,1) !important
}

.a-hamburger_close .bar {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    height: 2px;
    background-color: #fff;
    transition: .5s cubic-bezier(.14,1,.34,1);
    width: 20px;
    transform: translate(100px,5px) rotate(45deg)
}

    .a-hamburger_close .bar:nth-child(2) {
        top: 6px;
        transition: .5s cubic-bezier(.14,1,.34,1) .05s;
        transform: translate(100px,-1px) rotate(-45deg)
    }

.open .a-hamburger_close .bar:first-child {
    width: 20px;
    transform: translateY(5px) rotate(45deg);
    transition: .5s cubic-bezier(.14,1,.34,1) .4s
}

.open .a-hamburger_close .bar:nth-child(2) {
    width: 20px;
    transform: translateY(-1px) rotate(-45deg);
    transition: .5s cubic-bezier(.14,1,.34,1) .5s
}

.a-heading {
    color: inherit;
    font-family: Impact,'Microsoft YaHei';
    font-weight: 500;
    font-size: 10rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: 1.1;
    word-wrap: break-word
}

    .a-heading.size1 {
        font-weight: 100;
        line-height: 1;
        font-size: 100px;
        font-size: 26.66667vw;
        letter-spacing: 0;
        line-height: .84
    }

    .a-heading.size2 {
        font-weight: 100;
        font-size: 6.66667rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .a-heading.size3 {
        font-weight: 300;
        font-size: 4rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .a-heading.size4 {
        font-weight: 300;
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .a-heading.size5 {
        font-weight: 300;
        font-size: 1.26667rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .a-heading.size6 {
        font-weight: 300;
        font-size: 1.93333rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .a-heading.ja {
        font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    }

        .a-heading.ja.size2 {
            font-size: 1.93333rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size3 {
            font-size: 1.6rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size4 {
            font-size: 1.6rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size5 {
            font-size: 1.4rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size6 {
            font-size: 1.26667rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

.a-icon {
    color: #878787
}

    .a-icon.size1 {
        font-size: 6.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size2 {
        font-size: 3.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size3 {
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size4 {
        font-size: .8rem;
        line-height: 1;
        letter-spacing: 0
    }

.icon-umplex {
    display: inline
}

    .icon-umplex svg * {
        fill: #878787
    }

    .icon-umplex.size3 svg {
        width: 36px;
        height: 36px
    }

    .icon-umplex.size4 svg {
        width: 30px;
        height: 30px
    }

.icon-note {
    display: inline
}

    .icon-note svg * {
        fill: #878787
    }

    .icon-note.size3 svg {
        width: 68px;
        height: 26px
    }

    .icon-note.size4 svg {
        width: 62px;
        height: 18px;
        margin-right: -3px
    }

.icon-wantedly {
    display: inline
}

    .icon-wantedly svg * {
        fill: #878787
    }

    .icon-wantedly.size3 svg {
        width: 30px;
        height: 26px
    }

    .icon-wantedly.size4 svg {
        width: 28px;
        height: 18px
    }

.icon-pinterest {
    display: inline
}

    .icon-pinterest svg * {
        fill: #878787
    }

    .icon-pinterest.size3 svg {
        width: 26px;
        height: 26px
    }

    .icon-pinterest.size4 svg {
        width: 20px;
        height: 20px
    }

@font-face {
    font-family: Impact,'Microsoft YaHei';
}

[class*=" icon-"], [class^=icon-] {
    font-family: Impact,'Microsoft YaHei';
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-facebook:before {
    content: "\E900"
}

.icon-instagram:before {
    content: "\E901"
}

.icon-brand1:before, .icon-social1:before, .icon-tweet:before, .icon-twitter:before {
    content: "\E902"
}

.icon-brand:before, .icon-facebook1:before, .icon-social:before {
    content: "\E903"
}

.a-image-hover {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: .3em;
    font-family: Impact,'Microsoft YaHei';
}

    .a-image-hover span {
        display: inline-block;
        transition: all .5s cubic-bezier(.14,1,.34,1) 0s;
        opacity: 0;
        transform: translate3d(-30px,0,0)
    }

        .a-image-hover span:first-child {
            transition-delay: .03s
        }

        .a-image-hover span:nth-child(2) {
            transition-delay: .06s
        }

        .a-image-hover span:nth-child(3) {
            transition-delay: .09s
        }

        .a-image-hover span:nth-child(4) {
            transition-delay: .12s
        }

.hover .a-image-hover span {
    opacity: 1;
    transform: translateZ(0)
}

    .hover .a-image-hover span:first-child {
        transition-delay: .12s
    }

    .hover .a-image-hover span:nth-child(2) {
        transition-delay: .06s
    }

    .hover .a-image-hover span:nth-child(3) {
        transition-delay: .04s
    }

    .hover .a-image-hover span:nth-child(4) {
        transition-delay: .03s
    }

.a-image {
    position: relative
}

    .a-image .placeholder {
        background-color: transparent
    }

    .a-image .placeholder-md {
        background-color: transparent;
        display: none
    }

.a-image_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto
}

.a-img {
    position: relative
}

    .a-img .placeholder {
        background-color: transparent
    }

    .a-img .placeholder-md {
        background-color: transparent;
        display: none
    }

.a-img_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto
}

.a-lazy-image {
    position: relative
}

    .a-lazy-image:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #d5d5d5;
        z-index: 10;
        transform: scaleX(0)
    }

.viewed.a-lazy-image:after {
    animation-name: scaleLeftIn-axis-X-origin-left-0-100;
    animation-duration: .6s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.14,1,.34,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

.loaded.a-lazy-image:after {
    animation-name: scaleRightOut-axis-X-origin-right-100-0;
    animation-duration: .6s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.14,1,.34,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

.a-lazy-image.transparent {
    background-color: transparent
}

.a-lazy-image .placeholder {
    width: 100%;
    height: auto
}

.a-lazy-image .placeholder-md {
    display: none;
    width: 100%;
    height: auto
}

.a-lazy-image .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    opacity: 0;
    transform: translateZ(0)
}

.a-lazy-image.loaded .img {
    opacity: 1
}

.a-preload-image {
    position: relative
}

.a-input {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex: 1 1 auto;
    width: 100%;
    margin-bottom: 0;
    padding: 23px;
    background-color: #2e2e2e;
    overflow: visible;
    background-clip: padding-box;
    border: 1px solid #2e2e2e;
    transition: border-color .2s ease;
    color: #969696;
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: .05em
}

    .a-input::placeholder {
        color: #969696
    }

    .a-input::-webkit-input-placeholder {
        color: #969696
    }

    .a-input:-moz-placeholder, .a-input::-moz-placeholder {
        opacity: 1;
        color: #969696
    }

    .a-input:-ms-input-placeholder {
        color: #969696
    }

.invalid .a-input {
    border-color: #cb251e
}

.a-input.white {
    border-color: #e5e5e5;
    background-color: #e5e5e5;
    color: #000
}

.a-label {
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    color: inherit;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

    .a-label.size2 {
        font-size: 1rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-label.size3 {
        font-size: .8rem;
        line-height: 1;
        letter-spacing: 0
    }

.a-lead {
    color: inherit;
    font-weight: 100;
    font-family: Impact,'Microsoft YaHei';
    font-size: 2.33333rem;
    line-height: 1.28571;
    letter-spacing: 0
}

    .a-lead.size2 {
        font-size: 1.93333rem;
        line-height: 1.2069;
        letter-spacing: 0
    }

    .a-lead.ja.size1 {
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0;
        font-weight: 600;
        line-height: 1.66666
    }

.a-link {
    font-family: Impact,'Microsoft YaHei';
    color: #333;
    font-size: 1.2rem;
    line-height: 1.66667;
    letter-spacing: .2em;
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

    .a-link:hover {
        opacity: .8
    }

    .a-link:after {
        content: "";
        display: block;
        margin: 11px auto;
        width: 8px;
        height: 1px;
        border-bottom: 1px solid silver
    }

    .a-link:last-child:after {
        display: none
    }

.a-logo-sm, .a-logo svg * {
    fill: #b30606
}

.a-overlay {
    z-index: 10;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,.8)
}

.a-plus {
    position: relative;
    width: 12px;
    height: 12px;
    display: flex;
    align-items: center;
    justify-content: center
}

    .a-plus:after, .a-plus:before {
        content: "";
        width: 12px;
        height: 1px;
        position: absolute;
        top: 50%;
        left: 0;
        border-bottom: 1px solid #000;
        transform: translateY(-50%);
        transform-origin: 50% 50%
    }

    .a-plus:after {
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        transform: rotate(90deg)
    }

    .a-plus.white:after, .a-plus.white:before {
        border-color: #fff
    }

    .a-plus.open:after, .open .a-plus:after {
        transform: rotate(0deg)
    }

.a-progress {
    z-index: 8000;
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    height: 3px;
    background-color: rgba(0,0,0,.9);
    opacity: 0;
    transition: opacity .3s,width 0s
}

    .a-progress.show {
        opacity: 1;
        transition: opacity .3s,width .2s
    }

    .a-progress.init {
        background-color: rgba(0,0,0,.9)
    }

.a-select {
    appearance: none;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex: 1 1 auto;
    text-align: left;
    line-height: 1.25;
    border: 1px solid #2e2e2e;
    padding: 23px;
    background-color: #2e2e2e;
    transition: border-color .2s ease;
    color: #969696;
    font-size: 1.26667rem;
    line-height: 1.6;
    letter-spacing: 0
}

    .a-select option {
        color: #969696
    }

.invalid .a-select {
    border-color: #cb251e
}

.a-select.white {
    border-color: #e5e5e5;
    background-color: #e5e5e5;
    color: #000
}

.a-staylowkey {
    fill: #fff
}

.a-subtitle {
    color: hsla(0,0%,100%,.5);
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    font-weight: 100;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

    .a-subtitle.size2 {
        font-size: .93333rem;
        line-height: 1;
        letter-spacing: 0;
        font-weight: 500
    }

.a-switch {
    position: relative
}

.a-switch-input {
    position: absolute;
    left: -9999px;
    opacity: 0
}

.a-switch-icon {
    white-space: normal
}

    .a-switch-icon, .a-switch-icon:before {
        display: inline-block;
        vertical-align: top;
        position: relative
    }

        .a-switch-icon:before {
            content: "";
            top: 0;
            border-radius: 50%;
            border: 1px solid #c9c9c9;
            background-color: #f4f4f4;
            width: 20px;
            height: 20px
        }

        .a-switch-icon:after {
            content: "";
            position: absolute;
            margin: auto;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            width: 8px;
            height: 8px;
            background-color: #999;
            border-radius: 50%;
            opacity: 0;
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
        }

input:checked + .a-switch-icon:after {
    opacity: 1
}

input[type=checkbox] + .a-switch-icon:after, input[type=checkbox] + .a-switch-icon:before {
    border-radius: 1px
}

.a-switch.white .a-switch-icon:before {
    border-color: #e5e5e5;
    background-color: #e5e5e5;
    color: #767676
}

.a-switch.white .a-switch-icon:after {
    background-color: #000
}

.a-tag {
    overflow: hidden;
    color: #333;
    padding-bottom: 3px;
    font-size: 1rem;
    line-height: 1.2;
    letter-spacing: .05em
}

    .a-tag:before {
        content: "#";
        margin-right: .2em
    }

    .a-tag:after {
        content: "";
        display: block;
        left: 0;
        width: 100%;
        height: 1px;
        position: relative;
        bottom: -3px;
        border-bottom: 1px solid #adadad
    }

    .a-tag:hover:after {
        animation-name: text-link-hover;
        animation-duration: .3s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.645,.045,.355,1);
        animation-iteration-count: 1;
        animation-direction: alternate;
        animation-fill-mode: both
    }

.a-textarea {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex: 1 1 auto;
    width: 100%;
    margin-bottom: 0;
    padding: 23px;
    background-color: #2e2e2e;
    overflow: visible;
    background-clip: padding-box;
    border: 1px solid #2e2e2e;
    transition: border-color .2s ease;
    color: hsla(0,0%,100%,.5);
    height: 160px;
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: .05em
}

    .a-textarea::placeholder {
        color: #969696
    }

    .a-textarea::-webkit-input-placeholder {
        color: #969696
    }

    .a-textarea:-moz-placeholder, .a-textarea::-moz-placeholder {
        opacity: 1;
        color: #969696
    }

    .a-textarea:-ms-input-placeholder {
        color: #969696
    }

.invalid .a-textarea {
    border-color: #cb251e
}

.a-textarea.white {
    border-color: #e5e5e5;
    background-color: #e5e5e5;
    color: #000
}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%
}

    .container:after, .container:before {
        content: " ";
        display: table
    }

    .container:after {
        clear: both
    }

.container-phone {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%
}

    .container-phone:after, .container-phone:before {
        content: " ";
        display: table
    }

    .container-phone:after {
        clear: both
    }

.container-narrow {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%
}

    .container-narrow:after, .container-narrow:before {
        content: " ";
        display: table
    }

    .container-narrow:after {
        clear: both
    }

.container-middle {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%
}

    .container-middle:after, .container-middle:before {
        content: " ";
        display: table
    }

    .container-middle:after {
        clear: both
    }

.container-wide {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%
}

    .container-wide:after, .container-wide:before {
        content: " ";
        display: table
    }

    .container-wide:after {
        clear: both
    }

.container-xxs {
    padding-left: 2px;
    padding-right: 2px
}

    .container-xxs .row {
        margin-left: -1px;
        margin-right: -1px
    }

    .container-xxs [class^=col-] {
        padding-left: 1px;
        padding-right: 1px
    }

.container-xs {
    padding-left: 4px;
    padding-right: 4px
}

    .container-xs .row {
        margin-left: -2px;
        margin-right: -2px
    }

    .container-xs [class^=col-] {
        padding-left: 2px;
        padding-right: 2px
    }

.container-sm {
    padding-left: 16px;
    padding-right: 16px
}

    .container-sm .row {
        margin-left: -8px;
        margin-right: -8px
    }

    .container-sm [class^=col-] {
        padding-left: 8px;
        padding-right: 8px
    }

.container-md {
    padding-left: 20px;
    padding-right: 20px
}

    .container-md .row {
        margin-left: -10px;
        margin-right: -10px
    }

    .container-md [class^=col-] {
        padding-left: 10px;
        padding-right: 10px
    }

.container-lg {
    padding-left: 30px;
    padding-right: 30px
}

    .container-lg .row {
        margin-left: -15px;
        margin-right: -15px
    }

    .container-lg [class^=col-] {
        padding-left: 15px;
        padding-right: 15px
    }

.container-xl {
    padding-left: 40px;
    padding-right: 40px
}

    .container-xl .row {
        margin-left: -20px;
        margin-right: -20px
    }

    .container-xl [class^=col-] {
        padding-left: 20px;
        padding-right: 20px
    }

.container-xxl {
    padding-left: 60px;
    padding-right: 60px
}

    .container-xxl .row {
        margin-left: -30px;
        margin-right: -30px
    }

    .container-xxl [class^=col-] {
        padding-left: 30px;
        padding-right: 30px
    }

.main {
    background-color: #181818
}

.mt-xxs {
    margin-top: 1px
}

.mt-xxs-negative {
    margin-top: -1px
}

.mt-xs {
    margin-top: 2px
}

.mt-xs-negative {
    margin-top: -2px
}

.mt-sm {
    margin-top: 4px
}

.mt-sm-negative {
    margin-top: -4px
}

.mt-md {
    margin-top: 8px
}

.mt-md-negative {
    margin-top: -8px
}

.mt-lg {
    margin-top: 16px
}

.mt-lg-negative {
    margin-top: -16px
}

.mt-xl {
    margin-top: 32px
}

.mt-xl-negative {
    margin-top: -32px
}

.mt-xxl {
    margin-top: 64px
}

.mt-xxl-negative {
    margin-top: -64px
}

.mb-xxs {
    margin-bottom: 1px
}

.mb-xxs-negative {
    margin-bottom: -1px
}

.mb-xs {
    margin-bottom: 2px
}

.mb-xs-negative {
    margin-bottom: -2px
}

.mb-sm {
    margin-bottom: 4px
}

.mb-sm-negative {
    margin-bottom: -4px
}

.mb-md {
    margin-bottom: 8px
}

.mb-md-negative {
    margin-bottom: -8px
}

.mb-lg {
    margin-bottom: 16px
}

.mb-lg-negative {
    margin-bottom: -16px
}

.mb-xl {
    margin-bottom: 32px
}

.mb-xl-negative {
    margin-bottom: -32px
}

.mb-xxl {
    margin-bottom: 64px
}

.mb-xxl-negative {
    margin-bottom: -64px
}

.ml-xxs {
    margin-left: 1px
}

.ml-xxs-negative {
    margin-left: -1px
}

.ml-xs {
    margin-left: 2px
}

.ml-xs-negative {
    margin-left: -2px
}

.ml-sm {
    margin-left: 4px
}

.ml-sm-negative {
    margin-left: -4px
}

.ml-md {
    margin-left: 8px
}

.ml-md-negative {
    margin-left: -8px
}

.ml-lg {
    margin-left: 16px
}

.ml-lg-negative {
    margin-left: -16px
}

.ml-xl {
    margin-left: 32px
}

.ml-xl-negative {
    margin-left: -32px
}

.ml-xxl {
    margin-left: 64px
}

.ml-xxl-negative {
    margin-left: -64px
}

.mr-xxs {
    margin-right: 1px
}

.mr-xxs-negative {
    margin-right: -1px
}

.mr-xs {
    margin-right: 2px
}

.mr-xs-negative {
    margin-right: -2px
}

.mr-sm {
    margin-right: 4px
}

.mr-sm-negative {
    margin-right: -4px
}

.mr-md {
    margin-right: 8px
}

.mr-md-negative {
    margin-right: -8px
}

.mr-lg {
    margin-right: 16px
}

.mr-lg-negative {
    margin-right: -16px
}

.mr-xl {
    margin-right: 32px
}

.mr-xl-negative {
    margin-right: -32px
}

.mr-xxl {
    margin-right: 64px
}

.mr-xxl-negative {
    margin-right: -64px
}

.post-body {
    color: hsla(0,0%,100%,.5);
    font-size: 1.26667rem;
    line-height: 1.842;
    letter-spacing: 0
}

    .post-body:after, .post-body:before {
        content: " ";
        display: table
    }

    .post-body:after {
        clear: both
    }

    .post-body h1, .post-body h2 {
        color: #fff;
        font-size: 1.6rem;
        line-height: 1.5;
        letter-spacing: 0
    }

    .post-body h3, .post-body h4, .post-body h5, .post-body h6 {
        position: relative;
        padding-left: .6em;
        color: #fff;
        font-size: 1.3rem;
        line-height: 1.53846;
        letter-spacing: .1em
    }

        .post-body h3:before, .post-body h4:before, .post-body h5:before, .post-body h6:before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 3px;
            height: 100%;
            border-left: 3px solid #909090
        }

    .post-body h1, .post-body h2, .post-body h3, .post-body h4, .post-body h5, .post-body h6 {
        margin: 32px 0 16px
    }

        .post-body h1:first-child, .post-body h2:first-child, .post-body h3:first-child, .post-body h4:first-child, .post-body h5:first-child, .post-body h6:first-child {
            margin-top: 0
        }

    .post-body img {
        max-width: 100%;
        height: auto
    }

    .post-body iframe {
        max-width: 100%
    }

    .post-body blockquote {
        padding: 10px 20px;
        margin: 0 0 20px;
        font-size: 17.5px;
        border-left: 5px solid #303030
    }

    .post-body code {
        padding: 2px 4px;
        font-size: 90%;
        color: #b30606;
        background-color: #303030;
        border-radius: 4px
    }

    .post-body pre {
        display: block;
        padding: 9.5px;
        margin: 0 0 10px;
        font-size: 13px;
        line-height: 1.42857;
        word-break: break-all;
        word-wrap: break-word;
        color: #ccc;
        background-color: #303030;
        border: 1px solid #4f4f4f;
        border-radius: 4px
    }

    .post-body dt {
        font-weight: 500;
        color: #fff
    }

    .post-body dd {
        text-indent: 2em
    }

    .post-body b, .post-body strong {
        color: #fff;
        font-weight: 500
    }

    .post-body a {
        word-wrap: break-word;
        color: hsla(0,0%,100%,.5);
        padding-bottom: 1px;
        display: inline;
        box-shadow: inset -3px -4px 0 -3px hsla(0,0%,100%,.5);
        transition: .3s ease
    }

        .post-body a:hover {
            box-shadow: inset -3px -3px 0 -3px hsla(0,0%,100%,.5)
        }

    .post-body p {
        margin-top: 1.6666em
    }

    .post-body strong {
        font-weight: 700
    }

    .post-body em {
        font-style: italic
    }

    .post-body ul {
        list-style-type: disc
    }

        .post-body ul li {
            list-style-type: inherit;
            margin-left: 2em
        }

    .post-body ol {
        list-style-type: decimal
    }

        .post-body ol li {
            list-style-type: inherit;
            margin-left: 2em
        }

    .post-body table {
        width: 100%;
        max-width: 100%;
        margin-bottom: 1em;
        table-layout: auto;
        border: none;
        border-bottom: 1px solid #303030
    }

        .post-body table tr td, .post-body table tr th {
            padding: 20px 0
        }

        .post-body table tr th {
            font-weight: 500;
            color: #fff
        }

        .post-body table tr td, .post-body table tr th {
            border: none;
            border-top: 1px solid #303030
        }

    .post-body img[class*=attachment-], .post-body img[class*=wp-image-] {
        max-width: 100%;
        height: auto
    }

    .post-body .aligncenter {
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    .post-body .alignright {
        width: 50%;
        float: right;
        display: inline;
        margin-left: 8px
    }

    .post-body .alignleft {
        width: 50%;
        float: left;
        display: inline;
        margin-right: 8px
    }

    .post-body .clear {
        clear: both
    }

section {
    color: #fff
}

.section_left .m-rotated-title {
    margin-bottom: 24px
}

.swiper-controls {
    margin-top: 32px;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: flex-start
}

.swiper-controls_left .swiper-pagination-fraction {
    position: static;
    bottom: 0;
    font-family: Impact,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 1;
    letter-spacing: 0
}

.swiper-controls_right {
    margin-left: auto;
    display: flex;
    flex-flow: row nowrap;
    align-items: center
}

.swiper-button-next, .swiper-button-prev {
    position: static;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 0 0 8px;
    width: auto;
    height: auto;
    background-image: none;
    line-height: 0
}

.swiper-button-prev {
    transform: rotate(180deg)
}

.swiper-container-outer {
    padding: 0 8px
}

.swiper-slide-fix {
    width: 300px;
    padding: 8px
}

.js-viewport > * {
    transition: 1.2s cubic-bezier(.14,1,.34,1);
    transform: translate3d(-100px,0,0);
    backface-visibility: hidden;
    opacity: 0
}

.js-viewport.viewed > * {
    transform: translateZ(0);
    backface-visibility: hidden;
    opacity: 1
}

.js-viewport-children > * > * {
    transition: transform 1.2s cubic-bezier(.14,1,.34,1),opacity .4s cubic-bezier(.215,.61,.355,1);
    transform: translate3d(-100px,0,0);
    opacity: 0
}

.js-viewport-children > .viewed > * {
    transform: translateZ(0);
    opacity: 1
}

.wrapper.fixed {
    position: fixed;
    width: 100%;
    height: 100%
}

.l-accordion {
    width: 100%
}

.l-accordion_title {
    background-color: #000;
    margin-right: auto;
    margin-left: auto;
    padding: 29px 7%;
    display: flex;
    align-items: center;
    cursor: pointer
}

    .l-accordion_title:after, .l-accordion_title:before {
        content: " ";
        display: table
    }

    .l-accordion_title:after {
        clear: both
    }

.l-accordion_title_plus {
    margin-left: auto
}

.l-accordion_body {
    overflow: hidden;
    height: 0
}

.l-infographic {
    width: 100%;
    height: 100%;
    background-color: #262626;
    padding: 11.28472vh 0
}

.l-infographic_body {
    margin-top: 52px
}

.m-timeline {
    color: #fff
}

.m-timeline_item {
    flex-flow: row nowrap
}

.m-timeline_item, .m-timeline_left {
    display: flex;
    align-items: flex-start
}

.m-timeline_left {
    padding-right: 20px;
    flex: 0 1 19%;
    width: 19%;
    justify-content: flex-end;
    text-align: right;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1.3;
    letter-spacing: 0
}

.m-timeline_right {
    position: relative;
    flex: 0 1 81%;
    width: 81%;
    padding-left: 20px;
    padding-bottom: 40px
}

.m-timeline_right_description {
    margin-top: 8px
}

.m-timeline_right:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    left: -3px;
    top: 10px;
    background-color: #fff;
    border-radius: 50%
}

.m-timeline_right:after {
    content: "";
    position: absolute;
    top: 19px;
    bottom: -7px;
    left: 0;
    width: 1px;
    border-right: 1px solid hsla(0,0%,100%,.2)
}

.m-timeline_item:last-child .m-timeline_body {
    padding-bottom: 0
}

    .m-timeline_item:last-child .m-timeline_body:after {
        bottom: 0
    }

.m-accordion {
    width: 100%
}

.m-accordion_title {
    padding: 16px 10.66667px;
    display: flex;
    align-items: center;
    background-color: #d5d5d5;
    cursor: pointer
}

.m-accordion_title_plus {
    margin-left: auto
}

.m-accordion_body {
    overflow: hidden;
    height: 0
}

.m-accordion_body_inner {
    padding: 16px 10.66667px
}

.m-before-after {
    color: #fff
}

.m-before-after_item {
    display: flex;
    align-items: flex-start;
    flex-flow: row nowrap
}

.m-before-after_left {
    padding-right: 20px;
    flex: 0 1 19%;
    width: 19%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    text-align: right;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1.3;
    letter-spacing: 0
}

.m-before-after_right {
    position: relative;
    flex: 0 1 81%;
    width: 81%;
    padding-left: 20px;
    padding-bottom: 40px
}

.m-before-after_right_header .a-subtitle {
    color: #fff
}

.m-before-after_right_description {
    margin-top: 4px
}

    .m-before-after_right_description .a-body {
        margin-top: 8px
    }

.m-before-after_right:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    left: -3px;
    top: 5px;
    background-color: #fff;
    border-radius: 50%
}

.m-before-after_right:after {
    content: "";
    position: absolute;
    top: 14px;
    bottom: -7px;
    left: 0;
    width: 1px;
    border-right: 1px solid hsla(0,0%,100%,.2)
}

.m-before-after_item:last-child .m-before-after_right {
    padding-bottom: 0
}

    .m-before-after_item:last-child .m-before-after_right:after {
        bottom: 0
    }

.m-body-link {
    position: relative
}

    .m-body-link:after {
        content: "";
        border-bottom: 1px solid #878787;
        position: absolute;
        width: 100%;
        height: 1px;
        left: 0;
        bottom: 0;
        background-color: #fff
    }

    .m-body-link:hover:after {
        animation-name: scaleLeftIn-axis-X-origin-left-0-100;
        animation-duration: 1s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.14,1,.34,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

.m-button-share {
    overflow: hidden;
    position: relative;
    display: block;
    width: 100%;
    padding: 33px 20px;
    background-color: #b30606;
    color: #b30606;
    text-align: center;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

    .m-button-share .inner {
        z-index: 10;
        position: relative
    }

    .m-button-share .a-icon {
        color: #b30606;
        font-size: 1.26667rem;
        line-height: 1;
        letter-spacing: 0;
        margin-right: .5em;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
    }

    .m-button-share:before {
        transform: translateX(0)
    }

    .m-button-share:after, .m-button-share:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #fff
    }

    .m-button-share:after {
        transform: translateX(-100%)
    }

    .m-button-share:hover {
        border-color: #b30606
    }

        .m-button-share:hover .a-icon, .m-button-share:hover .inner {
            animation-name: color-b30606-to-fff;
            animation-duration: .6s;
            animation-delay: 0s;
            animation-timing-function: cubic-bezier(.215,.61,.355,1);
            animation-iteration-count: 1;
            animation-direction: normal;
            animation-fill-mode: both
        }

        .m-button-share:hover:before {
            animation-name: translateX-hover-1;
            animation-duration: .3s;
            animation-delay: 0s;
            animation-timing-function: cubic-bezier(.215,.61,.355,1);
            animation-iteration-count: 1;
            animation-direction: normal;
            animation-fill-mode: both
        }

        .m-button-share:hover:after {
            animation-name: translateX-hover-2;
            animation-duration: .3s;
            animation-delay: .3s;
            animation-timing-function: cubic-bezier(.215,.61,.355,1);
            animation-iteration-count: 1;
            animation-direction: normal;
            animation-fill-mode: both
        }

.m-buttons {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center
}

    .m-buttons .a-button {
        margin-top: 32px
    }

.m-card-sns {
    color: #fff
}

.m-card-sns, .m-card-sns_media {
    display: block;
    position: relative
}

.m-card-sns_media {
    overflow: hidden
}

.m-card-sns_media_img {
    position: relative;
    z-index: 2
}

    .m-card-sns_media_img figure {
        overflow: hidden;
        position: relative
    }

        .m-card-sns_media_img figure .img {
            width: auto;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%)
        }

.m-card-sns_media > .a-overlay {
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

.m-card-sns:hover .m-card-sns_media .a-overlay {
    background-color: rgba(0,0,0,.5) !important
}

.m-card-sns_body {
    z-index: 20;
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-end
}

.m-card-sns_title {
    word-break: break-all;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-weight: 700;
    font-size: 6.5rem;
    line-height: 1;
    letter-spacing: .05em
}

    .m-card-sns_title svg {
        width: 166.66667px;
        height: 174.66667px
    }

.m-card-sns_meta {
    margin-top: 30%;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.1rem;
    line-height: 1;
    letter-spacing: 0;
    color: #fff;
    text-align: center
}

.sm .m-card-sns_meta {
    margin-top: 20%
}

.m-card-sns_meta i {
    font-size: 1.9rem;
    line-height: 1;
    letter-spacing: 0
}

.m-card-sns_meta .name {
    margin-top: 16px;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.m-card {
    display: block;
    position: relative;
    background-color: #fff;
    color: #000
}

.m-card_cat {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    padding: 32px 17px;
    min-width: 76px;
    min-height: 76px;
    background-color: #ad1c19;
    text-align: center;
    color: #fff;
    font-size: 12.666666px;
    font-family: Impact,'Microsoft YaHei';
}

.m-card_thumbnail {
    position: relative
}

    .m-card_thumbnail img {
        width: 100%;
        height: auto
    }

    .m-card_thumbnail:after {
        content: "";
        opacity: 0;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,.2)
    }

.m-card:hover .m-card_thumbnail:after {
    opacity: 1
}

.m-card_body {
    padding: 32px
}

.m-card_body_header {
    overflow: hidden
}

.m-card_body_header_initial {
    margin-top: -.08em;
    margin-right: 16px;
    float: left;
    font-family: Impact,'Microsoft YaHei';
    font-size: 42px;
    line-height: 1.2;
    color: #000
}

.m-card_body_header_title > .a-heading {
    overflow: hidden;
    height: 3.684em;
    font-size: 12.66666px;
    font-weight: 700;
    line-height: 1.842;
    font-family: Impact,'Microsoft YaHei';
}

.m-card_body > .a-body {
    clear: both;
    margin-top: 8px;
    color: rgba(0,0,0,.6);
    line-height: 1.842
}

.m-card_date {
    margin-top: 16px;
    color: #b30606;
    font-weight: 100;
    font-size: 9.33333px;
    line-height: 1.3;
    font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    letter-spacing: 0
}

.m-card.career .m-card_cat {
    display: none
}

.m-career-job-description {
    padding-top: 4.34028vh;
    padding-bottom: 4.77431vh;
    color: #000
}

    .m-career-job-description .m-description_row {
        border-color: rgba(0,0,0,.1)
    }

    .m-career-job-description .m-description_title .a-body {
        color: #000
    }

    .m-career-job-description .m-description_body .a-body {
        color: rgba(0,0,0,.5)
    }

.m-career-link {
    position: relative
}

.m-career-link_subtitle .a-subtitle {
    color: #b30606
}

.m-career-link_title {
    margin-top: 17px
}

    .m-career-link_title .a-heading {
        color: #fff;
        line-height: 1.379310345
    }

    .m-career-link_title.black .a-heading {
        color: #000
    }

.m-career-link_button {
    margin-top: 21px;
    display: block
}

.m-career-link_inner {
    display: flex;
    align-items: flex-end;
    justify-content: center
}

.m-career-link_body {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 10%;
    text-align: center
}

.m-career-member-dialog {
    background-color: #b30606;
    color: #000
}

.m-career-member-dialog_scroll {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    max-height: 100vh
}

.m-career-member-dialog_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0;
    align-items: center
}

.m-career-member-dialog_left {
    width: 100%
}

.m-career-member-dialog_right {
    width: 100%
}

.m-career-member-dialog_thumbnail {
    position: relative
}

    .m-career-member-dialog_thumbnail figure {
        overflow: hidden;
        position: relative;
        height: 100%
    }

        .m-career-member-dialog_thumbnail figure .a-image_img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .m-career-member-dialog_thumbnail figure .a-image_img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.m-career-member-dialog_thumbnail figure .a-image_img {
    object-position: top
}

.m-career-member-dialog_body {
    padding: 6.51042vh 13.33333vw 10.85069vh;
    color: #fff
}

.m-career-member-dialog_type .a-subtitle {
    color: #fff
}

.m-career-member-dialog_name {
    margin-top: 1.30208vh;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-career-member-dialog_description {
    margin-top: 3.90625vh
}

    .m-career-member-dialog_description .a-body {
        color: #fff;
        font-family: Impact,'Microsoft YaHei';
    }

.m-career-member-dialog_title {
    margin-top: 6.51042vh
}

.m-career-member-dialog_cnt {
    margin-top: 1.95313vh
}

    .m-career-member-dialog_cnt .a-body {
        color: #fff
    }

.m-career-member {
    background-color: #fff;
    color: #000
}

.m-career-member_thumbnail {
    position: relative
}

    .m-career-member_thumbnail img {
        width: 100%;
        height: auto
    }

.m-career-member_body {
    padding-top: 2.17014vh;
    padding-bottom: 13.02083vh;
    padding-left: 5.33333vw
}

.m-career-member_type .a-subtitle {
    color: #000
}

.m-career-member_name {
    margin-top: 7px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-career-section-header {
    color: inherit;
    text-align: center
}

.m-career-section-header_title {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-career-section-header_title_ja {
    margin-top: 7px;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.m-career-section-header.white {
    color: #fff
}

.m-career-section-header.left {
    text-align: left
}

.m-career-section-image_body {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

    .m-career-section-image_body .a-heading.size2 {
        font-size: 3.33333rem;
        line-height: 1;
        letter-spacing: 0
    }

.m-checkbox-field_item {
    display: block;
    margin-bottom: 7.2vw
}

.m-checkbox-field_item_row {
    display: flex;
    align-items: center
}

.m-checkbox-field_item_label {
    line-height: 1;
    font-size: 13px;
    font-size: 3.46667vw;
    letter-spacing: 0
}

.m-checkbox-field_item_pic {
    width: 100%;
    margin-top: 2.4vw
}

.m-checkbox-field_accordion_button {
    cursor: pointer;
    position: relative;
    margin: auto;
    border-radius: 50%;
    background-color: #181818;
    width: 13.86667vw;
    height: 13.86667vw
}

    .m-checkbox-field_accordion_button:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        width: 7.2vw;
        border-top: 3px solid #929292
    }

    .m-checkbox-field_accordion_button:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 25%;
        width: 7.2vw;
        border-top: 3px solid #929292;
        transform: rotate(90deg)
    }

    .m-checkbox-field_accordion_button.open:before {
        content: "";
        left: 25%;
        width: 4vw;
        transform: rotate(-30deg)
    }

    .m-checkbox-field_accordion_button.open:after {
        content: "";
        left: 48%;
        width: 4vw;
        transform: rotate(30deg)
    }

.m-checkbox-field_accordion_body {
    height: 0;
    overflow: hidden
}

.m-chip {
    display: inline-flex;
    border-radius: 20px;
    border: 1px solid #d5d5d5;
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

.m-chip_inner {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    padding: 2px 16px
}

.m-chip.image .m-chip_inner {
    padding-left: 8px
}

.m-chip_thumbnail {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-left: 2px;
    width: 25px;
    color: #878787
}

    .m-chip_thumbnail .a-icon {
        font-size: 17px;
        line-height: 25px
    }

    .m-chip_thumbnail .a-lazy-image img {
        border-radius: 50%;
        width: 100%;
        height: auto
    }

.m-chip_body .a-label {
    line-height: 25px !important
}

.m-circle-point-item {
    text-align: center
}

.m-circle-point-item_client {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    width: 216.66667px;
    height: 216.66667px;
    margin: 0 auto;
    border-radius: 50%;
    background-color: hsla(0,0%,100%,.05);
    border: 1px solid #333;
    text-align: center
}

    .m-circle-point-item_client .a-heading {
        margin-top: 16px
    }

.m-cta {
    padding: 42px 0;
    display: block;
    background-color: #640000;
    color: #fff;
    text-align: center;
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

    .m-cta:hover {
        background-color: #b30606
    }

.m-cta_title {
    margin-top: 8px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 3.33333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-cta_body {
    margin-top: 16px
}

    .m-cta_body .a-body {
        color: #fff
    }

.m-data {
    border-top: 1px solid #acacac;
    border-bottom: 1px solid #acacac;
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    padding: 32px 0
}

.m-data_title {
    flex: 1
}

.m-data_body {
    margin-left: 16px;
    flex: 3
}

.m-description_row {
    padding: 29px 0;
    border-bottom: 1px solid hsla(0,0%,100%,.1);
    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-flow: row nowrap
}

.m-description_title {
    flex: 1
}

    .m-description_title .a-body {
        color: #fff;
        font-weight: 500
    }

.m-description_body {
    margin-left: 16px;
    flex: 3;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: -.05em
}

.m-description.sm .m-description_row {
    padding: 15px 0
}

.m-description2_row {
    padding: 29px 0;
    border-bottom: 1px solid hsla(0,0%,100%,.1);
    width: 100%;
    display: flex;
    align-items: flex-end;
    flex-flow: row nowrap
}

.m-description2_title {
    flex: 1
}

.m-description2_body {
    margin-left: 16px;
    flex: 1;
    font-family: Impact,'Microsoft YaHei';
    font-size: 4rem;
    line-height: 1;
    letter-spacing: -.05em
}

    .m-description2_body span {
        font-size: 1.86667rem;
        line-height: 1;
        letter-spacing: 0
    }

.m-no-description_row {
    padding: 29px 0;
    border-bottom: 1px solid hsla(0,0%,100%,.1);
    width: 100%;
    display: flex;
    align-items: center;
    flex-flow: row nowrap
}

.m-no-description_title {
    flex: 1
}

.m-no-description_body {
    margin-left: 16px;
    flex: 10
}

.m-no-description_body_body {
    margin-top: 4px
}

.m-document-link {
    position: fixed;
    z-index: 500;
    bottom: 0;
    width: 100%;
    height: 18.66667vw
}

    .m-document-link a {
        display: block;
        position: relative;
        height: 100%;
        background-color: #630000;
        color: #fff;
        font-size: 4.26667vw;
        font-weight: 600
    }

        .m-document-link a .sm {
            position: absolute;
            height: 17.6vw;
            top: -.1px;
            right: 10.13333vw
        }

            .m-document-link a .sm svg {
                height: 100%
            }

        .m-document-link a:hover {
            background-color: #640000;
            color: #fff
        }

            .m-document-link a:hover .cls-1, .m-document-link a:hover .cls-2, .m-document-link a:hover .cls-3, .m-document-link a:hover .cls-4 {
                stroke: #fff
            }

.m-feature {
    width: 100%
}

.m-feature_thumbnail {
    flex: 1
}

.m-feature_body {
    margin-top: 16px
}

.m-feature_body_inner > .a-body {
    margin-top: 8px
}

.m-feature.column .m-feature_body {
    flex-direction: column;
    margin: 16px 10.66667px
}

.m-field-error {
    display: block;
    opacity: 1
}

    .m-field-error > .a-body {
        color: #cb251e
    }

.m-filter-body {
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.m-filter-body_item {
    padding-top: 29px;
    padding-bottom: 29px;
    color: hsla(0,0%,100%,.5);
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

    .m-filter-body_item.active, .m-filter-body_item:hover {
        color: #fff
    }

    .m-filter-body_item:before {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        border-top: 1px solid hsla(0,0%,100%,.1)
    }

.m-filter-body_item_inner {
    padding-top: 29px;
    padding-bottom: 29px
}

.m-filter-header {
    color: hsla(0,0%,100%,.5);
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.m-filter-header_title {
    color: #fff
}

.m-hamburger-button {
    z-index: 5000;
    position: fixed;
    top: 0;
    right: 0;
    padding: 24px 0;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center
}

    .m-hamburger-button.open {
        pointer-events: auto
    }

    .m-hamburger-button .inner {
        display: flex;
        flex-direction: column;
        align-content: center
    }

    .m-hamburger-button .a-icon-label {
        margin-top: 1em;
        text-align: center
    }

.m-icon-title-body_icon {
    text-align: center
}

.m-icon-title-body_title {
    margin-top: 16px;
    text-align: center
}

.m-icon-title-body_body {
    margin-top: 8px
}

.m-image-description_title {
    margin-top: 16px
}

.m-image-link {
    overflow: hidden;
    position: relative;
    display: block
}

.m-image-link_bg {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

    .m-image-link_bg:after, .m-image-link_bg:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,.6)
    }

    .m-image-link_bg:before {
        transform: translateX(0)
    }

    .m-image-link_bg:after {
        transform: translateX(-100%)
    }

.m-image-link:hover .m-image-link_bg:before {
    animation-name: translateX-hover-1;
    animation-duration: .3s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

.m-image-link:hover .m-image-link_bg:after {
    animation-name: translateX-hover-2;
    animation-duration: .3s;
    animation-delay: .2s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

.m-image-link_body {
    z-index: 10;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: flex-end;
    color: #fff
}

.m-image-link_body_inner {
    padding: 7.5% 8%
}

.m-image-link_body_subline .a-subtitle {
    color: hsla(0,0%,100%,.5)
}

.m-image-link_body_title {
    margin-top: 12px
}

.m-image-link_body_subtitle {
    margin-top: 4px
}

.m-image-link_body .a-body {
    margin-top: 18px
}

.m-input-field {
    width: 100%
}

.m-input-field_label {
    display: none
}

    .m-input-field_label .a-body {
        color: #fff
    }

.is-confirm .m-input-field_label {
    display: block;
    flex: 3
}

.m-input-field_input {
    flex: 1
}

.is-confirm .m-input-field_input {
    margin-top: 8px
}

.is-confirm .m-input-field {
    padding: 32px 0;
    display: flex;
    flex-flow: column wrap;
    border-bottom: 1px solid hsla(0,0%,100%,.1)
}

    .is-confirm .m-input-field input {
        padding: 0;
        border: none;
        background-color: transparent;
        -webkit-box-shadow: 0 0 0 1000px transparent inset !important
    }

        .is-confirm .m-input-field input::placeholder {
            color: transparent
        }

        .is-confirm .m-input-field input::-webkit-input-placeholder {
            color: transparent
        }

        .is-confirm .m-input-field input:-moz-placeholder, .is-confirm .m-input-field input::-moz-placeholder {
            opacity: 1;
            color: transparent
        }

        .is-confirm .m-input-field input:-ms-input-placeholder {
            color: transparent
        }

    .is-confirm .m-input-field.white {
        border-bottom: 1px solid rgba(0,0,0,.1)
    }

        .is-confirm .m-input-field.white .a-body {
            color: #000
        }

.m-introduction-item {
    text-align: center
}

.m-introduction-item_client {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    width: 216.66667px;
    height: 216.66667px;
    margin: 0 auto;
    border-radius: 50%;
    background-color: hsla(0,0%,100%,.01);
    border: 1px solid #333;
    text-align: center
}

    .m-introduction-item_client .a-heading {
        margin-top: 16px
    }

.m-introduction-item_arrow {
    margin-top: -35px;
    text-align: center
}

    .m-introduction-item_arrow svg {
        width: 5px;
        height: 70.66667px
    }

.m-introduction-item_allin {
    margin-top: 21px
}

    .m-introduction-item_allin .a-heading {
        margin-top: 8px;
        padding-bottom: 2px;
        display: inline;
        box-shadow: inset -3px -5px 0 -3px #fff;
        transition: .3s ease;
        display: inline-block
    }

        .m-introduction-item_allin .a-heading:hover {
            box-shadow: inset -3px -3px 0 -3px #fff
        }

.m-kv-career-logo {
    z-index: 300;
    width: 132.66667px;
    height: 15px;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 44.66667px;
    opacity: 0;
    transform: translateY(200%);
    transition: transform 1s cubic-bezier(.85,.01,.26,1.01),opacity 1s cubic-bezier(.85,.01,.26,1.01);
    transition-delay: .3s
}

    .m-kv-career-logo svg {
        width: 132.66667px;
        height: 15px
    }

    .m-kv-career-logo.sm {
        width: 108px;
        height: 12px
    }

        .m-kv-career-logo.sm svg {
            width: 108px;
            height: 12px
        }

.show .m-kv-career-logo {
    opacity: 1;
    transform: translate(0)
}

.m-label-link {
    display: inline-block
}

    .m-label-link .a-label {
        position: relative;
        color: #fff;
        opacity: .5;
        font-family: Impact,'Microsoft YaHei';
        font-size: 1.26667rem;
        line-height: 1.6;
        letter-spacing: 0;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
    }

    .m-label-link:hover .a-label {
        opacity: 1
    }

.m-labeled-icon {
    display: inline-flex;
    align-items: center;
    flex-flow: row nowrap;
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

.m-labeled-icon_icon {
    margin-right: 8px
}

    .m-labeled-icon_icon.white svg * {
        fill: #000;
        stroke: #000
    }

.m-labeled-icon_label {
    font-family: Impact,'Microsoft YaHei';
}

.m-labeled-icon:hover {
    opacity: .8
}

.m-member_thumbnail {
    position: relative
}

    .m-member_thumbnail img {
        width: 100%;
        height: auto
    }

.m-member_name {
    margin-top: 8px;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-member_body {
    margin-top: 32px
}

.m-more-button {
    display: inline-flex;
    flex-flow: row nowrap;
    align-items: center;
    position: relative
}

.m-more-button_label {
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 1.6;
    letter-spacing: 0;
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
}

.m-more-button.ja .m-more-button_label {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1.6;
    letter-spacing: 0
}

.m-more-button > .a-arrow {
    margin-left: 11px
}

.m-no-title-body_no {
    font-family: Impact,'Microsoft YaHei';
    font-size: 4.33333rem;
    line-height: 1.30769;
    letter-spacing: -.025em;
    border-bottom: 3px solid #000
}

.m-no-title-body_title {
    margin-top: 8px
}

    .m-no-title-body_title .a-heading.ja.size2 {
        color: #000
    }

.m-no-title-body_body {
    margin-top: 16px
}

    .m-no-title-body_body .a-body {
        color: rgba(0,0,0,.5)
    }

.m-page-heading_above {
    margin-top: 16px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.83333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-page-heading_below {
    margin-top: 11px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0;
    color: hsla(0,0%,100%,.5)
}

.a-page-title {
    display: flex;
    align-items: center;
    top: 2px;
    word-break: break-all;
    font-family: Impact,'Microsoft YaHei';
    color: #000;
    font-size: 3rem;
    line-height: 1.41667;
    letter-spacing: .1em
}

    .a-page-title.alpha {
        font-size: 4rem;
        line-height: 1.0625;
        letter-spacing: .1em
    }

    .a-page-title span {
        margin-right: .1em;
        font-size: 6rem;
        line-height: 1;
        letter-spacing: .1em
    }

.m-plan-table_plans {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -5px;
    margin-right: -5px
}

.m-plan-table_plans_col {
    padding-left: 5px;
    padding-right: 5px;
    flex: 0 1 33.33333%;
    max-width: 33.33333%;
    align-items: flex-end
}

    .m-plan-table_plans_col:first-child {
        display: none
    }

.m-plan-table_plans_ribbon {
    margin-bottom: 8px;
    min-height: 1em;
    font-family: Impact,'Microsoft YaHei';
    color: #e93425;
    text-align: center;
    font-size: .93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-plan-table_plan {
    padding: 8px 0;
    font-size: 1.4rem;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    color: #fff;
    background-color: #a22319
}

    .m-plan-table_plan.active {
        background-color: #e93425
    }

    .m-plan-table_plan.none {
        background-color: transparent
    }

    .m-plan-table_plan .sm {
        margin-top: .6em;
        display: block;
        font-size: 81.25%
    }

.m-plan-table_name .a-body {
    color: #fff;
    font-weight: 500
}

.m-plan-table_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -5px;
    margin-right: -5px;
    border-bottom: 1px solid hsla(0,0%,88.6%,.2)
}

.m-plan-table_name {
    text-align: left
}

.m-plan-table_col {
    padding: 1.5em 5px;
    flex: 0 1 33.33333%;
    max-width: 33.33333%;
    display: flex;
    align-items: center;
    justify-content: center
}

    .m-plan-table_col:first-child {
        justify-content: center;
        padding-left: 5px;
        padding-right: 5px;
        flex: 0 1 100%;
        max-width: 100%
    }

.m-rotated-title {
    display: flex;
    flex-flow: row nowrap;
    color: hsla(0,0%,100%,.5)
}

.m-rotated-title_no {
    display: flex;
    align-items: center;
    justify-content: center
}

    .m-rotated-title_no:after {
        content: "";
        margin-top: -1px;
        margin-left: 11px;
        margin-right: 10px;
        width: 73px;
        height: 1px;
        border-bottom: 1px solid hsla(0,0%,100%,.3)
    }

.m-kv-scroll {
    display: flex;
    flex-flow: row nowrap;
    align-items: center
}

.m-kv-scroll_icon {
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(180deg);
    transform-origin: 50% 50%
}

.m-kv-scroll_txt {
    margin-top: -2px;
    margin-left: 16px;
    font-family: Impact,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 3.57143;
    letter-spacing: 0;
    color: #fff
}

.m-section-header {
    position: relative;
    text-align: left;
    color: #fff
}

    .m-section-header .m-rotated-title {
        margin-bottom: 22px
    }

.m-section-header_title .a-heading {
    color: #fff;
    line-height: 1
}

.m-section-header_below {
    margin-top: 26px
}

    .m-section-header_below > .a-subtitle {
        opacity: 1;
        color: hsla(0,0%,100%,.5)
    }

        .m-section-header_below > .a-subtitle span {
            color: #fff
        }

.m-section-header_description {
    margin-top: 8px
}

.m-section-title {
    padding: 70px 16px 50px;
    text-align: center;
    color: #000;
    font-family: Impact,'Microsoft YaHei';
    font-size: 3.33333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-select-field_label {
    display: none
}

    .m-select-field_label .a-body {
        color: #fff
    }

.is-confirm .m-select-field_label {
    display: block;
    flex: 3
}

.m-select-field_select {
    position: relative;
    flex: 1
}

.is-confirm .m-select-field_select {
    margin-top: 8px
}

.m-select-field_select .a-select {
    padding-right: 3em
}

.m-select-field_select .arrow {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%)
}

    .m-select-field_select .arrow:after, .m-select-field_select .arrow:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 6px;
        height: 6px;
        content: "";
        transform: translateY(-50%) rotate(45deg);
        transform-origin: 50% 50%;
        text-indent: 0;
        vertical-align: 3px;
        border-right: 1px solid hsla(0,0%,100%,.95);
        border-bottom: 1px solid hsla(0,0%,100%,.95)
    }

    .m-select-field_select .arrow:after {
        transform: translateY(-50%) rotate(45deg)
    }

    .m-select-field_select .arrow.white:after, .m-select-field_select .arrow.white:before {
        border-color: rgba(0,0,0,.5)
    }

.is-confirm .m-select-field {
    padding: 32px 0;
    display: flex;
    flex-flow: column wrap;
    border-bottom: 1px solid hsla(0,0%,100%,.1)
}

    .is-confirm .m-select-field .a-select {
        padding: 0;
        border: none;
        background-color: transparent;
        -webkit-box-shadow: 0 0 0 1000px transparent inset !important
    }

    .is-confirm .m-select-field .arrow {
        display: none
    }

    .is-confirm .m-select-field.white {
        border-bottom: 1px solid rgba(0,0,0,.1)
    }

        .is-confirm .m-select-field.white .a-body {
            color: #000
        }

.m-service-image {
    overflow: hidden;
    position: relative;
    display: block
}

.m-service-image_bg {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    animation-name: translate-right-in-axis-X-origin-right--100-0;
    animation-duration: .2s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes translate-right-in-axis-X-origin-right--100-0 {
    0% {
        transform: translateX(-100%);
        transform-origin: right
    }

    to {
        transform: translateX(0);
        transform-origin: right
    }
}

.m-service-image_body {
    z-index: 10;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center
}

.m-service-image_body_inner {
    padding: 7.5% 8%
}

.m-service-image_body_no {
    margin-left: -.1em;
    font-family: Impact,'Microsoft YaHei';
    font-size: 20rem;
    line-height: 1;
    letter-spacing: -.1em
}

.m-service-image_body_title {
    margin-top: 8px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 5.33333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-service-image_body_subtitle {
    margin-top: 19px;
    color: hsla(0,0%,100%,.5)
}

    .m-service-image_body_subtitle span {
        color: #fff
    }

.m-staylowkey-bg svg {
    width: 100%;
    height: auto;
    fill: hsla(0,0%,100%,.02)
}

.m-step_inner {
    margin: 0 20px;
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    border-bottom: 1px solid #303030
}

.m-step_item {
    color: hsla(0,0%,100%,.5);
    font-size: 1rem;
    line-height: 1;
    letter-spacing: 0
}

.m-step_item_circle {
    margin-top: 24px;
    position: relative
}

    .m-step_item_circle:before {
        z-index: 2;
        background-color: #fff;
        width: 9.33333px;
        height: 9.33333px
    }

    .m-step_item_circle:after, .m-step_item_circle:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        display: block;
        border-radius: 50%
    }

    .m-step_item_circle:after {
        background-color: #181818;
        width: 24px;
        height: 24px
    }

.m-step_item.current .m-step_item_circle:after {
    background-color: #303030
}

.m-step.white .m-step_item {
    color: #000
}

.m-step.white .m-step_inner {
    border-color: rgba(0,0,0,.1)
}

.m-step.white .m-step_item.current .m-step_item_circle:after {
    background-color: #f4dada
}

.m-step.white .m-step_item_circle:before {
    background-color: #b30606
}

.m-step.white .m-step_item_circle:after {
    background-color: #fff
}

.o-submenu-desktop {
    display: none
}

.o-submenu-header {
    display: none
}

.o-submenu {
    overflow: hidden;
    width: 100%;
    height: 0;
    pointer-events: none;
    transition: .6s cubic-bezier(.14,1,.34,1)
}

    .o-submenu.show {
        pointer-events: auto
    }

.o-submenu_inner {
    padding: 16px 0;
    display: flex;
    flex-flow: column nowrap;
    text-align: center
}

.o-submenu_item {
    position: relative;
    display: inline-block;
    margin: 7px 16px;
    text-align: left;
    text-indent: 2em;
    color: #fff;
    opacity: 0;
    transform: translateY(50px)
}

    .o-submenu_item .a-body {
        font-family: Impact,'Microsoft YaHei';
        color: #fff;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        font-size: 3.33333rem;
        line-height: 1;
        letter-spacing: -.01em;
        font-size: 4.3vh
    }

    .o-submenu_item:hover .a-body {
        color: #b30606
    }

.o-submenu.show .o-submenu_item {
    transform: translateY(0);
    opacity: 1
}

    .o-submenu.show .o-submenu_item:first-child {
        transition: .8s cubic-bezier(.215,.61,.355,1) .05s
    }

    .o-submenu.show .o-submenu_item:nth-child(2) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .1s
    }

    .o-submenu.show .o-submenu_item:nth-child(3) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .15s
    }

    .o-submenu.show .o-submenu_item:nth-child(4) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .2s
    }

    .o-submenu.show .o-submenu_item:nth-child(5) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .25s
    }

    .o-submenu.show .o-submenu_item:nth-child(6) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .3s
    }

    .o-submenu.show .o-submenu_item:nth-child(7) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .35s
    }

    .o-submenu.show .o-submenu_item:nth-child(8) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .4s
    }

    .o-submenu.show .o-submenu_item:nth-child(9) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .45s
    }

    .o-submenu.show .o-submenu_item:nth-child(10) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .5s
    }

    .o-submenu.show .o-submenu_item:nth-child(11) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .55s
    }

    .o-submenu.show .o-submenu_item:nth-child(12) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .6s
    }

    .o-submenu.show .o-submenu_item:nth-child(13) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .65s
    }

    .o-submenu.show .o-submenu_item:nth-child(14) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .7s
    }

    .o-submenu.show .o-submenu_item:nth-child(15) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .75s
    }

    .o-submenu.show .o-submenu_item:nth-child(16) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .8s
    }

    .o-submenu.show .o-submenu_item:nth-child(17) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .85s
    }

    .o-submenu.show .o-submenu_item:nth-child(18) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .9s
    }

    .o-submenu.show .o-submenu_item:nth-child(19) {
        transition: .8s cubic-bezier(.215,.61,.355,1) .95s
    }

    .o-submenu.show .o-submenu_item:nth-child(20) {
        transition: .8s cubic-bezier(.215,.61,.355,1) 1s
    }

.m-switch-field {
    width: 100%
}

.m-switch-field_label {
    display: none
}

    .m-switch-field_label .a-body {
        color: #fff
    }

.is-confirm .m-switch-field_label {
    display: block;
    flex: 3
}

.m-switch-field_list {
    display: flex;
    align-items: center;
    flex-flow: row wrap
}

.is-confirm .m-switch-field_list {
    flex: 7
}

.m-switch-field_item {
    margin-right: 16px;
    display: flex;
    align-items: center;
    flex-flow: row nowrap
}

.m-switch-field_item_label {
    margin-left: 8px
}

.is-confirm .m-switch-field_item_label {
    margin-left: 0
}

.is-confirm .m-switch-field_item {
    display: none !important
}

    .is-confirm .m-switch-field_item.checked {
        display: block !important;
        margin-left: 0
    }

        .is-confirm .m-switch-field_item.checked .a-switch {
            display: none
        }

.is-confirm .m-switch-field {
    padding: 32px 0;
    display: flex;
    flex-flow: column wrap;
    border-top: 1px solid hsla(0,0%,100%,.1)
}

    .is-confirm .m-switch-field.white {
        border-bottom: 1px solid rgba(0,0,0,.1)
    }

        .is-confirm .m-switch-field.white .a-body {
            color: #000
        }

.m-textarea-field {
    width: 100%
}

.m-textarea-field_label {
    display: none
}

    .m-textarea-field_label .a-body {
        color: #fff
    }

.is-confirm .m-textarea-field_label {
    display: block;
    flex: 3
}

.is-confirm .m-textarea-field_input {
    margin-top: 8px
}

.is-confirm .m-textarea-field {
    padding: 32px 0;
    display: flex;
    flex-flow: column wrap;
    border-bottom: 1px solid hsla(0,0%,100%,.1)
}

    .is-confirm .m-textarea-field textarea {
        padding: 0;
        border: none;
        background-color: transparent;
        -webkit-box-shadow: 0 0 0 1000px transparent inset !important
    }

    .is-confirm .m-textarea-field.white {
        border-bottom: 1px solid rgba(0,0,0,.1)
    }

        .is-confirm .m-textarea-field.white .a-body {
            color: #000
        }

.m-title-body {
    padding-top: 81.33333px;
    padding-bottom: 81.33333px
}

.m-title-body_subtitle .a-subtitle {
    color: #fff
}

.m-title-body_title {
    margin-top: 27px
}

    .m-title-body_title .a-heading.ja.size2 {
        color: #fff
    }

.m-title-body_body {
    margin-top: 24px
}

    .m-title-body_body .a-body {
        color: #fff
    }

.m-title-body_button {
    margin-top: 42px;
    display: block
}

.m-title-body.red {
    background-color: #b30606
}

.m-title-body.gray {
    background-color: #262626
}

.m-title-body.white {
    background-color: #fff
}

    .m-title-body.white .m-title-body_body .a-body, .m-title-body.white .m-title-body_subtitle .a-subtitle, .m-title-body.white .m-title-body_title .a-heading {
        color: #000
    }

.m-title-header_title {
    text-align: center;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-title-header_subtitle {
    margin-top: 10px;
    text-align: center;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.m-value-list {
    width: 100%
}

.m-value-list_item {
    padding: 21px 8px;
    width: 100%;
    border-bottom: 1px solid hsla(0,0%,100%,.1);
    display: flex;
    flex-flow: row nowrap;
    align-items: center
}

    .m-value-list_item .a-subtitle {
        color: hsla(0,0%,100%,.5)
    }

.m-value-list_item_title {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-value-list_item .a-body {
    margin-top: 8px
}

.m-value-list_item_left {
    flex: 1
}

.m-value-list_item_right {
    flex: 8
}

.m-work {
    padding-bottom: 20px;
    display: block;
    position: relative;
    color: #fff;
    border-bottom: 1px solid hsla(0,0%,100%,.1)
}

.m-work_thumbnail {
    position: relative
}

    .m-work_thumbnail img {
        width: 100%;
        height: auto
    }

    .m-work_thumbnail:after {
        content: "";
        opacity: 0;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,.2)
    }

.m-work:hover .m-work_thumbnail:after {
    opacity: 1
}

.m-work_date {
    margin-top: 18px
}

.m-work_title {
    margin-top: 14px
}

.m-work_cat {
    margin-top: 16px
}

.o-about {
    background-color: #181818
}

.o-about_left {
    z-index: 10;
    position: relative;
    padding-top: 66.66666px;
    padding-bottom: 0;
    padding-right: 10%
}

.o-about_image {
    background-color: #181818
}

    .o-about_image figure {
        height: 0;
        padding-bottom: 33.33333%
    }

.o-about_body {
    padding-top: calc(30% + 90px);
    padding-bottom: 100px;
    height: 100%;
    background-color: #640000
}

    .o-about_body .a-lead {
        margin-top: 27px
    }

.o-about_body_title .a-heading {
    margin-top: 37px
}

.o-about_body .a-body {
    margin-top: 16px
}

.o-about_body .a-button {
    margin-top: 67px
}

.o-archive {
    background-color: #181818;
    padding-bottom: 64px
}

.o-archive_row {
    margin-top: 16px
}

.o-archive_item {
    margin-top: 30px;
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 100%;
    max-width: 100%
}

.o-button-share-group {
    margin-top: 80px
}

.o-button-share-group_col {
    margin-top: 5px
}

.o-cards > .row {
    margin-top: -7%
}

.o-cards > .m-card {
    margin-top: 16px
}

.o-cards_item {
    margin-top: 7%
}

.o-career-advantage {
    padding-top: 82.66667px;
    padding-bottom: 73.33333px;
    background-color: #b30606
}

.o-career-advantage_header {
    color: #fff;
    text-align: center
}

.o-career-advantage_header_title {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-advantage_header_title_ja {
    margin-top: 4px;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-advantage_copy {
    margin-top: 57px;
    position: relative;
    text-align: center;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 2.66667rem;
    line-height: 1;
    letter-spacing: -.025em
}

.o-career-advantage_copy_bg {
    position: absolute;
    top: -26px;
    left: 0;
    width: 100%;
    text-align: center
}

    .o-career-advantage_copy_bg img {
        width: 100.33333px;
        height: auto
    }

.o-career-advantage_body {
    margin-top: 64px;
    text-align: left
}

    .o-career-advantage_body .a-body {
        color: #fff;
        line-height: 70/38;
        font-weight: 500
    }

.o-career-ceo-message_cnt {
    padding-top: 81.33333px;
    padding-bottom: 81.33333px;
    background-color: #fff;
    color: #000
}

.o-career-ceo-message_subtitle .a-subtitle {
    color: #000
}

.o-career-ceo-message_title {
    margin-top: 27px
}

.o-career-ceo-message .js-horizontal-swiper {
    overflow: hidden
}

.o-career-ceo-message .swiper-controls {
    display: none
}

.o-career-ceo-message .a-body {
    margin-top: 26px;
    color: #000
}

.o-career-chart-age {
    color: #fff
}

.o-career-chart-age_right {
    margin-top: 32px
}

.o-career-chart-age_age {
    margin-right: 7.64444vw;
    color: #b30606;
    font-family: Impact,'Microsoft YaHei';
    font-size: 20.44444vw;
    letter-spacing: -.025em
}

.o-career-chart-age_unit {
    margin-top: -8px;
    color: #b30606;
    font-family: Impact,'Microsoft YaHei';
    font-size: 3rem;
    line-height: 1;
    letter-spacing: -.025em
}

.o-career-chart-age svg .name {
    font-size: 1.4rem;
    line-height: 1;
    letter-spacing: -.025em
}

.o-career-chart-age svg .name, .o-career-chart-atmos {
    font-family: Impact,'Microsoft YaHei';
}

.o-career-chart-atmos_row {
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-end;
    justify-content: center
}

.o-career-chart-atmos_item {
    text-align: center;
    z-index: 10;
    position: relative
}

    .o-career-chart-atmos_item:nth-child(2) {
        margin-left: -40px;
        z-index: 20;
        position: relative
    }

    .o-career-chart-atmos_item:nth-child(3) {
        margin-left: -40px;
        z-index: 30;
        position: relative
    }

    .o-career-chart-atmos_item:nth-child(4) {
        margin-left: -40px;
        z-index: 40;
        position: relative
    }

.o-career-chart-atmos_ja {
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1;
    letter-spacing: 0;
    opacity: 0
}

.viewed .o-career-chart-atmos_ja {
    transition: 1.2s ease .5s;
    opacity: 1
}

.o-career-chart-atmos_per {
    margin-top: 4px;
    color: #b30606;
    font-size: 3.33333rem;
    line-height: 1;
    letter-spacing: -.025em;
    opacity: 0
}

    .o-career-chart-atmos_per .sm {
        font-size: 50%
    }

.viewed .o-career-chart-atmos_per {
    transition: 1.2s ease .5s;
    opacity: 1
}

.o-career-chart-atmos_angle {
    margin-top: 30px
}

    .o-career-chart-atmos_angle svg {
        width: 82.5px;
        height: 71.5px;
        transform: scaleY(0);
        transform-origin: 0 100%
    }

        .o-career-chart-atmos_angle svg * {
            opacity: .8;
            fill: #a82020;
            fill-rule: evenodd
        }

.viewed .o-career-chart-atmos_angle svg {
    transition: 1.2s cubic-bezier(.215,.61,.355,1) .2s;
    transform: scaleY(1)
}

.o-career-chart-atmos_angle.no02 svg {
    transition-delay: .3s;
    width: 113px;
    height: 98px
}

    .o-career-chart-atmos_angle.no02 svg * {
        opacity: .5
    }

.o-career-chart-atmos_angle.no03 svg {
    transition-delay: .4s;
    width: 82.5px;
    height: 71.5px
}

    .o-career-chart-atmos_angle.no03 svg * {
        fill: #d72d2d;
        opacity: 1
    }

.o-career-chart-atmos_angle.no04 svg {
    transition-delay: .5s;
    width: 131px;
    height: 113px
}

    .o-career-chart-atmos_angle.no04 svg * {
        fill: #9a1717;
        opacity: .5
    }

.o-career-chart-birth_row {
    margin-top: 7px;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0
}

    .o-career-chart-birth_row.red {
        color: #b30606;
        font-size: 2.26667rem;
        line-height: 1;
        letter-spacing: 0
    }

.o-career-chart-birth_sep {
    padding: 0 5.33333vw;
    flex: 1
}

    .o-career-chart-birth_sep p {
        border-bottom: 2px solid #5d5d5d
    }

.o-career-chart-birth_per {
    margin-left: auto;
    min-width: 40px;
    letter-spacing: -.025em;
    text-align: left
}

    .o-career-chart-birth_per .sm {
        font-size: 50%
    }

.o-career-chart-gender {
    color: #fff
}

.o-career-chart-gender_left {
    text-align: center
}

    .o-career-chart-gender_left svg {
        margin: 0 auto;
        max-width: 210px;
        width: 100%
    }

.o-career-chart-gender_right {
    margin-top: 32px
}

.o-career-chart-gender_gender {
    display: flex;
    align-items: center;
    text-align: left
}

    .o-career-chart-gender_gender:last-child {
        margin-top: 32px
    }

.o-career-chart-gender_meta {
    width: 11em
}

.o-career-chart-gender_per {
    font-family: Impact,'Microsoft YaHei';
    font-size: 6rem;
    line-height: 1;
    letter-spacing: -.025em
}

    .o-career-chart-gender_per.red {
        color: #b30606
    }

    .o-career-chart-gender_per .sm {
        font-size: 50%
    }

.o-career-chart-gender_en {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: -.025em
}

.o-career-chart-gender_ja {
    margin-top: 8px;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-chart-gender_legend {
    margin-top: 8px;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0
}

    .o-career-chart-gender_legend.red {
        color: #b30606
    }

.o-career-chart-holidays {
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
}

.o-career-chart-holidays_inner {
    display: flex;
    flex-flow: column nowrap;
    align-items: center
}

.o-career-chart-holidays_body {
    color: #b30606;
    font-size: 20vw;
    letter-spacing: -.025em
}

.o-career-chart-holidays_num {
    font-size: 20vw;
    letter-spacing: -.025em
}

.o-career-chart-holidays_unit {
    font-size: 30%
}

.o-career-chart-holidays_name {
    font-size: 6.66667vw;
    letter-spacing: -.025em
}

.o-career-chart-sales_inner {
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start
}

.o-career-chart-sales_svg {
    flex: 1 1 auto;
    width: 1%
}

.o-career-chart-sales_right {
    width: 1em
}

.o-career-chart-sales_text {
    transform-origin: 50% 50%;
    transform: rotate(90deg) translateY(20px);
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 3.7rem;
    line-height: 1;
    letter-spacing: -.05em;
    opacity: 0;
    transition: 1.2s ease .5s
}

.viewed .o-career-chart-sales_text {
    opacity: 1
}

.o-career-chart-sales svg {
    width: 100%;
    height: 250px
}

.o-career-chart-sales .area {
    fill: rgba(255,0,0,.3)
}

.o-career-chart-sales .axis-x .domain {
    stroke: transparent
}

.o-career-chart-sales .axis-x line, .o-career-chart-sales .axis-x path {
    stroke: hsla(0,0%,100%,.01)
}

.o-career-chart-sales .axis-x .tick text {
    color: #b30606;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-chart-sales .axis-y .domain {
    stroke: transparent
}

.o-career-chart-sales .axis-y line, .o-career-chart-sales .axis-y path {
    stroke: hsla(0,0%,100%,.01)
}

.o-career-chart-sales .axis-y .tick text {
    fill: #fff;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-chart-sales .axis-y .tick .unit {
    font-size: .93333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-chart-time_row {
    width: 100%;
    padding-left: 10%;
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.o-career-chart-time_fromto {
    font-size: 1.3rem;
    text-align: left;
    width: 15%
}

.o-career-chart-time_hours_to {
    letter-spacing: .07em
}

.o-career-company-system {
    padding-top: 73.33333px;
    padding-bottom: 83.33333px;
    background-color: #fff
}

.o-career-company-system_row {
    margin-top: 6.51042vh
}

.o-career-company-system_col {
    margin-top: 4.34028vh
}

.o-career-concept {
    padding-top: 73.33333px;
    padding-bottom: 83.33333px;
    background-color: #fff
}

    .o-career-concept .m-rotated-title .a-subtitle {
        color: rgba(0,0,0,.5)
    }

.o-career-concept_right {
    margin-top: 42px
}

.o-career-concept .m-section-header .a-heading {
    color: #000
}

.o-career-concept .m-section-header .a-subtitle {
    color: rgba(0,0,0,.5)
}

    .o-career-concept .m-section-header .a-subtitle span {
        color: #000
    }

.o-career-concept_body {
    margin-top: 16px
}

.o-career-entry {
    padding-bottom: 8.68056vh;
    background-color: #fff
}

.o-career-heros {
    padding-top: 73.33333px;
    padding-bottom: 83.33333px;
    background-color: #fff
}

    .o-career-heros .m-rotated-title .a-subtitle {
        color: rgba(0,0,0,.5)
    }

.o-career-heros_right {
    margin-top: 42px
}

.o-career-heros .m-section-header .a-heading {
    color: #000
}

.o-career-heros .m-section-header .a-subtitle {
    color: rgba(0,0,0,.5)
}

    .o-career-heros .m-section-header .a-subtitle span {
        color: #000
    }

.o-career-heros_body {
    margin-top: 16px
}

.o-career-infographic {
    padding-top: 73.33333px;
    padding-bottom: 83.33333px;
    background-color: #fff
}

    .o-career-infographic .m-rotated-title .a-subtitle {
        color: rgba(0,0,0,.5)
    }

.o-career-infographic_right {
    margin-top: 42px
}

.o-career-infographic .m-section-header .a-heading {
    color: #000
}

.o-career-infographic .m-section-header .a-subtitle {
    color: rgba(0,0,0,.5)
}

    .o-career-infographic .m-section-header .a-subtitle span {
        color: #000
    }

.o-career-infographic_body {
    margin-top: 16px
}

.o-career-intro {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #fff
}

.o-career-intro_copy {
    text-align: center
}

    .o-career-intro_copy img {
        width: 100%;
        height: auto
    }

.o-career-intro_title {
    margin-top: 32px;
    text-align: center
}

    .o-career-intro_title .a-heading {
        font-weight: 700 !important
    }

.o-career-intro_body {
    margin-top: 32px;
    text-align: center
}

    .o-career-intro_body .a-body {
        color: #000;
        line-height: 2.63157;
        font-weight: 500
    }

.o-career-joblist {
    padding-top: 6.51042vh;
    padding-bottom: 6.51042vh;
    background-color: #f9f9f9
}

.o-career-joblist_header {
    color: #000
}

.o-career-joblist_list {
    padding-top: 6.51042vh
}

    .o-career-joblist_list .l-accordion {
        margin-top: 1px
    }

    .o-career-joblist_list .l-accordion_title {
        background-color: #262626
    }

        .o-career-joblist_list .l-accordion_title .a-body {
            color: #fff
        }

.o-career-members {
    background-color: #fff;
    padding-bottom: 8.88889vw
}

.o-career-members_close {
    z-index: 6001;
    position: fixed;
    padding: 10px;
    right: 15px;
    top: 15px
}

.o-career-members_swiper {
    z-index: 6000;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    transition: .6s cubic-bezier(.14,1,.34,1);
    transform: translate3d(-100px,0,0);
    backface-visibility: hidden
}

    .o-career-members_swiper .next, .o-career-members_swiper .prev {
        outline: none;
        cursor: pointer;
        z-index: 10;
        position: absolute;
        top: 50%;
        left: 0;
        transform-origin: 50% 0;
        transform: translateX(-50%) rotate(-90deg);
        transition: opacity .5s ease
    }

        .o-career-members_swiper .next:before, .o-career-members_swiper .prev:before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            width: 1px;
            height: 2.66667vw;
            border-left: 1px solid #fff;
            transform: translateX(-50%)
        }

        .o-career-members_swiper .next .txt, .o-career-members_swiper .prev .txt {
            margin-top: 3.73333vw;
            overflow: hidden;
            display: block;
            font-family: Impact,'Microsoft YaHei';
            color: #fff;
            font-size: .93333rem;
            line-height: 1.5;
            letter-spacing: .1em;
            transition: .3s cubic-bezier(.215,.61,.355,1);
            position: relative
        }

            .o-career-members_swiper .next .txt span, .o-career-members_swiper .prev .txt span {
                opacity: 0
            }

            .o-career-members_swiper .next .txt:after, .o-career-members_swiper .next .txt:before, .o-career-members_swiper .prev .txt:after, .o-career-members_swiper .prev .txt:before {
                content: "PREVIOUS HERO";
                width: 100%;
                white-space: nowrap;
                position: absolute;
                left: 0;
                top: 0;
                transition: .3s cubic-bezier(.14,1,.34,1) 0s
            }

            .o-career-members_swiper .next .txt:before, .o-career-members_swiper .prev .txt:before {
                transition-delay: .2s;
                transform: translateY(0)
            }

            .o-career-members_swiper .next .txt:after, .o-career-members_swiper .prev .txt:after {
                transform: translateY(50%);
                opacity: 0
            }

        .o-career-members_swiper .next:hover .txt:before, .o-career-members_swiper .prev:hover .txt:before {
            transition-delay: 0s;
            transform: translateY(-50%);
            opacity: 0
        }

        .o-career-members_swiper .next:hover .txt:after, .o-career-members_swiper .prev:hover .txt:after {
            transition-delay: .2s;
            transform: translateY(0);
            opacity: 1
        }

        .o-career-members_swiper .next.swiper-button-disabled, .o-career-members_swiper .prev.swiper-button-disabled {
            opacity: 0;
            pointer-events: none
        }

    .o-career-members_swiper .next {
        left: auto;
        right: 0;
        transform-origin: 50% 0;
        transform: translateX(50%) rotate(90deg)
    }

        .o-career-members_swiper .next .txt:after, .o-career-members_swiper .next .txt:before {
            content: "NEXT HERO"
        }

    .o-career-members_swiper.show {
        visibility: visible;
        pointer-events: auto;
        transform: translateZ(0);
        backface-visibility: hidden;
        opacity: 1
    }

.o-career-members_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-career-members_col {
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 100%;
    max-width: 100%
}

.o-career-members_col1 {
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 100%;
    max-width: 100%
}
.o-career-news {
    padding-bottom: 66.66667px;
    background-color: #f0f0f0
}

.o-career-news_row {
    margin-top: -20px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -10px;
    margin-right: -10px
}

.o-career-news_col {
    margin-top: 20px;
    padding-left: 10px;
    padding-right: 10px;
    flex: 0 1 50%;
    max-width: 50%
}

.o-career-overview {
    padding-top: 6.51042vh;
    padding-bottom: 6.51042vh;
    background-color: #fff
}

.o-career-overview_header {
    color: #000
}

.o-career-overview_description {
    padding-top: 4.34028vh
}

    .o-career-overview_description .m-description_row {
        border-color: rgba(0,0,0,.1)
    }

    .o-career-overview_description .m-description_title .a-body {
        color: #000
    }

    .o-career-overview_description .m-description_body .a-body {
        color: rgba(0,0,0,.5)
    }

.o-career-page-header {
    position: relative;
    overflow: hidden;
    width: 100%;
    background-color: #b30606;
    color: #fff
}

.o-career-page-header_body {
    padding-top: 17.36111vh;
    padding-bottom: 17.36111vh;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

    .o-career-page-header_body > * {
        transform: translateX(-100px);
        opacity: 0
    }

.show .o-career-page-header_body > div {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-career-page-header_body > div:first-child {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .08s
    }

    .show .o-career-page-header_body > div:nth-child(2) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .16s
    }

    .show .o-career-page-header_body > div:nth-child(3) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .24s
    }

.o-career-page-header_body .a-heading.size1 {
    font-size: 7.33333rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: .9
}

.o-career-page-header_logo {
    z-index: 300;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 5.46875vh;
    font-family: Impact,'Microsoft YaHei';
}

    .o-career-page-header_logo, .o-career-page-header_logo svg {
        width: 132.66667px;
        height: 15px
    }

.o-career-project-day {
    background-color: #fff;
    color: #000
}

.o-career-project-day_image {
    z-index: 10;
    position: relative;
    height: 100%
}

    .o-career-project-day_image .a-image img {
        object-fit: cover;
        width: 100%;
        height: 100%
    }

.o-career-project-day_body {
    padding-top: 4.34028vh;
    padding-bottom: 8.68056vh
}

.o-career-project-day_body_subtitle {
    margin-top: 2px
}

    .o-career-project-day_body_subtitle .a-subtitle {
        color: #fff
    }

.o-career-project-day_body_body {
    margin-top: 32px
}

    .o-career-project-day_body_body .a-body {
        color: #000
    }

.o-career-project-day_body_description {
    margin-top: 32px;
    border-top: 1px solid rgba(0,0,0,.3)
}

    .o-career-project-day_body_description .m-description_row {
        border-color: rgba(0,0,0,.3)
    }

    .o-career-project-day_body_description .m-description_title .a-body {
        font-family: Impact,'Microsoft YaHei';
        color: #b30606
    }

    .o-career-project-day_body_description .m-description_body .a-body {
        font-family: Impact,'Microsoft YaHei';
        color: #000
    }

.o-career-project-mission_image, .o-career-project-mission_image .a-image {
    height: 100%
}

    .o-career-project-mission_image .a-image img {
        object-fit: cover;
        width: 100%;
        height: 100%
    }

.o-career-project-mission_body {
    padding-top: 13.02083vh;
    padding-bottom: 13.02083vh;
    background-color: #262626;
    color: #fff
}

.o-career-project-mission_body_subtitle .a-subtitle {
    color: #fff
}

.o-career-project-mission_body_title {
    margin-top: 16px
}

.o-career-project-mission_body_description {
    margin-top: 8px
}

.o-career-project-sep {
    display: none
}

.o-career-project-sep_inner {
    margin-right: auto;
    margin-left: auto;
    padding-left: 7%;
    padding-right: 7%;
    display: flex;
    justify-content: center;
    text-align: right
}

    .o-career-project-sep_inner:after, .o-career-project-sep_inner:before {
        content: " ";
        display: table
    }

    .o-career-project-sep_inner:after {
        clear: both
    }

.o-career-project-sep .a-subtitle {
    color: #b30606;
    line-height: 1.38462;
    transform: translateX(calc(-50% - 2em))
}

.o-career-project-sep.reverse .o-career-project-sep_inner {
    margin-right: 0;
    text-align: left
}

    .o-career-project-sep.reverse .o-career-project-sep_inner .a-subtitle {
        transform: translateX(calc(50% + 2em))
    }

.m-career-project-startdone {
    padding-top: 6.51042vh;
    padding-bottom: 6.51042vh;
    background-color: #fff;
    color: #b30606
}

    .m-career-project-startdone.done {
        padding-top: 0
    }

.m-career-project-startdone_inner {
    display: flex;
    flex-flow: column nowrap;
    align-items: center
}

.m-career-project-startdone_title {
    font-style: italic;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.m-career-project-startdone_above {
    margin-top: 4px;
    font-style: italic;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.o-career-project-story {
    padding-top: 73.33333px;
    padding-bottom: 83.33333px;
    background-color: #fff
}

    .o-career-project-story .m-rotated-title .a-subtitle {
        color: rgba(0,0,0,.5)
    }

.o-career-project-story_right {
    margin-top: 42px
}

.o-career-project-story .m-section-header .a-heading {
    color: #000
}

.o-career-project-story .m-section-header .a-subtitle {
    color: rgba(0,0,0,.5)
}

    .o-career-project-story .m-section-header .a-subtitle span {
        color: #000
    }

.o-career-project-story_body {
    margin-top: 16px
}

.o-career-selection-flow {
    padding-top: 6.51042vh;
    padding-bottom: 6.51042vh;
    background-color: #fff
}

.o-career-selection-flow_list {
    padding-top: 4.77431vh;
    display: flex;
    flex-flow: column nowrap;
    align-items: center
}

.o-career-selection-flow_item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 180px;
    background-color: #f2f2f2;
    color: #000;
    border-radius: 50%;
    text-align: center
}

    .o-career-selection-flow_item .a-body {
        color: #000
    }

.o-career-selection-flow_arrow {
    padding: 20px 0;
    transform: rotate(90deg);
    transform-origin: 50% 50%;
    overflow: hidden;
    display: inline-block;
    position: relative;
    width: 12px;
    height: 12px
}

    .o-career-selection-flow_arrow:after, .o-career-selection-flow_arrow:before {
        position: absolute;
        top: 50%;
        left: 38%;
        width: 6px;
        height: 6px;
        content: "";
        transform: translate(-50%,-50%) rotate(-45deg);
        transform-origin: 50% 50%;
        text-indent: 0;
        vertical-align: 3px;
        border-right: 2px solid rgba(0,0,0,.3);
        border-bottom: 2px solid rgba(0,0,0,.3)
    }

.o-career-selection-flow_note {
    margin-top: 32px
}

.o-career-story .m-title-body .a-heading {
    letter-spacing: -.05em !important
}

.o-career-subpage-links {
    padding-top: 0
}

.o-career-subpage-links_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-career-subpage-links_item {
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 100%;
    max-width: 100%
}

.o-career-work-space {
    position: relative
}

    .o-career-work-space .next, .o-career-work-space .prev {
        z-index: 10;
        position: absolute;
        top: 0;
        left: 0;
        width: 50%;
        height: 100%;
        cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABsAAAAPCAYAAAAVk7TYAAAAAXNSR0IArs4c6QAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAIlJREFUOBHllEEOgCAMBGnwo74M8Cc+THE3KZeGg4mtB92kaQDTSbtgShP13jOiItbJsd+WgjZkqvpVNpVQnB0NEHM2n/gsPwtq6IyKGx0NAKCQAhEY45E6LaT4uH6jCliFQCi8M46R1/0dz9i8AuPf15j074B1dO6RF1tERA6MlH/7E7Hb8yfrCy7k1sStGiRYAAAAAElFTkSuQmCC) 13 7,auto
    }

        .o-career-work-space .next.swiper-button-disabled, .o-career-work-space .prev.swiper-button-disabled {
            cursor: auto
        }

    .o-career-work-space .next {
        left: auto;
        right: 0;
        cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABsAAAAPCAYAAAAVk7TYAAAAhUlEQVQ4jdWUQQ7CMAwEJ03/xU9AiIdR8hMeVoZDI4QK7cmJ1JUsy9rDHLx2UgnUFTgBN2Bem0MkqYIuwB3IP64aWVktLip1/vjRsF1gC9gmsBVsDXyoeQwOyLdmlnQKnIFXMjj7exqA1LBGoFTW1HVnh09jtzvr+kGmLZBK9J09a//79d/VafxOplOrTAAAAABJRU5ErkJggg==) 13 7,auto
    }

.o-career-work-space_image {
    height: 100%;
    overflow: hidden;
    position: relative
}

    .o-career-work-space_image .a-image_img {
        min-width: 100%;
        min-height: 100%;
        width: auto;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        max-width: inherit;
        object-fit: cover;
        font-family: Impact,'Microsoft YaHei';
    }

@supports (object-fit:cover) {
    .o-career-work-space_image .a-image_img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-career-work-space_image figure {
    height: 100%
}

.o-career-work-space .js-work-space-swiper {
    overflow: hidden
}

.o-career-work-space_controls {
    display: flex;
    justify-content: center;
    z-index: 10;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 1.73611vh
}

.o-career-work-space_pagination {
    display: inline-block
}

    .o-career-work-space_pagination .swiper-pagination-bullet {
        margin: 0 8px;
        background-color: hsla(0,0%,100%,.3);
        opacity: 1
    }

    .o-career-work-space_pagination .swiper-pagination-bullet-active {
        background-color: #fff;
        opacity: 1
    }

.o-career-work-space_right {
    padding-top: 81.33333px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
    background-color: #262626
}

.o-career-work-space .js-work-space-body-swiper {
    overflow: hidden
}

.o-career-work-space .m-title-body {
    padding-top: 0
}

.o-career-work-space .m-title-body_title .a-heading.ja.size2 {
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: 1.1
}

.o-career {
    padding-top: 0;
    padding-bottom: 74px;
    background-color: #181818
}

.o-career_image {
    z-index: 10;
    position: relative;
    padding-top: 77px;
    padding-bottom: 0;
    padding-left: 8%;
    background-color: #181818
}

    .o-career_image figure {
        z-index: 10;
        position: relative;
        margin-top: 72px;
        height: 0;
        padding-bottom: 50%
    }

.o-career_body {
    margin-top: 68%;
    margin-bottom: 0;
    padding-bottom: 0;
    background-color: #181818;
    color: #fff
}

    .o-career_body .m-section-header, .o-career_body_title {
        text-align: center
    }

        .o-career_body_title .a-heading {
            margin-top: 56px
        }

    .o-career_body .a-body {
        margin-top: 18px
    }

    .o-career_body .a-button {
        margin-top: 50px
    }

.o-ceo-history {
    padding: 70px 0 60px;
    background-color: #640000
}

.o-ceo-history_item {
    display: flex;
    align-items: flex-start;
    flex-flow: row nowrap
}

.o-ceo-history_year {
    padding-right: 20px;
    flex: 0 1 19%;
    width: 19%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    text-align: right;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1.3;
    letter-spacing: 0
}

.o-ceo-history_body {
    position: relative;
    flex: 0 1 81%;
    width: 81%;
    padding-left: 20px;
    padding-bottom: 40px
}

.o-ceo-history_body_description {
    margin-top: 8px
}

.o-ceo-history_body:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    left: -3px;
    top: 10px;
    background-color: #fff;
    border-radius: 50%
}

.o-ceo-history_body:after {
    content: "";
    position: absolute;
    top: 19px;
    bottom: -7px;
    left: 0;
    width: 1px;
    border-right: 1px solid hsla(0,0%,100%,.2)
}

.o-ceo-history_item:last-child .o-ceo-history_body {
    padding-bottom: 0
}

    .o-ceo-history_item:last-child .o-ceo-history_body:after {
        bottom: 0
    }

.o-ceo-message {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #181818
}

.o-ceo-message_title {
    margin-top: 64px
}

.o-ceo-message_row {
    margin-top: 64px
}

.o-ceo-message_right {
    margin-top: 64px
}

.o-ceo-message .js-horizontal-swiper {
    overflow: hidden
}

.o-ceo-message .a-body {
    margin-top: 13px
}

.o-ceo-message .swiper-controls {
    display: none
}

.o-circle-points {
    overflow: hidden
}

    .o-circle-points .swiper-controls {
        margin-top: 74.33333px
    }

.o-client-voice_title {
    color: #fff
}

    .o-client-voice_title .a-heading {
        font-size: 50px
    }

.o-client-voice_company {
    margin-top: 32px
}

    .o-client-voice_company > .company {
        display: inline
    }

        .o-client-voice_company > .company .a-body {
            color: #fff
        }

    .o-client-voice_company > .name {
        display: inline;
        margin-left: 8px
    }

.o-client-voice_body {
    margin-top: 8px;
    color: #fff
}

    .o-client-voice_body:after, .o-client-voice_body:before {
        content: "\201C";
        position: relative;
        top: .3em;
        display: inline;
        font-size: 24px;
        line-height: .5
    }

    .o-client-voice_body:after {
        content: "\201D"
    }

    .o-client-voice_body .a-body {
        font-size: 1.4rem;
        line-height: 2;
        letter-spacing: 0;
        color: #fff;
        font-weight: 500
    }

.o-client-voice_right {
    margin-top: 42px
}

.o-client {
    padding-top: 85px;
    padding-bottom: 100px;
    background-color: #640000
}

    .o-client > .container {
        padding: 0 8%;
        max-width: calc(980px + 16%)
    }

.o-client_inner {
    max-width: 380px;
    margin-left: auto;
    margin-right: auto
}

.o-client_row {
    margin-top: 8px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -15px;
    margin-right: -15px
}

.o-client_item {
    margin-top: 64px;
    padding-left: 15px;
    padding-right: 15px;
    flex: 0 1 33.33333%;
    max-width: 33.33333%
}

    .o-client_item:nth-child(n+10) {
        display: none
    }

    .o-client_item img {
        filter: brightness(0) invert(1)
    }

.o-company-profile {
    padding: 116px 0;
    background-color: #000
}

.o-company-profile_right {
    margin-top: 42px
}

.o-corporate-logo {
    padding: 100px 0;
    background-color: #000
}

    .o-corporate-logo .section_row {
        position: relative
    }

.o-corporate-logo_figure {
    margin-top: 79px;
    text-align: center
}

    .o-corporate-logo_figure svg {
        width: 100%;
        height: auto
    }

.o-corporate-logo .a-body {
    margin-top: 42px
}

.o-data-list {
    width: 100%;
    border-top: 1px solid rgba(0,0,0,.2)
}

    .o-data-list .m-data {
        border-top: none
    }

.o-doc-download-header {
    width: 100%;
    height: 44vw;
    background-color: #000;
    color: #fff;
    position: relative
}

    .o-doc-download-header h1 {
        line-height: 1.25;
        font-size: 12px;
        font-size: 3.2vw;
        letter-spacing: 0;
        position: absolute;
        left: 50%;
        bottom: 20%;
        transform: translate(-50%)
    }

    .o-doc-download-header svg {
        position: absolute;
        left: 50%;
        bottom: 12%;
        transform: translate(-50%)
    }

.o-doc-download-kv {
    position: relative;
    max-width: calc(1350px + 16%);
    margin: auto;
    height: 95.2vw;
    padding-top: 6.13333vw
}

    .o-doc-download-kv ul {
        position: relative;
        margin: auto 10.4%
    }

        .o-doc-download-kv ul li {
            position: absolute
        }

            .o-doc-download-kv ul li:first-child {
                top: 0;
                left: 0;
                z-index: 30
            }

            .o-doc-download-kv ul li:nth-child(2) {
                top: 13.33333vw;
                left: 50%;
                transform: translate(-50%);
                z-index: 20
            }

            .o-doc-download-kv ul li:nth-child(3) {
                top: 26.66667vw;
                right: 0
            }

            .o-doc-download-kv ul li img {
                width: 44vw
            }

    .o-doc-download-kv .annotation {
        position: absolute;
        top: 27.73333vw;
        right: 10.4%;
        color: #8c8c8c;
        line-height: 1;
        font-size: 8px;
        font-size: 2.13333vw;
        letter-spacing: 0
    }

    .o-doc-download-kv .tb {
        position: absolute;
        bottom: 6.13333vw
    }

        .o-doc-download-kv .tb .label {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #707070;
            border-radius: 5.33333vw;
            color: #fff;
            width: 28.53333vw;
            height: 7.46667vw;
            line-height: 1.26667;
            font-size: 15px;
            font-size: 4vw;
            letter-spacing: 0;
            margin-bottom: 2.93333vw
        }

        .o-doc-download-kv .tb .copy {
            color: #8c8c8c;
            line-height: 1.76923;
            font-size: 13px;
            font-size: 3.46667vw;
            letter-spacing: 0;
            text-align: center;
            line-height: 1.5
        }

.o-entry {
    position: relative
}

.o-entry_subtitle .a-subtitle {
    color: #fff
}

.o-entry_title {
    margin-top: 17px;
    white-space: nowrap;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 3.33333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-entry_button {
    margin-top: 21px;
    display: block
}

    .o-entry_button .a-button {
        font-weight: 700
    }

.o-entry_inner {
    display: flex;
    align-items: flex-end;
    justify-content: center
}

.o-entry_body {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 10%;
    text-align: center
}

.o-filter {
    background-color: #181818
}

    .o-filter .l-accordion {
        border-bottom: 1px solid hsla(0,0%,100%,.1)
    }

    .o-filter .l-accordion_title {
        background-color: transparent;
        padding-left: 0;
        padding-right: 0
    }

.o-footer {
    overflow: hidden;
    position: relative
}

.o-footer_bg {
    pointer-events: none;
    display: none
}

.o-footer_inner {
    color: #fff;
    background-color: #000;
    padding: 74px 20px;
    text-align: center
}

.o-footer_logo {
    text-align: center
}

    .o-footer_logo svg {
        width: 86px;
        height: 86px
    }

.o-footer_name {
    margin-top: 41px;
    font-weight: 700;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.o-footer_meta {
    margin-top: 25px;
    opacity: .5;
    font-size: 1.26667rem;
    line-height: 1.84211;
    letter-spacing: 0
}

.o-footer_links {
    display: none
}

    .o-footer_links .m-label-link .a-label {
        line-height: 1
    }

.o-footer_link:last-child {
    margin-right: 0
}

    .o-footer_link:last-child .m-label-link {
        padding-right: 0
    }

.o-footer_link .m-label-link.arrow, .o-footer_shared {
    display: flex;
    align-items: center
}

.o-footer_shared {
    margin-top: 59px;
    flex-flow: row nowrap;
    justify-content: center
}

.o-footer_shared_item {
    padding: 0 8px
}

    .o-footer_shared_item .a-icon {
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        font-size: 2.6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-footer_shared_item:hover .a-icon {
        opacity: 1;
        color: #fff
    }

    .o-footer_shared_item:hover .icon-note svg *, .o-footer_shared_item:hover .icon-pinterest svg *, .o-footer_shared_item:hover .icon-umplex svg *, .o-footer_shared_item:hover .icon-wantedly svg * {
        opacity: 1;
        fill: #fff;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
    }

.o-footer_copy {
    margin-top: 21px;
    opacity: .5;
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-form-doc-download {
    padding-top: 100px
}

    .is-confirm.o-form-doc-download .step1, .o-form-doc-download .step2 {
        display: none
    }

.is-confirm.o-form-doc-download .step2 {
    display: block
}

.o-form-doc-download_note {
    margin-top: 8px
}

.o-form-doc-download_step {
    margin-bottom: 100px
}

.o-form-doc-download .notice {
    text-align: center;
    line-height: 1.86667;
    font-size: 15px;
    font-size: 4vw;
    letter-spacing: 0
}

.o-form-doc-download_docs {
    background-color: #2e2e2e;
    padding: 11.46667vw 7.73333vw 3.73333vw;
    margin-bottom: 14.66667vw
}

.o-form-doc-download_docs_title {
    text-align: center;
    line-height: 1;
    font-size: 15px;
    font-size: 4vw;
    letter-spacing: 0;
    margin-bottom: 7.73333vw
}

.o-form-doc-download_control {
    margin-top: 42px
}

.is-confirm .o-form-doc-download_control {
    margin: 0
}

.o-form-doc-download_control.center {
    display: flex;
    justify-content: center
}

.o-form-doc-download_control .m-field-error {
    z-index: 10;
    position: relative;
    display: block;
    overflow: hidden;
    height: 22.104px
}

.o-form-doc-download_control_title {
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

    .o-form-doc-download_control_title span {
        color: #a42318
    }

.is-confirm .o-form-doc-download_control_title {
    display: none
}

.white .o-form-doc-download_control_title {
    color: #000
}

.o-form-doc-download_control_col_body {
    margin-left: 2em;
    margin-top: 1.8em
}

    .o-form-doc-download_control_col_body .a-body {
        color: #000
    }

.is-confirm .o-form-doc-download_control_col_body {
    display: none
}

.o-form-doc-download_buttons {
    margin-top: 16px
}

.o-form-doc-download_reset {
    margin-top: 32px;
    text-align: center
}

.o-form-doc-download_notification {
    text-align: center;
    color: #cb251e
}

.o-form {
    padding-top: 100px
}

    .is-confirm.o-form .step1, .o-form .step2 {
        display: none
    }

.is-confirm.o-form .step2 {
    display: block
}

.o-form_note {
    margin-top: 8px
}

.o-form_step {
    margin-bottom: 100px
}

.o-form_control {
    margin-top: 42px
}

.is-confirm .o-form_control {
    margin: 0
}

.o-form_control.center {
    display: flex;
    justify-content: center
}

.o-form_control .m-field-error {
    z-index: 10;
    position: relative;
    display: block;
    overflow: hidden;
    height: 22.104px
}

.o-form_control_title {
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

    .o-form_control_title span {
        color: #a42318
    }

.is-confirm .o-form_control_title {
    display: none
}

.white .o-form_control_title {
    color: #000
}

.o-form_control_col_body {
    margin-left: 2em;
    margin-top: 1.8em
}

    .o-form_control_col_body .a-body {
        color: #000
    }

.is-confirm .o-form_control_col_body {
    display: none
}

.o-form_buttons {
    margin-top: 16px
}

.o-form_reset {
    margin-top: 32px;
    text-align: center
}

.o-form_notification {
    text-align: center;
    color: #cb251e
}

.o-header-logo-sm {
    z-index: 5000;
    position: fixed;
    top: 0;
    left: 0;
    padding: 20px;
    transition: .3s cubic-bezier(.14,1,.34,1);
    transform: translateX(-100%)
}

    .o-header-logo-sm svg {
        width: 64px;
        height: 64px
    }

    .o-header-logo-sm.scrolled {
        transform: translateX(0)
    }

.o-header, .o-header_logo {
    position: absolute;
    top: 0;
    left: 0
}

.o-header_logo {
    z-index: 5000;
    padding: 20px
}

    .o-header_logo svg {
        width: 88px;
        height: 88px
    }

    .o-header_logo.white svg * {
        fill: #fff
    }

.o-header_logo-sm {
    z-index: 5000;
    position: fixed;
    top: 0;
    left: 0;
    padding: 20px;
    transition: .3s cubic-bezier(.14,1,.34,1);
    transform: translateX(-100%)
}

    .o-header_logo-sm svg {
        width: 64px;
        height: 64px
    }

.o-header.scrolled .o-header_logo-sm {
    transform: translateX(0)
}

.o-ideorogy {
    padding-top: 94px;
    background-color: #181818
}

    .o-ideorogy .m-section-header_below {
        margin-top: 8px
    }

.o-ideorogy_colors {
    margin-top: 21px;
    display: flex;
    flex-flow: row nowrap;
    width: 120px;
    height: 22px
}

.o-ideorogy_colors_01 {
    flex: 2;
    background-color: #a42319
}

.o-ideorogy_colors_02 {
    flex: 1;
    background-color: #7e1911
}

.o-ideorogy_colors_03 {
    flex: 1;
    background-color: #5c100a
}

.o-ideorogy_colors_04 {
    flex: 1;
    background-color: #420a06
}

.o-ideorogy .a-lead {
    margin-top: 16px
}

.o-ideorogy_title .a-heading {
    margin-top: 42px
}

.o-ideorogy .a-body {
    margin-top: 16px
}

.o-introduction {
    padding-top: 75px;
    padding-bottom: 75px;
    background-color: #181818
}

.o-introduction_title {
    margin-top: 50px
}

.o-introduction .a-body {
    margin-top: 16px
}

.o-job-advertising_body {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #640000
}

.o-job-advertising_body_title {
    margin-top: 32px
}

.o-job-advertising_body_body {
    margin-top: 16px
}

.o-job-advertising_body_description {
    margin-top: 16px
}

.o-job-advertising_body_link {
    margin-top: 64px;
    display: block;
    text-align: right
}

.o-kv-career-subpage {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh
}

.o-kv-career-subpage_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

    .o-kv-career-subpage_bg figure {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-kv-career-subpage_bg figure img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .o-kv-career-subpage_bg figure img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-kv-career-subpage_body {
    z-index: 10;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    color: #fff
}

    .o-kv-career-subpage_body > * {
        transform: translateX(-100px);
        opacity: 0
    }

.show .o-kv-career-subpage_body > div {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-kv-career-subpage_body > div:first-child {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .08s
    }

    .show .o-kv-career-subpage_body > div:nth-child(2) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .16s
    }

    .show .o-kv-career-subpage_body > div:nth-child(3) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .24s
    }

.o-kv-career-subpage_body .a-heading.size1 {
    font-size: 7.33333rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: .9
}

.o-kv-career-subpage_above {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.83333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-kv-career-subpage_below {
    margin-top: 11px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0;
    color: hsla(0,0%,100%,.5)
}

.o-kv-career-subpage_scroll {
    z-index: 20;
    position: absolute;
    left: 20px;
    bottom: 20px;
    transform: rotate(-90deg) translateY(-200%);
    transform-origin: 14px 50%;
    transition: transform .6s cubic-bezier(.85,.01,.26,1.01),opacity .6s cubic-bezier(.85,.01,.26,1.01);
    transition-delay: .3s
}

.show .o-kv-career-subpage_scroll {
    opacity: 1;
    transform: rotate(-90deg) translate(0)
}

.o-kv-career-subpage_logo {
    z-index: 300;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 5.46875vh;
    font-family: Impact,'Microsoft YaHei';
}

    .o-kv-career-subpage_logo, .o-kv-career-subpage_logo svg {
        width: 132.66667px;
        height: 15px
    }

.o-kv-career {
    overflow: hidden;
    position: relative;
    display: block;
    width: 100%;
    background-color: #b30606
}

.o-kv-career_inner {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%
}

.o-kv-career_logo {
    z-index: 300;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 5.46875vh;
    font-family: Impact,'Microsoft YaHei';
}

    .o-kv-career_logo, .o-kv-career_logo svg {
        width: 132.66667px;
        height: 15px
    }

.o-kv-career_image {
    position: absolute;
    bottom: 0;
    transition: .8s cubic-bezier(.215,.61,.355,1) 0s
}

    .o-kv-career_image figure {
        width: 100%;
        top: 50%;
        transform: translateY(-30%);
        height: auto
    }

    .o-kv-career_image img {
        width: 100%;
        height: auto
    }

    .o-kv-career_image:first-child {
        z-index: 200;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        transform: translate(-13%)
    }

    .o-kv-career_image:nth-child(2) {
        z-index: 100;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
        transform: translate(13%)
    }

.o-kv-career_char {
    z-index: 50;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-family: Impact,'Microsoft YaHei';
    line-height: 1;
    font-size: 183.33333px;
    font-size: 48.88889vw;
    letter-spacing: 0;
    color: #fff;
    opacity: 0;
    transition: 1.2s cubic-bezier(.215,.61,.355,1) .1s
}

    .o-kv-career_char p {
        transition: .3s linear
    }

    .o-kv-career_char:first-child {
        margin-top: -51%;
        margin-left: 18%;
        transform: translateY(-50%);
        transition-delay: .1s
    }

    .o-kv-career_char:nth-child(2) {
        margin-top: 6%;
        margin-left: -34%;
        transform: translate(-100%,-50%);
        transition-delay: .2s
    }

    .o-kv-career_char:nth-child(3) {
        z-index: 150;
        margin-top: 36%;
        margin-left: 35%;
        transform: translateY(-50%);
        transition-delay: .3s
    }

    .o-kv-career_char:nth-child(4) {
        margin-top: 66%;
        margin-left: -26%;
        transform: translate(-100%,-50%);
        transition-delay: .4s
    }

.show .o-kv-career_image {
    transform: translate(0) !important
}

.show .o-kv-career_char {
    opacity: 1 !important;
    transform: translate(-50%,-50%) !important
}

.o-kv-scroll {
    z-index: 400;
    position: absolute;
    left: 12px;
    bottom: 28px;
    transform-origin: 21px 50%;
    transform: rotate(-90deg) translateY(-200%);
    transition: transform 1s cubic-bezier(.85,.01,.26,1.01),opacity 1s cubic-bezier(.85,.01,.26,1.01);
    transition-delay: .3s
}

.show .o-kv-scroll {
    opacity: 1;
    transform: rotate(-90deg) translate(0)
}

.o-kv-bottom {
    z-index: 10;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 8% 5px;
    width: 100%;
    height: 17.4%;
    background-color: #fff;
    color: #fff;
    transition: transform .5s cubic-bezier(.76,0,.24,1),opacity .5s cubic-bezier(.26,1,.48,1);
    transition-delay: 0s;
    opacity: 0;
    transform: translate(15%)
}

.show .o-kv-bottom {
    opacity: 1;
    transform: translate(0)
}

.o-kv-bottom_progress {
    z-index: 10;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    border-top: 3px solid #b30606;
    transform-origin: 0 0;
    transform: scaleX(0)
}

.o-kv-bottom_inner {
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: center;
    color: #000
}

    .o-kv-bottom_inner > .a-body {
        padding-top: 20px;
        color: #000;
        font-family: Impact,'Microsoft YaHei';
        font-size: 2rem;
        line-height: 1.1;
        letter-spacing: 0
    }

.o-kv-bottom_subline {
    margin-top: 0;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    font-family: Impact,'Microsoft YaHei';
    font-size: .93333rem;
    line-height: 3.75;
    letter-spacing: 0
}

    .o-kv-bottom_subline .a-label {
        font-size: .93333rem;
        line-height: 3.75;
        letter-spacing: 0
    }

.o-kv-bottom_subline_x {
    margin-top: -1px;
    padding: 0 16px;
    display: block;
    line-height: 3.75;
    font-weight: 100;
    font-size: 8px;
    font-family: Impact,'Microsoft YaHei';
}

.o-kv-bottom_subline_slides {
    overflow: hidden;
    position: relative;
    width: 5em;
    line-height: 3.75;
    height: 3.75em
}

.o-kv-bottom_subline_slide {
    position: absolute;
    top: 0;
    left: 0;
    animation-name: translate-opacity-up-out-0--30;
    animation-duration: .4s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes translate-opacity-up-out-0--30 {
    0% {
        opacity: 1;
        transform: translateY(0);
        transform-origin: bottom
    }

    to {
        opacity: 0;
        transform: translateY(-30%);
        transform-origin: bottom
    }
}

.o-kv-bottom_subline_slide.active {
    z-index: 10;
    animation-name: translate-up-in-axis-Y-origin-bottom-30-0;
    animation-duration: .4s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes translate-up-in-axis-Y-origin-bottom-30-0 {
    0% {
        transform: translateY(30%);
        transform-origin: bottom
    }

    to {
        transform: translateY(0);
        transform-origin: bottom
    }
}

.o-kv-bottom_subline_slide .a-label {
    margin-top: 1px
}

.o-kv-copy {
    z-index: 10;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    top: 55%;
    font-family: Impact,'Microsoft YaHei';
    color: #fff;
    font-size: 24vw;
    line-height: 1;
    letter-spacing: .1em
}

    .o-kv-copy h1 {
        position: absolute;
        text-indent: -9999px
    }

    .o-kv-copy svg {
        width: 216.33333px;
        height: 226.33333px
    }

    .o-kv-copy svg {
        transform: translateX(-50%);
        opacity: 0
    }

.show .o-kv-copy svg {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-kv-copy svg:first-child {
        transition: 1.4s cubic-bezier(.14,1,.34,1) .18s
    }

    .show .o-kv-copy svg:nth-child(2) {
        transition: 1.4s cubic-bezier(.14,1,.34,1) .26s
    }

    .show .o-kv-copy svg:nth-child(3) {
        transition: 1.4s cubic-bezier(.14,1,.34,1) .34s
    }

.o-kv-paginate {
    z-index: 20;
    position: absolute;
    left: 20px;
    top: 53%;
    display: flex;
    flex-flow: row nowrap;
    color: #fff;
    font-family: PT_Sans-Web-Bold,sans-serif;
    font-size: .93333rem;
    line-height: 3;
    letter-spacing: 0;
    transition: transform .8s cubic-bezier(.85,.01,.26,1.01),opacity .8s cubic-bezier(.85,.01,.26,1.01);
    transition-delay: .3s;
    opacity: 0;
    transform: rotate(-90deg) translate(-50%,-200%);
    transform-origin: 0 0
}

.o-kv-paginate_slash {
    margin: 0 4px
}

.show .o-kv-paginate {
    opacity: 1;
    transform: rotate(-90deg) translate(-50%)
}

.o-kv-paginate_num {
    position: relative;
    overflow: hidden;
    width: 1em
}

    .o-kv-paginate_num span {
        position: absolute;
        top: 0;
        left: 0;
        animation-name: translate-opacity-up-out-0--30;
        animation-duration: .4s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.215,.61,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

        .o-kv-paginate_num span.active {
            z-index: 10;
            animation-name: translate-opacity-up-in-30-0;
            animation-duration: .4s;
            animation-delay: 0s;
            animation-timing-function: cubic-bezier(.215,.61,.355,1);
            animation-iteration-count: 1;
            animation-direction: normal;
            animation-fill-mode: both
        }

@keyframes translate-opacity-up-in-30-0 {
    0% {
        opacity: 0;
        transform: translateY(30%);
        transform-origin: bottom
    }

    to {
        opacity: 1;
        transform: translateY(0);
        transform-origin: bottom
    }
}

.o-kv {
    overflow: hidden;
    position: relative;
    height: 100vh;
    background-color: #000
}

.o-kv_inner {
    position: relative;
    height: 83%
}

.o-kv_slides {
    position: relative;
    height: 100%
}

.o-kv_slide {
    z-index: 5;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: translate(-100%);
    transition: transform 0s cubic-bezier(.215,.61,.355,1) .5s,opacity 0s cubic-bezier(.215,.61,.355,1) .5s
}

    .o-kv_slide.active {
        z-index: 10;
        transition: all .5s cubic-bezier(.215,.61,.355,1);
        transform: translate(0);
        opacity: 1
    }

.o-kv_slide_left, .o-kv_slide_right {
    z-index: 2;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

    .o-kv_slide_left figure, .o-kv_slide_right figure {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-kv_slide_left figure img, .o-kv_slide_right figure img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .o-kv_slide_left figure img, .o-kv_slide_right figure img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-kv_slide_right {
    display: none
}

.o-kv_scroll {
    z-index: 20;
    position: absolute;
    left: 12px;
    bottom: 28px;
    transform: rotate(-90deg) translateY(-200%);
    transform-origin: 21px 50%;
    transition: transform 1s cubic-bezier(.85,.01,.26,1.01),opacity 1s cubic-bezier(.85,.01,.26,1.01);
    transition-delay: .3s
}

.show .o-kv_scroll {
    opacity: 1;
    transform: rotate(-90deg) translate(0)
}

.o-leverage-high {
    padding: 100px 0;
    background-color: #640000
}

.o-leverage-high_header {
    padding: 0 0 53px;
    text-align: center
}

.o-leverage-high_title {
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0;
    color: #fff
}

    .o-leverage-high_title .underline {
        display: inline-block
    }

        .o-leverage-high_title .underline:after {
            content: "";
            display: block;
            left: 0;
            width: 100%;
            height: 2px;
            position: relative;
            bottom: -5px;
            border-bottom: 2px solid #fff;
            transition: .3s ease;
            transform-origin: 0 0;
            transform: scaleX(0)
        }

        .o-leverage-high_title .underline:hover:after {
            transform: scaleX(1)
        }

        .o-leverage-high_title .underline:after {
            transform: scale(1)
        }

.o-leverage-low {
    padding: 100px 0;
    background-color: #000
}

.o-leverage-low_header {
    padding: 0 0 53px;
    text-align: center
}

.o-leverage-low_title {
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0;
    color: #fff
}

    .o-leverage-low_title .underline {
        display: inline-block
    }

        .o-leverage-low_title .underline:after {
            content: "";
            display: block;
            left: 0;
            width: 100%;
            height: 2px;
            position: relative;
            bottom: -5px;
            border-bottom: 2px solid #fff;
            transition: .3s ease;
            transform-origin: 0 0;
            transform: scaleX(0)
        }

        .o-leverage-low_title .underline:hover:after {
            transform: scaleX(1)
        }

        .o-leverage-low_title .underline:after {
            transform: scale(1)
        }

.o-logo-mark {
    padding: 100px 0 0;
    background-color: #640000
}

    .o-logo-mark .section_row {
        position: relative
    }

.o-logo-mark_figure {
    text-align: center
}

    .o-logo-mark_figure svg {
        width: 93.33333px;
        height: 123.66667px
    }

.o-logo-mark_body {
    margin-top: 42px;
    text-align: center
}

.o-logo-mark_features {
    margin-top: 124px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-logo-mark_feature {
    flex: 0 1 50%;
    max-width: 50%;
    padding: 11% 8%;
    text-align: center
}

    .o-logo-mark_feature:first-child {
        background-color: #5a0000
    }

    .o-logo-mark_feature:nth-child(2), .o-logo-mark_feature:nth-child(3) {
        background-color: #510000
    }

    .o-logo-mark_feature:nth-child(4) {
        background-color: #5a0000
    }

.o-logo-mark_feature_title {
    margin-top: 16px
}

.o-logo-mark_feature_body {
    margin-top: 26px;
    text-align: left
}

.js-fixed-viewport {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    opacity: 0;
    pointer-events: none
}

.o-menu-header {
    display: none
}

    .o-menu-header.black .o-menu-header_item_body:after {
        /*border-color: #000*/
        border-color: #fff
    }

    .o-menu-header.black .o-menu-header_item .a-label {
        /*color: #000*/
        color: #fff
    }

.o-menu-header_item {
    transition: .8s cubic-bezier(.14,1,.34,1)
}

    .o-menu-header_item:nth-child(0) {
        transition-delay: 0s
    }

    .o-menu-header_item:first-child {
        transition-delay: .04s
    }

    .o-menu-header_item:nth-child(2) {
        transition-delay: .08s
    }

    .o-menu-header_item:nth-child(3) {
        transition-delay: .12s
    }

    .o-menu-header_item:nth-child(4) {
        transition-delay: .16s
    }

    .o-menu-header_item:nth-child(5) {
        transition-delay: .2s
    }

    .o-menu-header_item:nth-child(6) {
        transition-delay: .24s
    }

    .o-menu-header_item:nth-child(7) {
        transition-delay: .28s
    }

.scrolled .o-menu-header_item {
    transition: .4s cubic-bezier(.14,1,.34,1);
    transform: translateX(100px);
    opacity: 0
}

    .scrolled .o-menu-header_item:nth-child(0) {
        transition-delay: .14s
    }

    .scrolled .o-menu-header_item:first-child {
        transition-delay: .12s
    }

    .scrolled .o-menu-header_item:nth-child(2) {
        transition-delay: .1s
    }

    .scrolled .o-menu-header_item:nth-child(3) {
        transition-delay: .08s
    }

    .scrolled .o-menu-header_item:nth-child(4) {
        transition-delay: .06s
    }

    .scrolled .o-menu-header_item:nth-child(5) {
        transition-delay: .04s
    }

    .scrolled .o-menu-header_item:nth-child(6) {
        transition-delay: .02s
    }

    .scrolled .o-menu-header_item:nth-child(7) {
        transition-delay: 0s
    }

.o-menu-header_submenu {
    display: none
}

.o-menu {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 4300;
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    height: 100vh;
    pointer-events: none
}

    .o-menu.show {
        pointer-events: auto
    }

.o-menu_bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #000;
    animation-name: menu-out;
    animation-duration: .1ms;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.14,1,.34,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes menu-out {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(-100%)
    }
}

.init .o-menu_bg {
    animation-duration: .5s
}

.o-menu_bg:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #b30606;
    transition: .8s cubic-bezier(.165,.84,.44,1);
    transform-origin: 100% 0;
    transform: scale(1)
}

.o-menu.show .o-menu_bg {
    animation-name: menu-in;
    animation-duration: .4s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.23,1,.32,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes menu-in {
    0% {
        transform: translate(-100%)
    }

    to {
        transform: translate(0)
    }
}

.o-menu.show .o-menu_bg:before {
    transition: .6s cubic-bezier(.645,.045,.355,1) .08s;
    transform: scaleX(0)
}

.o-menu_left {
    position: relative
}

.o-menu_inner {
    padding: 36% 0 32px;
    z-index: 10;
    position: relative;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    width: auto;
    height: auto;
    transition: .3s cubic-bezier(.14,1,.34,1);
    opacity: 0
}

.o-menu.show .o-menu_inner {
    transition: .5s cubic-bezier(.215,.61,.355,1) .1s;
    opacity: 1
}

.o-menu_item {
    position: relative;
    display: inline-block;
    margin: 2px 0;
    opacity: 0;
    transform: translateY(50px)
}

.show .o-menu_item {
    transform: translateY(0);
    opacity: 1
}

    .show .o-menu_item:first-child {
        transition: .5s cubic-bezier(.215,.61,.355,1) .23s
    }

    .show .o-menu_item:nth-child(2) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .26s
    }

    .show .o-menu_item:nth-child(3) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .29s
    }

    .show .o-menu_item:nth-child(4) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .32s
    }

    .show .o-menu_item:nth-child(5) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .35s
    }

    .show .o-menu_item:nth-child(6) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .38s
    }

    .show .o-menu_item:nth-child(7) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .41s
    }

    .show .o-menu_item:nth-child(8) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .44s
    }

    .show .o-menu_item:nth-child(9) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .47s
    }

    .show .o-menu_item:nth-child(10) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .5s
    }

    .show .o-menu_item:nth-child(11) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .53s
    }

    .show .o-menu_item:nth-child(12) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .56s
    }

    .show .o-menu_item:nth-child(13) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .59s
    }

    .show .o-menu_item:nth-child(14) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .62s
    }

    .show .o-menu_item:nth-child(15) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .65s
    }

    .show .o-menu_item:nth-child(16) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .68s
    }

    .show .o-menu_item:nth-child(17) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .71s
    }

    .show .o-menu_item:nth-child(18) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .74s
    }

    .show .o-menu_item:nth-child(19) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .77s
    }

    .show .o-menu_item:nth-child(20) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .8s
    }

.o-menu_item_body > .a-label {
    transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
    font-family: Impact,'Microsoft YaHei';
    color: #fff;
    font-size: 5.66667rem;
    line-height: 1;
    letter-spacing: -.01em;
    line-height: 5.7vh;
    font-size: 6vh
}

.o-menu_item:hover .o-menu_item_body .a-label {
    color: #b30606
}

.o-menu_links {
    margin: 4vh -16px 0
}

    .o-menu_links .m-label-link {
        margin: 0 16px;
        opacity: 0;
        transform: translateY(50px)
    }

.show .o-menu_links .m-label-link {
    transform: translateY(0);
    opacity: 1
}

    .show .o-menu_links .m-label-link:first-child {
        transition: .5s cubic-bezier(.215,.61,.355,1) .55s
    }

    .show .o-menu_links .m-label-link:nth-child(2) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .6s
    }

    .show .o-menu_links .m-label-link:nth-child(3) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .65s
    }

    .show .o-menu_links .m-label-link:nth-child(4) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .7s
    }

    .show .o-menu_links .m-label-link:nth-child(5) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .75s
    }

.o-menu_shared {
    margin: 3.8vh -8px 0
}

    .o-menu_shared a {
        opacity: .5
    }

        .o-menu_shared a, .o-menu_shared a .a-icon {
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
        }

            .o-menu_shared a .a-icon {
                margin: 0 8px;
                display: inline-block;
                font-size: 20px;
                color: #fff;
                transform: translateY(50px);
                opacity: 0
            }

            .o-menu_shared a .icon-note svg *, .o-menu_shared a .icon-pinterest svg *, .o-menu_shared a .icon-umplex svg *, .o-menu_shared a .icon-wantedly svg * {
                fill: #fff
            }

            .o-menu_shared a:hover {
                opacity: 1
            }

.show .o-menu_shared .a-icon {
    opacity: 1;
    transform: translateY(0)
}

    .show .o-menu_shared .a-icon:first-child {
        transition: .5s cubic-bezier(.215,.61,.355,1) .65s
    }

    .show .o-menu_shared .a-icon:nth-child(2) {
        transition: .5s cubic-bezier(.215,.61,.355,1) .7s
    }

    .show .o-menu_shared .a-icon:hover .a-icon {
        opacity: 1
    }

.o-mission {
    padding: 100px 0 120px;
    color: #000;
    background-color: #fff
}

.o-mission_subline {
    margin-bottom: 20px
}

    .o-mission_subline .m-rotated-title .a-subtitle {
        color: rgba(0,0,0,.5)
    }

.o-mission .m-section-header .a-heading {
    color: #000
}

.o-mission .m-section-header_below {
    margin-top: 26px
}

    .o-mission .m-section-header_below > .a-subtitle {
        color: rgba(0,0,0,.5)
    }

        .o-mission .m-section-header_above, .o-mission .m-section-header_below > .a-subtitle span {
            color: #000
        }

.o-mission_title .a-heading {
    color: #000;
    margin-top: 47px
}

.o-mission .a-body {
    margin-top: 13px;
    color: #000
}

.o-news {
    padding-top: 83px;
    padding-bottom: 90px;
    background-color: #181818
}

    .o-news > .container {
        max-width: calc(1530px + 16%)
    }

.o-news_row {
    padding-top: 37px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -10px;
    margin-right: -10px
}

.o-news_item {
    margin-top: 30px;
    padding-left: 10px;
    padding-right: 10px;
    flex: 0 1 50%;
    max-width: 50%
}

    .o-news_item:nth-child(3) {
        order: 6;
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 100%;
        max-width: 100%
    }

    .o-news_item:nth-child(5) {
        display: none
    }

    .o-news_item:nth-child(7) {
        display: none
    }

.o-news_more {
    margin-top: 47px;
    text-align: right
}

.o-our-members {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #181818
}

.o-our-members_title {
    color: #fff;
    text-align: center
}

.o-our-members_col {
    margin-top: 100px
}

.o-our-slogan {
    overflow: hidden;
    position: relative;
    padding-top: 92.66666px;
    padding-bottom: 70px;
    background-color: #000;
    color: #fff
}

.o-our-slogan_bg {
    display: block;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    max-width: 283.33333px
}

    .o-our-slogan_bg .m-staylowkey-bg svg {
        fill: hsla(0,0%,100%,.05)
    }

.o-our-slogan .m-section-header_title .a-heading {
    font-size: 40px
}

.o-our-slogan .a-lead {
    margin-top: 27px
}

.o-our-slogan_title .a-heading.ja.size4 {
    margin-top: 41px
}

.o-our-slogan .a-body {
    margin-top: 16px
}

.o-page-header-squish {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 333.33333px
}

.o-page-header-squish_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

    .o-page-header-squish_bg figure {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-page-header-squish_bg figure img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .o-page-header-squish_bg figure img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-page-header-squish_body {
    z-index: 10;
    position: absolute;
    width: 92%;
    height: 100%;
    left: 8%;
    top: 8%;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    color: #fff
}

    .o-page-header-squish_body > * {
        transform: translateX(-100px);
        opacity: 0
    }

.show .o-page-header-squish_body > div {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-page-header-squish_body > div:first-child {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .08s
    }

    .show .o-page-header-squish_body > div:nth-child(2) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .16s
    }

    .show .o-page-header-squish_body > div:nth-child(3) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .24s
    }

.o-page-header {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh
}

.o-page-header_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

    .o-page-header_bg figure {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-page-header_bg figure img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .o-page-header_bg figure img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-page-header_body {
    z-index: 10;
    position: absolute;
    width: 92%;
    height: 100%;
    left: 8%;
    top: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    color: #fff
}

    .o-page-header_body > * {
        transform: translateX(-100px);
        opacity: 0
    }

.show .o-page-header_body > div {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-page-header_body > div:first-child {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .08s
    }

    .show .o-page-header_body > div:nth-child(2) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .16s
    }

    .show .o-page-header_body > div:nth-child(3) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .24s
    }

.o-page-header_above {
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.83333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-page-header_below {
    margin-top: 11px;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0;
    color: hsla(0,0%,100%,.5)
}

.o-page-overlay {
    z-index: 5060;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

.o-page-overlay_inner {
    z-index: 1;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.shrink .o-page-overlay_inner {
    animation-name: menuShrink;
    animation-duration: 0s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes menuShrink {
    0% {
        transform: translateX(0);
        transform-origin: bottom;
        opacity: 1
    }

    to {
        transform: translateX(60px);
        transform-origin: bottom;
        opacity: 0
    }
}

.init.shrink .o-page-overlay_inner {
    animation-duration: 1.5s
}

.expand .o-page-overlay_inner {
    animation-name: menuExpand;
    animation-duration: .7s;
    animation-delay: .1s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes menuExpand {
    0% {
        transform: translateX(-60px);
        transform-origin: bottom;
        opacity: 0
    }

    to {
        transform: translateX(0);
        transform-origin: bottom;
        opacity: 1
    }
}

.o-page-overlay_inner svg {
    width: 71px;
    height: 71px
}

.o-page-overlay_bg {
    background-color: #b40607
}

    .o-page-overlay_bg, .o-page-overlay_bg:before {
        position: absolute;
        top: 0;
        left: 50%;
        width: 50%;
        height: 100%
    }

        .o-page-overlay_bg:before {
            content: "";
            background-color: #b30606;
            transform-origin: 100% 0
        }

.shrink .o-page-overlay_bg:before {
    transform: scale(0)
}

.expand .o-page-overlay_bg:before {
    animation-name: page-overlay-moment-in;
    animation-duration: .94s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes page-overlay-moment-in {
    0% {
        transform-origin: 100% 0;
        transform: scaleX(1)
    }

    to {
        transform-origin: 100% 0;
        transform: scaleX(0)
    }
}

.shrink .o-page-overlay_bg {
    animation-name: page-overlay-out;
    animation-duration: 0s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes page-overlay-out {
    0% {
        transform-origin: 100% 0;
        transform: translate(0)
    }

    to {
        transform-origin: 100% 0;
        transform: translate(100%)
    }
}

.init.shrink .o-page-overlay_bg {
    animation-duration: 0.3s
}

.expand .o-page-overlay_bg {
    animation-name: page-overlay-in;
    animation-duration: 0.9s;
    animation-delay: 0s;
    animation-timing-function: cubic-bezier(.04,.93,.02,.98);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: both
}

@keyframes page-overlay-in {
    0% {
        transform: translate(-100%)
    }

    to {
        transform: translate(0)
    }
}

.o-pagetop-viewport {
    z-index: 3000;
    overflow: hidden;
    position: absolute;
    width: 100%;
    height: 100%;
    pointer-events: none
}

.o-pagetop-button {
    overflow: hidden;
    pointer-events: auto;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border: 1px solid #878787;
    transition: background-color .3s ease
}

    .o-pagetop-button .a-icon {
        z-index: 10;
        position: relative;
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
    }

    .o-pagetop-button:before {
        content: "";
        animation-name: translate-up-out-axis-Y-origin-bottom-0--100;
        animation-duration: .3s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.215,.61,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,.5)
    }

    .o-pagetop-button:hover:before {
        animation-name: translate-up-in-axis-Y-origin-bottom-100-0;
        animation-duration: .3s;
        animation-delay: 0s;
        animation-timing-function: cubic-bezier(.215,.61,.355,1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: both
    }

    .o-pagetop-button:hover .a-icon {
        color: #fff
    }

.o-pagination {
    padding-bottom: 64px;
    background-color: #181818;
    color: hsla(0,0%,100%,.5);
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

    .o-pagination .inner {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: center
    }

        .o-pagination .inner a {
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
        }

            .o-pagination .inner a:hover {
                opacity: .8;
                color: #fff
            }

        .o-pagination .inner .prev {
            margin-right: auto
        }

        .o-pagination .inner .next {
            margin-left: auto
        }

            .o-pagination .inner .next.invisible, .o-pagination .inner .prev.invisible {
                opacity: .3
            }

        .o-pagination .inner .pages {
            display: flex;
            flex-flow: row nowrap;
            align-items: center;
            justify-content: center
        }

            .o-pagination .inner .pages .page-number {
                margin: 0 .9em
            }

            .o-pagination .inner .pages .current {
                color: #fff
            }

.o-pamphlet-design {
    padding-top: 133.33333px;
    background-color: #000
}

.o-pamphlet-design_items {
    margin-top: 100px
}

.o-pamphlet-design_link {
    margin-top: 46.66667px;
    text-align: center
}

.o-pamphlet-design_flow {
    padding-top: 133.33333px
}

.o-pamphlet-design_flow_header {
    font-family: Impact,'Microsoft YaHei';
    line-height: 1;
    text-align: center
}

    .o-pamphlet-design_flow_header .a-heading {
        display: inline-block;
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0
    }

        .o-pamphlet-design_flow_header .a-heading:after {
            content: "";
            padding-top: .3em;
            display: block;
            width: 100%;
            height: 2px;
            border-bottom: 2px solid #fff
        }

.o-pamphlet-design_flow_items {
    margin-top: 46.66667px
}

.o-pamphlet-design_flow_item {
    position: relative;
    text-align: center
}

    .o-pamphlet-design_flow_item .a-heading.ja {
        line-height: 66.66667px
    }

.o-pamphlet-design_flow_item_arrow {
    z-index: 1;
    position: absolute;
    width: 100%
}

.o-pamphlet-design_flow_item:first-child {
    background-color: #181818
}

    .o-pamphlet-design_flow_item:first-child path {
        fill: #181818;
        opacity: 1
    }

.o-pamphlet-design_flow_item:nth-child(2) {
    background-color: #232323
}

    .o-pamphlet-design_flow_item:nth-child(2) path {
        fill: #232323;
        opacity: 1
    }

.o-pamphlet-design_flow_item:nth-child(3) {
    background-color: #323232
}

    .o-pamphlet-design_flow_item:nth-child(3) path {
        fill: #323232;
        opacity: 1
    }

.o-pamphlet-design_flow_item:nth-child(4) {
    background-color: #454545
}

    .o-pamphlet-design_flow_item:nth-child(4) path {
        fill: #454545;
        opacity: 1
    }

.o-pamphlet-design_flow_item:nth-child(5) {
    background-color: #fff
}

    .o-pamphlet-design_flow_item:nth-child(5) .a-heading.ja {
        color: #000
    }

.o-pamphlet-design_flow_footer {
    margin-top: 17.33333px;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
    color: #fff;
    opacity: .5
}

    .o-pamphlet-design_flow_footer .sm {
        font-size: 80%
    }

.o-pamphlet-design_plan {
    padding-top: 133.33333px
}

.o-pamphlet-design_plan_header {
    font-family: Impact,'Microsoft YaHei';
    line-height: 1;
    text-align: center
}

    .o-pamphlet-design_plan_header .a-heading {
        display: inline-block;
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0
    }

        .o-pamphlet-design_plan_header .a-heading:after {
            content: "";
            padding-top: .3em;
            display: block;
            width: 100%;
            height: 2px;
            border-bottom: 2px solid #fff
        }

.o-pamphlet-design_plan_table {
    padding-top: 40px;
    padding-bottom: 100px
}

.o-partners {
    padding-top: 90px;
    padding-bottom: 100px;
    background-color: #181818
}

    .o-partners > .container {
        padding: 0 8%;
        max-width: calc(980px + 16%)
    }

.o-partners_title {
    text-align: center;
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0
}

.o-partners_subtitle {
    margin-top: 10px;
    text-align: center;
    font-size: 1.26667rem;
    line-height: 1;
    letter-spacing: 0
}

.o-partners_inner {
    max-width: 380px;
    margin-left: auto;
    margin-right: auto
}

.o-partners_row {
    margin-top: 64px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-partners_item {
    border: 1px solid hsla(0,0%,100%,.1);
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 50%;
    max-width: 50%
}

.o-partners_item_inner {
    padding: 43% 28%
}

.o-partners_item img {
    max-width: 100%
}

.o-related-news {
    background-color: #000;
    padding-top: 100px
}

.o-related-news_title {
    color: #fff;
    text-align: center
}

.o-related-news_row {
    margin-top: 64px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -10px;
    margin-right: -10px
}

.o-related-news_item {
    margin-top: 30px;
    padding-left: 10px;
    padding-right: 10px;
    flex: 0 1 50%;
    max-width: 50%
}

    .o-related-news_item:nth-child(4) {
        display: none
    }

    .o-related-news_item:nth-child(5) {
        display: none
    }

    .o-related-news_item:nth-child(6) {
        display: none
    }

    .o-related-news_item:nth-child(7) {
        display: none
    }

.o-related-works {
    background-color: #000;
    padding-top: 100px
}

.o-related-works_title {
    color: #fff;
    text-align: center
}

.o-related-works_row {
    margin-top: 64px
}

.o-related-works_item {
    margin-top: 30px;
    padding-left: 7%;
    padding-right: 7%;
    flex: 0 1 100%;
    max-width: 100%
}

    .o-related-works_item:nth-child(4) {
        display: none
    }

    .o-related-works_item:nth-child(5) {
        display: none
    }

    .o-related-works_item:nth-child(6) {
        display: none
    }

    .o-related-works_item:nth-child(7) {
        display: none
    }

.o-service {
    padding-top: 69px;
    padding-bottom: 0;
    background-color: #181818
}

.o-service_features {
    margin-top: 64px
}

    .o-service_features .container {
        padding-left: 0;
        padding-right: 0
    }

    .o-service_features .row {
        margin-left: 0;
        margin-right: 0
    }

    .o-service_features [class^=col-] {
        padding-left: 0;
        padding-right: 0
    }

.o-service_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-service_item {
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 100%;
    max-width: 100%
}

.o-single-header {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 333.33333px
}

.o-single-header_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

    .o-single-header_bg:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,.5)
    }

    .o-single-header_bg figure {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-single-header_bg figure img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

@supports (object-fit:cover) {
    .o-single-header_bg figure img {
        transform: none;
        top: 0;
        left: 0;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }
}

.o-single-header_body {
    z-index: 10;
    position: absolute;
    width: 86%;
    height: 100%;
    left: 8%;
    top: 8%;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    color: #fff
}

    .o-single-header_body > * {
        transform: translateX(-100px);
        opacity: 0
    }

.show .o-single-header_body > div {
    opacity: 1;
    transform: translateX(0)
}

    .show .o-single-header_body > div:first-child {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .08s
    }

    .show .o-single-header_body > div:nth-child(2) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .16s
    }

    .show .o-single-header_body > div:nth-child(3) {
        transition: 1.4s cubic-bezier(.215,.61,.355,1) .24s
    }

.o-single-header_title {
    font-size: 1.93333rem;
    line-height: 1.5;
    letter-spacing: 0;
    font-weight: 500
}

.o-single-header_meta {
    margin-top: 16px;
    display: flex;
    align-items: center
}

.o-single-header_cat {
    margin-right: 13px
}

    .o-single-header_cat .a-subtitle {
        color: #fff
    }

    .o-single-header_cat .a-subtitle, .o-single-header_date .a-subtitle {
        font-family: Impact,'Microsoft YaHei';
    }

.o-single-back {
    background-color: #000;
    color: #fff;
    text-align: center;
    padding-top: 64px;
    padding-bottom: 64px
}

.o-slogan {
    overflow: hidden;
    padding-top: 70px;
    padding-bottom: 100px;
    background-color: #181818
}

.o-slogan_subtitle {
    position: absolute;
    top: 10%;
    left: 13%
}

.o-slogan_subtitle-outer {
    max-width: calc(1350px + 16%)
}

    .o-slogan_subtitle-outer .inner {
        position: relative
    }

.o-slogan_bg {
    display: none
}

.o-slogan_images {
    z-index: 20;
    overflow: hidden;
    position: relative;
    padding-bottom: 102.9126214%;
    height: 0
}

.o-slogan_image {
    position: absolute;
    top: 50%;
    left: 50%
}

    .o-slogan_image.i01 {
        margin-top: -35%;
        margin-left: -49%;
        width: 147.33333px;
        width: 44%
    }

    .o-slogan_image.i02 {
        margin-top: -51.5%;
        margin-left: -12%;
        width: 195px;
        width: 58.1%
    }

    .o-slogan_image.i03 {
        margin-top: 2%;
        margin-left: 14%;
        width: 119.66667px;
        width: 36%
    }

    .o-slogan_image.i04 {
        margin-top: 8.5%;
        margin-left: -16%;
        width: 110px;
        width: 32.4%
    }

    .o-slogan_image.i05 {
        margin-top: -11.5%;
        margin-left: -39%;
        width: 114.33333px;
        width: 34.42%
    }

.o-slogan_body {
    padding-top: 50px;
    position: relative
}

.o-slogan_body_inner {
    z-index: 10;
    position: relative
}

.o-slogan_body_bg {
    position: relative;
    width: 110%
}

    .o-slogan_body_bg .m-staylowkey-bg {
        position: absolute;
        top: -80px;
        left: -30px
    }

.o-slogan_staylowkey {
    margin-top: 37px
}

    .o-slogan_staylowkey svg {
        width: 203.66667px;
        height: 213.33333px
    }

.o-slogan_title {
    margin-top: 42px
}

.o-slogan .a-body {
    margin-top: 16px
}

.o-splashscreen {
    z-index: 9000;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

    .o-splashscreen.hide {
        pointer-events: none
    }

.o-splashscreen_bg {
    z-index: 1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    transition: .8s cubic-bezier(.14,1,.34,1) .2s;
    transform: scaleX(1);
    transform-origin: 100% 0
}

.hide .o-splashscreen_bg {
    transform: scaleX(0)
}

.o-splashscreen_bg:after {
    content: "";
    transform-origin: 0 0;
    transition: .8s cubic-bezier(.14,1,.34,1) 0s;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #640000;
    transform: scaleX(0)
}

.hide .o-splashscreen_bg:after {
    transform: scaleX(1)
}

.o-splashscreen_inner {
    z-index: 2;
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.o-splashscreen_logo {
    transition: .8s cubic-bezier(.14,1,.34,1) 0s,opacity .3s cubic-bezier(.215,.61,.355,1) 0s;
}

    .o-splashscreen_logo svg {
        width: 71px;
        height: 71px
    }

.hide .o-splashscreen_logo {
    transform: translateX(60px);
    opacity: 0
    
}

.o-subpage-links {
    padding-top: 0
}

.o-subpage-links_row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: 0;
    margin-right: 0
}

.o-subpage-links_item {
    padding-left: 0;
    padding-right: 0;
    flex: 0 1 100%;
    max-width: 100%
}

.o-swipe-cards {
    overflow: hidden;
    padding-bottom: 5px
}

.o-swipe-cards_container {
    padding: 0 8px
}

.o-swipe-cards_slide {
    width: 300px;
    padding: 0 8px
}

.o-three-main-solutions {
    padding: 100px 0;
    background-color: #181818
}

.o-three-main-solutions_header {
    text-align: center
}

.o-three-main-solutions_items {
    margin-top: 57.33333px;
    overflow: hidden
}

    .o-three-main-solutions_items .swiper-controls {
        margin-top: 74.33333px
    }

.o-toc {
    padding: 10.66667px 16px;
    max-width: 500px;
    display: flex;
    flex-flow: column wrap;
    border: 1px solid #909090;
    background-color: #303030;
    color: #909090
}

.o-toc_title {
    margin-bottom: 8px;
    color: #fff;
    font-size: 1.93333rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: 1.5
}

.o-toc_item {
    padding: 8px 12px;
    margin-left: -2em;
    font-size: 1.1rem;
    line-height: 1;
    letter-spacing: 0;
    line-height: 1.5
}

.o-toc_level-1 {
    padding-left: 2em
}

.o-toc_level-2 {
    padding-left: 4em
}

.o-toc_level-3 {
    padding-left: 6em
}

.o-toc_level-4 {
    padding-left: 8em
}

.o-toc_level-5 {
    padding-left: 10em
}

.o-toc_level-6 {
    padding-left: 12em
}

.o-umplex {
    background-color: #640000
}

.o-umplex_left {
    z-index: 10;
    position: relative;
    padding-top: 66.66666px;
    padding-bottom: 0;
    padding-right: 10%
}

.o-umplex_image {
    background-color: #640000
}

    .o-umplex_image .hidden-desktop {
        margin-left: 8%;
        margin-bottom: 19%
    }

    .o-umplex_image figure {
        height: 0;
        padding-bottom: 33.33333%
    }

.o-umplex_body {
    margin-top: 24%;
    margin-bottom: 0;
    padding-top: calc(30% + 90px);
    padding-bottom: 100px;
    height: 100%;
    background-color: #640000
}

    .o-umplex_body .a-lead {
        margin-top: 27px
    }

    .o-umplex_body .m-section-header, .o-umplex_body_title {
        text-align: center
    }

        .o-umplex_body_title .a-heading {
            margin-top: 56px
        }

    .o-umplex_body .a-body {
        margin-top: 18px
    }

    .o-umplex_body .a-button {
        margin-top: 50px
    }

.o-value {
    padding: 116px 0;
    background-color: #181818
}

.o-value_right {
    margin-top: 42px
}

.o-vision {
    padding: 100px 0 120px;
    background-color: #640000
}

.o-vision_subline {
    margin-bottom: 20px
}

    .o-vision_subline .m-rotated-title {
        color: hsla(0,0%,100%,.5)
    }

.o-vision .m-section-header_below {
    margin-top: 26px
}

.o-vision_title .a-heading {
    margin-top: 47px
}

.o-vision .a-body {
    margin-top: 13px;
    color: #fff
}

.o-work-content .m-section-header .a-heading {
    font-size: 50px
}

.o-work-content_right {
    margin-top: 42px
}

.o-work-content_description {
    margin-top: 32px
}

.o-work-content_title {
    color: #fff
}

.o-work-content_beforeafter {
    margin-top: 32px
}

.o-work-content_body {
    color: hsla(0,0%,100%,.5);
    font-size: 1.26667rem;
    line-height: 1.842;
    letter-spacing: 0;
    margin-top: 16px
}

    .o-work-content_body:after, .o-work-content_body:before {
        content: " ";
        display: table
    }

    .o-work-content_body:after {
        clear: both
    }

    .o-work-content_body h1, .o-work-content_body h2 {
        color: #fff;
        font-size: 1.6rem;
        line-height: 1.5;
        letter-spacing: 0
    }

    .o-work-content_body h3, .o-work-content_body h4, .o-work-content_body h5, .o-work-content_body h6 {
        position: relative;
        padding-left: .6em;
        color: #fff;
        font-size: 1.3rem;
        line-height: 1.53846;
        letter-spacing: .1em
    }

        .o-work-content_body h3:before, .o-work-content_body h4:before, .o-work-content_body h5:before, .o-work-content_body h6:before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 3px;
            height: 100%;
            border-left: 3px solid #909090
        }

    .o-work-content_body h1, .o-work-content_body h2, .o-work-content_body h3, .o-work-content_body h4, .o-work-content_body h5, .o-work-content_body h6 {
        margin: 32px 0 16px
    }

        .o-work-content_body h1:first-child, .o-work-content_body h2:first-child, .o-work-content_body h3:first-child, .o-work-content_body h4:first-child, .o-work-content_body h5:first-child, .o-work-content_body h6:first-child {
            margin-top: 0
        }

    .o-work-content_body img {
        max-width: 100%;
        height: auto
    }

    .o-work-content_body iframe {
        max-width: 100%
    }

    .o-work-content_body blockquote {
        padding: 10px 20px;
        margin: 0 0 20px;
        font-size: 17.5px;
        border-left: 5px solid #303030
    }

    .o-work-content_body code {
        padding: 2px 4px;
        font-size: 90%;
        color: #b30606;
        background-color: #303030;
        border-radius: 4px
    }

    .o-work-content_body pre {
        display: block;
        padding: 9.5px;
        margin: 0 0 10px;
        font-size: 13px;
        line-height: 1.42857;
        word-break: break-all;
        word-wrap: break-word;
        color: #ccc;
        background-color: #303030;
        border: 1px solid #4f4f4f;
        border-radius: 4px
    }

    .o-work-content_body dt {
        font-weight: 500;
        color: #fff
    }

    .o-work-content_body dd {
        text-indent: 2em
    }

    .o-work-content_body b, .o-work-content_body strong {
        color: #fff;
        font-weight: 500
    }

    .o-work-content_body a {
        word-wrap: break-word;
        color: hsla(0,0%,100%,.5);
        padding-bottom: 1px;
        display: inline;
        box-shadow: inset -3px -4px 0 -3px hsla(0,0%,100%,.5);
        transition: .3s ease
    }

        .o-work-content_body a:hover {
            box-shadow: inset -3px -3px 0 -3px hsla(0,0%,100%,.5)
        }

    .o-work-content_body p {
        margin-top: 1.6666em
    }

    .o-work-content_body strong {
        font-weight: 700
    }

    .o-work-content_body em {
        font-style: italic
    }

    .o-work-content_body ul {
        list-style-type: disc
    }

        .o-work-content_body ul li {
            list-style-type: inherit;
            margin-left: 2em
        }

    .o-work-content_body ol {
        list-style-type: decimal
    }

        .o-work-content_body ol li {
            list-style-type: inherit;
            margin-left: 2em
        }

    .o-work-content_body table {
        width: 100%;
        max-width: 100%;
        margin-bottom: 1em;
        table-layout: auto;
        border: none;
        border-bottom: 1px solid #303030
    }

        .o-work-content_body table tr td, .o-work-content_body table tr th {
            padding: 20px 0
        }

        .o-work-content_body table tr th {
            font-weight: 500;
            color: #fff
        }

        .o-work-content_body table tr td, .o-work-content_body table tr th {
            border: none;
            border-top: 1px solid #303030
        }

    .o-work-content_body img[class*=attachment-], .o-work-content_body img[class*=wp-image-] {
        max-width: 100%;
        height: auto
    }

    .o-work-content_body .aligncenter {
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    .o-work-content_body .alignright {
        width: 50%;
        float: right;
        display: inline;
        margin-left: 8px
    }

    .o-work-content_body .alignleft {
        width: 50%;
        float: left;
        display: inline;
        margin-right: 8px
    }

    .o-work-content_body .clear {
        clear: both
    }

.o-works {
    background-color: #181818;
    padding-bottom: 64px
}

.o-works_row {
    margin-top: 16px;
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-left: -10px;
    margin-right: -10px
}

.o-works_col {
    margin-top: 51px;
    padding-left: 10px;
    padding-right: 10px;
    flex: 0 1 50%;
    max-width: 50%
}

.p-404 {
    position: relative;
    background-color: #640000
}

.p-404_bg {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 3%;
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: hsla(0,0%,100%,.1);
    font-family: Impact,'Microsoft YaHei';
    font-size: 50vw;
    letter-spacing: -.05em
}

.p-404_inner {
    height: 100vh;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    text-align: center
}

.p-404_title {
    color: #fff;
    font-family: Impact,'Microsoft YaHei';
    font-size: 1.93333rem;
    line-height: 1.6666;
    letter-spacing: 0
}

.p-404_button {
    margin-top: 21px;
    z-index: 10;
    position: relative
}

    .p-404_button .a-button {
        padding: 23px 53px
    }

.p-contact {
    padding-bottom: 83.33333px;
    background-color: #181818
}

.p-culture_infographic_age {
    margin-top: 3px
}

.p-culture_infographic_birth {
    margin-top: 3px
}

.p-culture_infographic_atmos {
    margin-top: 3px
}

.p-culture_infographic_holidays {
    margin-top: 3px
}

.p-culture_infographic_drinking {
    margin-top: 3px
}

.p-culture_infographic_time {
    margin-top: 3px
}

.p-culture_infographic_sales {
    margin-top: 3px
}

.p-doc-download-thanks {
    background-color: #000
}

.p-doc-download-thanks_section {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #000;
    text-align: center
}

.p-doc-download-thanks_title {
    font-family: Impact,'Microsoft YaHei';
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0
}

.p-doc-download-thanks .a-button {
    margin-top: 32px
}

.p-doc-download {
    padding-bottom: 83.33333px;
    background-color: #181818
}

.p-entry-thanks {
    background-color: #fff
}

.p-entry-thanks_section {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #fff;
    text-align: center
}

.p-entry-thanks_title {
    color: #000;
    font-family: Impact,'Microsoft YaHei';
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0
}

.p-entry-thanks .a-button {
    margin-top: 32px
}

.p-privacypolicy {
    padding-bottom: 100px
}

    .p-privacypolicy, .p-privacypolicy section {
        background-color: #181818
    }

.p-single-work_article {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #181818
}

.p-single-work_contents img, .p-single-work_contents video {
    width: 100%;
    height: auto
}

.p-single-work_voice {
    margin-top: 64px
}

.p-single_article {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #181818
}

.p-single .content-section, .p-sitemap {
    background-color: #181818
}

.p-sitemap {
    padding-bottom: 100px
}

    .p-sitemap section {
        background-color: #181818
    }

.p-sitemap_title .a-heading {
    padding-bottom: 26px;
    box-shadow: inset -3px -4px 0 -3px hsla(0,0%,100%,.1);
    display: block;
    transition: .3s ease;
    font-size: 19.33333px
}

.p-sitemap_col {
    margin-top: 94px
}

.p-sitemap_links {
    margin-top: 43px
}

    .p-sitemap_links .m-label-link {
        display: block;
        margin-top: 15px
    }

        .p-sitemap_links .m-label-link .a-label {
            font-size: 1.26667rem;
            line-height: 1.6;
            letter-spacing: 0
        }

.p-thanks, .p-thanks_section {
    background-color: #181818
}

.p-thanks_section {
    padding-top: 100px;
    padding-bottom: 100px;
    text-align: center
}

.p-thanks_title {
    font-family: Impact,'Microsoft YaHei';
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0
}

.p-thanks .a-button {
    margin-top: 32px
}

.p-top {
    margin-top: 0
}

.stylebook {
    width: 100%;
    padding: 0 50px;
    background-color: #f5f5f5
}

.stylebook-group-title {
    padding-top: 104px;
    color: #3b3b3b;
    font-weight: 100;
    font-family: Impact,'Microsoft YaHei';
    font-size: 18rem;
    line-height: 1;
    letter-spacing: 0;
    border-bottom: 1px solid #ddd
}

.stylebook-items {
    display: flex;
    flex-flow: row wrap;
    margin: 0 -1em
}

.stylebook-item {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    position: relative;
    margin: 64px 16px 0
}

.stylebook-item-inner {
    display: flex;
    align-items: flex-start;
    flex-flow: row wrap;
    flex: 3
}

    .stylebook-item-inner.column {
        justify-content: center;
        flex-flow: column wrap
    }

    .stylebook-item-inner > * {
        margin-bottom: 4px
    }

.stylebook-item-title {
    z-index: 9999;
    flex: 1;
    position: relative;
    background-color: #f4f4f4;
    font-family: Impact,'Microsoft YaHei';
    font-weight: 300;
    font-size: 2.4rem;
    letter-spacing: 0;
    line-height: 1
}

.box {
    display: block;
    width: 200px;
    height: 200px;
    background-color: #537fbb
}

.color-box:first-child {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #d5d5d5;
    color: #fff
}

    .color-box:first-child.black {
        color: #000
    }

.color-box:nth-child(2) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #acacac;
    color: #fff
}

    .color-box:nth-child(2).black {
        color: #000
    }

.color-box:nth-child(3) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #878787;
    color: #fff
}

    .color-box:nth-child(3).black {
        color: #000
    }

.color-box:nth-child(4) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #656565;
    color: #fff
}

    .color-box:nth-child(4).black {
        color: #000
    }

.color-box:nth-child(5) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #3b3b3b;
    color: #fff
}

    .color-box:nth-child(5).black {
        color: #000
    }

.color-box:nth-child(6) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #1e1e1e;
    color: #fff
}

    .color-box:nth-child(6).black {
        color: #000
    }

.color-box:nth-child(7) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #b5ceff;
    color: #fff
}

    .color-box:nth-child(7).black {
        color: #000
    }

.color-box:nth-child(8) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #537fbb;
    color: #fff
}

    .color-box:nth-child(8).black {
        color: #000
    }

.color-box:nth-child(9) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #3364a7;
    color: #fff
}

    .color-box:nth-child(9).black {
        color: #000
    }

.color-box:nth-child(10) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #ffa8a7;
    color: #fff
}

    .color-box:nth-child(10).black {
        color: #000
    }

.color-box:nth-child(11) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #bb5f6b;
    color: #fff
}

    .color-box:nth-child(11).black {
        color: #000
    }

.color-box:nth-child(12) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #cb251e;
    color: #fff
}

    .color-box:nth-child(12).black {
        color: #000
    }

.color-box:nth-child(13) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #fffdcb;
    color: #fff
}

    .color-box:nth-child(13).black {
        color: #000
    }

.color-box:nth-child(14) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #bbb875;
    color: #fff
}

    .color-box:nth-child(14).black {
        color: #000
    }

.color-box:nth-child(15) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    background-color: #a7a32d;
    color: #fff
}

    .color-box:nth-child(15).black {
        color: #000
    }

.spacing_box-stack-xxs {
    display: inline-block;
    margin-right: 4px;
    padding: 1px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-xxs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-xs {
    display: inline-block;
    margin-right: 4px;
    padding: 2px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-xs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-sm {
    display: inline-block;
    margin-right: 4px;
    padding: 4px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-sm > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-md {
    display: inline-block;
    margin-right: 4px;
    padding: 8px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-md > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-lg {
    display: inline-block;
    margin-right: 4px;
    padding: 16px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-lg > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-xl {
    display: inline-block;
    margin-right: 4px;
    padding: 32px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-xl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stack-xxl {
    display: inline-block;
    margin-right: 4px;
    padding: 64px 0 0;
    border: 1px dotted #000
}

    .spacing_box-stack-xxl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-xxs {
    display: inline-block;
    margin-right: 4px;
    padding: 1px;
    border: 1px dotted #000
}

    .spacing_box-inset-xxs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-xs {
    display: inline-block;
    margin-right: 4px;
    padding: 2px;
    border: 1px dotted #000
}

    .spacing_box-inset-xs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-sm {
    display: inline-block;
    margin-right: 4px;
    padding: 4px;
    border: 1px dotted #000
}

    .spacing_box-inset-sm > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-md {
    display: inline-block;
    margin-right: 4px;
    padding: 8px;
    border: 1px dotted #000
}

    .spacing_box-inset-md > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-lg {
    display: inline-block;
    margin-right: 4px;
    padding: 16px;
    border: 1px dotted #000
}

    .spacing_box-inset-lg > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-xl {
    display: inline-block;
    margin-right: 4px;
    padding: 32px;
    border: 1px dotted #000
}

    .spacing_box-inset-xl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-inset-xxl {
    display: inline-block;
    margin-right: 4px;
    padding: 64px;
    border: 1px dotted #000
}

    .spacing_box-inset-xxl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-xxs {
    display: inline-block;
    margin-right: 4px;
    padding: 1px .66667px;
    border: 1px dotted #000
}

    .spacing_box-stretch-xxs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-xs {
    display: inline-block;
    margin-right: 4px;
    padding: 2px 1.33333px;
    border: 1px dotted #000
}

    .spacing_box-stretch-xs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-sm {
    display: inline-block;
    margin-right: 4px;
    padding: 4px 2.66667px;
    border: 1px dotted #000
}

    .spacing_box-stretch-sm > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-md {
    display: inline-block;
    margin-right: 4px;
    padding: 8px 5.33333px;
    border: 1px dotted #000
}

    .spacing_box-stretch-md > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-lg {
    display: inline-block;
    margin-right: 4px;
    padding: 16px 10.66667px;
    border: 1px dotted #000
}

    .spacing_box-stretch-lg > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-xl {
    display: inline-block;
    margin-right: 4px;
    padding: 32px 21.33333px;
    border: 1px dotted #000
}

    .spacing_box-stretch-xl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-stretch-xxl {
    display: inline-block;
    margin-right: 4px;
    padding: 64px 42.66667px;
    border: 1px dotted #000
}

    .spacing_box-stretch-xxl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-xxs {
    display: inline-block;
    margin-right: 4px;
    padding: .66667px 1px;
    border: 1px dotted #000
}

    .spacing_box-squish-xxs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-xs {
    display: inline-block;
    margin-right: 4px;
    padding: 1.33333px 2px;
    border: 1px dotted #000
}

    .spacing_box-squish-xs > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-sm {
    display: inline-block;
    margin-right: 4px;
    padding: 2.66667px 4px;
    border: 1px dotted #000
}

    .spacing_box-squish-sm > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-md {
    display: inline-block;
    margin-right: 4px;
    padding: 5.33333px 8px;
    border: 1px dotted #000
}

    .spacing_box-squish-md > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-lg {
    display: inline-block;
    margin-right: 4px;
    padding: 10.66667px 16px;
    border: 1px dotted #000
}

    .spacing_box-squish-lg > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-xl {
    display: inline-block;
    margin-right: 4px;
    padding: 21.33333px 32px;
    border: 1px dotted #000
}

    .spacing_box-squish-xl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

.spacing_box-squish-xxl {
    display: inline-block;
    margin-right: 4px;
    padding: 42.66667px 64px;
    border: 1px dotted #000
}

    .spacing_box-squish-xxl > div {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #b5ceff;
        width: 50px;
        height: 50px
    }

@media (min-width:570px) {
    .o-kv-copy {
        font-size: 120px
    }
}

@media (min-width:768px) {
    .o-archive_item.pickup {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-archive_item:nth-child(4) {
        display: block
    }

    .o-archive_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-members_col {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-members_col1 {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-news_col {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-subpage-links_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-client-voice_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-client-voice_left {
        flex: 37
    }

    .o-client-voice_left_inner {
        padding-right: 12%
    }

    .o-client-voice_right {
        margin-top: 0;
        flex: 63
    }

    .o-client_inner {
        max-width: none
    }

    .o-client_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -3.61111vw;
        margin-right: -3.61111vw
    }

    .o-client_item:nth-child(n+10) {
        display: block
    }

    .o-client_item {
        padding-left: 2.5vw;
        padding-right: 2.5vw;
        flex: 0 1 20%;
        max-width: 20%
    }

    .o-news_item.pickup {
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-news_item:nth-child(3) {
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-news_item:nth-child(5) {
        order: 5;
        display: block
    }

    .o-news_item:nth-child(4) {
        display: block
    }

    .o-our-members_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

    .o-our-members_col {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-related-news_item:nth-child(4) {
        display: block
    }

    .o-related-news_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-related-works_item:nth-child(4) {
        display: block
    }

    .o-related-works_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-service_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-subpage-links_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }
}

@media (min-width:992px) {
    .hidden-desktop {
        display: none !important
    }

    .container {
        margin-right: auto;
        margin-left: auto;
        padding-left: 15px;
        padding-right: 15px
    }

        .container:after, .container:before {
            content: " ";
            display: table
        }

        .container:after {
            clear: both
        }

    .row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -15px;
        margin-right: -15px
    }

    .col-desktop-0 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 1 1 auto;
        max-width: none
    }

    .col-desktop-offset-0 {
        margin-left: 0
    }

    .col-desktop-1 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 8.33333%;
        max-width: 8.33333%
    }

    .col-desktop-offset-1 {
        margin-left: 8.33333%
    }

    .col-desktop-2 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 16.66667%;
        max-width: 16.66667%
    }

    .col-desktop-offset-2 {
        margin-left: 16.66667%
    }

    .col-desktop-3 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .col-desktop-offset-3 {
        margin-left: 25%
    }

    .col-desktop-4 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .col-desktop-offset-4 {
        margin-left: 33.33333%
    }

    .col-desktop-5 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 41.66667%;
        max-width: 41.66667%
    }

    .col-desktop-offset-5 {
        margin-left: 41.66667%
    }

    .col-desktop-6 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .col-desktop-offset-6 {
        margin-left: 50%
    }

    .col-desktop-7 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 58.33333%;
        max-width: 58.33333%
    }

    .col-desktop-offset-7 {
        margin-left: 58.33333%
    }

    .col-desktop-8 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 66.66667%;
        max-width: 66.66667%
    }

    .col-desktop-offset-8 {
        margin-left: 66.66667%
    }

    .col-desktop-9 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 75%;
        max-width: 75%
    }

    .col-desktop-offset-9 {
        margin-left: 75%
    }

    .col-desktop-10 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 83.33333%;
        max-width: 83.33333%
    }

    .col-desktop-offset-10 {
        margin-left: 83.33333%
    }

    .col-desktop-11 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 91.66667%;
        max-width: 91.66667%
    }

    .col-desktop-offset-11 {
        margin-left: 91.66667%
    }

    .col-desktop-12 {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 100%;
        max-width: 100%
    }

    .col-desktop-offset-12 {
        margin-left: 100%
    }

    .row-reverse-desktop {
        flex-direction: row-reverse
    }

    .no-gutters > [class*=" col-"] > *, .no-gutters > [class^=col-] > * {
        height: 100%
    }

    .a-angle {
        width: 30px;
        height: 10px
    }

        .a-angle:after, .a-angle:before {
            left: 47%;
            width: 6px;
            height: 6px
        }

    .a-arrow {
        width: 43px;
        height: 43px
    }

        .a-arrow:after, .a-arrow:before {
            left: 47%;
            width: 6px;
            height: 6px
        }

    .a-body {
        font-size: 1.3rem;
        line-height: 2.15385;
        letter-spacing: 0
    }

        .a-body.size2 {
            font-size: 1.2rem;
            line-height: 2.15385;
            letter-spacing: 0
        }

    .a-button {
        font-size: 1.4rem;
        line-height: 1;
        letter-spacing: 0
    }

        .a-button.tiny {
            font-size: .8rem;
            line-height: 1;
            letter-spacing: 0
        }

        .a-button.small {
            font-size: 1.2rem;
            line-height: 1;
            letter-spacing: 0
        }

        .a-button.large {
            padding: 33px;
            max-width: 450px;
            font-size: 1.4rem;
            line-height: 1;
            letter-spacing: 0
        }

    .a-checkbox {
        width: 30px;
        height: 30px;
        margin-right: 20px
    }

        .a-checkbox:checked {
            background-position: 0 2px
        }

    .a-cross {
        width: 26px;
        height: 26px
    }

        .a-cross .bar {
            width: 26px;
            height: 3px
        }

    .a-hamburger {
        width: 26px;
        height: 26px
    }

    .a-hamburger_open .bar {
        width: 26px;
        height: 3px
    }

        .a-hamburger_open .bar:nth-child(2) {
            top: 8px;
            width: 14px
        }

        .a-hamburger_open .bar:nth-child(3) {
            top: 16px;
            width: 18px
        }

    .hover .a-hamburger_open .bar:first-child, .hover .a-hamburger_open .bar:nth-child(2), .hover .a-hamburger_open .bar:nth-child(3) {
        width: 20px
    }

    .a-heading {
        font-size: 18rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

        .a-heading.size1 {
            font-size: 18rem;
            letter-spacing: 0;
            line-height: 1
        }

        .a-heading.size2 {
            font-size: 8rem;
            line-height: 1;
            letter-spacing: 0;
            line-height: 1.1
        }

        .a-heading.size3 {
            font-size: 4.5rem;
            line-height: 1;
            letter-spacing: 0;
            line-height: 1.1
        }

        .a-heading.size4 {
            font-size: 1.8rem;
            line-height: 1;
            letter-spacing: 0;
            line-height: 1.1
        }

        .a-heading.size5 {
            font-size: 1.3rem;
            line-height: 1;
            letter-spacing: 0;
            line-height: 1.1
        }

        .a-heading.size6 {
            font-size: 2.4rem;
            line-height: 1;
            letter-spacing: 0;
            line-height: 1.1
        }

        .a-heading.ja.size2 {
            font-size: 3.5rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size3 {
            font-size: 2.4rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size4 {
            font-size: 1.8rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size5 {
            font-size: 1.6rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

        .a-heading.ja.size6 {
            font-size: 1.3rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500;
            line-height: 1.66666
        }

    .a-icon.size1 {
        font-size: 6.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size2 {
        font-size: 3.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size3 {
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .a-icon.size4 {
        font-size: .8rem;
        line-height: 1;
        letter-spacing: 0
    }

    .icon-umplex.size3 svg {
        width: 40px;
        height: 40px
    }

    .icon-umplex.size4 svg {
        width: 40px;
        height: 40px
    }

    .icon-note.size3 svg {
        width: 70px;
        height: 21px
    }

    .icon-note.size4 svg {
        width: 62px;
        height: 19px
    }

    .icon-wantedly.size3 svg {
        width: 30px;
        height: 19px
    }

    .icon-wantedly.size4 svg {
        width: 29px;
        height: 19px
    }

    .icon-pinterest.size3 svg {
        width: 21px;
        height: 21px
    }

    .icon-pinterest.size4 svg {
        width: 21px;
        height: 21px
    }

    .a-image-hover {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: .3em
    }

    .a-image .placeholder {
        display: none
    }

    .a-image .placeholder-md {
        display: block
    }

    .a-img .placeholder {
        display: none
    }

    .a-img .placeholder-md {
        display: block
    }

    .a-lazy-image .placeholder {
        display: none
    }

    .a-lazy-image .placeholder-md {
        display: block
    }

    .a-input {
        padding: 35px;
        font-size: 1.3rem;
        line-height: 1.53846;
        letter-spacing: .05em
    }

    .a-label {
        font-size: 1.4rem;
        line-height: 1;
        letter-spacing: 0
    }

        .a-label.size2 {
            font-size: 1.2rem;
            line-height: 1;
            letter-spacing: 0
        }

        .a-label.size3 {
            font-size: 1rem;
            line-height: 1;
            letter-spacing: 0
        }

    .a-lead {
        font-size: 3rem;
        line-height: 2;
        letter-spacing: 0
    }

        .a-lead.size2 {
            font-size: 3rem;
            line-height: 1.16667;
            letter-spacing: 0
        }

        .a-lead.ja.size1 {
            font-size: 2.4rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 600;
            line-height: 1.66666
        }

    .a-link {
        display: inline-flex;
        flex-direction: row;
        align-items: center;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: .2em
    }

        .a-link:after {
            margin: 0 18px;
            width: 2px;
            height: 13px;
            border-left: 2px solid silver;
            border-bottom: none
        }

    .a-plus {
        width: 20px;
        height: 20px
    }

        .a-plus:after, .a-plus:before {
            width: 20px;
            border-width: 1px
        }

        .a-plus:after {
            margin-top: -1px
        }

    .a-progress {
        top: 0
    }

    .a-select {
        padding: 34px;
        font-size: 1.3rem;
        line-height: 1.6;
        letter-spacing: 0
    }

    .a-subtitle {
        font-size: 1.5rem;
        line-height: 1.5;
        letter-spacing: 0
    }

        .a-subtitle.size2 {
            font-size: 1.2rem;
            line-height: 1;
            letter-spacing: 0;
            font-weight: 500
        }

    .a-switch-icon:before {
        border-width: 2px;
        width: 40px;
        height: 40px
    }

    .a-switch-icon:after {
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 12px;
        height: 12px
    }

    .a-tag {
        font-size: 1.2rem;
        line-height: 1.16667;
        letter-spacing: .05em
    }

    .a-textarea {
        padding: 35px;
        height: 300px;
        font-size: 1.3rem;
        line-height: 1.53846;
        letter-spacing: .05em
    }

    .container {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(1350px + 16%)
    }

        .container:after, .container:before {
            content: " ";
            display: table
        }

        .container:after {
            clear: both
        }

    .container-phone {
        padding-left: 0;
        padding-right: 0
    }

    .container-desktop {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(1350px + 16%)
    }

        .container-desktop:after, .container-desktop:before {
            content: " ";
            display: table
        }

        .container-desktop:after {
            clear: both
        }

    .container-narrow {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(900px + 16%)
    }

        .container-narrow:after, .container-narrow:before {
            content: " ";
            display: table
        }

        .container-narrow:after {
            clear: both
        }

    .container-narrow-desktop {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(900px + 16%)
    }

        .container-narrow-desktop:after, .container-narrow-desktop:before {
            content: " ";
            display: table
        }

        .container-narrow-desktop:after {
            clear: both
        }

    .container-middle {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(1530px + 16%)
    }

        .container-middle:after, .container-middle:before {
            content: " ";
            display: table
        }

        .container-middle:after {
            clear: both
        }

    .container-wide {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(1800px + 16%)
    }

        .container-wide:after, .container-wide:before {
            content: " ";
            display: table
        }

        .container-wide:after {
            clear: both
        }

    .container-xxs {
        padding-left: 1%;
        padding-right: 1%
    }

        .container-xxs .row {
            margin-left: -.5%;
            margin-right: -.5%
        }

        .container-xxs [class^=col-] {
            padding-left: .5%;
            padding-right: .5%
        }

    .container-xs {
        padding-left: 2%;
        padding-right: 2%
    }

        .container-xs .row {
            margin-left: -1%;
            margin-right: -1%
        }

        .container-xs [class^=col-] {
            padding-left: 1%;
            padding-right: 1%
        }

    .container-sm {
        padding-left: 4%;
        padding-right: 4%
    }

        .container-sm .row {
            margin-left: -2%;
            margin-right: -2%
        }

        .container-sm [class^=col-] {
            padding-left: 2%;
            padding-right: 2%
        }

    .container-md {
        padding-left: 6%;
        padding-right: 6%
    }

        .container-md .row {
            margin-left: -3%;
            margin-right: -3%
        }

        .container-md [class^=col-] {
            padding-left: 3%;
            padding-right: 3%
        }

    .container-lg {
        padding-left: 8%;
        padding-right: 8%
    }

        .container-lg .row {
            margin-left: -4%;
            margin-right: -4%
        }

        .container-lg [class^=col-] {
            padding-left: 4%;
            padding-right: 4%
        }

    .container-xl {
        padding-left: 10%;
        padding-right: 10%
    }

        .container-xl .row {
            margin-left: -5%;
            margin-right: -5%
        }

        .container-xl [class^=col-] {
            padding-left: 5%;
            padding-right: 5%
        }

    .container-xxl {
        padding-left: 12%;
        padding-right: 12%
    }

        .container-xxl .row {
            margin-left: -6%;
            margin-right: -6%
        }

        .container-xxl [class^=col-] {
            padding-left: 6%;
            padding-right: 6%
        }

    .container-xxs-desktop {
        padding-left: 1%;
        padding-right: 1%
    }

        .container-xxs-desktop .row {
            margin-left: -.5%;
            margin-right: -.5%
        }

        .container-xxs-desktop [class^=col-] {
            padding-left: .5%;
            padding-right: .5%
        }

    .container-xs-desktop {
        padding-left: 2%;
        padding-right: 2%
    }

        .container-xs-desktop .row {
            margin-left: -1%;
            margin-right: -1%
        }

        .container-xs-desktop [class^=col-] {
            padding-left: 1%;
            padding-right: 1%
        }

    .container-sm-desktop {
        padding-left: 4%;
        padding-right: 4%
    }

        .container-sm-desktop .row {
            margin-left: -2%;
            margin-right: -2%
        }

        .container-sm-desktop [class^=col-] {
            padding-left: 2%;
            padding-right: 2%
        }

    .container-md-desktop {
        padding-left: 6%;
        padding-right: 6%
    }

        .container-md-desktop .row {
            margin-left: -3%;
            margin-right: -3%
        }

        .container-md-desktop [class^=col-] {
            padding-left: 3%;
            padding-right: 3%
        }

    .container-lg-desktop {
        padding-left: 8%;
        padding-right: 8%
    }

        .container-lg-desktop .row {
            margin-left: -4%;
            margin-right: -4%
        }

        .container-lg-desktop [class^=col-] {
            padding-left: 4%;
            padding-right: 4%
        }

    .container-xl-desktop {
        padding-left: 10%;
        padding-right: 10%
    }

        .container-xl-desktop .row {
            margin-left: -5%;
            margin-right: -5%
        }

        .container-xl-desktop [class^=col-] {
            padding-left: 5%;
            padding-right: 5%
        }

    .container-xxl-desktop {
        padding-left: 12%;
        padding-right: 12%
    }

        .container-xxl-desktop .row {
            margin-left: -6%;
            margin-right: -6%
        }

        .container-xxl-desktop [class^=col-] {
            padding-left: 6%;
            padding-right: 6%
        }

    .mt-xxs {
        margin-top: 2px
    }

    .mt-xxs-negative {
        margin-top: -2px
    }

    .mt-xs {
        margin-top: 4px
    }

    .mt-xs-negative {
        margin-top: -4px
    }

    .mt-sm {
        margin-top: 8px
    }

    .mt-sm-negative {
        margin-top: -8px
    }

    .mt-md {
        margin-top: 16px
    }

    .mt-md-negative {
        margin-top: -16px
    }

    .mt-lg {
        margin-top: 32px
    }

    .mt-lg-negative {
        margin-top: -32px
    }

    .mt-xl {
        margin-top: 64px
    }

    .mt-xl-negative {
        margin-top: -64px
    }

    .mt-xxl {
        margin-top: 128px
    }

    .mt-xxl-negative {
        margin-top: -128px
    }

    .mt-xxs-desktop {
        margin-top: 2px
    }

    .mt-xxs-desktop-negative {
        margin-top: -2px
    }

    .mt-xs-desktop {
        margin-top: 4px
    }

    .mt-xs-desktop-negative {
        margin-top: -4px
    }

    .mt-sm-desktop {
        margin-top: 8px
    }

    .mt-sm-desktop-negative {
        margin-top: -8px
    }

    .mt-md-desktop {
        margin-top: 16px
    }

    .mt-md-desktop-negative {
        margin-top: -16px
    }

    .mt-lg-desktop {
        margin-top: 32px
    }

    .mt-lg-desktop-negative {
        margin-top: -32px
    }

    .mt-xl-desktop {
        margin-top: 64px
    }

    .mt-xl-desktop-negative {
        margin-top: -64px
    }

    .mt-xxl-desktop {
        margin-top: 128px
    }

    .mt-xxl-desktop-negative {
        margin-top: -128px
    }

    .mb-xxs {
        margin-bottom: 2px
    }

    .mb-xxs-negative {
        margin-bottom: -2px
    }

    .mb-xs {
        margin-bottom: 4px
    }

    .mb-xs-negative {
        margin-bottom: -4px
    }

    .mb-sm {
        margin-bottom: 8px
    }

    .mb-sm-negative {
        margin-bottom: -8px
    }

    .mb-md {
        margin-bottom: 16px
    }

    .mb-md-negative {
        margin-bottom: -16px
    }

    .mb-lg {
        margin-bottom: 32px
    }

    .mb-lg-negative {
        margin-bottom: -32px
    }

    .mb-xl {
        margin-bottom: 64px
    }

    .mb-xl-negative {
        margin-bottom: -64px
    }

    .mb-xxl {
        margin-bottom: 128px
    }

    .mb-xxl-negative {
        margin-bottom: -128px
    }

    .mb-xxs-desktop {
        margin-bottom: 2px
    }

    .mb-xxs-desktop-negative {
        margin-bottom: -2px
    }

    .mb-xs-desktop {
        margin-bottom: 4px
    }

    .mb-xs-desktop-negative {
        margin-bottom: -4px
    }

    .mb-sm-desktop {
        margin-bottom: 8px
    }

    .mb-sm-desktop-negative {
        margin-bottom: -8px
    }

    .mb-md-desktop {
        margin-bottom: 16px
    }

    .mb-md-desktop-negative {
        margin-bottom: -16px
    }

    .mb-lg-desktop {
        margin-bottom: 32px
    }

    .mb-lg-desktop-negative {
        margin-bottom: -32px
    }

    .mb-xl-desktop {
        margin-bottom: 64px
    }

    .mb-xl-desktop-negative {
        margin-bottom: -64px
    }

    .mb-xxl-desktop {
        margin-bottom: 128px
    }

    .mb-xxl-desktop-negative {
        margin-bottom: -128px
    }

    .ml-xxs {
        margin-left: 2px
    }

    .ml-xxs-negative {
        margin-left: -2px
    }

    .ml-xs {
        margin-left: 4px
    }

    .ml-xs-negative {
        margin-left: -4px
    }

    .ml-sm {
        margin-left: 8px
    }

    .ml-sm-negative {
        margin-left: -8px
    }

    .ml-md {
        margin-left: 16px
    }

    .ml-md-negative {
        margin-left: -16px
    }

    .ml-lg {
        margin-left: 32px
    }

    .ml-lg-negative {
        margin-left: -32px
    }

    .ml-xl {
        margin-left: 64px
    }

    .ml-xl-negative {
        margin-left: -64px
    }

    .ml-xxl {
        margin-left: 128px
    }

    .ml-xxl-negative {
        margin-left: -128px
    }

    .ml-xxs-desktop {
        margin-left: 2px
    }

    .ml-xxs-desktop-negative {
        margin-left: -2px
    }

    .ml-xs-desktop {
        margin-left: 4px
    }

    .ml-xs-desktop-negative {
        margin-left: -4px
    }

    .ml-sm-desktop {
        margin-left: 8px
    }

    .ml-sm-desktop-negative {
        margin-left: -8px
    }

    .ml-md-desktop {
        margin-left: 16px
    }

    .ml-md-desktop-negative {
        margin-left: -16px
    }

    .ml-lg-desktop {
        margin-left: 32px
    }

    .ml-lg-desktop-negative {
        margin-left: -32px
    }

    .ml-xl-desktop {
        margin-left: 64px
    }

    .ml-xl-desktop-negative {
        margin-left: -64px
    }

    .ml-xxl-desktop {
        margin-left: 128px
    }

    .ml-xxl-desktop-negative {
        margin-left: -128px
    }

    .mr-xxs {
        margin-right: 2px
    }

    .mr-xxs-negative {
        margin-right: -2px
    }

    .mr-xs {
        margin-right: 4px
    }

    .mr-xs-negative {
        margin-right: -4px
    }

    .mr-sm {
        margin-right: 8px
    }

    .mr-sm-negative {
        margin-right: -8px
    }

    .mr-md {
        margin-right: 16px
    }

    .mr-md-negative {
        margin-right: -16px
    }

    .mr-lg {
        margin-right: 32px
    }

    .mr-lg-negative {
        margin-right: -32px
    }

    .mr-xl {
        margin-right: 64px
    }

    .mr-xl-negative {
        margin-right: -64px
    }

    .mr-xxl {
        margin-right: 128px
    }

    .mr-xxl-negative {
        margin-right: -128px
    }

    .mr-xxs-desktop {
        margin-right: 2px
    }

    .mr-xxs-desktop-negative {
        margin-right: -2px
    }

    .mr-xs-desktop {
        margin-right: 4px
    }

    .mr-xs-desktop-negative {
        margin-right: -4px
    }

    .mr-sm-desktop {
        margin-right: 8px
    }

    .mr-sm-desktop-negative {
        margin-right: -8px
    }

    .mr-md-desktop {
        margin-right: 16px
    }

    .mr-md-desktop-negative {
        margin-right: -16px
    }

    .mr-lg-desktop {
        margin-right: 32px
    }

    .mr-lg-desktop-negative {
        margin-right: -32px
    }

    .mr-xl-desktop {
        margin-right: 64px
    }

    .mr-xl-desktop-negative {
        margin-right: -64px
    }

    .mr-xxl-desktop {
        margin-right: 128px
    }

    .mr-xxl-desktop-negative {
        margin-right: -128px
    }

    .post-body {
        font-size: 1.3rem;
        line-height: 2.15385;
        letter-spacing: 0
    }

        .post-body h1, .post-body h2 {
            font-size: 1.8rem;
            line-height: 1.5;
            letter-spacing: 0
        }

        .post-body h3, .post-body h4, .post-body h5, .post-body h6 {
            font-size: 1.6rem;
            line-height: 1.5;
            letter-spacing: .1em
        }

        .post-body h1, .post-body h2, .post-body h3, .post-body h4, .post-body h5, .post-body h6 {
            margin: 64px 0 32px
        }

        .post-body a {
            padding-bottom: 1px
        }

        .post-body table tr td, .post-body table tr th {
            padding: 30px 0
        }

        .post-body .alignright {
            margin-left: 16px;
            width: auto
        }

        .post-body .alignleft {
            margin-right: 16px;
            width: unset
        }

    .section_row {
        display: flex;
        flex-flow: row nowrap
    }

        .section_row.float {
            position: relative
        }

    .section_left .m-rotated-title {
        margin-bottom: 0
    }

    .section_left {
        flex: 1
    }

    .section_right {
        flex: 8.5
    }

    .section_row.float .section_left {
        position: absolute;
        top: 0;
        left: 0
    }

    .section_row.float .section_right {
        flex: 0 1 100%;
        max-width: 100%
    }

    .swiper-controls_left .swiper-pagination-fraction {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .swiper-button-next, .swiper-button-prev {
        margin: 0 0 0 16px
    }

    .swiper-container-outer {
        padding: 0
    }

    .swiper-slide-fix {
        padding-left: 7%;
        padding-right: 7%;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .js-viewport > * {
        transform: translate3d(-150px,0,0);
        backface-visibility: hidden
    }

    .js-viewport-children > :nth-child(0) > * {
        transition-delay: 0s
    }

    .js-viewport-children > :first-child > * {
        transition-delay: .08s
    }

    .js-viewport-children > :nth-child(2) > * {
        transition-delay: .16s
    }

    .js-viewport-children > :nth-child(3) > * {
        transition-delay: .24s
    }

    .js-viewport-children > :nth-child(4) > * {
        transition-delay: .32s
    }

    .js-viewport-children > :nth-child(5) > * {
        transition-delay: .4s
    }

    .js-viewport-children > :nth-child(6) > * {
        transition-delay: .48s
    }

    .js-viewport-children > :nth-child(7) > * {
        transition-delay: .56s
    }

    .js-viewport-children > :nth-child(8) > * {
        transition-delay: .64s
    }

    .js-viewport-children > :nth-child(9) > * {
        transition-delay: .72s
    }

    .js-viewport-children > :nth-child(10) > * {
        transition-delay: .8s
    }

    .js-viewport-children > :nth-child(11) > * {
        transition-delay: .88s
    }

    .js-viewport-children > :nth-child(12) > * {
        transition-delay: .96s
    }

    .js-viewport-children > :nth-child(13) > * {
        transition-delay: 1.04s
    }

    .js-viewport-children > :nth-child(14) > * {
        transition-delay: 1.12s
    }

    .js-viewport-children > :nth-child(15) > * {
        transition-delay: 1.2s
    }

    .js-viewport-children > :nth-child(16) > * {
        transition-delay: 1.28s
    }

    .js-viewport-children > :nth-child(17) > * {
        transition-delay: 1.36s
    }

    .js-viewport-children > :nth-child(18) > * {
        transition-delay: 1.44s
    }

    .js-viewport-children > :nth-child(19) > * {
        transition-delay: 1.52s
    }

    .js-viewport-children > :nth-child(20) > * {
        transition-delay: 1.6s
    }

    .js-viewport-children > * > * {
        transform: translate3d(-150px,0,0)
    }

    .js-viewport-children.no-delay > :first-child > *, .js-viewport-children.no-delay > :nth-child(0) > *, .js-viewport-children.no-delay > :nth-child(2) > *, .js-viewport-children.no-delay > :nth-child(3) > *, .js-viewport-children.no-delay > :nth-child(4) > *, .js-viewport-children.no-delay > :nth-child(5) > *, .js-viewport-children.no-delay > :nth-child(6) > *, .js-viewport-children.no-delay > :nth-child(7) > *, .js-viewport-children.no-delay > :nth-child(8) > *, .js-viewport-children.no-delay > :nth-child(9) > *, .js-viewport-children.no-delay > :nth-child(10) > *, .js-viewport-children.no-delay > :nth-child(11) > *, .js-viewport-children.no-delay > :nth-child(12) > *, .js-viewport-children.no-delay > :nth-child(13) > *, .js-viewport-children.no-delay > :nth-child(14) > *, .js-viewport-children.no-delay > :nth-child(15) > *, .js-viewport-children.no-delay > :nth-child(16) > *, .js-viewport-children.no-delay > :nth-child(17) > *, .js-viewport-children.no-delay > :nth-child(18) > *, .js-viewport-children.no-delay > :nth-child(19) > *, .js-viewport-children.no-delay > :nth-child(20) > * {
        transition-delay: 0s
    }

    .l-accordion_title {
        padding-left: 2.22222vw;
        padding-right: 2.22222vw
    }

    .l-infographic {
        padding: 10.83333vh 1.11111vw
    }

    .l-infographic_header {
        padding-left: 6.66667vw;
        padding-right: 6.66667vw
    }

    .l-infographic_body {
        margin-top: 64px
    }

    .m-timeline_left {
        padding-right: 50px;
        flex: 1;
        font-size: 2.6rem;
        line-height: 1.66666;
        letter-spacing: 0
    }

    .m-timeline_right {
        flex: 10;
        padding-left: 60px;
        padding-bottom: 50px
    }

    .m-timeline_right_description {
        margin-top: 16px
    }

    .m-timeline_right:before {
        top: 17px
    }

    .m-timeline_right:after {
        top: 29px;
        bottom: -10px
    }

    .m-before-after_left {
        padding-right: 50px;
        flex: 1;
        font-size: 2.6rem;
        line-height: 1.66666;
        letter-spacing: 0
    }

    .m-before-after_right {
        flex: 10;
        padding-left: 60px;
        padding-bottom: 50px
    }

    .m-before-after_right_description {
        margin-top: 8px
    }

        .m-before-after_right_description .a-body {
            margin-top: 16px
        }

    .m-before-after_right:before {
        top: 5px
    }

    .m-before-after_right:after {
        top: 15px;
        bottom: 0
    }

    .m-button-share {
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

        .m-button-share .a-icon {
            font-size: 1.6rem;
            line-height: 1;
            letter-spacing: 0
        }

    .m-buttons .a-button {
        margin-top: 64px;
        padding: 52px 10px
    }

    .m-buttons {
        justify-content: space-around
    }

    .m-card-sns_body {
        bottom: 25px
    }

    .m-card-sns_title {
        transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
        font-size: 5rem;
        line-height: 1;
        letter-spacing: 0
    }

        .m-card-sns_title:hover {
            opacity: .8
        }

        .m-card-sns_title svg {
            width: 160px;
            height: 166px
        }

    .m-card-sns_meta .name {
        font-size: 1.2rem;
        line-height: 4;
        letter-spacing: 0
    }

    .m-card_cat {
        min-width: 110px;
        min-height: 110px;
        padding: 47px 30px;
        font-size: 15px
    }

    .m-card_body {
        padding: 32px
    }

    .pickup .m-card_body {
        padding: 54px
    }

    .m-card_body_header_initial {
        margin-top: -.2em;
        position: relative;
        top: .12em;
        font-size: 28px
    }

    .m-card_body_header_title > .a-heading {
        margin-top: 0;
        overflow: hidden;
        height: 3.84615em;
        font-size: 13px;
        line-height: 1.923076923
    }

    .pickup .m-card_body_header_initial {
        font-size: 48px
    }

    .pickup .m-card_body_header_title .a-heading {
        font-size: 17px;
        line-height: 2.1
    }

    .m-card_body > .a-body {
        margin-top: 21px;
        line-height: 1.8;
    }

    .m-card_date {
        font-size: 12px
    }

    .m-card.career .m-card_cat {
        display: block
    }

    .m-career-job-description {
        padding-top: 8.33333vh;
        padding-bottom: 9.16667vh
    }

    .m-career-link_title {
        margin-top: 37px
    }

    .m-career-link_button {
        margin-top: 39px
    }

        .m-career-link_button .a-button {
            padding: 33px
        }

    .m-career-member-dialog_scroll {
        max-height: none
    }

    .m-career-member-dialog_row {
        overflow: hidden;
        height: 100vh
    }

    .m-career-member-dialog_left {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .m-career-member-dialog_right {
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        max-height: 100vh;
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .m-career-member-dialog_thumbnail {
        height: 100vh
    }

    .m-career-member-dialog_body {
        padding: 1.66667vh 5vw
    }

    .m-career-member-dialog_name {
        margin-top: 1.66667vh;
        font-size: 3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-career-member-dialog_description {
        margin-top: 2.5vh
    }

    .m-career-member-dialog_description_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -1.38889vw;
        margin-right: -1.38889vw
    }

    .m-career-member-dialog_description_col {
        padding-left: 1.38889vw;
        padding-right: 1.38889vw;
        flex: 0 1 50%;
        max-width: 50%
    }

    .m-career-member-dialog_title {
        margin-top: 4.16667vh
    }

    .m-career-member-dialog_cnt .js-scrollbar {
        padding-right: 18px;
        position: relative;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        max-height: 28.33333vh
    }

    .m-career-member-dialog_cnt {
        margin-top: 2.5vh
    }

    .m-career-member_body {
        padding-top: 4.16667vh;
        padding-bottom: 8.33333vh;
        padding-left: 3.33333vw
    }

    .m-career-member_name {
        margin-top: 11px;
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-career-section-header_title {
        font-size: 2.4rem;
        line-height: 1.45833;
        letter-spacing: 0
    }

    .m-career-section-header_title_ja {
        margin-top: 5px;
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-career-section-image, .m-career-section-image_image {
        height: 100%
    }

        .m-career-section-image_image figure {
            overflow: hidden;
            position: relative;
            height: 100%
        }

            .m-career-section-image_image figure .a-image_img {
                min-width: 100%;
                min-height: 100%;
                width: auto;
                height: auto;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%,-50%);
                max-width: inherit;
                object-fit: cover;
                font-family: Impact,'Microsoft YaHei';
            }

    @supports (object-fit:cover) {
        .m-career-section-image_image figure .a-image_img {
            transform: none;
            top: 0;
            left: 0;
            min-width: 0;
            min-height: 0;
            width: 100%;
            height: 100%;
            object-fit: cover
        }
    }

    .m-career-section-image_body .a-heading.size2 {
        font-size: 5.55556vw
    }

    .m-career-section-image.rotate .m-career-section-image_body .a-heading.size2 {
        transform: rotate(90deg)
    }

    .m-checkbox-field_list.sp {
        display: none !important
    }

    .m-checkbox-field_list .inner {
        display: flex;
        justify-content: space-between
    }

    .m-checkbox-field_item {
        margin-bottom: 125px
    }

        .m-checkbox-field_item:not(:nth-child(3n)) {
            margin-right: 36px
        }

    .m-checkbox-field_item_label {
        font-size: 2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-checkbox-field_item_pic {
        margin-top: 13px
    }

    .m-checkbox-field_accordion_button {
        width: 81px;
        height: 81px
    }

        .m-checkbox-field_accordion_button:before {
            width: 40px
        }

        .m-checkbox-field_accordion_button:after {
            width: 40px
        }

        .m-checkbox-field_accordion_button.open:before {
            width: 23px
        }

        .m-checkbox-field_accordion_button.open:after {
            width: 23px
        }

    .m-chip_thumbnail .a-icon {
        font-size: 17px
    }

    .m-circle-point-item_client {
        width: 320px;
        height: 320px
    }

        .m-circle-point-item_client .a-heading {
            margin-top: 37px
        }

    .m-cta {
        padding: 104px 0 96px
    }

    .m-cta_title {
        margin-top: 16px;
        font-size: 4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-cta_body {
        margin-top: 16px
    }

        .m-cta_body .a-body {
            font-size: 1.4rem
        }

    .m-description_row {
        padding: 29px 0
    }

        .m-description_row:first-child {
            padding-top: 0
        }

    .m-description_body {
        font-size: 4rem;
        line-height: 1;
        letter-spacing: -.05em
    }

    .m-description.sm .m-description_row {
        padding: 15px 0
    }

    .m-description2_row {
        padding: 29px 0
    }

    .m-description2_body {
        font-size: 4rem;
        line-height: 1;
        letter-spacing: -.05em
    }

        .m-description2_body span {
            font-size: 2rem;
            line-height: 1;
            letter-spacing: 0
        }

    .m-no-description_row {
        padding: 29px 0
    }

    .m-no-description_body_body {
        margin-top: 8px
    }

    .m-document-link {
        bottom: 24px;
        right: 24px;
        width: 116px;
        height: 116px
    }

        .m-document-link a {
            display: flex;
            flex-direction: column-reverse;
            justify-content: space-between;
            padding: 16% 0;
            width: 100%;
            height: 100%;
            border-radius: 50%;
            background-color: #fff;
            color: #b30607;
            box-shadow: 0 3px 6px rgba(0,0,0,.16);
            text-align: center;
            font-size: 11px;
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s
        }

            .m-document-link a .sm {
                display: none !important
            }

    .m-feature {
        display: flex;
        flex-flow: row nowrap
    }

        .m-feature.reverse {
            flex-direction: row-reverse
        }

        .m-feature.column {
            flex-direction: column
        }

    .m-feature_body {
        margin-top: 0;
        flex: 1;
        display: flex;
        flex-flow: column wrap;
        justify-content: center
    }

    .m-feature_body_inner {
        padding-left: 32px
    }

    .m-feature.reverse .m-feature_body_inner {
        padding-left: 0;
        padding-right: 32px
    }

    .m-feature.column .m-feature_body {
        margin: 32px 21.33333px 0
    }

    .m-feature.column .m-feature_body_inner {
        padding-left: 0
    }

    .m-filter-body {
        display: flex;
        flex-flow: row nowrap;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-filter-body_item:first-child:before {
        display: none
    }

    .m-filter-body_item {
        padding-top: 39px;
        padding-bottom: 28px;
        padding-left: 1.6em;
        display: flex;
        align-items: center;
        flex-flow: row nowrap
    }

        .m-filter-body_item:first-child {
            padding-left: 0
        }

        .m-filter-body_item:before {
            margin-right: 1.6em;
            content: "/";
            width: auto;
            height: auto;
            border-top: none
        }

    .m-filter-body_item_inner {
        padding-top: 0;
        padding-bottom: 0
    }

    .m-filter-header {
        display: none;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-filter-header_title {
        color: hsla(0,0%,100%,.5)
    }

        .m-filter-header_title.active {
            color: #fff
        }

    .m-hamburger-button {
        top: 22px;
        right: 27px;
        pointer-events: none
    }

        .m-hamburger-button .a-hamburger_open .bar {
            transform: translate3d(100px,0,0);
            transition: transform .5s cubic-bezier(.14,1,.34,1) 0s,width .5s cubic-bezier(.14,1,.34,1)
        }

            .m-hamburger-button .a-hamburger_open .bar:nth-child(2) {
                transition: transform .5s cubic-bezier(.14,1,.34,1) .05s,width .5s cubic-bezier(.14,1,.34,1)
            }

            .m-hamburger-button .a-hamburger_open .bar:nth-child(3) {
                transition: transform .5s cubic-bezier(.14,1,.34,1) .1s,width .5s cubic-bezier(.14,1,.34,1)
            }

    .scrolled.m-hamburger-button {
        pointer-events: auto
    }

        .scrolled.m-hamburger-button .a-hamburger_open .bar {
            transform: translateZ(0)
        }

    .m-hamburger-button .a-icon-label {
        margin-top: 1.2em
    }

    .m-icon-title-body_title {
        margin-top: 32px
    }

    .m-icon-title-body_body {
        margin-top: 16px
    }

    .m-image-link_body_inner {
        padding: 7.5% 8%
    }

    .m-image-link_body_title {
        margin-top: 16px
    }

    .m-image-link_body_subtitle {
        margin-top: 8px
    }

    .m-image-link_body .a-body {
        margin-top: 24px
    }

    .is-confirm .m-input-field_input {
        margin-top: 0;
        flex: 7
    }

    .is-confirm .m-input-field {
        display: flex;
        flex-flow: row wrap;
        align-items: center
    }

    .m-introduction-item_client {
        width: 320px;
        height: 320px
    }

        .m-introduction-item_client .a-heading {
            margin-top: 37px
        }

    .m-introduction-item_arrow {
        margin-top: -50px
    }

        .m-introduction-item_arrow svg {
            width: 7px;
            height: 100px
        }

    .m-introduction-item_allin {
        margin-top: 40px
    }

        .m-introduction-item_allin .a-heading {
            padding-bottom: 2px
        }

        .m-introduction-item_allin .a-heading {
            margin-top: 16px
        }

    .m-kv-career-logo {
        bottom: 5.58333vh;
        width: 153px;
        height: 17px
    }

        .m-kv-career-logo svg {
            width: 153px;
            height: 17px
        }

        .m-kv-career-logo.sm {
            width: 153px;
            height: 17px
        }

            .m-kv-career-logo.sm svg {
                width: 153px;
                height: 17px
            }

    .m-labeled-icon_icon {
        margin-right: 16px
    }

    .m-member_name {
        margin-top: 11px;
        font-size: 2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-member_body {
        padding-right: 28%
    }

    .m-more-button_label {
        font-size: 1.4rem;
        line-height: 1.6;
        letter-spacing: 0
    }

    .m-more-button > .a-arrow {
        margin-left: 27px
    }

    .m-no-title-body {
        display: flex;
        align-items: center
    }

        .m-no-title-body .container {
            padding: 0 14.5vw
        }

    .m-no-title-body_no {
        font-size: 5rem;
        line-height: 1.4;
        letter-spacing: -.025em
    }

    .m-no-title-body_title {
        margin-top: 16px
    }

        .m-no-title-body_title .a-heading.ja.size2 {
            font-size: 1.94444vw
        }

    .m-no-title-body_body {
        margin-top: 26px
    }

    .m-page-heading_above {
        margin-top: 8px;
        font-size: 2.6rem;
        line-height: 1.34615;
        letter-spacing: 0
    }

    .m-page-heading_below {
        font-size: 1.4rem;
        line-height: 1.42857;
        letter-spacing: 0
    }

    .a-page-title {
        font-size: 6rem;
        line-height: 1.41667;
        letter-spacing: .1em
    }

        .a-page-title.alpha {
            font-size: 8rem;
            line-height: 1.0625;
            letter-spacing: .1em
        }

        .a-page-title span {
            font-size: 12rem;
            line-height: 1;
            letter-spacing: .1em
        }

    .m-plan-table_plans {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -11px;
        margin-right: -12px
    }

    .m-plan-table_plans_col {
        padding-left: 11.5px;
        padding-right: 11.5px;
        flex: 0 1 25%;
        max-width: 25%
    }

        .m-plan-table_plans_col:first-child {
            display: block
        }

    .m-plan-table_plans_ribbon {
        margin-bottom: 16px;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-plan-table_plan {
        padding: 22px 0;
        font-size: 1.6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-plan-table_col {
        padding: 3.1em 5px;
        flex: 0 1 25%;
        max-width: 25%
    }

        .m-plan-table_col:first-child {
            justify-content: flex-start;
            padding-left: 5px;
            padding-right: 5px;
            flex: 0 1 25%;
            max-width: 25%
        }

    .rotate.m-rotated-title {
        display: inline-flex;
        transform: rotate(-90deg) translate(-100%);
        transform-origin: 0 0
    }

    .m-rotated-title_no:after {
        width: 100px
    }

    .m-kv-scroll {
        transform-origin: 21px 50%;
        font-size: 1.2rem;
        line-height: 3.75;
        letter-spacing: 0
    }

    .m-kv-scroll_txt {
        margin-left: 25px
    }

    .m-section-header .m-rotated-title {
        margin-bottom: 61px
    }

        .m-section-header .m-rotated-title.rotate {
            margin-bottom: 0;
            left: -30%
        }

    .rotate .m-section-header_title {
        margin-top: 0
    }

    .m-section-header_title .a-heading {
        margin-top: -.125em
    }

    .m-section-header_below {
        margin-top: 32px
    }

    .m-section-title {
        padding: 134px 32px;
        font-size: 6rem;
        line-height: 1.5;
        letter-spacing: 0
    }

    .is-confirm .m-select-field_select {
        margin-top: 0;
        flex: 7
    }

    .m-select-field_select .arrow {
        right: 50px
    }

        .m-select-field_select .arrow:after, .m-select-field_select .arrow:before {
            width: 8px;
            height: 8px
        }

    .is-confirm .m-select-field {
        display: flex;
        flex-flow: row wrap;
        align-items: center
    }

    .m-service-image_body_inner {
        padding: 0 8% 8%
    }

    .m-service-image_body_no {
        font-size: 26rem;
        line-height: .92308;
        letter-spacing: -.1em
    }

    .m-service-image_body_title {
        margin-top: 0;
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-step_item {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-submenu-desktop {
        display: block;
        background-color: #181818;
        z-index: 10;
        position: relative;
        overflow: hidden;
        width: 0;
        height: 100%;
        pointer-events: none;
        transition: .6s cubic-bezier(.14,1,.34,1);
        transform-origin: 100% 0;
        transform: translateX(100%)
    }

        .o-submenu-desktop.show {
            width: 50%;
            transform: translateX(0);
            pointer-events: auto;
            opacity: 1
        }

    .o-submenu-desktop_center {
        width: 100%;
        align-items: center
    }

    .o-submenu-desktop_center, .o-submenu-desktop_inner {
        height: 100%;
        display: flex;
        flex-flow: column nowrap;
        justify-content: center
    }

    .o-submenu-desktop_inner {
        align-items: flex-start
    }

    .o-submenu-desktop_item {
        position: relative;
        display: inline-block;
        margin: 7px 16px;
        text-align: left;
        text-indent: 2em;
        color: #fff;
        opacity: 0;
        transform: translateY(50px)
    }

        .o-submenu-desktop_item .a-body {
            color: #fff;
            font-family: Impact,'Microsoft YaHei';
            white-space: nowrap;
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
            font-size: 5rem;
            line-height: 1.2;
            letter-spacing: 0
        }

        .o-submenu-desktop_item:hover .a-body {
            color: #b30606
        }

    .o-submenu-desktop.show .o-submenu-desktop_item {
        transform: translateY(0);
        opacity: 1
    }

        .o-submenu-desktop.show .o-submenu-desktop_item:first-child {
            transition: .8s cubic-bezier(.215,.61,.355,1) .05s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(2) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .1s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(3) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .15s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(4) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .2s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(5) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .25s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(6) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .3s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(7) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .35s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(8) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .4s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(9) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .45s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(10) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .5s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(11) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .55s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(12) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .6s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(13) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .65s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(14) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .7s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(15) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .75s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(16) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .8s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(17) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .85s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(18) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .9s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(19) {
            transition: .8s cubic-bezier(.215,.61,.355,1) .95s
        }

        .o-submenu-desktop.show .o-submenu-desktop_item:nth-child(20) {
            transition: .8s cubic-bezier(.215,.61,.355,1) 1s
        }

    .o-submenu-header {
        padding: 42px 16px 16px;
        display: block;
        background-color: transparent;
        z-index: 10;
        position: absolute;
        top: 0;
        left: 0;
        pointer-events: none
    }

        .o-submenu-header.show {
            pointer-events: auto;
            opacity: 1
        }

    .o-submenu-header_item {
        display: block;
        padding: 10px 0;
        opacity: 0;
        transform: translateY(70%)
    }

        .o-submenu-header_item:first-child {
            transition: .2s cubic-bezier(.14,1,.34,1) .02s
        }

        .o-submenu-header_item:nth-child(2) {
            transition: .2s cubic-bezier(.14,1,.34,1) .04s
        }

        .o-submenu-header_item:nth-child(3) {
            transition: .2s cubic-bezier(.14,1,.34,1) .06s
        }

        .o-submenu-header_item:nth-child(4) {
            transition: .2s cubic-bezier(.14,1,.34,1) .08s
        }

        .o-submenu-header_item:nth-child(5) {
            transition: .2s cubic-bezier(.14,1,.34,1) .1s
        }

        .o-submenu-header_item:nth-child(6) {
            transition: .2s cubic-bezier(.14,1,.34,1) .12s
        }

        .o-submenu-header_item:nth-child(7) {
            transition: .2s cubic-bezier(.14,1,.34,1) .14s
        }

        .o-submenu-header_item:nth-child(8) {
            transition: .2s cubic-bezier(.14,1,.34,1) .16s
        }

        .o-submenu-header_item:nth-child(9) {
            transition: .2s cubic-bezier(.14,1,.34,1) .18s
        }

        .o-submenu-header_item:nth-child(10) {
            transition: .2s cubic-bezier(.14,1,.34,1) .2s
        }

    .o-submenu-header_item_body {
        display: inline-block
    }

        .o-submenu-header_item_body:after {
            content: "";
            display: block;
            left: 0;
            width: 100%;
            height: 2px;
            position: relative;
            bottom: -3px;
            border-bottom: 2px solid #fff;
            transition: .3s ease;
            transform-origin: 0 0;
            transform: scaleX(0)
        }

        .o-submenu-header_item_body:hover:after {
            transform: scaleX(1)
        }

        .o-submenu-header_item_body > * {
            transition: all .5s cubic-bezier(.4,.8,.74,1) 0s;
            font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
            text-transform: uppercase;
            font-size: 1.3rem;
            line-height: 1.6;
            letter-spacing: 0;
            color: #fefefe;
            white-space: nowrap
        }

    .o-submenu-header.show .o-submenu-header_item {
        transform: translateY(0);
        opacity: 1
    }

        .o-submenu-header.show .o-submenu-header_item:first-child {
            transition: .8s cubic-bezier(.14,1,.34,1) .05s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(2) {
            transition: .8s cubic-bezier(.14,1,.34,1) .1s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(3) {
            transition: .8s cubic-bezier(.14,1,.34,1) .15s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(4) {
            transition: .8s cubic-bezier(.14,1,.34,1) .2s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(5) {
            transition: .8s cubic-bezier(.14,1,.34,1) .25s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(6) {
            transition: .8s cubic-bezier(.14,1,.34,1) .3s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(7) {
            transition: .8s cubic-bezier(.14,1,.34,1) .35s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(8) {
            transition: .8s cubic-bezier(.14,1,.34,1) .4s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(9) {
            transition: .8s cubic-bezier(.14,1,.34,1) .45s
        }

        .o-submenu-header.show .o-submenu-header_item:nth-child(10) {
            transition: .8s cubic-bezier(.14,1,.34,1) .5s
        }

    .black .o-submenu-header_item_body:after {
        border-color: #fff
    }

    .black .o-submenu-header_item_body > .a-body {
        color: #fff
    }

    .o-submenu.show {
        opacity: 1
    }

    .m-switch-field_item {
        margin-right: 32px
    }

    .is-confirm .m-switch-field_item {
        margin-top: 0;
        margin-right: 0;
        margin-left: 16px
    }

    .m-switch-field_item_label {
        margin-left: 16px
    }

    .is-confirm .m-switch-field {
        display: flex;
        flex-flow: row wrap;
        align-items: center
    }

    .is-confirm .m-textarea-field_input {
        margin-top: 0;
        flex: 7
    }

    .is-confirm .m-textarea-field {
        display: flex;
        flex-flow: row wrap;
        align-items: flex-start
    }

    .m-title-body {
        display: flex;
        align-items: center
    }

        .m-title-body .container {
            padding: 0 14.5vw
        }

    .m-title-body_title {
        margin-top: 38px
    }

        .m-title-body_title .a-heading.ja.size2 {
            font-size: 1.94444vw
        }

    .m-title-body_body {
        margin-top: 20px
    }

    .m-title-body_button {
        margin-top: 64px;
        max-width: 190px
    }

    .m-title-header_title {
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-title-header_subtitle {
        margin-top: 14px;
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-value-list_item {
        padding: 32px 0
    }

        .m-value-list_item:first-child {
            padding-top: 0
        }

        .m-value-list_item .a-subtitle {
            font-size: 14px
        }

    .m-value-list_item_title {
        font-size: 2.4rem;
        line-height: 1.5;
        letter-spacing: 0
    }

    .m-value-list_item .a-body {
        margin-left: 42px
    }

    .m-value-list_item_right {
        display: flex;
        align-items: center;
        flex-flow: row nowrap
    }

    .m-work {
        padding-bottom: 27px
    }

    .m-work_date {
        margin-top: 29px
    }

    .m-work_title {
        margin-top: 25px
    }

        .m-work_title .a-heading.ja.size6 {
            font-size: 1.6rem;
            line-height: 1.66666;
            letter-spacing: 0
        }

    .m-work_cat {
        margin-top: 13px
    }

    .o-about_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-about_left {
        padding-top: 7.3%;
        padding-bottom: 7.3%;
        padding-right: 0;
        flex: 0 1 33.33333%;
        width: 33.33333%
    }

    .o-about_right {
        flex: 0 1 66.66666%;
        width: 66.66666%
    }

    .o-about_image figure {
        width: 189%;
        height: auto;
        padding-bottom: 0
    }

    .o-about_body {
        padding-top: 20%;
        padding-bottom: 12%;
        display: flex;
        align-items: center
    }

        .o-about_body .container-narrow {
            padding-left: 55%;
            padding-right: 10.9%;
            max-width: none
        }

        .o-about_body .a-lead {
            margin-top: 0
        }

    .o-about_body_title .a-heading {
        margin-top: 42px;
        font-size: 2.4rem;
        line-height: 1.25;
        letter-spacing: 0
    }

    .o-about_body .a-body {
        margin-top: 16px
    }

    .o-about_body .a-button {
        max-width: 190px
    }

    .o-archive {
        padding-bottom: 178px
    }

    .o-archive_row {
        margin-top: 50px
    }

    .o-archive_item {
        margin-top: 100px
    }

        .o-archive_item.pickup {
            padding-left: 15px;
            padding-right: 15px;
            flex: 0 1 50%;
            max-width: 50%
        }

    .o-archive_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-button-share-group {
        margin-top: 132px
    }

    .o-button-share-group_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -1px;
        margin-right: -2px;
        flex-wrap: nowrap
    }

    .o-button-share-group_col {
        margin-top: 0;
        padding-left: 1.5px;
        padding-right: 1.5px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-cards > .row {
        margin-top: -15px
    }

    .o-cards_item {
        margin-top: 15px
    }

    .o-career-advantage {
        padding-top: 240px;
        padding-bottom: 240px
    }

    .o-career-advantage_header_title {
        font-size: 2.4rem;
        line-height: 1.45833;
        letter-spacing: 0
    }

    .o-career-advantage_header_title_ja {
        margin-top: 5px;
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-advantage_copy {
        margin-top: 168px;
        font-size: 4.44444vw;
        letter-spacing: -.025em
    }

    .o-career-advantage_copy_bg {
        top: -3.05556vw
    }

        .o-career-advantage_copy_bg img {
            width: 14.22222vw;
            margin: 0 auto
        }

    .o-career-advantage_body {
        margin-top: 108px
    }

        .o-career-advantage_body .a-body {
            max-width: 800px;
            margin: auto
        }

    .o-career-ceo-message_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

    .o-career-ceo-message_col {
        overflow: hidden;
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-ceo-message .a-image {
        height: 100%;
        overflow: hidden;
        position: relative
    }

        .o-career-ceo-message .a-image .a-image_img {
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            max-width: inherit;
            object-fit: cover;
            font-family: Impact,'Microsoft YaHei';
        }

    @supports (object-fit:cover) {
        .o-career-ceo-message .a-image .a-image_img {
            transform: none;
            top: 0;
            left: 0;
            min-width: 0;
            min-height: 0;
            width: 100%;
            height: 100%;
            object-fit: cover
        }
    }

    .o-career-ceo-message_cnt {
        display: flex;
        align-items: center;
        height: 100%
    }

        .o-career-ceo-message_cnt .container {
            padding: 0 30%
        }

    .o-career-ceo-message_title {
        margin-top: 42px
    }

        .o-career-ceo-message_title .a-heading {
            line-height: 1.42857 !important
        }

    .o-career-ceo-message .a-body {
        margin-top: 37px
    }

    .o-career-chart-age_row {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: center
    }

    .o-career-chart-age_right {
        margin-top: 0
    }

    .o-career-chart-age_age {
        font-size: 12.77778vw;
        letter-spacing: -.025em;
        margin-right: 4.77778vw
    }

    .o-career-chart-age_unit {
        margin-top: -16px
    }

    .o-career-chart-atmos_item:nth-child(2) {
        margin-left: -71.5px
    }

    .o-career-chart-atmos_item:nth-child(3) {
        margin-left: -71.5px
    }

    .o-career-chart-atmos_item:nth-child(4) {
        margin-left: -71.5px
    }

    .o-career-chart-atmos_ja {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-atmos_per {
        font-size: 5rem;
        line-height: 1;
        letter-spacing: -.025em
    }

    .o-career-chart-atmos_angle svg {
        width: 132px;
        height: 114.4px
    }

    .o-career-chart-atmos_angle.no02 svg {
        width: 180.8px;
        height: 156.8px
    }

    .o-career-chart-atmos_angle.no03 svg {
        width: 132px;
        height: 114.4px
    }

    .o-career-chart-atmos_angle.no04 svg {
        width: 209.6px;
        height: 180.8px
    }

    .o-career-chart-birth_row {
        font-size: 3rem;
        line-height: 1;
        letter-spacing: 0;
        font-size: 1.66667vw
    }

        .o-career-chart-birth_row.red {
            font-size: 5rem;
            line-height: 1;
            letter-spacing: 0;
            font-size: 2.77778vw
        }

    .o-career-chart-birth_row {
        margin-top: 21px;
        padding: 0 6.66667vw
    }

    .o-career-chart-birth_sep {
        padding: 0 2.22222vw
    }

    .o-career-chart-birth_per {
        min-width: 75px
    }

    .o-career-chart-gender_row {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: center
    }

    .o-career-chart-gender_right {
        margin-top: 0;
        margin-left: 2.77778vw;
        margin-right: 2.77778vw
    }

    .o-career-chart-gender_gender:last-child {
        margin-top: 64px
    }

    .o-career-chart-gender_meta {
        width: 5em
    }

    .o-career-chart-gender_per {
        margin-left: 15px
    }

    .o-career-chart-gender_en {
        font-size: 1.4rem;
        line-height: 1;
        letter-spacing: -.025em
    }

    .o-career-chart-gender_ja {
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-gender_legend {
        font-size: 1.7rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-holidays_body {
        font-size: 8.33333vw
    }

    .o-career-chart-holidays_num {
        font-size: 8.33333vw
    }

    .o-career-chart-holidays_name {
        font-size: 2.77778vw
    }

    .o-career-chart-sales_inner {
        margin-right: auto;
        margin-left: auto;
        padding-left: 7%;
        padding-right: 7%;
        max-width: calc(1450px + 14%)
    }

        .o-career-chart-sales_inner:after, .o-career-chart-sales_inner:before {
            content: " ";
            display: table
        }

        .o-career-chart-sales_inner:after {
            clear: both
        }

        .o-career-chart-sales_inner:after, .o-career-chart-sales_inner:before {
            content: none
        }

    .o-career-chart-sales_text {
        transform: rotate(90deg) translateX(-20px);
        font-size: 8.5rem;
        line-height: 1;
        letter-spacing: -.05em
    }

    .o-career-chart-sales svg {
        height: 500px
    }

    .o-career-chart-sales .axis-x .tick text {
        font-size: 1.8rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-sales .axis-y .tick text {
        font-size: 1.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-sales .axis-y .tick .unit {
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-time_body {
        font-size: 7.22222vw
    }

    .o-career-collective .m-title-body {
        display: flex;
        align-items: flex-end;
        padding-bottom: 90px
    }

        .o-career-collective .m-title-body .container {
            padding-left: 16%;
            padding-right: 40%
        }

    .o-career-company-system {
        padding-top: 247px;
        padding-bottom: 247px
    }

    .o-career-company-system_row {
        margin-top: 2.5vh;
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -2.22222vw;
        margin-right: -2.22222vw
    }

    .o-career-company-system_col {
        margin-top: 8.33333vh;
        padding-left: 2.22222vw;
        padding-right: 2.22222vw;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-career-concept {
        padding-top: 247px;
        padding-bottom: 247px
    }

    .o-career-concept_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-career-concept_left {
        flex: 37
    }

    .o-career-concept_right {
        margin-top: 0;
        flex: 63
    }

    .o-career-concept_body {
        margin-top: 25px
    }

    .o-career-entry {
        padding-bottom: 16.66667vh
    }

    .o-career-heros {
        padding-top: 247px;
        padding-bottom: 247px
    }

    .o-career-heros_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-career-heros_left {
        flex: 37
    }

    .o-career-heros_right {
        margin-top: 0;
        flex: 63
    }

    .o-career-heros_body {
        margin-top: 25px
    }

    .o-career-infographic {
        padding-top: 247px;
        padding-bottom: 247px
    }

    .o-career-infographic_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-career-infographic_left {
        flex: 37
    }

    .o-career-infographic_right {
        margin-top: 0;
        flex: 63
    }

    .o-career-infographic_body {
        margin-top: 25px
    }

    .o-career-intro {
        padding-top: 22.5vh;
        padding-bottom: 18.33333vh
    }

    .o-career-intro_copy img {
        max-width: 660px;
        margin: 0 auto
    }

    .o-career-intro_title {
        margin-top: 64px
    }

        .o-career-intro_title .a-heading {
            font-weight: 700 !important
        }

    .o-career-intro_body {
        margin-top: 32px
    }

        .o-career-intro_body .a-body {
            font-size: 1.6rem;
            line-height: 2.5;
            letter-spacing: 0
        }

    .o-career-introduction .m-title-body {
        padding-top: 20%;
        display: flex
    }

    .o-career-joblist {
        padding-top: 12.5vh;
        padding-bottom: 12.5vh
    }

    .o-career-joblist_list {
        padding-top: 12.5vh
    }

    .o-career-members {
        padding-bottom: 5.55556vw
    }

    .o-career-members_close {
        right: 35px;
        top: 35px
    }

    .o-career-members_swiper .next:before, .o-career-members_swiper .prev:before {
        border-width: 2px;
        height: 20px
    }

    .o-career-members_swiper .next .txt, .o-career-members_swiper .prev .txt {
        margin-top: 40px;
        font-size: 1.3rem;
        line-height: 1.5;
        letter-spacing: .1em
    }

    .o-career-members_swiper {
        transform: translate3d(-150px,0,0);
        backface-visibility: hidden
    }

    .o-career-members_col {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-career-members_col1 {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-news {
        padding-bottom: 132px
    }

    .o-career-news_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -15px;
        margin-right: -15px
    }

    .o-career-overview {
        padding-top: 12.5vh;
        padding-bottom: 12.5vh
    }

    .o-career-overview_description {
        padding-top: 8.33333vh
    }

    .o-career-own .m-title-body {
        display: flex;
        align-items: flex-end;
        padding-bottom: 90px
    }

        .o-career-own .m-title-body .container {
            padding-left: 16%;
            padding-right: 40%
        }

    .o-career-page-header_body {
        padding-top: 19.16667vh;
        padding-bottom: 19.16667vh
    }

        .o-career-page-header_body .a-heading.size1 {
            font-size: 10vw
        }

    .o-career-project-day_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

        .o-career-project-day_row.reverse {
            flex-flow: row-reverse nowrap
        }

    .o-career-project-day_col {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%;
        position: relative
    }

        .o-career-project-day_col:before {
            content: "";
            position: absolute;
            top: calc(-15.83333vh - 20px);
            left: 0;
            transform: translateX(-50%);
            width: 8px;
            height: 8px;
            background-color: #e1e1e1;
            border-radius: 50%
        }

        .o-career-project-day_col:after {
            content: "";
            position: absolute;
            top: calc(-15.83333vh - 4px);
            bottom: -15.83333vh;
            transform: translateX(-50%);
            display: block;
            height: calc(100% + 31.66667vh);
            border-left: 1px solid #e1e1e1
        }

    .o-career-project-day_row.reverse .o-career-project-day_col:last-child:after, .o-career-project-day_row.reverse .o-career-project-day_col:last-child:before {
        left: auto;
        right: 0;
        transform: translateX(50%)
    }

    .o-career-project-day.last .o-career-project-day_row .o-career-project-day_col:first-child:before {
        top: auto;
        left: auto;
        right: 0;
        transform: translateX(50%);
        bottom: calc(-15.83333vh - 20px)
    }

    .o-career-project-day_image {
        display: flex;
        align-items: center
    }

        .o-career-project-day_image .a-image {
            padding-bottom: 83.3777778%;
            width: 100%;
            height: 0
        }

    .o-career-project-day_body {
        padding: 7.33333vh 6.25vw;
        height: 100%;
        display: flex;
        align-items: center
    }

    .o-career-project-day_body_subtitle {
        margin-top: 4px
    }

    .o-career-project-day_body_body {
        margin-top: 50px
    }

    .o-career-project-day_body_description {
        margin-top: 50px
    }

    .o-career-project-mission_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

    .o-career-project-mission_left, .o-career-project-mission_right {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-career-project-mission_body {
        padding: 27vh 12.5vw;
        height: 100%;
        display: flex;
        align-items: center
    }

    .o-career-project-mission_body_title {
        margin-top: 32px
    }

    .o-career-project-mission_body_description {
        margin-top: 16px
    }

    .o-career-project-sep {
        display: block;
        background-color: #fff;
        color: #b30606;
        padding-top: 15.83333vh;
        padding-bottom: 15.83333vh
    }

    .m-career-project-startdone.start {
        padding-top: 12.5vh;
        padding-bottom: 19.16667vh
    }

    .m-career-project-startdone.done {
        padding-top: 19.16667vh;
        padding-bottom: 12.5vh
    }

    .m-career-project-startdone_title {
        font-size: 3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-career-project-startdone_above {
        margin-top: 8px;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-project-story {
        padding-top: 247px;
        padding-bottom: 247px
    }

    .o-career-project-story_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-career-project-story_left {
        flex: 37
    }

    .o-career-project-story_right {
        margin-top: 0;
        flex: 63
    }

    .o-career-project-story_body {
        margin-top: 25px
    }

    .o-career-selection-flow {
        padding-top: 12.5vh;
        padding-bottom: 12.5vh
    }

    .o-career-selection-flow_list {
        padding-top: 9.16667vh;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: row nowrap
    }

    .o-career-selection-flow_arrow {
        width: 16px;
        height: 16px
    }

        .o-career-selection-flow_arrow:after, .o-career-selection-flow_arrow:before {
            width: 8px;
            height: 8px
        }

    .o-career-selection-flow_arrow {
        padding: 0 20px;
        transform: rotate(0deg)
    }

    .o-career-selection-flow_note {
        margin-top: 84px
    }

    .o-career-story .m-title-body {
        padding-top: 20%;
        display: flex
    }

        .o-career-story .m-title-body .container {
            padding: 0 29%
        }

    .o-career-subpage-links {
        padding-top: 0;
        padding-bottom: 0
    }

    .o-career-subpage-links_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-career-transferable .m-title-body {
        display: flex;
        align-items: flex-end;
        padding-bottom: 90px
    }

        .o-career-transferable .m-title-body .container {
            padding-left: 16%;
            padding-right: 40%
        }

    .o-career-work-space_controls {
        bottom: 3.33333vh
    }

    .o-career-work-space_subtitle .container {
        padding-left: 16%;
        padding-right: 40%
    }

    .o-career-work-space .m-title-body {
        height: 100%;
        display: flex;
        align-items: flex-end;
        padding-bottom: 90px
    }

        .o-career-work-space .m-title-body .container {
            padding-left: 16%;
            padding-right: 40%
        }

    .o-career-work-space .m-title-body_title .a-heading.ja.size2 {
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.1
    }

    .o-career {
        padding-top: 10.3%;
        padding-bottom: 0;
        position: relative
    }

    .o-career_header {
        z-index: 10;
        position: absolute;
        top: 22%;
        left: 4%
    }

    .o-career_row {
        display: flex;
        flex-flow: row-reverse nowrap;
        background-color: #181818
    }

    .o-career_left {
        flex: 0 1 66.66666%;
        width: 66.66666%
    }

    .o-career_right {
        padding-top: 7.3%;
        padding-bottom: 7.3%;
        z-index: 20;
        position: relative;
        flex: 0 1 33.33333%;
        width: 33.33333%
    }

        .o-career_right:after {
            content: "";
            position: absolute;
            left: 0;
            bottom: 0;
            width: 100%;
            height: 50%
        }

    .o-career_image {
        padding: 0;
        background-color: transparent
    }

        .o-career_image figure {
            margin-top: 0;
            position: relative;
            left: -50%;
            width: 150%;
            height: auto;
            padding-bottom: 0
        }

    .o-career_body {
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 12%;
        padding-bottom: 12%;
        position: relative;
        height: 100%;
        display: flex;
        align-items: center;
        background-color: #000
    }

        .o-career_body .container-narrow {
            width: 100%;
            max-width: none;
            padding-left: 21%;
            padding-right: 45.5%
        }

    .o-career_body_title .a-heading {
        margin-top: 84px
    }

    .o-career_body .a-body {
        margin-top: 16px;
        margin-left: auto;
        margin-right: auto;
        max-width: 354px;
        line-height: 2.15
    }

    .o-career_body .a-button {
        display: block;
        max-width: 190px;
        margin-left: auto;
        margin-right: auto
    }

    .o-ceo-history {
        padding: 300px 0 220px
    }

    .o-ceo-history_inner {
        margin-right: auto;
        margin-left: auto;
        padding-left: 8%;
        padding-right: 8%;
        max-width: calc(900px + 16%)
    }

        .o-ceo-history_inner:after, .o-ceo-history_inner:before {
            content: " ";
            display: table
        }

        .o-ceo-history_inner:after {
            clear: both
        }

    .o-ceo-history_year {
        padding-right: 50px;
        flex: 1;
        font-size: 2.6rem;
        line-height: 1.66666;
        letter-spacing: 0
    }

    .o-ceo-history_body {
        flex: 10;
        padding-left: 60px;
        padding-bottom: 80px
    }

    .o-ceo-history_body_description {
        margin-top: 16px
    }

    .o-ceo-history_body:before {
        top: 17px
    }

    .o-ceo-history_body:after {
        top: 29px;
        bottom: -10px
    }

    .o-ceo-message {
        padding-top: 300px;
        padding-bottom: 300px
    }

        .o-ceo-message .section_left {
            flex: 1
        }

        .o-ceo-message .section_right {
            flex: 14
        }

        .o-ceo-message .m-section-header_title .a-heading {
            font-size: 4.44vw
        }

    .o-ceo-message_title {
        margin-top: 118px
    }

    .o-ceo-message_row {
        margin-top: 0;
        display: flex;
        flex-flow: row nowrap;
        align-items: center
    }

    .o-ceo-message_left {
        flex: 4
    }

    .o-ceo-message_right {
        margin-top: 0;
        flex: 5
    }

    .o-ceo-message_right_inner {
        padding-left: 20%
    }

    .o-ceo-message .a-body {
        margin-top: 21px
    }

    .o-circle-points {
        margin-left: 2.22222%;
        overflow: visible
    }

        .o-circle-points .swiper-wrapper {
            margin: 0 -10px
        }

        .o-circle-points .swiper-slide {
            margin-left: -1.11111%;
            margin-right: -1.11111%;
            width: 35.55555%
        }

        .o-circle-points .swiper-controls {
            display: none
        }

    .o-client-voice_title .a-heading {
        font-size: 60px
    }

    .o-client-voice_company {
        margin-top: 42px
    }

        .o-client-voice_company > .name {
            margin-left: 16px
        }

    .o-client-voice_body {
        margin-top: 16px
    }

        .o-client-voice_body:after, .o-client-voice_body:before {
            font-size: 38px
        }

        .o-client-voice_body .a-body {
            font-size: 1.6rem;
            line-height: 2;
            letter-spacing: 0;
            color: #fff;
            font-weight: 500
        }

    .o-client-voice_left_inner {
        padding-right: 28%
    }

    .o-client > .container {
        padding: 8% 8% 12%
    }

    .o-client_row {
        margin-top: 16px;
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -3.61111vw;
        margin-right: -3.61111vw
    }

    .o-client_item:nth-child(n+10) {
        display: block
    }

    .o-client_item {
        margin-top: 89px;
        padding-left: 2.5vw;
        padding-right: 2.5vw;
        flex: 0 1 20%;
        max-width: 20%
    }

    .o-company-profile {
        padding-top: 300px;
        padding-bottom: 300px
    }

    .o-company-profile_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-company-profile_left {
        flex: 37
    }

    .o-company-profile_right {
        margin-top: 0;
        flex: 63
    }

    .o-corporate-logo {
        padding: 300px 0
    }

    .o-corporate-logo_figure {
        margin-top: 0
    }

        .o-corporate-logo_figure svg {
            width: 100%;
            height: auto
        }

    .o-corporate-logo .a-body {
        margin-top: 92px
    }

    .o-doc-download-header {
        height: 310px
    }

        .o-doc-download-header h1 {
            font-size: 4rem;
            line-height: 1.225;
            letter-spacing: 0
        }

    .o-doc-download-kv {
        height: 797px;
        padding-top: 100px
    }

        .o-doc-download-kv ul li:nth-child(2) {
            top: 155px
        }

        .o-doc-download-kv ul li:nth-child(3) {
            top: 310px
        }

        .o-doc-download-kv ul li img {
            width: 494px
        }

        .o-doc-download-kv .annotation {
            top: 47%;
            font-size: 1.3rem;
            line-height: 1;
            letter-spacing: 0
        }

        .o-doc-download-kv .tb {
            left: 10%;
            bottom: 77px
        }

            .o-doc-download-kv .tb .label {
                width: 185px;
                height: 41px;
                border-radius: 20px;
                font-size: 2.2rem;
                line-height: 1.18182;
                letter-spacing: 0;
                margin-bottom: 18px
            }

            .o-doc-download-kv .tb .copy {
                font-size: 2rem;
                line-height: 1.5;
                letter-spacing: 0;
                text-align: start
            }

    .o-entry_title {
        margin-top: 37px;
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-entry_button {
        margin-top: 39px
    }

        .o-entry_button .a-button {
            padding: 33px
        }

    .o-entry_body {
        height: 100%;
        bottom: 0;
        display: flex;
        align-items: center
    }

    .o-filter .l-accordion {
        display: flex;
        flex-flow: row nowrap;
        align-items: center
    }

    .o-filter .l-accordion_title, .o-filter .l-accordion_title_plus {
        display: none
    }

    .o-filter .l-accordion_body {
        height: auto !important
    }

    .o-footer_bg {
        display: block;
        position: absolute;
        top: -4%;
        left: -10px;
        width: 100%;
        height: 100%;
        opacity: .06;
        text-align: left;
        color: #fff;
        font-family: Impact,'Microsoft YaHei';
        font-size: 35rem;
        line-height: 1;
        letter-spacing: 0
    }

        .o-footer_bg svg {
            width: 800px;
            height: 836px
        }

    .o-footer_inner {
        padding: 197px 8% 250px
    }

    .o-footer_above {
        z-index: 1;
        position: relative;
        padding-bottom: 43px;
        display: flex;
        flex-flow: row nowrap;
        align-items: flex-end;
        justify-content: flex-end;
        border-bottom: 1px solid #262626
    }

    .o-footer_below {
        display: flex;
        align-items: flex-start
    }

    .o-footer_below_left {
        padding-top: 64px;
        text-align: left
    }

    .o-footer_below_right {
        margin-left: auto
    }

        .o-footer_below_right > .o-footer_links {
            margin-top: 16px
        }

    .o-footer_logo {
        margin-right: auto
    }

        .o-footer_logo svg {
            width: 93px;
            height: 93px
        }

    .o-footer_name {
        margin-top: 0;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-footer_meta {
        font-size: 1.2rem;
        line-height: 2.33333;
        letter-spacing: 0
    }

    .o-footer_links {
        flex: 1;
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-end
    }

    .o-footer_link {
        white-space: nowrap;
        margin: 0 2.15%
    }

        .o-footer_link > a {
            display: block;
            position: relative;
            top: 10px;
            padding: 20px 10px
        }

        .o-footer_link .a-label {
            line-height: 0
        }

    .o-footer_shared {
        margin-top: 64px;
        margin-right: -8px;
        justify-content: flex-end
    }

    .o-footer_shared_item .a-icon {
        font-size: 2.1rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-footer_copy {
        text-align: right;
        font-size: 1.2rem;
        line-height: 2.33333;
        letter-spacing: 0
    }

    .o-form-doc-download {
        padding-top: 150px
    }

    .o-form-doc-download_note {
        margin-top: 16px
    }

    .o-form-doc-download_step {
        max-width: 450px;
        margin: 0 auto 150px
    }

    .o-form-doc-download .notice {
        font-size: 3rem;
        line-height: 1.66667;
        letter-spacing: 0
    }

    .o-form-doc-download_docs {
        padding: 170px 0 107px;
        margin-bottom: 78px
    }

    .o-form-doc-download_docs_title {
        font-size: 3rem;
        line-height: 1;
        letter-spacing: 0;
        margin-bottom: 83px
    }

    .o-form-doc-download_control {
        margin-top: 76px
    }

        .o-form-doc-download_control .m-field-error {
            height: 25.84615px
        }

    .o-form-doc-download_control_title {
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .white .o-form-doc-download_control_title {
        font-size: 1.8rem;
        line-height: 1;
        letter-spacing: 0;
        font-family: Impact,'Microsoft YaHei';
        font-weight: 500
    }

    .o-form-doc-download_control_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -1px;
        margin-right: -1px;
        align-items: center
    }

    .is-confirm .o-form-doc-download_control_row {
        display: block
    }

    .o-form-doc-download_control_col {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .is-confirm .o-form-doc-download_control_col {
        flex: 1 1 auto;
        max-width: none;
        padding: 0
    }

    .o-form-doc-download_buttons {
        margin-top: 48px
    }

    .o-form-doc-download_reset {
        margin-top: 118px
    }

    .o-form {
        padding-top: 150px
    }

    .o-form_note {
        margin-top: 16px
    }

    .o-form_step {
        max-width: 450px;
        margin: 0 auto 150px
    }

    .o-form_control {
        margin-top: 76px
    }

        .o-form_control .m-field-error {
            height: 25.84615px
        }

    .o-form_control_title {
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .white .o-form_control_title {
        font-size: 1.8rem;
        line-height: 1;
        letter-spacing: 0;
        font-family: Impact,'Microsoft YaHei';
        font-weight: 500
    }

    .o-form_control_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -1px;
        margin-right: -1px;
        align-items: center
    }

    .is-confirm .o-form_control_row {
        display: block
    }

    .o-form_control_col {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .is-confirm .o-form_control_col {
        flex: 1 1 auto;
        max-width: none;
        padding: 0
    }

    .o-form_buttons {
        margin-top: 48px
    }

    .o-form_reset {
        margin-top: 118px
    }

    .o-header-logo-sm {
        padding: 45px
    }

        .o-header-logo-sm svg {
            width: 61px;
            height: 61px
        }

    .o-header_logo {
        padding: 45px
    }

        .o-header_logo svg {
            width: 143px;
            height: 143px
        }

    .o-header_logo-sm {
        padding: 45px
    }

        .o-header_logo-sm svg {
            width: 61px;
            height: 61px
        }

    .o-ideorogy {
        padding-top: 292px;
        padding-bottom: 292px
    }

    .o-ideorogy_row {
        display: flex;
        flex-flow: row nowrap;
        align-items: flex-start
    }

    .o-ideorogy_left {
        flex: 37
    }

    .o-ideorogy_right {
        flex: 64
    }

    .o-ideorogy_colors {
        margin-top: 39px
    }

    .o-ideorogy .a-lead {
        margin-top: 64px
    }

    .o-ideorogy_title .a-heading {
        margin-top: 0
    }

    .o-ideorogy .a-body {
        margin-top: 16px
    }

    .o-introduction {
        padding-top: 300px;
        padding-bottom: 150px
    }

    .o-introduction_title {
        margin-top: 80px
    }

    .o-introduction .a-body {
        margin-top: 32px
    }

    .o-job-advertising_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

        .o-job-advertising_row.reverse {
            flex-direction: row-reverse
        }

    .o-job-advertising_left {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

        .o-job-advertising_left .m-service-image, .o-job-advertising_left .m-service-image_image, .o-job-advertising_left .m-service-image_image .a-image {
            height: 100%
        }

            .o-job-advertising_left .m-service-image_image .a-image img {
                object-fit: cover;
                width: 100%;
                height: 100%
            }

    .o-job-advertising_right {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-job-advertising_body {
        padding-left: 24.7%;
        padding-right: 24.7%;
        height: 100%;
        display: flex;
        align-items: center
    }

    .o-job-advertising_body_title {
        margin-top: 32px
    }

    .o-job-advertising_body_body {
        margin-top: 27px
    }

    .o-job-advertising_body_description {
        margin-top: 32px
    }

    .o-job-advertising_body_link {
        margin-top: 64px
    }

    .o-kv-career-subpage_body {
        top: -2.8%;
        left: 0;
        width: 100%
    }

        .o-kv-career-subpage_body .a-heading.size1 {
            font-size: 8.33333vw
        }

    .o-kv-career-subpage_above {
        font-size: 2.6rem;
        line-height: 1.34615;
        letter-spacing: 0
    }

    .o-kv-career-subpage_below {
        font-size: 1.4rem;
        line-height: 1.42857;
        letter-spacing: 0
    }

    .o-kv-career-subpage_scroll {
        left: 45px;
        bottom: 45px
    }

    .o-kv-career_inner {
        height: 100%
    }

    .o-kv-career_image {
        transition-delay: 0s
    }

        .o-kv-career_image figure {
            top: 50%;
            transform: translateY(-20%);
            height: auto
        }

        .o-kv-career_image:first-child {
            left: 0;
            width: 100%;
            height: 100%;
            transform: translate(-6%)
        }

        .o-kv-career_image:nth-child(2) {
            right: 0;
            bottom: 0;
            width: 100%;
            height: 100%;
            transform: translate(6%)
        }

    .o-kv-career_char {
        line-height: 1;
        font-size: 600px;
        font-size: 33.33333vw;
        letter-spacing: 0;
        transition-delay: .1s
    }

        .o-kv-career_char:first-child {
            margin-top: 6.5%;
            margin-left: -31%;
            transform: translate(-70%,-50%)
        }

        .o-kv-career_char:nth-child(2) {
            z-index: 110;
            margin-top: -14.2%;
            margin-left: -5%;
            transform: translate(-50%,-70%)
        }

        .o-kv-career_char:nth-child(3) {
            margin-top: 13.8%;
            margin-left: 3%;
            transform: translate(-50%,-30%)
        }

        .o-kv-career_char:nth-child(4) {
            margin-top: 17%;
            margin-left: 28.5%;
            transform: translate(-30%,-50%)
        }

    .o-kv-scroll {
        left: 47px;
        bottom: 54px
    }

    .o-kv-bottom {
        padding: 0 2% 5px;
        flex-flow: row nowrap;
        left: 50%;
        width: 50%;
        height: 19%;
        transition-delay: .35s
    }

    .o-kv-bottom_progress {
        top: auto;
        border-width: 5px
    }

    .o-kv-bottom_inner {
        flex-flow: row nowrap;
        justify-content: center;
        align-items: center
    }

        .o-kv-bottom_inner > .a-body {
            padding-top: 10px;
            font-size: 2.8rem;
            line-height: 1;
            letter-spacing: 0
        }

    .o-kv-bottom_subline {
        margin-top: .7em;
        margin-left: 10%;
        font-size: 1.2rem;
        line-height: 3.75;
        letter-spacing: 0
    }

        .o-kv-bottom_subline .a-label {
            font-size: 1.2rem;
            line-height: 3.75;
            letter-spacing: 0
        }

    .o-kv-bottom_subline_x {
        padding: 0 1.77778vw
    }

    .o-kv-bottom_subline_slide .a-label {
        margin-top: 0
    }

    .o-kv-copy svg {
        width: 263px;
        height: 274px
    }

    .o-kv-copy {
        left: 25%;
        font-size: 110px
    }

    .o-kv-paginate {
        top: 50%;
        left: 43px;
        font-size: 1.2rem;
        line-height: 3.75;
        letter-spacing: 0
    }

    .o-kv_inner {
        height: 100%
    }

    .o-kv_slide {
        opacity: 1;
        transform: translate(0);
        transition: none
    }

        .o-kv_slide.active {
            transform: translate(0);
            transition: none
        }

    .o-kv_slide_left, .o-kv_slide_right {
        overflow: hidden;
        width: 50%;
        opacity: 0;
        transform: translate(-15%);
        transition: transform 0s 1.2s,opacity 0s 1.2s
    }

    .o-kv_slide_right {
        z-index: 1;
        display: block;
        left: auto;
        right: 0;
        transform: translateY(-15%)
    }

    .o-kv_slide.active .o-kv_slide_left, .o-kv_slide.active .o-kv_slide_right {
        opacity: 1;
        transform: translate(0);
        transition: transform 1s cubic-bezier(.8,0,.24,1) 0s,opacity 1s cubic-bezier(.8,0,.24,1) 0s
    }

    .o-kv_slide.active .o-kv_slide_right {
        transition-delay: .05s
    }

    .o-kv_scroll {
        left: 47px;
        bottom: 54px
    }

    .o-leverage-high {
        padding: 150px 0
    }

    .o-leverage-high_title .underline:after {
        bottom: -5px
    }

    .o-leverage-low {
        padding: 150px 0
    }

    .o-leverage-low_title .underline:after {
        bottom: -5px
    }

    .o-logo-mark {
        padding: 300px 0 0
    }

    .o-logo-mark_figure svg {
        width: 280px;
        height: 371px
    }

    .o-logo-mark_body {
        margin-top: 92px
    }

    .o-logo-mark_features {
        margin-top: 200px
    }

    .o-logo-mark_feature {
        flex: 0 1 25%;
        max-width: 25%;
        padding: 8% 5.28%
    }

        .o-logo-mark_feature:nth-child(odd) {
            background-color: #5a0000
        }

        .o-logo-mark_feature:nth-child(2n) {
            background-color: #510000
        }

    .o-logo-mark_feature_title {
        margin-top: 22px
    }

    .o-logo-mark_feature_body {
        margin-top: 32px
    }

    .o-menu-header {
        display: block;
        z-index: 4200;
        position: fixed;
        top: 0;
        right: 0;
        padding-right: 0;
        width: auto;
        height: 100px
    }

        .o-menu-header.scrolled {
            pointer-events: none
        }

    .o-menu-header_inner {
        padding-top: 0;
        padding-right: 10px;
        width: 100%;
        height: 100%;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: flex-end
    }

    .o-menu-header_item {
        position: relative;
        margin: 0 8px;
        padding: 0 17px
    }

    .o-menu-header_item, .o-menu-header_item_body {
        display: inline-block
    }

        .o-menu-header_item_body:after {
            content: "";
            display: block;
            left: 0;
            width: 100%;
            height: 2px;
            position: relative;
            bottom: -3px;
            border-bottom: 2px solid #fff;
            transition: .3s ease;
            transform-origin: 0 0;
            transform: scaleX(0)
        }

        .o-menu-header_item_body:hover:after {
            transform: scaleX(1)
        }

    .o-menu_left {
        width: 100%;
        height: 100%;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: center;
        transition: .6s cubic-bezier(.14,1,.34,1)
    }

    .o-menu.submenu .o-menu_left {
        width: 50%
    }

    .o-menu_inner {
        padding: 0
    }

    .o-menu_item_body > .a-label {
        font-size: 9rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-menu_bottom {
        margin-top: 42px;
        display: flex;
        flex-flow: row nowrap;
        align-items: center
    }

    .o-menu_links {
        margin-top: 0
    }

    .o-menu_shared {
        margin-top: 0;
        margin-left: 47px
    }

        .o-menu_shared a .a-icon {
            margin: 0 6px;
            font-size: 22px
        }

    .o-mission {
        padding: 250px 0
    }

        .o-mission > div {
            position: relative;
            margin: 0 auto;
            max-width: 280px
        }

    .o-mission_subline .m-rotated-title {
        position: absolute;
        top: .5%;
        left: -32%
    }

    .o-mission_subline {
        margin-bottom: 0
    }

    .o-news {
        padding-top: 153px
    }

    .o-news_row {
        padding-top: 100px
    }

    .o-news_item.pickup {
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-news_item:nth-child(3) {
        order: unset
    }

    .o-news_item:nth-child(5) {
        order: unset;
        display: block
    }

    .o-news_item:nth-child(7) {
        display: block
    }

    .o-news_more {
        margin-top: 74px
    }

    .o-our-members {
        padding-top: 150px;
        padding-bottom: 223px
    }

    .o-our-members_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

    .o-our-members_col {
        margin-top: 150px;
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-our-slogan {
        padding-top: 19%;
        padding-bottom: 19%
    }

    .o-our-slogan_bg {
        position: absolute;
        width: 100%;
        height: auto;
        top: 0;
        left: auto;
        right: 50%;
        margin-right: -900px;
        display: block;
        max-width: 870px
    }

    .o-our-slogan .m-section-header .m-rotated-title.rotate {
        left: -14%
    }

    .o-our-slogan .m-section-header_title .a-heading {
        font-size: 80px
    }

    .o-our-slogan .a-lead {
        margin-top: 8px
    }

    .o-our-slogan_title .a-heading.ja.size4 {
        margin-top: 40px;
        font-size: 2.4rem;
        line-height: 1.842;
        letter-spacing: 0
    }

    .o-our-slogan .a-body {
        margin-top: 16px
    }

    .o-page-header-squish {
        height: 600px
    }

    .o-page-header-squish_body {
        top: 0;
        left: 20%;
        width: 80%
    }

    .o-page-header_body {
        left: 20%;
        width: 80%
    }

    .o-page-header_above {
        font-size: 2.6rem;
        line-height: 1.34615;
        letter-spacing: 0
    }

    .o-page-header_below {
        font-size: 1.4rem;
        line-height: 1.42857;
        letter-spacing: 0
    }

    .o-page-overlay_inner svg {
        width: 142px;
        height: 142px
    }

    .o-pagetop-button {
        right: 40px;
        bottom: 40px
    }

    .o-pagination {
        padding-bottom: 178px;
        font-size: 1.4rem;
        line-height: 1;
        letter-spacing: 0
    }

        .o-pagination .inner {
            margin: 0 auto;
            max-width: 380px
        }

    .o-pamphlet-design {
        padding-top: 200px;
        padding-bottom: 100px
    }

    .o-pamphlet-design_items {
        margin-top: 150px
    }

    .o-pamphlet-design_link {
        margin-top: 70px
    }

    .o-pamphlet-design_flow {
        padding-top: 200px
    }

    .o-pamphlet-design_flow_header .a-heading {
        font-size: 1.8rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-pamphlet-design_flow_items {
        margin-top: 70px
    }

    .o-pamphlet-design_flow_item .a-heading.ja {
        line-height: 100px
    }

    .o-pamphlet-design_flow_footer {
        margin-top: 26px;
        font-size: 1.5rem;
        line-height: 1.86667;
        letter-spacing: 0
    }

    .o-pamphlet-design_plan {
        padding-top: 200px
    }

    .o-pamphlet-design_plan_header .a-heading {
        font-size: 1.8rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-pamphlet-design_plan_table {
        padding-top: 60px;
        padding-bottom: 150px
    }

    .o-partners {
        padding-top: 150px;
        padding-bottom: 200px
    }

        .o-partners > .container {
            max-width: calc(1350px + 16%)
        }

    .o-partners_title {
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-partners_subtitle {
        margin-top: 14px;
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-partners_inner {
        max-width: none
    }

    .o-partners_row {
        margin-top: 128px
    }

    .o-partners_item {
        padding-left: 5%;
        padding-right: 5%;
        flex: 0 1 20%;
        max-width: 20%
    }

    .o-partners_item_inner {
        padding: 89% 0
    }

    .o-related-news {
        padding-top: 150px
    }

    .o-related-news_row {
        margin-top: 50px;
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -15px;
        margin-right: -15px
    }

    .o-related-news_item {
        margin-top: 100px
    }

        .o-related-news_item:nth-child(4) {
            display: block
        }

        .o-related-news_item:nth-child(5) {
            display: block
        }

        .o-related-news_item:nth-child(6) {
            display: block
        }

        .o-related-news_item:nth-child(7) {
            display: block
        }

    .o-related-news_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-related-works {
        padding-top: 150px
    }

    .o-related-works_row {
        margin-top: 50px
    }

    .o-related-works_item {
        margin-top: 100px
    }

        .o-related-works_item:nth-child(4) {
            display: block
        }

        .o-related-works_item:nth-child(5) {
            display: block
        }

        .o-related-works_item:nth-child(6) {
            display: block
        }

        .o-related-works_item:nth-child(7) {
            display: block
        }

    .o-related-works_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-service {
        padding-top: 45px;
        background-color: #181818
    }

        .o-service > .container {
            max-width: calc(1350px + 16%)
        }

    .o-service_features {
        margin-top: 128px
    }

    .o-service_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-single-header {
        height: 600px
    }

    .o-single-header_body {
        top: 3%;
        left: 20%;
        width: 30%
    }

    .o-single-header_title {
        font-size: 3rem;
        line-height: 1.5;
        letter-spacing: 0;
        font-weight: 500
    }

    .o-single-header_meta {
        margin-top: 21px
    }

    .o-single-header_cat {
        margin-right: 16px
    }

    .o-single-back {
        padding-top: 128px;
        padding-bottom: 128px
    }

    .o-slogan {
        padding: 0 0 300px;
        background-color: #181818
    }

        .o-slogan .container-phone {
            max-width: 1800px;
            padding-left: 0;
            padding-right: 0
        }

    .o-slogan_subtitle {
        left: 0
    }

    .o-slogan_subtitle-outer {
        position: relative;
        top: 180px
    }

    .o-slogan_bg {
        position: absolute;
        width: 100%;
        top: 0;
        left: 50%;
        margin-left: -900px;
        display: block;
        max-width: 850px
    }

    .o-slogan_images {
        width: 56%;
        margin-left: auto;
        margin-right: 0;
        height: auto;
        padding-bottom: 0
    }

    .o-slogan_images_inner {
        position: relative;
        padding-bottom: 102.9126214%;
        margin-left: auto;
        margin-right: 0
    }

    .o-slogan_image.i02 {
        margin-left: -8%
    }

    .o-slogan_image.i04 {
        margin-left: -12%
    }

    .o-slogan_image.i05 {
        margin-left: -36%
    }

    .o-slogan_body {
        margin-top: -27%
    }

    .o-slogan_body_bg {
        display: none
    }

    .o-slogan_staylowkey svg {
        width: 369px;
        height: 386px
    }

    .o-slogan_title {
        margin-top: 112px
    }

    .o-slogan .a-body {
        margin-top: 32px
    }

    .o-splashscreen_logo svg {
        width: 142px;
        height: 142px
    }

    .o-subpage-links {
        padding-top: 0;
        padding-bottom: 0
    }

    .o-subpage-links_item {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-swipe-cards {
        overflow: visible
    }

    .o-swipe-cards_container {
        padding: 0;
        margin-left: -7%;
        margin-right: -7%
    }

    .o-swipe-cards_slide {
        padding-left: 7%;
        padding-right: 7%;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .o-three-main-solutions {
        padding: 150px 0
    }

    .o-three-main-solutions_items {
        margin-top: 100px;
        margin-left: 2.22222%;
        overflow: visible
    }

        .o-three-main-solutions_items .swiper-wrapper {
            margin: 0 -10px
        }

        .o-three-main-solutions_items .swiper-slide {
            margin-left: -1.11111%;
            margin-right: -1.11111%;
            width: 35.55555%
        }

        .o-three-main-solutions_items .swiper-controls {
            display: none
        }

    .o-toc {
        padding: 21.33333px 32px
    }

    .o-toc_title {
        margin-bottom: 16px;
        font-size: 2.4rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.5
    }

    .o-toc_item {
        padding: 5.33333px 8px;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0;
        line-height: 1.5
    }

    .o-umplex {
        background-color: #181818;
        margin-top: 10.3%
    }

    .o-umplex_header {
        z-index: 10;
        position: absolute;
        top: 11%;
        right: 0;
        width: 4%;
        height: 100%;
        overflow: hidden;
        white-space: nowrap
    }

    .o-umplex_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-umplex_left {
        padding-top: 7.3%;
        padding-bottom: 7.3%;
        padding-right: 0;
        flex: 0 1 33.33333%;
        width: 33.33333%
    }

    .o-umplex_right {
        flex: 0 1 66.66666%;
        width: 66.66666%
    }

    .o-umplex_image {
        background-color: #181818
    }

        .o-umplex_image figure {
            width: 169%;
            height: auto;
            padding-bottom: 0
        }

    .o-umplex_body {
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 20%;
        padding-bottom: 12%;
        display: flex;
        align-items: center
    }

        .o-umplex_body .container-narrow {
            padding-left: 50%;
            padding-right: 10.9%;
            max-width: none
        }

        .o-umplex_body .a-lead {
            margin-top: 0
        }

    .o-umplex_body_title .a-heading {
        margin-top: 84px
    }

    .o-umplex_body .a-body {
        margin-top: 16px;
        margin-left: auto;
        margin-right: auto;
        max-width: 354px;
        line-height: 2.15
    }

    .o-umplex_body .a-button {
        display: block;
        max-width: 190px;
        margin-left: auto;
        margin-right: auto
    }

    .o-value {
        padding-top: 300px;
        padding-bottom: 300px
    }

    .o-value_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-value_left {
        flex: 37
    }

    .o-value_right {
        margin-top: 0;
        flex: 63
    }

    .o-vision {
        padding: 240px 0
    }

        .o-vision > div {
            position: relative;
            margin: 0 auto;
            max-width: 280px
        }

    .o-vision_subline .m-rotated-title {
        position: absolute;
        top: .5%;
        left: -32%
    }

    .o-vision_subline {
        margin-bottom: 0
    }

    .o-work-content .m-section-header .a-heading {
        font-size: 60px
    }

    .o-work-content_row {
        display: flex;
        flex-flow: row nowrap
    }

    .o-work-content_left {
        flex: 37
    }

    .o-work-content_left_inner {
        padding-right: 28%
    }

    .o-work-content_right {
        margin-top: 0;
        flex: 63
    }

    .o-work-content_description {
        margin-top: 118px
    }

    .o-work-content_beforeafter {
        margin-top: 113px
    }

    .o-work-content_body {
        font-size: 1.3rem;
        line-height: 2.15385;
        letter-spacing: 0
    }

        .o-work-content_body h1, .o-work-content_body h2 {
            font-size: 1.8rem;
            line-height: 1.5;
            letter-spacing: 0
        }

        .o-work-content_body h3, .o-work-content_body h4, .o-work-content_body h5, .o-work-content_body h6 {
            font-size: 1.6rem;
            line-height: 1.5;
            letter-spacing: .1em
        }

        .o-work-content_body h1, .o-work-content_body h2, .o-work-content_body h3, .o-work-content_body h4, .o-work-content_body h5, .o-work-content_body h6 {
            margin: 64px 0 32px
        }

        .o-work-content_body a {
            padding-bottom: 1px
        }

        .o-work-content_body table tr td, .o-work-content_body table tr th {
            padding: 30px 0
        }

        .o-work-content_body .alignright {
            margin-left: 16px;
            width: auto
        }

        .o-work-content_body .alignleft {
            margin-right: 16px;
            width: unset
        }

    .o-work-content_body {
        margin-top: 32px
    }

    .o-works {
        padding-bottom: 178px
    }

    .o-works_row {
        margin-top: 50px;
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -15px;
        margin-right: -15px
    }

    .o-works_col {
        margin-top: 100px
    }

        .o-works_col, .o-works_col:first-child, .o-works_col:nth-child(2), .o-works_col:nth-child(3), .o-works_col:nth-child(4) {
            padding-left: 15px;
            padding-right: 15px;
            flex: 0 1 25%;
            max-width: 25%
        }

            .o-works_col:nth-child(5), .o-works_col:nth-child(6) {
                padding-left: 15px;
                padding-right: 15px;
                flex: 0 1 50%;
                max-width: 50%
            }

            .o-works_col:nth-child(7), .o-works_col:nth-child(8), .o-works_col:nth-child(9) {
                padding-left: 15px;
                padding-right: 15px;
                flex: 0 1 33.33333%;
                max-width: 33.33333%
            }

            .o-works_col:nth-child(10), .o-works_col:nth-child(11), .o-works_col:nth-child(12), .o-works_col:nth-child(13) {
                padding-left: 15px;
                padding-right: 15px;
                flex: 0 1 25%;
                max-width: 25%
            }

            .o-works_col:nth-child(14), .o-works_col:nth-child(15) {
                padding-left: 15px;
                padding-right: 15px;
                flex: 0 1 50%;
                max-width: 50%
            }

            .o-works_col:nth-child(16), .o-works_col:nth-child(17), .o-works_col:nth-child(18) {
                padding-left: 15px;
                padding-right: 15px;
                flex: 0 1 33.33333%;
                max-width: 33.33333%
            }

    .p-404_bg {
        font-size: 32vw
    }

    .p-404_title {
        font-size: 3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .p-404_button {
        margin-top: 37px
    }

        .p-404_button .a-button {
            padding: 23px 53px
        }

    .p-about_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: 0;
        margin-right: 0
    }

    .p-about_col {
        padding-left: 0;
        padding-right: 0;
        flex: 0 1 50%;
        max-width: 50%
    }

        .p-about_col > * {
            height: 100%
        }

    .p-contact {
        padding-bottom: 250px
    }

    .p-culture_infographic_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin: 0
    }

    .p-culture_infographic_gender {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 40%;
        max-width: 40%
    }

    .p-culture_infographic_age {
        margin-top: 0;
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 60%;
        max-width: 60%
    }

    .p-culture_infographic_birth {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .p-culture_infographic_atmos {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .p-culture_infographic_holidays {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .p-culture_infographic_drinking {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .p-culture_infographic_time {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 33.33333%;
        max-width: 33.33333%
    }

    .p-culture_infographic_sales {
        padding-left: 1px;
        padding-right: 1px;
        flex: 0 1 100%;
        max-width: 100%
    }

    .p-doc-download-thanks_section {
        padding-top: 150px;
        padding-bottom: 150px
    }

    .p-doc-download-thanks_title {
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .p-doc-download-thanks .a-button {
        margin-top: 64px;
        padding-left: 50px;
        padding-right: 50px
    }

    .p-doc-download {
        padding-bottom: 250px
    }

    .p-entry-thanks_section {
        padding-top: 150px;
        padding-bottom: 150px
    }

    .p-entry-thanks_title {
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .p-entry-thanks .a-button {
        margin-top: 64px;
        padding-left: 50px;
        padding-right: 50px
    }

    .p-privacypolicy {
        padding-bottom: 300px
    }

    .p-single-work_article {
        padding-top: 300px;
        padding-bottom: 300px
    }

    .p-single-work_voice {
        margin-top: 200px
    }

    .p-single_article {
        padding-top: 150px;
        padding-bottom: 150px
    }

    .p-sitemap {
        padding-bottom: 300px
    }

    .p-sitemap_title .a-heading {
        padding-bottom: 16px;
        font-size: 24px
    }

    .p-sitemap_row {
        display: flex;
        flex: 0 1 auto;
        flex-flow: row wrap;
        margin-left: -15px;
        margin-right: -15px
    }

    .p-sitemap_col {
        margin-top: 94px;
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .p-sitemap_links {
        margin-top: 45px
    }

        .p-sitemap_links .m-label-link {
            margin-top: 16px
        }

            .p-sitemap_links .m-label-link .a-label {
                font-size: 1.2rem;
                line-height: 1.6;
                letter-spacing: 0
            }

    .p-thanks_section {
        padding-top: 150px;
        padding-bottom: 150px
    }

    .p-thanks_title {
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0
    }

    .p-thanks .a-button {
        margin-top: 64px;
        padding-left: 50px;
        padding-right: 50px
    }

    .p-top {
        margin-top: 0
    }

    .spacing_box-stack-xxs {
        display: inline-block;
        margin-right: 4px;
        padding: 2px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-xxs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-xs {
        display: inline-block;
        margin-right: 4px;
        padding: 4px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-xs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-sm {
        display: inline-block;
        margin-right: 4px;
        padding: 8px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-sm > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-md {
        display: inline-block;
        margin-right: 4px;
        padding: 16px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-md > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-lg {
        display: inline-block;
        margin-right: 4px;
        padding: 32px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-lg > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-xl {
        display: inline-block;
        margin-right: 4px;
        padding: 64px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-xl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stack-xxl {
        display: inline-block;
        margin-right: 4px;
        padding: 128px 0 0;
        border: 1px dotted #000
    }

        .spacing_box-stack-xxl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-xxs {
        display: inline-block;
        margin-right: 4px;
        padding: 2px;
        border: 1px dotted #000
    }

        .spacing_box-inset-xxs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-xs {
        display: inline-block;
        margin-right: 4px;
        padding: 4px;
        border: 1px dotted #000
    }

        .spacing_box-inset-xs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-sm {
        display: inline-block;
        margin-right: 4px;
        padding: 8px;
        border: 1px dotted #000
    }

        .spacing_box-inset-sm > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-md {
        display: inline-block;
        margin-right: 4px;
        padding: 16px;
        border: 1px dotted #000
    }

        .spacing_box-inset-md > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-lg {
        display: inline-block;
        margin-right: 4px;
        padding: 32px;
        border: 1px dotted #000
    }

        .spacing_box-inset-lg > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-xl {
        display: inline-block;
        margin-right: 4px;
        padding: 64px;
        border: 1px dotted #000
    }

        .spacing_box-inset-xl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-inset-xxl {
        display: inline-block;
        margin-right: 4px;
        padding: 128px;
        border: 1px dotted #000
    }

        .spacing_box-inset-xxl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-xxs {
        display: inline-block;
        margin-right: 4px;
        padding: 2px 1.33333px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-xxs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-xs {
        display: inline-block;
        margin-right: 4px;
        padding: 4px 2.66667px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-xs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-sm {
        display: inline-block;
        margin-right: 4px;
        padding: 8px 5.33333px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-sm > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-md {
        display: inline-block;
        margin-right: 4px;
        padding: 16px 10.66667px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-md > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-lg {
        display: inline-block;
        margin-right: 4px;
        padding: 32px 21.33333px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-lg > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-xl {
        display: inline-block;
        margin-right: 4px;
        padding: 64px 42.66667px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-xl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-stretch-xxl {
        display: inline-block;
        margin-right: 4px;
        padding: 128px 85.33333px;
        border: 1px dotted #000
    }

        .spacing_box-stretch-xxl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-xxs {
        display: inline-block;
        margin-right: 4px;
        padding: 1.33333px 2px;
        border: 1px dotted #000
    }

        .spacing_box-squish-xxs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-xs {
        display: inline-block;
        margin-right: 4px;
        padding: 2.66667px 4px;
        border: 1px dotted #000
    }

        .spacing_box-squish-xs > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-sm {
        display: inline-block;
        margin-right: 4px;
        padding: 5.33333px 8px;
        border: 1px dotted #000
    }

        .spacing_box-squish-sm > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-md {
        display: inline-block;
        margin-right: 4px;
        padding: 10.66667px 16px;
        border: 1px dotted #000
    }

        .spacing_box-squish-md > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-lg {
        display: inline-block;
        margin-right: 4px;
        padding: 21.33333px 32px;
        border: 1px dotted #000
    }

        .spacing_box-squish-lg > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-xl {
        display: inline-block;
        margin-right: 4px;
        padding: 42.66667px 64px;
        border: 1px dotted #000
    }

        .spacing_box-squish-xl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }

    .spacing_box-squish-xxl {
        display: inline-block;
        margin-right: 4px;
        padding: 85.33333px 128px;
        border: 1px dotted #000
    }

        .spacing_box-squish-xxl > div {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #b5ceff;
            width: 50px;
            height: 50px
        }
}

@media (min-width:992px) and (max-height:900px) {
    .o-submenu-desktop_item .a-body {
        line-height: 6vh;
        font-size: 5vh
    }

    .o-menu_item_body > .a-label {
        line-height: 8.7vh;
        font-size: 9vh
    }
}

@media (min-width:992px) and (min-width:992px) {
    .o-submenu-header_item_body:after {
        bottom: -3px
    }

    .o-about_left:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        background-color: #000;
        top: 0;
        height: 50%
    }

    .o-menu-header_item_body:after {
        bottom: -3px
    }

    .o-menu-header_item_body > .a-label {
        font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif,'Microsoft YaHei';
        text-transform: uppercase;
        font-size: 1.3rem;
        line-height: 2;
        letter-spacing: 0;
        color: #fefefe
    }

    .o-umplex_left:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        background-color: #181818;
        top: 0;
        height: 50%
    }
}

@media (min-width:1025px) {
    .o-career-news_col {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }
}

@media (min-width:1100px) {
    .m-career-member-dialog_body {
        padding-left: 6.66667vw;
        padding-right: 6.66667vw
    }

    .m-career-member-dialog_description {
        margin-top: 5vh
    }

    .m-career-member-dialog_title {
        margin-top: 8.33333vh
    }
}

@media (min-width:1200px) {
    .o-archive_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-news_item.pickup {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-news_item:nth-child(3) {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-news_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-related-news_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }

    .o-related-works_item {
        padding-left: 15px;
        padding-right: 15px;
        flex: 0 1 25%;
        max-width: 25%
    }
}

@media (min-width:1350px) {
    .o-career-chart-atmos_ja {
        font-size: 1.3rem;
        line-height: 1;
        letter-spacing: 0
    }

    .o-career-chart-atmos_per {
        font-size: 6rem;
        line-height: 1;
        letter-spacing: -.025em
    }

    .o-career-chart-atmos_angle svg {
        width: 165px;
        height: 143px
    }

    .o-career-chart-atmos_angle.no02 svg {
        width: 226px;
        height: 196px
    }

    .o-career-chart-atmos_angle.no03 svg {
        width: 165px;
        height: 143px
    }

    .o-career-chart-atmos_angle.no04 svg {
        width: 262px;
        height: 226px
    }
}

@media (min-width:1400px) {
    .m-career-member-dialog_body {
        padding-left: 10vw;
        padding-right: 10vw
    }

    .o-kv-bottom_inner {
        padding-right: 5%
    }
}

@media (min-width:1500px) {
    .o-career-project-day_body {
        padding-left: 12.5vw;
        padding-right: 12.5vw
    }
}

@media (min-width:1800px) {
    .a-heading.size1 {
        font-size: 180px;
        font-size: 10vw;
        letter-spacing: 0;
        line-height: 1
    }

    .o-page-header-squish .m-page-heading .a-heading.size1 {
        font-size: 10vw
    }

    .o-slogan_body {
        margin-top: -580px
    }
}

@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active) {
    .ps {
        overflow: auto !important
    }
}

@media (max-width:991px) {
    .hidden-phone {
        display: none !important
    }

    .m-card.career .m-card_body_header_initial {
        margin-top: -.04em;
        margin-right: 12px;
        font-size: 3.66667rem;
        line-height: 1;
        letter-spacing: 0
    }

    .m-card.career .m-card_body_header_title > .a-heading {
        font-weight: 700;
        font-size: 1rem;
        line-height: 1.83333;
        letter-spacing: 0
    }

    .m-card.career .m-card_body {
        padding: 15px
    }

        .m-card.career .m-card_body > .a-body {
            margin-top: 4px;
            font-size: 1rem;
            line-height: 1.83333;
            letter-spacing: 0
        }

    .m-card.career .m-card_date {
        font-size: .93333rem;
        line-height: 1;
        letter-spacing: 0;
        letter-spacing: -.03em
    }

    .m-checkbox-field_list.pc {
        display: none !important
    }

    .m-document-link a .pc {
        display: none !important
    }

    .m-document-link a .copy {
        position: absolute;
        top: 50%;
        left: 9.6vw;
        transform: translateY(-50%)
    }

    .o-career-work-space .next, .o-career-work-space .prev {
        display: none
    }

    .o-company-profile .m-description .m-more-button_label {
        font-size: 12px
    }

    .o-doc-download-kv .tb {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-between
    }

    .o-form-doc-download_control_col_body {
        display: none
    }

    .o-form_control_col_body {
        display: none
    }

    .o-news_item:nth-child(4) {
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-news_item:nth-child(6) {
        padding-left: 10px;
        padding-right: 10px;
        flex: 0 1 50%;
        max-width: 50%
    }

    .o-page-header-squish .m-page-heading .a-heading.size1 {
        font-size: 25vw
    }

    .p-company .m-page-heading_title .a-heading.size1 {
        line-height: 1;
        font-size: 72px;
        font-size: 19.2vw;
        letter-spacing: 0
    }

    .p-contact .m-page-heading_title .a-heading.size1 {
        line-height: 1;
        font-size: 93px;
        font-size: 24.8vw;
        letter-spacing: 0
    }

    .p-privacypolicy .m-page-heading_title .a-heading.size1 {
        line-height: 1;
        font-size: 53px;
        font-size: 14.13333vw;
        letter-spacing: 0
    }

    .p-sitemap .m-page-heading_title .a-heading.size1 {
        line-height: 1;
        font-size: 80px;
        font-size: 21.33333vw;
        letter-spacing: 0
    }
}

@media (min-height:667px) {
    .o-kv-copy {
        top: 50.5%
    }
}

body.modal-show {
    overflow: hidden
}

#gallery .cont {
    height: 100%
}

#view-modal {
    position: fixed;
    display: none;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    z-index: 99999;
    -webkit-transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center
}

    #view-modal.show {
        display: block;
        visibility: visible;
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    #view-modal.cont {
        position: relative;
        padding: 0;
    }

    #view-modal .scroll-cont {
        position: relative;
        height: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch
    }

    #view-modal.show .close-btn {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-transition: background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s;
        transition: background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s;
        transition: transform .6s ease 1.2s,background-color .4s ease,color .4s ease,box-shadow .4s ease;
        transition: transform .6s ease 1.2s,background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s
    }

.modal {
    position: fixed;
    display: none;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    z-index: 99999;
    -webkit-transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    
}

    .modal.show {
        display: block;
        visibility: visible;
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

.main.modal.show {
    display: block;
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    position: relative;
    height: 100%;
    overflow-y: auto;
}

.modal .cont {
    position: relative
}

.modal .scroll-cont {
    position: relative;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.modal.show .close-btn {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s;
    transition: background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s;
    transition: transform .6s ease 1.2s,background-color .4s ease,color .4s ease,box-shadow .4s ease;
    transition: transform .6s ease 1.2s,background-color .4s ease,color .4s ease,box-shadow .4s ease,-webkit-transform .6s ease 1.2s
}

#gallery .modal .swiper-container {
    width: 100%;
}

.close-btn {
    position: absolute;
    top: 30px;
    right: 30px;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    z-index: 99
}

    .close-btn.iconbtnborder {
    }

    .close-btn:before {
        display: inline-block
    }

.no-touch .close-btn:hover:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

@media (max-width:979px) {
    .close-btn {
        top: 20px;
        right: 20px
    }
}

@media (max-width:767px) {
    .close-btn {
        top: 15px;
        right: 15px
    }
}

.swiperbtn {
    display: block;
    width: 50px;
    height: 50px;
    padding: 0;
    text-align: center;
    border-radius: 50%;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

    .swiperbtn:before {
        position: relative;
        font-size: 20px;
        z-index: 2;
        -webkit-transition: all .4s ease;
        transition: all .4s ease
    }

    .swiperbtn:after {
    }

a.swiperbtn:before {
    line-height: 48px
}

.swiperbtn:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 50%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    z-index: 0;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.swiperbtn.active, .no-touch .swiperbtn:hover {
    box-shadow: 0 2px 16px rgba(0,0,0,.2);
    box-shadow: none
}

    .swiperbtn.active:before, .no-touch .swiperbtn:hover:before {
    }

    .swiperbtn.active:after, .no-touch .swiperbtn:hover:after {
        -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
        transform: scale(1.2);
        opacity: .9
    }

@media (max-width:767px) {
    .swiperbtn {
        width: 40px;
        height: 40px;
    }

        .swiperbtn:before {
            font-size: 16px
        }

    a.swiperbtn:before {
        line-height: 38px
    }
}

.scroll-cont {
    background-color: #111;
}
#UCnewscontent .wrap {
    padding: 50px;
    text-align:left;
}
.iconbtn {
    background-color: #b30606;
}

    .iconbtn:before {
        color: #fff;
    }

    .iconbtn:after {
        background-color: #fff;
    }

    .iconbtn.active:before, .no-touch .iconbtn:hover:before {
        color: #fff
    }

.iconbtnborder {
    background-color: #fff;
    border: 0px solid #fff
}

    .iconbtnborder.active:before, .no-touch .iconbtnborder:hover:before {
        color: #fff;
    }

    .iconbtnborder:before {
        color: #fff;
    }

    .iconbtnborder:after {
        background-color: #59c2f2;
    }

.no-touch footer .bottombar a:hover {
    color: #888
}

.iconbtn {
    background-color: #2e3192;
}

.iconbtn {
    background-color: #345abd;
}

.iconbtn {
    background-color: #b30606;
}

.iconbtn {
    display: block;
    width: 50px;
    height: 50px;
    padding: 0;
    text-align: center;
    border-radius: 50%;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.close-btn {
    position: absolute;
    top: 30px;
    right: 30px;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    z-index: 99;
}

[class*=" icon-"], [class^=icon-] {
    font-family: icomoon !important;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

button {
    background: 0 0;
    border: none;
    text-shadow: none;
    position: relative;
}

button {
    background: 0 0;
    border: none;
    text-shadow: none;
    position: relative;
}

button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer;
}

button, select {
    text-transform: none;
}

button {
    overflow: visible;
}

button, input, optgroup, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

* {
    box-sizing: border-box;
}


button {
    appearance: auto;
    font-style:;
    font-variant-ligatures:;
    font-variant-caps:;
    font-variant-numeric:;
    font-variant-east-asian:;
    font-variant-alternates:;
    font-variant-position:;
    font-variant-emoji:;
    font-weight:;
    font-stretch:;
    font-size:;
    font-family:;
    font-optical-sizing:;
    font-size-adjust:;
    font-kerning:;
    font-feature-settings:;
    font-variation-settings:;
    text-rendering: auto;
    color: buttontext;
    letter-spacing: normal;
    word-spacing: normal;
    line-height: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    display: inline-block;
    text-align: center;
    cursor: default;
    box-sizing: border-box;
    background-color: buttonface;
    margin: 0em;
    padding-block: 1px;
    padding-inline: 6px;
    border-width: 2px;
    border-color: buttonborder;
    border-image: initial;
}

#view-modal.show {
    display: block;
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

#view-modal {
    position: fixed;
    display: none;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    z-index: 99999;
    -webkit-transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    -webkit-transform: translateY(77%);
    -ms-transform: translateY(77%);
    transform: translateY(77%);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
}

.modal.show {
    display: block;
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.modal {
    position: fixed;
    display: none;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    z-index: 99999;
    -webkit-transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    transition: all 1.2s cubic-bezier(.77,0,.175,1) 0s;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
}

body {
    
}

body {
    font-family: pt_serif, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

body {
    font-size: 14px;
    line-height: 1.8;
    width: 100%;
    height: 100%;
}

html {
    font-size: 10px;
    width: 100%;
    height: 100%;
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

.iconbtn:before {
    color: #fff;
}

.iconbtn:before {
    position: relative;
    font-size: 20px;
    z-index: 2;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.close-btn:before {
    display: inline-block;
}

.icon-close:before {
    content: "\e5cd";
}

:after, :before {
    box-sizing: border-box;
}

.iconbtn:after {
    background-color: #fff;
}

.iconbtn:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 50%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    z-index: 0;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}