:where(:not(iframe, canvas, img, svg, video):not(svg *)) {
    all: unset;
    display: revert
}

*, ::after, ::before {
    box-sizing: border-box
}

ol, ul {
    list-style: none
}

img {
    max-width: 100%
}

table {
    border-collapse: collapse
}

textarea {
    white-space: revert
}

:root {
    --animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 1
}

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

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

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

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

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

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

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

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

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

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

.animate__animated.animate__faster {
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-duration: calc(var(--animate-duration) / 2);
    animation-duration: calc(var(--animate-duration) / 2)
}

.animate__animated.animate__fast {
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-duration: calc(var(--animate-duration) * .8);
    animation-duration: calc(var(--animate-duration) * .8)
}

.animate__animated.animate__slow {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-duration: calc(var(--animate-duration) * 2);
    animation-duration: calc(var(--animate-duration) * 2)
}

.animate__animated.animate__slower {
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-duration: calc(var(--animate-duration) * 3);
    animation-duration: calc(var(--animate-duration) * 3)
}

@media print, (prefers-reduced-motion:reduce) {
    .animate__animated {
        -webkit-animation-duration: 1ms !important;
        animation-duration: 1ms !important;
        transition-duration: 1ms !important;
        -webkit-animation-iteration-count: 1 !important;
        animation-iteration-count: 1 !important
    }

    .animate__animated[class*=Out] {
        opacity: 0
    }
}

@-webkit-keyframes bounce {
    20%, 53%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0)
    }

    40%, 43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -30px, 0) scaleY(1.1)
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -15px, 0) scaleY(1.05)
    }

    80% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, -4px, 0) scaleY(1.02)
    }
}

@keyframes bounce {
    20%, 53%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0)
    }

    40%, 43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -30px, 0) scaleY(1.1)
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -15px, 0) scaleY(1.05)
    }

    80% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, -4px, 0) scaleY(1.02)
    }
}

.animate__bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    transform-origin: center bottom
}

@-webkit-keyframes flash {
    50%, from, to {
        opacity: 1
    }

    25%, 75% {
        opacity: 0
    }
}

@keyframes flash {
    50%, from, to {
        opacity: 1
    }

    25%, 75% {
        opacity: 0
    }
}

.animate__flash {
    -webkit-animation-name: flash;
    animation-name: flash
}

@-webkit-keyframes pulse {
    from {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes pulse {
    from {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

.animate__pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

@-webkit-keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        transform: scale3d(1.05, .95, 1)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(1.25, .75, 1)
    }

    40% {
        transform: scale3d(.75, 1.25, 1)
    }

    50% {
        transform: scale3d(1.15, .85, 1)
    }

    65% {
        transform: scale3d(.95, 1.05, 1)
    }

    75% {
        transform: scale3d(1.05, .95, 1)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

.animate__rubberBand {
    -webkit-animation-name: rubberBand;
    animation-name: rubberBand
}

@-webkit-keyframes shakeX {
    from, to {
        transform: translate3d(0, 0, 0)
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(-10px, 0, 0)
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(10px, 0, 0)
    }
}

@keyframes shakeX {
    from, to {
        transform: translate3d(0, 0, 0)
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(-10px, 0, 0)
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(10px, 0, 0)
    }
}

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

@-webkit-keyframes shakeY {
    from, to {
        transform: translate3d(0, 0, 0)
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(0, -10px, 0)
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(0, 10px, 0)
    }
}

@keyframes shakeY {
    from, to {
        transform: translate3d(0, 0, 0)
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(0, -10px, 0)
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(0, 10px, 0)
    }
}

.animate__shakeY {
    -webkit-animation-name: shakeY;
    animation-name: shakeY
}

@-webkit-keyframes headShake {
    0% {
        transform: translateX(0)
    }

    6.5% {
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        transform: translateX(2px) rotateY(3deg)
    }

    50% {
        transform: translateX(0)
    }
}

@keyframes headShake {
    0% {
        transform: translateX(0)
    }

    6.5% {
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        transform: translateX(2px) rotateY(3deg)
    }

    50% {
        transform: translateX(0)
    }
}

.animate__headShake {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-name: headShake;
    animation-name: headShake
}

@-webkit-keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg)
    }

    to {
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

@keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg)
    }

    to {
        transform: rotate3d(0, 0, 1, 0deg)
    }
}

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

@-webkit-keyframes tada {
    from {
        transform: scale3d(1, 1, 1)
    }

    10%, 20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%, 50%, 70%, 90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%, 60%, 80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes tada {
    from {
        transform: scale3d(1, 1, 1)
    }

    10%, 20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%, 50%, 70%, 90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%, 60%, 80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

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

@-webkit-keyframes wobble {
    from {
        transform: translate3d(0, 0, 0)
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes wobble {
    from {
        transform: translate3d(0, 0, 0)
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg)
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble
}

@-webkit-keyframes jello {
    11.1%, from, to {
        transform: translate3d(0, 0, 0)
    }

    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }

    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg)
    }

    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }

    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }

    66.6% {
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }

    77.7% {
        transform: skewX(.390625deg) skewY(.390625deg)
    }

    88.8% {
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

@keyframes jello {
    11.1%, from, to {
        transform: translate3d(0, 0, 0)
    }

    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }

    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg)
    }

    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }

    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }

    66.6% {
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }

    77.7% {
        transform: skewX(.390625deg) skewY(.390625deg)
    }

    88.8% {
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

.animate__jello {
    -webkit-animation-name: jello;
    animation-name: jello;
    transform-origin: center
}

@-webkit-keyframes heartBeat {
    0% {
        transform: scale(1)
    }

    14% {
        transform: scale(1.3)
    }

    28% {
        transform: scale(1)
    }

    42% {
        transform: scale(1.3)
    }

    70% {
        transform: scale(1)
    }
}

@keyframes heartBeat {
    0% {
        transform: scale(1)
    }

    14% {
        transform: scale(1.3)
    }

    28% {
        transform: scale(1)
    }

    42% {
        transform: scale(1.3)
    }

    70% {
        transform: scale(1)
    }
}

.animate__heartBeat {
    -webkit-animation-name: heartBeat;
    animation-name: heartBeat;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-duration: calc(var(--animate-duration) * 1.3);
    animation-duration: calc(var(--animate-duration) * 1.3);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

@-webkit-keyframes backInDown {
    0% {
        transform: translateY(-1200px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes backInDown {
    0% {
        transform: translateY(-1200px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.animate__backInDown {
    -webkit-animation-name: backInDown;
    animation-name: backInDown
}

@-webkit-keyframes backInLeft {
    0% {
        transform: translateX(-2000px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes backInLeft {
    0% {
        transform: translateX(-2000px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.animate__backInLeft {
    -webkit-animation-name: backInLeft;
    animation-name: backInLeft
}

@-webkit-keyframes backInRight {
    0% {
        transform: translateX(2000px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes backInRight {
    0% {
        transform: translateX(2000px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.animate__backInRight {
    -webkit-animation-name: backInRight;
    animation-name: backInRight
}

@-webkit-keyframes backInUp {
    0% {
        transform: translateY(1200px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes backInUp {
    0% {
        transform: translateY(1200px) scale(.7);
        opacity: .7
    }

    80% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.animate__backInUp {
    -webkit-animation-name: backInUp;
    animation-name: backInUp
}

@-webkit-keyframes backOutDown {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateY(700px) scale(.7);
        opacity: .7
    }
}

@keyframes backOutDown {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateY(700px) scale(.7);
        opacity: .7
    }
}

.animate__backOutDown {
    -webkit-animation-name: backOutDown;
    animation-name: backOutDown
}

@-webkit-keyframes backOutLeft {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateX(-2000px) scale(.7);
        opacity: .7
    }
}

@keyframes backOutLeft {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateX(-2000px) scale(.7);
        opacity: .7
    }
}

.animate__backOutLeft {
    -webkit-animation-name: backOutLeft;
    animation-name: backOutLeft
}

@-webkit-keyframes backOutRight {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateX(2000px) scale(.7);
        opacity: .7
    }
}

@keyframes backOutRight {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateX(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateX(2000px) scale(.7);
        opacity: .7
    }
}

.animate__backOutRight {
    -webkit-animation-name: backOutRight;
    animation-name: backOutRight
}

@-webkit-keyframes backOutUp {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateY(-700px) scale(.7);
        opacity: .7
    }
}

@keyframes backOutUp {
    0% {
        transform: scale(1);
        opacity: 1
    }

    20% {
        transform: translateY(0) scale(.7);
        opacity: .7
    }

    100% {
        transform: translateY(-700px) scale(.7);
        opacity: .7
    }
}

.animate__backOutUp {
    -webkit-animation-name: backOutUp;
    animation-name: backOutUp
}

@-webkit-keyframes bounceIn {
    20%, 40%, 60%, 80%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1;
        transform: scale3d(1, 1, 1)
    }
}

@keyframes bounceIn {
    20%, 40%, 60%, 80%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1;
        transform: scale3d(1, 1, 1)
    }
}

.animate__bounceIn {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-duration: calc(var(--animate-duration) * .75);
    animation-duration: calc(var(--animate-duration) * .75);
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn
}

@-webkit-keyframes bounceInDown {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0) scaleY(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0) scaleY(.9)
    }

    75% {
        transform: translate3d(0, -10px, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, 5px, 0) scaleY(.985)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInDown {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0) scaleY(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0) scaleY(.9)
    }

    75% {
        transform: translate3d(0, -10px, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, 5px, 0) scaleY(.985)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown
}

@-webkit-keyframes bounceInLeft {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0) scaleX(1)
    }

    75% {
        transform: translate3d(-10px, 0, 0) scaleX(.98)
    }

    90% {
        transform: translate3d(5px, 0, 0) scaleX(.995)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInLeft {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0) scaleX(1)
    }

    75% {
        transform: translate3d(-10px, 0, 0) scaleX(.98)
    }

    90% {
        transform: translate3d(5px, 0, 0) scaleX(.995)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft
}

@-webkit-keyframes bounceInRight {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    from {
        opacity: 0;
        transform: translate3d(3000px, 0, 0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0) scaleX(1)
    }

    75% {
        transform: translate3d(10px, 0, 0) scaleX(.98)
    }

    90% {
        transform: translate3d(-5px, 0, 0) scaleX(.995)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInRight {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    from {
        opacity: 0;
        transform: translate3d(3000px, 0, 0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0) scaleX(1)
    }

    75% {
        transform: translate3d(10px, 0, 0) scaleX(.98)
    }

    90% {
        transform: translate3d(-5px, 0, 0) scaleX(.995)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight
}

@-webkit-keyframes bounceInUp {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    from {
        opacity: 0;
        transform: translate3d(0, 3000px, 0) scaleY(5)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(.9)
    }

    75% {
        transform: translate3d(0, 10px, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, -5px, 0) scaleY(.985)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes bounceInUp {
    60%, 75%, 90%, from, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    from {
        opacity: 0;
        transform: translate3d(0, 3000px, 0) scaleY(5)
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(.9)
    }

    75% {
        transform: translate3d(0, 10px, 0) scaleY(.95)
    }

    90% {
        transform: translate3d(0, -5px, 0) scaleY(.985)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp
}

@-webkit-keyframes bounceOut {
    20% {
        transform: scale3d(.9, .9, .9)
    }

    50%, 55% {
        opacity: 1;
        transform: scale3d(1.1, 1.1, 1.1)
    }

    to {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }
}

@keyframes bounceOut {
    20% {
        transform: scale3d(.9, .9, .9)
    }

    50%, 55% {
        opacity: 1;
        transform: scale3d(1.1, 1.1, 1.1)
    }

    to {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }
}

.animate__bounceOut {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-duration: calc(var(--animate-duration) * .75);
    animation-duration: calc(var(--animate-duration) * .75);
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut
}

@-webkit-keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0) scaleY(.985)
    }

    40%, 45% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0) scaleY(3)
    }
}

@keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0) scaleY(.985)
    }

    40%, 45% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0) scaleY(3)
    }
}

.animate__bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown
}

@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 1;
        transform: translate3d(20px, 0, 0) scaleX(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0) scaleX(2)
    }
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        transform: translate3d(20px, 0, 0) scaleX(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0) scaleX(2)
    }
}

.animate__bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft
}

@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 1;
        transform: translate3d(-20px, 0, 0) scaleX(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0) scaleX(2)
    }
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        transform: translate3d(-20px, 0, 0) scaleX(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0) scaleX(2)
    }
}

.animate__bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight
}

@-webkit-keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0) scaleY(.985)
    }

    40%, 45% {
        opacity: 1;
        transform: translate3d(0, 20px, 0) scaleY(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0) scaleY(3)
    }
}

@keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0) scaleY(.985)
    }

    40%, 45% {
        opacity: 1;
        transform: translate3d(0, 20px, 0) scaleY(.9)
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0) scaleY(3)
    }
}

.animate__bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp
}

@-webkit-keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.animate__fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}

@-webkit-keyframes fadeInDownBig {
    from {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInDownBig {
    from {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInLeftBig {
    from {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInLeftBig {
    from {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@-webkit-keyframes fadeInRightBig {
    from {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInRightBig {
    from {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes fadeInUpBig {
    from {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInUpBig {
    from {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig
}

@-webkit-keyframes fadeInTopLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInTopLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInTopLeft {
    -webkit-animation-name: fadeInTopLeft;
    animation-name: fadeInTopLeft
}

@-webkit-keyframes fadeInTopRight {
    from {
        opacity: 0;
        transform: translate3d(100%, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInTopRight {
    from {
        opacity: 0;
        transform: translate3d(100%, -100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInTopRight {
    -webkit-animation-name: fadeInTopRight;
    animation-name: fadeInTopRight
}

@-webkit-keyframes fadeInBottomLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInBottomLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInBottomLeft {
    -webkit-animation-name: fadeInBottomLeft;
    animation-name: fadeInBottomLeft
}

@-webkit-keyframes fadeInBottomRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInBottomRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__fadeInBottomRight {
    -webkit-animation-name: fadeInBottomRight;
    animation-name: fadeInBottomRight
}

@-webkit-keyframes fadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.animate__fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOutDown {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes fadeOutDown {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }
}

.animate__fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown
}

@-webkit-keyframes fadeOutDownBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

@keyframes fadeOutDownBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0)
    }
}

.animate__fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig
}

@-webkit-keyframes fadeOutLeft {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes fadeOutLeft {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 0, 0)
    }
}

.animate__fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft
}

@-webkit-keyframes fadeOutLeftBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

@keyframes fadeOutLeftBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0)
    }
}

.animate__fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig
}

@-webkit-keyframes fadeOutRight {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes fadeOutRight {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0)
    }
}

.animate__fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight
}

@-webkit-keyframes fadeOutRightBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

@keyframes fadeOutRightBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0)
    }
}

.animate__fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig
}

@-webkit-keyframes fadeOutUp {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes fadeOutUp {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, -100%, 0)
    }
}

.animate__fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp
}

@-webkit-keyframes fadeOutUpBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

@keyframes fadeOutUpBig {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0)
    }
}

.animate__fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig
}

@-webkit-keyframes fadeOutTopLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0)
    }
}

@keyframes fadeOutTopLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0)
    }
}

.animate__fadeOutTopLeft {
    -webkit-animation-name: fadeOutTopLeft;
    animation-name: fadeOutTopLeft
}

@-webkit-keyframes fadeOutTopRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(100%, -100%, 0)
    }
}

@keyframes fadeOutTopRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(100%, -100%, 0)
    }
}

.animate__fadeOutTopRight {
    -webkit-animation-name: fadeOutTopRight;
    animation-name: fadeOutTopRight
}

@-webkit-keyframes fadeOutBottomRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 100%, 0)
    }
}

@keyframes fadeOutBottomRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 100%, 0)
    }
}

.animate__fadeOutBottomRight {
    -webkit-animation-name: fadeOutBottomRight;
    animation-name: fadeOutBottomRight
}

@-webkit-keyframes fadeOutBottomLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0)
    }
}

@keyframes fadeOutBottomLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0)
    }
}

.animate__fadeOutBottomLeft {
    -webkit-animation-name: fadeOutBottomLeft;
    animation-name: fadeOutBottomLeft
}

@-webkit-keyframes flip {
    from {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    to {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@keyframes flip {
    from {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    to {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

.animate__animated.animate__flip {
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip
}

@-webkit-keyframes flipInX {
    from {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    to {
        transform: perspective(400px)
    }
}

@keyframes flipInX {
    from {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }

    to {
        transform: perspective(400px)
    }
}

.animate__flipInX {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX
}

@-webkit-keyframes flipInY {
    from {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    to {
        transform: perspective(400px)
    }
}

@keyframes flipInY {
    from {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }

    to {
        transform: perspective(400px)
    }
}

.animate__flipInY {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY
}

@-webkit-keyframes flipOutX {
    from {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    to {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutX {
    from {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1
    }

    to {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0
    }
}

.animate__flipOutX {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-duration: calc(var(--animate-duration) * .75);
    animation-duration: calc(var(--animate-duration) * .75);
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutY {
    from {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    to {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0
    }
}

@keyframes flipOutY {
    from {
        transform: perspective(400px)
    }

    30% {
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1
    }

    to {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0
    }
}

.animate__flipOutY {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-duration: calc(var(--animate-duration) * .75);
    animation-duration: calc(var(--animate-duration) * .75);
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY
}

@-webkit-keyframes lightSpeedInRight {
    from {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        transform: skewX(-5deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes lightSpeedInRight {
    from {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0
    }

    60% {
        transform: skewX(20deg);
        opacity: 1
    }

    80% {
        transform: skewX(-5deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__lightSpeedInRight {
    -webkit-animation-name: lightSpeedInRight;
    animation-name: lightSpeedInRight;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes lightSpeedInLeft {
    from {
        transform: translate3d(-100%, 0, 0) skewX(30deg);
        opacity: 0
    }

    60% {
        transform: skewX(-20deg);
        opacity: 1
    }

    80% {
        transform: skewX(5deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes lightSpeedInLeft {
    from {
        transform: translate3d(-100%, 0, 0) skewX(30deg);
        opacity: 0
    }

    60% {
        transform: skewX(-20deg);
        opacity: 1
    }

    80% {
        transform: skewX(5deg)
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__lightSpeedInLeft {
    -webkit-animation-name: lightSpeedInLeft;
    animation-name: lightSpeedInLeft;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes lightSpeedOutRight {
    from {
        opacity: 1
    }

    to {
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOutRight {
    from {
        opacity: 1
    }

    to {
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0
    }
}

.animate__lightSpeedOutRight {
    -webkit-animation-name: lightSpeedOutRight;
    animation-name: lightSpeedOutRight;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in
}

@-webkit-keyframes lightSpeedOutLeft {
    from {
        opacity: 1
    }

    to {
        transform: translate3d(-100%, 0, 0) skewX(-30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOutLeft {
    from {
        opacity: 1
    }

    to {
        transform: translate3d(-100%, 0, 0) skewX(-30deg);
        opacity: 0
    }
}

.animate__lightSpeedOutLeft {
    -webkit-animation-name: lightSpeedOutLeft;
    animation-name: lightSpeedOutLeft;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in
}

@-webkit-keyframes rotateIn {
    from {
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes rotateIn {
    from {
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

.animate__rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
    transform-origin: center
}

@-webkit-keyframes rotateInDownLeft {
    from {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes rotateInDownLeft {
    from {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

.animate__rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft;
    transform-origin: left bottom
}

@-webkit-keyframes rotateInDownRight {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes rotateInDownRight {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

.animate__rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight;
    transform-origin: right bottom
}

@-webkit-keyframes rotateInUpLeft {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes rotateInUpLeft {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

.animate__rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft;
    transform-origin: left bottom
}

@-webkit-keyframes rotateInUpRight {
    from {
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes rotateInUpRight {
    from {
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

.animate__rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight;
    transform-origin: right bottom
}

@-webkit-keyframes rotateOut {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

@keyframes rotateOut {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0
    }
}

.animate__rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
    transform-origin: center
}

@-webkit-keyframes rotateOutDownLeft {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownLeft {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0
    }
}

.animate__rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft;
    transform-origin: left bottom
}

@-webkit-keyframes rotateOutDownRight {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutDownRight {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

.animate__rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight;
    transform-origin: right bottom
}

@-webkit-keyframes rotateOutUpLeft {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

@keyframes rotateOutUpLeft {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0
    }
}

.animate__rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft;
    transform-origin: left bottom
}

@-webkit-keyframes rotateOutUpRight {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpRight {
    from {
        opacity: 1
    }

    to {
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0
    }
}

.animate__rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight;
    transform-origin: right bottom
}

@-webkit-keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%, 60% {
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%, 80% {
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    to {
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

@keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%, 60% {
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40%, 80% {
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1
    }

    to {
        transform: translate3d(0, 700px, 0);
        opacity: 0
    }
}

.animate__hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-duration: calc(var(--animate-duration) * 2);
    animation-duration: calc(var(--animate-duration) * 2);
    -webkit-animation-name: hinge;
    animation-name: hinge;
    transform-origin: top left
}

@-webkit-keyframes jackInTheBox {
    from {
        opacity: 0;
        transform: scale(.1) rotate(30deg);
        transform-origin: center bottom
    }

    50% {
        transform: rotate(-10deg)
    }

    70% {
        transform: rotate(3deg)
    }

    to {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes jackInTheBox {
    from {
        opacity: 0;
        transform: scale(.1) rotate(30deg);
        transform-origin: center bottom
    }

    50% {
        transform: rotate(-10deg)
    }

    70% {
        transform: rotate(3deg)
    }

    to {
        opacity: 1;
        transform: scale(1)
    }
}

.animate__jackInTheBox {
    -webkit-animation-name: jackInTheBox;
    animation-name: jackInTheBox
}

@-webkit-keyframes rollIn {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

@keyframes rollIn {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.animate__rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn
}

@-webkit-keyframes rollOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

@keyframes rollOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg)
    }
}

.animate__rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut
}

@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

.animate__zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn
}

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown
}

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft
}

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight
}

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp
}

@-webkit-keyframes zoomOut {
    from {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 0
    }
}

@keyframes zoomOut {
    from {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 0
    }
}

.animate__zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut
}

@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    to {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomOutDown {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    to {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown;
    transform-origin: center bottom
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    to {
        opacity: 0;
        transform: scale(.1) translate3d(-2000px, 0, 0)
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
    }

    to {
        opacity: 0;
        transform: scale(.1) translate3d(-2000px, 0, 0)
    }
}

.animate__zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft;
    transform-origin: left center
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    to {
        opacity: 0;
        transform: scale(.1) translate3d(2000px, 0, 0)
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
    }

    to {
        opacity: 0;
        transform: scale(.1) translate3d(2000px, 0, 0)
    }
}

.animate__zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight;
    transform-origin: right center
}

@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    to {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

@keyframes zoomOutUp {
    40% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
    }

    to {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1)
    }
}

.animate__zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp;
    transform-origin: center bottom
}

@-webkit-keyframes slideInDown {
    from {
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInDown {
    from {
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown
}

@-webkit-keyframes slideInLeft {
    from {
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInLeft {
    from {
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft
}

@-webkit-keyframes slideInRight {
    from {
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInRight {
    from {
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight
}

@-webkit-keyframes slideInUp {
    from {
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slideInUp {
    from {
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }

    to {
        transform: translate3d(0, 0, 0)
    }
}

.animate__slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp
}

@-webkit-keyframes slideOutDown {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes slideOutDown {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(0, 100%, 0)
    }
}

.animate__slideOutDown {
    -webkit-animation-name: slideOutDown;
    animation-name: slideOutDown
}

@-webkit-keyframes slideOutLeft {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes slideOutLeft {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(-100%, 0, 0)
    }
}

.animate__slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft
}

@-webkit-keyframes slideOutRight {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes slideOutRight {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(100%, 0, 0)
    }
}

.animate__slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight
}

@-webkit-keyframes slideOutUp {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes slideOutUp {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        visibility: hidden;
        transform: translate3d(0, -100%, 0)
    }
}

.animate__slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp
}

.js-fadeContents {
    opacity: 0;
    transform: translateY(20px);
    transition: .25s ease
}

.js-fadeContents.is-show {
    opacity: 1;
    transform: translateY(0)
}

.js-extendContents {
    margin: 0 auto;
    transition: 1s ease
}

.js-extendContents.is-show {
    width: 100% !important
}

.js-shrinkContents {
    transition: 1s ease
}

.js-shrinkContents.is-show {
    transform: scale(1) !important
}

* {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit
}

html {
    overflow: auto;
    overflow-y: scroll;
    overflow-x: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none
}

html::-webkit-scrollbar {
    display: none
}

html.is-fixed {
    overflow: hidden
}

body {
    background-color: #f2f2f2;
    color: #454545;
    font-family: "Barlow Condensed", sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-feature-settings: "palt"1;
    width: 100vw;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
    scrollbar-width: none;
    overflow-x: hidden
}

body::-webkit-scrollbar {
    display: none
}

body:not(.p-home, .p-404):before {
    content: "";
    width: 100vw;
    height: 80vw;
    background: transparent url(../img/common/bg_header-sp.png) no-repeat top left;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    pointer-events: none
}

@media screen and (min-width:1024px) {
    body:not(.p-home, .p-404):before {
        height: 58.5651537335vw;
        background: transparent url(../img/common/bg_header-pc.png) no-repeat top left;
        background-size: contain
    }
}

body.p-contact:before, body.p-culture:before, body.p-news:before, body.p-technology:before {
    content: ""
}

@media screen and (min-width:1024px) {
    body.p-contact:before, body.p-culture:before, body.p-news:before, body.p-technology:before {
        height: 58.5651537335vw;
        background: transparent url(../img/common/bg_header-s.png) no-repeat top left;
        background-size: contain
    }
}

img {
    border-style: none;
    height: auto;
    vertical-align: baseline
}

img [data-objectfit=cover] {
    -o-object-fit: cover;
    object-fit: cover
}

iframe, video {
    width: 100%
}

a, div, span {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit
}

a:active, a:hover, button:active, button:hover {
    outline-width: 0;
    cursor: pointer
}

@media screen and (min-width:1024px) {
    a[href*="tel:"] {
        cursor: default;
        pointer-events: none;
        text-decoration: none
    }
}

:root {
    --outer-height: 100vh
}

::-moz-selection {
    background: #454545;
    color: #f2f2f2
}

::selection {
    background: #454545;
    color: #f2f2f2
}

#js-bodycontent {
    -ms-overflow-style: none;
    scrollbar-width: none
}

#js-bodycontent::-webkit-scrollbar {
    display: none
}

#js-bodycontent.is-fixed {
    overflow: hidden
}

[data-fixed] {
    position: fixed;
    top: 0;
    width: 100%
}

.js-padding {
    pointer-events: none
}

.l-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    pointer-events: none
}

.l-header__container {
    padding: 15px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media screen and (min-width:768px) {
    .l-header__container {
        padding: 28px 30px 28px 35px
    }
}

.l-header__logo {
    width: 69px;
    height: 18px;
    pointer-events: all
}

@media screen and (min-width:768px) {
    .l-header__logo {
        width: 79px;
        height: 21px
    }
}

.l-header__logo svg {
    fill: #454545;
    width: 69px;
    height: 18px
}

@media screen and (min-width:768px) {
    .l-header__logo svg {
        width: 79px;
        height: 21px
    }
}

.l-header__btns {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.l-header__language {
    border: 1px solid #d5d5d5;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-right: 15px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    cursor: pointer
}

@media screen and (min-width:768px) {
    .l-header__language {
        width: 54px;
        height: 54px
    }
}

@media screen and (min-width:1024px) {
    .l-header__language {
        border: none;
        border-bottom: 1px solid #fff;
        width: 170px;
        height: 35px;
        justify-content: flex-start;
        margin-right: 50px
    }
}

.l-header__language svg {
    width: 17px;
    height: 17px;
    stroke: #D5D5D5
}

@media screen and (min-width:1024px) {
    .l-header__language svg {
        stroke: #FFF;
        flex-shrink: 0
    }
}

@media screen and (min-width:1024px) {
    .l-header__language svg {
        margin-right: 10px
    }
}

.l-headerLanguage__list {
    display: none
}

@media screen and (min-width:1024px) {
    .l-headerLanguage__list {
        position: absolute;
        opacity: 0;
        visibility: hidden;
        transition: .3s ease-out;
        top: 35px
    }
}

@media screen and (min-width:1024px) {
    .l-headerLanguage__list.is-show {
        display: block;
        width: 100%;
        opacity: 1;
        visibility: visible;
        max-height: 80px
    }
}

@media screen and (min-width:1024px) {
    .l-headerLanguage__list.is-show .l-headerLanguage__item {
        opacity: 1;
        visibility: visible;
        line-height: 35px;
        transition: line-height .3s ease-out, opacity .1s linear .1s, visibility .1s linear .1s
    }
}

.l-headerLanguage__item {
    transition: border-top .3s ease-out, padding-top .3s ease-out, padding-bottom .3s ease-out;
    border-bottom: 1px solid #fff;
    opacity: 0;
    visibility: hidden;
    transition: line-height .3s ease-out, opacity .1s linear, visibility .1s linear;
    display: block;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 15px;
    letter-spacing: .04em;
    line-height: 0;
    padding-left: 27px
}

.l-headerLanguage__text {
    display: none
}

@media screen and (min-width:1024px) {
    .l-headerLanguage__text {
        display: flex;
        align-items: center;
        justify-content: space-between;
        color: #fff;
        font-family: "Barlow Condensed", sans-serif;
        font-size: 15px;
        letter-spacing: .04em;
        width: 100%
    }
}

@media screen and (min-width:1024px) {
    .l-headerLanguage__text:after {
        content: "";
        width: 8px;
        height: 4px;
        background: transparent url(../img/common/icon_angle-w.svg) no-repeat center;
        background-size: contain
    }
}

.l-header__hamburger {
    background: #454545;
    width: 44px;
    height: 44px;
    display: block;
    position: relative;
    pointer-events: all
}

@media screen and (min-width:768px) {
    .l-header__hamburger {
        width: 54px;
        height: 54px
    }
}

.l-header__hamburger:hover .l-header__hamburgerLine {
    width: 16px
}

@media screen and (min-width:768px) {
    .l-header__hamburger:hover .l-header__hamburgerLine {
        width: 21px
    }
}

.l-header__hamburgerLine {
    background: transparent url(../img/common/icon_line.svg) no-repeat center;
    background-size: contain;
    width: 25px;
    height: 10px;
    position: absolute;
    transition: width .3s ease;
    transform-origin: center;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%
}

.l-header .js-languageSelect {
    opacity: 0;
    width: 44px;
    height: 44px;
    position: absolute
}

@media screen and (min-width:1024px) {
    .l-header .js-languageSelect {
        display: none
    }
}

.l-header.is-active {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 103
}

.l-header.is-active .l-header__logo svg {
    fill: #FFF
}

.l-header.is-active .l-header__language {
    opacity: 1;
    visibility: visible;
    pointer-events: all
}

.l-header.is-active .l-header__hamburgerLine:nth-of-type(1) {
    width: 28px;
    height: 18px;
    background: transparent url(../img/common/icon_close.svg) no-repeat center;
    background-size: contain
}

.l-header.is-active .l-header__hamburgerLine:nth-of-type(2) {
    display: none
}

.l-navigation {
    display: none;
    background: #242424;
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    z-index: 100
}

.l-navigation.is-show {
    display: block;
    position: fixed;
    top: 0;
    left: 0
}

.l-navigation:before {
    content: "";
    -webkit-animation: noise 7s steps(10) infinite;
    animation: noise 7s steps(10) infinite;
    background-image: url(../img/common/bg_noise-b.png);
    mix-blend-mode: overlay;
    height: 285%;
    left: -50%;
    opacity: .45;
    position: absolute;
    top: -100%;
    width: 300%;
    pointer-events: none
}

.l-navigation__bg {
    transition-property: all;
    transition: .1s ease-in;
    z-index: 150
}

.l-navigation__bg.is-done {
    opacity: 0;
    visibility: hidden;
    display: none
}

.l-navigationBg__item {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    transition-property: all;
    transition: .2s ease-in;
    z-index: 120
}

.l-navigationBg__item img {
    width: 100%;
    height: 100%;
    max-width: none
}

.l-navigationBg__item.js-navigationBg__item {
    z-index: 130;
    opacity: 0;
    visibility: hidden;
    transition-property: all;
    transition: .1s ease-in
}

.l-navigationBg__item.js-navigationBg__item.is-active {
    z-index: 130;
    opacity: 1;
    visibility: visible
}

.l-navigation__container {
    height: 100%;
    padding: 104px 45px 40px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column;
    position: relative;
    z-index: 10
}

@media screen and (min-width:1024px) {
    .l-navigation__container {
        padding-top: 155px;
        padding-left: 15.5929721816vw;
        padding-bottom: 0;
        justify-content: flex-start
    }
}

.l-navigation__container:after {
    background: transparent url(../img/common/object_navigation.png) no-repeat center;
    background-size: contain;
    content: "";
    width: 138.4vw;
    height: 138.4vw;
    position: absolute;
    top: 7.7333333333vw;
    left: 14.9333333333vw;
    z-index: -1;
    opacity: .5;
    -webkit-animation: 7s fuwafuwa infinite;
    animation: 7s fuwafuwa infinite;
    pointer-events: none
}

@media screen and (min-width:1024px) {
    .l-navigation__container:after {
        width: 82.1376281113vw;
        height: 82.1376281113vw;
        top: 9.8096632504vw;
        left: 50vw
    }
}

.l-navigation__wrapper {
    width: 100%;
    margin-bottom: 60px;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    position: relative
}

.l-navigation__wrapper::-webkit-scrollbar {
    display: none
}

@media screen and (min-width:1024px) {
    .l-navigation__wrapper {
        position: static;
        max-height: none !important;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        overflow-y: unset;
        margin-bottom: 90px
    }
}

.l-navigation__border {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    flex-direction: column;
    height: 100%;
    position: fixed;
    top: 104px;
    right: 45px
}

@media screen and (min-width:768px) {
    .l-navigation__border {
        display: none
    }
}

.l-navigation__border span {
    background: #b29f93;
    width: 1px;
    height: 100%
}

.l-navigation__border span:nth-of-type(2) {
    height: 40px;
    flex-shrink: 0
}

.l-navigation__border i {
    margin: 6px 0 5px -2px;
    color: #e6d6cc;
    line-height: 1;
    font-size: 12px;
    letter-spacing: .07em;
    -ms-writing-mode: tb;
    writing-mode: tb;
    flex-shrink: 0
}

.l-navigation__list {
    width: 100%
}

@media screen and (min-width:1024px) {
    .l-navigation__list {
        width: auto
    }
}

.l-navigation__list+.l-navigation__list {
    margin-top: 40px
}

@media screen and (min-width:1024px) {
    .l-navigation__list+.l-navigation__list {
        margin-top: 0;
        margin-left: 11.3469985359vw
    }
}

.l-navigation__item {
    margin-top: 40px
}

@media screen and (min-width:768px) {
    .l-navigation__item {
        margin-top: 40px
    }
}

.l-navigation__item:first-child {
    margin-top: 0
}

.l-navigation__link {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 34px;
    letter-spacing: .04em;
    line-height: 1
}

@media screen and (min-width:768px) {
    .l-navigation__link {
        font-size: 40px
    }
}

.l-navigation__link .l-navigation__text {
    margin-right: 20px;
    transition-property: all;
    transition: .2s ease
}

@media screen and (min-width:768px) {
    .l-navigation__link .l-navigation__text {
        margin-right: 25px
    }
}

@media screen and (min-width:768px) {
    .l-navigation__link .c-icon {
        transform: none
    }
}

.l-navigation__link .c-icon__container {
    margin-right: 11px
}

.l-navigation__link .c-icon__arrow {
    background-image: url(../img/common/icon_arrow-w-sp.svg);
    width: 12px;
    height: 13px
}

@media screen and (min-width:1024px) {
    .l-navigation__link .c-icon__arrow {
        background-image: url(../img/common/icon_arrow-w-pc.svg)
    }
}

.l-navigation__link .c-iconSvg__circle {
    stroke-width: 1px
}

.l-navigation__link:hover .l-navigation__text {
    transform: translateX(5px)
}

.l-navigation__link:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.l-navigation__button {
    width: 100%;
    height: 60px;
    margin: 0 auto 30px;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 22px
}

@media screen and (min-width:768px) {
    .l-navigation__button {
        max-width: 400px;
        margin: 0;
        height: 80px
    }
}

@media screen and (min-width:1024px) {
    .l-navigation__button {
        margin-bottom: 40px;
        padding: 0 25px 4px 34px;
        justify-content: space-between !important
    }
}

@media screen and (min-width:1200px) {
    .l-navigation__button {
        max-width: 29.2825768668vw
    }
}

.l-navigation__button .c-button__text {
    margin-right: 30px;
    font-weight: 400;
    letter-spacing: .02em;
    line-height: 1
}

@media screen and (min-width:768px) {
    .l-navigation__button .c-button__text {
        margin-right: 60px;
        font-size: 30px
    }
}

.l-navigation__button .c-icon__container {
    margin-right: 7px;
    margin-bottom: 3px
}

.l-navigation__button .c-icon__arrow {
    width: 14px;
    height: 14px;
    background-image: url(../img/common/icon_arrow_footer.svg)
}

.l-navigation__button:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.l-navigationSocial__list {
    width: 100%;
    max-width: calc(100% - 30px);
    margin: 0 auto 0;
    display: flex;
    align-items: center;
    justify-content: flex-start
}

@media screen and (min-width:768px) {
    .l-navigationSocial__list {
        max-width: none
    }
}

@media screen and (min-width:1024px) {
    .l-navigationSocial__list {
        margin-bottom: 0
    }
}

.l-navigationSocial__item {
    margin-left: 30px
}

@media screen and (min-width:768px) {
    .l-navigationSocial__item {
        margin-left: 35px
    }
}

@media screen and (min-width:1024px) {
    .l-navigationSocial__item img {
        width: 35px;
        height: 35px
    }
}

.l-navigationSocial__item:first-child {
    margin-left: 0
}

.l-navigationSocial__link {
    transition-property: all;
    transition: .25s ease
}

.l-navigationSocial__link:hover {
    opacity: .5
}

.l-footer {
    background: #242424
}

@media screen and (min-width:768px) {
    .l-footer {
        display: flex;
        justify-content: flex-start
    }
}

.l-footer__image {
    display: none;
    background: transparent url(../img/common/bg_footer-sp.png) no-repeat center;
    background-size: cover;
    position: relative
}

@media screen and (min-width:768px) {
    .l-footer__image {
        background-image: url(../img/common/bg_footer-pc.png);
        display: block;
        width: 100%;
        max-width: 33.6749633968vw
    }
}

.l-footer__image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 42.6666666667%
}

@media screen and (min-width:768px) {
    .l-footer__image:before {
        padding-top: 163.0434782609%
    }
}

.l-footer__container {
    padding: 40px 20px 20px;
    position: relative;
    z-index: 5
}

@media screen and (min-width:1024px) {
    .l-footer__container {
        width: 100%;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center
    }
}

.l-footer__title {
    color: #fff;
    font-size: 37px;
    font-family: "Barlow Condensed", sans-serif;
    font-style: italic;
    letter-spacing: .06em;
    line-height: 1;
    text-align: center
}

@media screen and (min-width:1024px) {
    .l-footer__title {
        font-size: 65px
    }
}

.l-footer__nav {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    max-width: calc(100% - 50px);
    margin: 30px auto 60px
}

@media screen and (min-width:1024px) {
    .l-footer__nav {
        margin: 1.8301610542vw auto 4.39238653vw;
        max-width: none
    }
}

.l-footer__list {
    width: 100%;
    max-width: 50%;
    font-family: "Barlow Condensed", sans-serif;
    letter-spacing: .05em
}

@media screen and (min-width:1024px) {
    .l-footer__list {
        max-width: none;
        width: auto
    }
}

@media screen and (min-width:1024px) {
    .l-footer__list+.l-footer__list {
        margin-left: 70px
    }
}

.l-footer__item {
    line-height: 2.5
}

@media screen and (min-width:1024px) {
    .l-footer__item {
        line-height: 2.0588235294
    }
}

.l-footer__link {
    transition-property: all;
    transition: .25s ease;
    color: #fff;
    font-size: 18px;
    line-height: 1
}

@media screen and (min-width:1024px) {
    .l-footer__link {
        font-size: 17px
    }
}

.l-footer__link:hover {
    opacity: .5
}

.l-footer__button {
    width: 100%;
    max-width: calc(100% - 50px);
    height: 60px;
    margin: 0 auto 60px;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 22px
}

@media screen and (min-width:1024px) {
    .l-footer__button {
        max-width: 588px;
        height: 80px;
        margin: 0;
        margin-bottom: 5.1244509517vw;
        padding: 0 25px 4px 34px;
        justify-content: space-between !important
    }
}

.l-footer__button .c-button__text {
    margin-right: 30px;
    font-weight: 400;
    letter-spacing: .02em;
    line-height: 1
}

@media screen and (min-width:1024px) {
    .l-footer__button .c-button__text {
        font-size: 30px
    }
}

.l-footer__button .c-icon__container {
    margin-right: 7px;
    margin-bottom: 3px
}

.l-footer__button .c-icon__arrow {
    width: 14px;
    height: 14px;
    background-image: url(../img/common/icon_arrow_footer.svg)
}

.l-footer__button:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.l-footerSocial__list {
    width: 100%;
    max-width: calc(100% - 80px);
    margin: 0 auto 60px;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:1024px) {
    .l-footerSocial__list {
        max-width: none;
        margin-bottom: 5.8565153734vw;
        justify-content: flex-start
    }
}

.l-footerSocial__item {
    margin-left: 30px
}

@media screen and (min-width:1024px) {
    .l-footerSocial__item {
        margin-left: 35px
    }
}

@media screen and (min-width:1024px) {
    .l-footerSocial__item img {
        width: 35px;
        height: 35px
    }
}

.l-footerSocial__item:first-child {
    margin-left: 0
}

.l-footerSocial__link {
    transition-property: all;
    transition: .25s ease
}

.l-footerSocial__link:hover {
    opacity: .5
}

.l-footer__copyright {
    color: #a5a5a5;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    letter-spacing: .01em
}

.l-main {
    position: relative;
    height: 100%;
    padding-top: 74px
}

@media screen and (min-width:1024px) {
    .l-main {
        padding-top: 110px
    }
}

.l-loading {
    color: #f2f2f2;
    font-family: Barlow, sans-serif;
    font-feature-settings: "palt"1;
    font-size: 30px;
    line-height: 1
}

.l-loading.is-done {
    display: none
}

@media screen and (min-width:1024px) {
    .l-loading {
        font-size: 60px
    }
}

.l-loading__bg {
    background: #343434;
    width: 100vw;
    height: 100vh;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center
}

.l-loading__content {
    position: relative;
    text-align: center
}

.l-loading__content p {
    text-transform: uppercase;
    position: absolute;
    left: 50%;
    transform: translate(-50%)
}

.l-loading__content p:after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    right: -21px;
    height: 30px;
    width: 10px;
    background: #fff;
    box-shadow: 0 0 15px #fff;
    -webkit-animation: blink 3.4s infinite;
    animation: blink 3.4s infinite
}

@media screen and (min-width:1024px) {
    .l-loading__content p:after {
        height: 60px;
        width: 16px
    }
}

.l-loading__title {
    -webkit-animation: title 2s linear infinite;
    animation: title 2s linear infinite;
    width: 50px
}

@media screen and (min-width:1024px) {
    .l-loading__title {
        width: 150px
    }
}

.l-loading__text {
    -webkit-animation: title 2s linear 1s infinite;
    animation: title 2s linear 1s infinite;
    opacity: 0;
    width: 185px
}

@media screen and (min-width:1024px) {
    .l-loading__text {
        width: 400px
    }
}

@-webkit-keyframes title {
    0% {
        opacity: 0;
        right: 130px
    }

    48% {
        opacity: 0;
        right: 130px
    }

    52% {
        opacity: 1;
        right: 30px
    }

    70% {
        opacity: 1;
        right: 30px
    }

    100% {
        opacity: 0;
        right: 30px
    }
}

@keyframes title {
    0% {
        opacity: 0;
        right: 130px
    }

    48% {
        opacity: 0;
        right: 130px
    }

    52% {
        opacity: 1;
        right: 30px
    }

    70% {
        opacity: 1;
        right: 30px
    }

    100% {
        opacity: 0;
        right: 30px
    }
}

@-webkit-keyframes blink {
    0% {
        opacity: 0
    }

    5% {
        opacity: 1
    }

    10% {
        opacity: 0
    }

    15% {
        opacity: 1
    }

    20% {
        opacity: 0
    }

    25% {
        opacity: 1
    }

    30% {
        opacity: 0
    }

    35% {
        opacity: 1
    }

    40% {
        opacity: 0;
        right: -21px
    }

    45% {
        opacity: 1;
        right: 80px
    }

    50% {
        opacity: 0;
        right: -21px
    }

    51% {
        right: -21px
    }

    55% {
        opacity: 1
    }

    60% {
        opacity: 0
    }

    65% {
        opacity: 1
    }

    70% {
        opacity: 0
    }

    75% {
        opacity: 1
    }

    80% {
        opacity: 0
    }

    85% {
        opacity: 1
    }

    90% {
        opacity: 0;
        right: -21px
    }

    95% {
        opacity: 1;
        right: 80px
    }

    96% {
        right: -21px
    }

    100% {
        opacity: 0;
        right: -21px
    }
}

@keyframes blink {
    0% {
        opacity: 0
    }

    5% {
        opacity: 1
    }

    10% {
        opacity: 0
    }

    15% {
        opacity: 1
    }

    20% {
        opacity: 0
    }

    25% {
        opacity: 1
    }

    30% {
        opacity: 0
    }

    35% {
        opacity: 1
    }

    40% {
        opacity: 0;
        right: -21px
    }

    45% {
        opacity: 1;
        right: 80px
    }

    50% {
        opacity: 0;
        right: -21px
    }

    51% {
        right: -21px
    }

    55% {
        opacity: 1
    }

    60% {
        opacity: 0
    }

    65% {
        opacity: 1
    }

    70% {
        opacity: 0
    }

    75% {
        opacity: 1
    }

    80% {
        opacity: 0
    }

    85% {
        opacity: 1
    }

    90% {
        opacity: 0;
        right: -21px
    }

    95% {
        opacity: 1;
        right: 80px
    }

    96% {
        right: -21px
    }

    100% {
        opacity: 0;
        right: -21px
    }
}

.l-inner {
    width: 100%;
    padding: 0 20px;
    margin: 0 auto
}

@media screen and (min-width:768px) {
    .l-inner {
        padding: 0;
        max-width: 90%
    }
}

@media screen and (min-width:1024px) {
    .l-inner {
        width: 95%;
        max-width: 1100px
    }
}

@media screen and (min-width:1200px) {
    .l-inner {
        width: 100%;
        max-width: 1100px
    }
}

.l-inner__content {
    padding: 0 20px
}

@media screen and (min-width:1024px) {
    .l-inner__content {
        padding: 0;
        max-width: 940px;
        margin: 0 auto
    }
}

.c-noise {
    position: fixed;
    top: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    z-index: 4;
    pointer-events: none;
    mix-blend-mode: overlay
}

.c-noise__item {
    -webkit-animation: noise 7s steps(10) infinite;
    animation: noise 7s steps(10) infinite;
    background-image: url(../img/common/bg_noise-w.png);
    height: 285%;
    left: -50%;
    opacity: .45;
    position: absolute;
    top: -100%;
    width: 300%;
    pointer-events: none
}

@-webkit-keyframes noise {
    0% {
        transform: translate(0)
    }

    10% {
        transform: translate(-5%, -10%)
    }

    20% {
        transform: translate(-15%, 5%)
    }

    30% {
        transform: translate(7%, -25%)
    }

    40% {
        transform: translate(-5%, 25%)
    }

    50% {
        transform: translate(-15%, 10%)
    }

    60% {
        transform: translate(15%)
    }

    70% {
        transform: translateY(15%)
    }

    80% {
        transform: translate(3%, 35%)
    }

    90% {
        transform: translate(-10%, 10%)
    }

    100% {
        transform: translate(0)
    }
}

@keyframes noise {
    0% {
        transform: translate(0)
    }

    10% {
        transform: translate(-5%, -10%)
    }

    20% {
        transform: translate(-15%, 5%)
    }

    30% {
        transform: translate(7%, -25%)
    }

    40% {
        transform: translate(-5%, 25%)
    }

    50% {
        transform: translate(-15%, 10%)
    }

    60% {
        transform: translate(15%)
    }

    70% {
        transform: translateY(15%)
    }

    80% {
        transform: translate(3%, 35%)
    }

    90% {
        transform: translate(-10%, 10%)
    }

    100% {
        transform: translate(0)
    }
}

.c-section {
    width: 100%
}

.c-heading {
    color: #454545;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 50px;
    letter-spacing: .03em;
    position: relative;
    z-index: 5
}

@media screen and (min-width:768px) {
    .c-heading {
        font-size: 100px
    }
}

.c-heading--pageHeading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column
}

.c-heading--pageHeading:after {
    background: #454545;
    content: "";
    width: 100%;
    height: 1px;
    margin-top: 2px
}

@media screen and (min-width:768px) {
    .c-heading--pageHeading:after {
        height: 2px
    }
}

.c-heading--sectionHeading-01 {
    font-size: 36px;
    letter-spacing: .02em
}

@media screen and (min-width:768px) {
    .c-heading--sectionHeading-01 {
        margin-bottom: 45px;
        font-size: 60px
    }
}

.c-heading--sectionHeading-02 {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 26px;
    letter-spacing: .02em;
    line-height: 1
}

@media screen and (min-width:768px) {
    .c-heading--sectionHeading-02 {
        font-size: 30px
    }
}

.c-heading--sectionHeading-02:before {
    background: #454545;
    content: "";
    width: 4px;
    height: 22px;
    margin-right: 10px
}

@media screen and (min-width:768px) {
    .c-heading--sectionHeading-02:before {
        height: 25px;
        margin-right: 12px
    }
}

.c-heading--glitch.is-active {
    -webkit-animation: glitch 2s steps(100) infinite;
    animation: glitch 2s steps(100) infinite
}

@-webkit-keyframes glitch {
    0% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    1% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    2% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    3% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    4% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    5% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    6% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    7% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    8% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    9% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    10% {
        text-shadow: 0 -5px 0 #f276e8, 0 5px 0 #0050ff;
        filter: blur(.5)
    }

    11% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #5deb50;
        filter: blur(.5px)
    }

    12% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    13% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    14% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    15% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    16% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    17% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    18% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    19% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    20% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    21% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    22% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    23% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    24% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    25% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    26% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(.5px)
    }

    27% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(.5px)
    }

    28% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    29% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    30% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    31% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    32% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    33% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    34% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    35% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    36% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    37% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    38% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    39% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    40% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    41% {
        text-shadow: 8px 0 0 #0050ff, -8px 0 0 #5deb50;
        filter: blur(0)
    }

    42% {
        text-shadow: 0 0 0 #0050ff, 0 0 0 #5deb50;
        filter: blur(0)
    }

    43% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    44% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    45% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    46% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    47% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    48% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    49% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    50% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    51% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    52% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    53% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    54% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    55% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    56% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    57% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    58% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    59% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    60% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    61% {
        text-shadow: 6px 6px 0 #f276e8, -6px -6px 0 #5deb50;
        filter: blur(0)
    }

    62% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #5deb50;
        filter: blur(0)
    }

    63% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    64% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    65% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    66% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(.5px)
    }

    67% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    68% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    69% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    70% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    71% {
        text-shadow: 6px 0 0 #f276e8, -6px 0 0 #0050ff;
        filter: blur(0)
    }

    72% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #0050ff;
        filter: blur(0)
    }

    73% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    74% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    75% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    76% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    77% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    78% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    79% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    80% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    81% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    82% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    83% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    84% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    85% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    86% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    87% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    88% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    89% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    90% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    91% {
        text-shadow: 8px 0 0 #5deb50, -8px 0 0 #0050ff;
        filter: blur(0)
    }

    92% {
        text-shadow: 0 0 0 #5deb50, 0 0 0 #0050ff;
        filter: blur(0)
    }

    92% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    93% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    94% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    95% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    96% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    97% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    98% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    99% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    100% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }
}

@keyframes glitch {
    0% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    1% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    2% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    3% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    4% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    5% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    6% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    7% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    8% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    9% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    10% {
        text-shadow: 0 -5px 0 #f276e8, 0 5px 0 #0050ff;
        filter: blur(.5)
    }

    11% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #5deb50;
        filter: blur(.5px)
    }

    12% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    13% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    14% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    15% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    16% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    17% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    18% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    19% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    20% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    21% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    22% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    23% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    24% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    25% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    26% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(.5px)
    }

    27% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(.5px)
    }

    28% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    29% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    30% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    31% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    32% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    33% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    34% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    35% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    36% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    37% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    38% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    39% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    40% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    41% {
        text-shadow: 8px 0 0 #0050ff, -8px 0 0 #5deb50;
        filter: blur(0)
    }

    42% {
        text-shadow: 0 0 0 #0050ff, 0 0 0 #5deb50;
        filter: blur(0)
    }

    43% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    44% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    45% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    46% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    47% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    48% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    49% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    50% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    51% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    52% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    53% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    54% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    55% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    56% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    57% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    58% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    59% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    60% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    61% {
        text-shadow: 6px 6px 0 #f276e8, -6px -6px 0 #5deb50;
        filter: blur(0)
    }

    62% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #5deb50;
        filter: blur(0)
    }

    63% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    64% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    65% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(0)
    }

    66% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #0050ff;
        filter: blur(.5px)
    }

    67% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(.5px)
    }

    68% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    69% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    70% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    71% {
        text-shadow: 6px 0 0 #f276e8, -6px 0 0 #0050ff;
        filter: blur(0)
    }

    72% {
        text-shadow: 0 0 0 #f276e8, 0 0 0 #0050ff;
        filter: blur(0)
    }

    73% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    74% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    75% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    76% {
        text-shadow: 3px 0 0 #f276e8, -3px 0 0 #0050ff;
        filter: blur(0)
    }

    77% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    78% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    79% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    80% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #0050ff;
        filter: blur(0)
    }

    81% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    82% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(0)
    }

    83% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    84% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    85% {
        text-shadow: 1px 0 0 #f276e8, -1px 0 0 #5deb50;
        filter: blur(.5px)
    }

    86% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    87% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(.5px)
    }

    88% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    89% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    90% {
        text-shadow: -3px 0 0 #f276e8, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    91% {
        text-shadow: 8px 0 0 #5deb50, -8px 0 0 #0050ff;
        filter: blur(0)
    }

    92% {
        text-shadow: 0 0 0 #5deb50, 0 0 0 #0050ff;
        filter: blur(0)
    }

    92% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    93% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    94% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    95% {
        text-shadow: .8px 0 0 #0050ff, -.8px 0 0 #5deb50;
        filter: blur(0)
    }

    96% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    97% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    98% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    99% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }

    100% {
        text-shadow: -3px 0 0 #0050ff, 3px 0 0 #5deb50;
        filter: blur(0)
    }
}

.c-text {
    margin: 0 25px;
    font-size: 16px;
    line-height: 2;
    letter-spacing: .01em
}

@media screen and (min-width:1024px) {
    .c-text {
        margin: 0
    }
}

.c-button {
    display: flex;
    align-items: center;
    justify-content: center;
    outline: 0;
    text-decoration: none
}

.c-button--primary {
    background: #eb6b1a;
    color: #fff;
    font-weight: 600
}

.c-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    outline: 0;
    text-decoration: none;
    position: relative
}

.c-icon__container {
    display: inline-flex;
    align-items: center;
    margin-right: 12px;
    margin-bottom: -1px
}

.c-icon__arrow {
    background-color: transparent;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 14px;
    height: 12px;
    background-image: url(../img/common/icon_arrow-sp.svg)
}

@media screen and (min-width:1024px) {
    .c-icon__arrow {
        width: 15px;
        height: 14px;
        background-image: url(../img/common/icon_arrow-pc.svg)
    }
}

.c-icon__svg {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0
}

.c-iconSvg__circle {
    fill: transparent;
    stroke: #FFF;
    stroke-width: 2;
    stroke-dasharray: 280;
    transform: rotate(-167.5deg);
    transform-origin: center
}

.c-link .c-iconSvg__circle {
    stroke: #454545
}

.c-link:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

@-webkit-keyframes circle {
    0% {
        stroke: #454545;
        stroke-dasharray: 0 301
    }

    100% {
        stroke: #454545;
        stroke-dasharray: 280 301
    }
}

@keyframes circle {
    0% {
        stroke-dasharray: 0 301
    }

    100% {
        stroke-dasharray: 280 301
    }
}

.c-link {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start
}

.c-link__text {
    margin-right: 30px;
    transition-property: all;
    transition: .25s ease;
    font-family: "Barlow Condensed", sans-serif;
    letter-spacing: .02em
}

.c-link:hover .c-link__text {
    transform: translateX(5px)
}

.c-link--text {
    text-decoration: underline;
    transition-property: all;
    transition: .25s ease;
    color: #eb6b1a
}

.c-link--text:hover {
    text-decoration: none
}

.c-otherLink {
    margin: 80px auto 130px
}

.c-otherLink__item {
    margin: 0 auto 80px;
    position: relative;
    z-index: 5
}

@media screen and (min-width:768px) {
    .c-otherLink__item {
        max-width: 940px
    }
}

.c-otherLink__link {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    width: 100%;
    max-width: calc(100% - 90px);
    margin: 0 auto
}

@media screen and (min-width:768px) {
    .c-otherLink__link {
        flex-direction: row;
        justify-content: space-between
    }
}

@media screen and (min-width:768px) {
    .c-otherLink__link:hover .c-otherLink__thumbnail {
        transform-origin: center top;
        transform: scale(.96)
    }
}

@media screen and (min-width:768px) {
    .c-otherLink__link:hover .c-otherLink__thumbnail img {
        transform-origin: center;
        transform: scale(1.2)
    }
}

.c-otherLink__link:hover .c-link__text {
    transform: translateX(5px)
}

.c-otherLink__link:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.c-otherLink__link .c-link__text {
    font-size: 22px
}

@media screen and (min-width:768px) {
    .c-otherLink__link .c-link__text {
        font-size: 25px
    }
}

.c-otherLink__thumbnail {
    width: 100%;
    margin-bottom: 20px;
    transition-property: all;
    transition: .8s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

@media screen and (min-width:768px) {
    .c-otherLink__thumbnail {
        width: 300px;
        margin-bottom: 0
    }
}

@media screen and (min-width:1024px) {
    .c-otherLink__thumbnail {
        width: 400px
    }
}

@media screen and (min-width:768px) {
    .c-otherLink__thumbnail img {
        transition-property: all;
        transition: 1s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }
}

@media screen and (min-width:768px) {
    .c-otherLink__detail {
        width: 100%;
        max-width: calc(100% - 300px - 40px)
    }
}

@media screen and (min-width:1024px) {
    .c-otherLink__detail {
        max-width: calc(100% - 400px - 70px)
    }
}

.c-otherLink__title {
    margin-bottom: 10px;
    color: #454545;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 35px;
    letter-spacing: .02em
}

@media screen and (min-width:768px) {
    .c-otherLink__title {
        margin-bottom: 20px;
        font-size: 45px;
        letter-spacing: .03em
    }
}

@media screen and (min-width:1024px) {
    .c-otherLink__title {
        font-size: 60px
    }
}

.c-otherLink__text {
    margin-bottom: 30px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    letter-spacing: .04em;
    line-height: 1.8461538462
}

.c-jobLink__link {
    display: block;
    background: #eb6b1a;
    width: 100%;
    position: relative;
    z-index: 5
}

.c-jobLink__link.-large .c-jobLink__inner {
    height: auto;
    padding: 70px 45px;
    align-items: flex-start
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__inner {
        align-items: center;
        justify-content: space-between;
        padding: 0;
        height: 280px
    }
}

@media screen and (min-width:1024px) {
    .c-jobLink__link.-large .c-jobLink__inner {
        height: 360px
    }
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__title {
        font-size: 60px
    }
}

.c-jobLink__link.-large .c-jobLink__text {
    font-size: 13px;
    letter-spacing: .04em;
    font-family: "Noto Sans JP", sans-serif
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__text {
        max-width: 400px;
        font-size: 15px
    }
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__icon {
        transform: scale(2)
    }
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__icon .c-icon__arrow {
        transform: scale(.85)
    }
}

@media screen and (min-width:768px) {
    .c-jobLink__link.-large .c-jobLink__icon .c-icon__svg .c-iconSvg__circle {
        stroke-width: 1.5
    }
}

.c-jobLink__link:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.c-jobLink__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 200px
}

@media screen and (min-width:768px) {
    .c-jobLink__inner {
        flex-direction: row;
        height: 220px;
        max-width: 90%;
        margin: 0 auto
    }
}

@media screen and (min-width:1024px) {
    .c-jobLink__inner {
        width: 95%;
        max-width: 940px
    }
}

.c-jobLink__content {
    margin-bottom: 75px
}

@media screen and (min-width:768px) {
    .c-jobLink__content {
        margin-bottom: 0
    }
}

.c-jobLink__title {
    display: block;
    margin-bottom: 15px;
    color: #fff;
    font-size: 35px;
    white-space: nowrap
}

@media screen and (min-width:768px) {
    .c-jobLink__title {
        margin-bottom: 0;
        margin-right: 55px;
        font-size: 50px
    }
}

@media screen and (min-width:1024px) {
    .c-jobLink__title {
        font-size: 70px
    }
}

.c-jobLink__text {
    margin-top: 20px;
    display: block;
    color: #fff;
    font-size: 13px;
    line-height: 2.3076923077;
    letter-spacing: .03em
}

.c-jobLink__icon {
    height: 60px;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:768px) {
    .c-jobLink__icon {
        margin-top: 8px
    }
}

.c-jobLink__icon .c-icon__container {
    margin-right: -10px;
    margin-bottom: 5px
}

.c-jobLink__icon .c-icon__arrow {
    width: 32px;
    height: 32px;
    background-image: url(../img/common/icon_arrow_job.svg)
}

.c-jobLink__icon .c-icon__svg {
    right: unset;
    left: 50%;
    transform: translate(-50%, -50%)
}

.c-jobLink__icon .c-icon__svg .c-iconSvg__circle {
    stroke-width: 3
}

.c-breadcrumb {
    margin-bottom: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%
}

@media screen and (min-width:768px) {
    .c-breadcrumb {
        max-width: 90%;
        margin: 0 auto 80px
    }
}

@media screen and (min-width:1024px) {
    .c-breadcrumb {
        width: 95%;
        max-width: 1100px
    }
}

.c-breadcrumb__list {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: calc(100% - 90px);
    margin: 0 auto 5px
}

@media screen and (min-width:768px) {
    .c-breadcrumb__list {
        max-width: calc(100% - 80px);
        margin-bottom: 20px
    }
}

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

.c-breadcrumb__item:before {
    background: #454545;
    content: "";
    width: 6px;
    height: 2px;
    margin: 0 4px;
    display: block
}

@media screen and (min-width:768px) {
    .c-breadcrumb__item:before {
        width: 11px;
        margin: 0 7px
    }
}

.c-breadcrumb__item:first-child:before {
    content: none
}

.c-breadcrumb__link {
    font-family: "Barlow Condensed", sans-serif;
    font-size: 13px;
    letter-spacing: .04em
}

@media screen and (min-width:768px) {
    .c-breadcrumb__link {
        font-size: 20px
    }
}

.c-breadcrumb__link.is-current {
    color: #959595
}

.p-news__list {
    border-top: 1px solid #dbdbdb;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column
}

.p-newsList__item {
    width: 100%;
    border-bottom: 1px solid #dbdbdb;
    opacity: 1;
    transition: all .4s ease 0s
}

.p-newsList__item.is-hidden {
    opacity: 0;
    height: 0;
    margin: 0;
    pointer-events: none
}

.p-newsList__link {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    padding: 30px 10px;
    width: 100%;
    position: relative
}

.p-security__intro {
    font-size: 32px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    margin: 50px 0px 10px;
}

.p-security__list {
    margin-bottom: 40px;
}

.p-securityList__title {
    font-size: 22px;
    font-family: "Noto Sans JP", sans-serif;
    margin: 24px 0px 8px 20px;
}

.p-securityList__item {
    list-style: none;
    margin-left: 40px;
}

.p-securityList__signature {
    font-weight: 100;
    color: #242424;
    text-align: right;
    margin-bottom: 200px;
}

@media screen and (min-width:768px) {
    .p-newsList__link {
        padding: 25px 35px 25px 30px
    }
}

.p-newsList__link:before {
    background: #f7f5f2;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: multiply;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition-property: all;
    transition: .25s ease
}

.p-newsList__link:after {
    background: transparent url(../img/common/icon_angle.svg) no-repeat center;
    background-size: contain;
    content: "";
    width: 6px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    transition-property: all;
    transition: .25s ease
}

@media screen and (min-width:768px) {
    .p-newsList__link:after {
        right: 35px
    }
}

.p-newsList__link.-static {
    pointer-events: none
}

.p-newsList__link.-static:after {
    content: none
}

.p-newsList__link.-static:hover {
    cursor: default
}

.p-newsList__link.-static:hover .p-newsList__detail, .p-newsList__link.-static:hover .p-newsList__title {
    transform: none
}

.p-newsList__link.-static:hover:before {
    opacity: 0;
    visibility: hidden
}

.p-newsList__link.-static:hover:after {
    transform: none
}

.p-newsList__link:hover .p-newsList__detail, .p-newsList__link:hover .p-newsList__title {
    transform: translateX(10px)
}

.p-newsList__link:hover:before {
    opacity: 1;
    visibility: visible
}

.p-newsList__link:hover:after {
    transform: translate(5px, -50%)
}

.p-newsList__title {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 15px;
    letter-spacing: .01em;
    transition-property: all;
    transition: .25s ease
}

@media screen and (min-width:768px) {
    .p-newsList__title {
        font-size: 16px
    }
}

.p-newsList__detail {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    color: #7e7e7e;
    font-family: Quicksand, sans-serif;
    font-size: 12px;
    letter-spacing: .04em;
    transition-property: all;
    transition: .25s ease
}

@media screen and (min-width:768px) {
    .p-newsList__detail {
        font-size: 14px
    }
}

.p-newsList__detail span+span {
    margin: 0 10px
}

@media screen and (min-width:768px) {
    .p-newsList__detail span+span {
        margin: 0 20px
    }
}

.p-newsList__category {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 11px;
    letter-spacing: .01em
}

@media screen and (min-width:768px) {
    .p-newsList__category {
        font-size: 13px
    }
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list, .slick-slider .slick-track {
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after, .slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.p-home .l-main {
    margin-top: -74px
}

@media screen and (min-width:768px) {
    .p-home .l-main {
        margin-top: -110px
    }
}

.p-home__kv {
    position: relative;
    min-height: 100vh
}

.p-home__kv:after {
    background: transparent url(../img/home/object_l.svg) no-repeat center;
    background-size: contain;
    content: "";
    width: 90.4vw;
    height: 90.4vw;
    position: absolute;
    top: 213.3333333333vw;
    left: 15.7333333333vw;
    z-index: -1;
    opacity: .7;
    -webkit-animation: 7s fuwafuwa infinite;
    animation: 7s fuwafuwa infinite
}

@media screen and (min-width:768px) {
    .p-home__kv:after {
        top: 130.2083333333vw;
        left: 22.1354166667vw
    }
}

@media screen and (min-width:1024px) {
    .p-home__kv:after {
        width: 69.9853587116vw;
        height: 69.9853587116vw;
        top: 73.2064421669vw;
        left: 27.0863836018vw
    }
}

@media screen and (min-width:1200px) {
    .p-home__kv:after {
        top: 54.9048316252vw;
        left: 29.2825768668vw
    }
}

.p-homeKv__image {
    position: absolute;
    top: 0;
    right: 0;
    width: 69.3333333333vw;
    height: 178.1333333333vw
}

@media screen and (min-width:768px) {
    .p-homeKv__image {
        width: 69.3333333333vw;
        height: 100vh;
        overflow: hidden
    }
}

@media screen and (min-width:1200px) {
    .p-homeKv__image {
        width: 53.4407027818vw;
        height: 58.5651537335vw
    }
}

@media screen and (min-width:768px) {
    .p-homeKv__image img {
        width: 69.3333333333vw;
        height: 178.1333333333vw;
        width: auto;
        height: 100%;
        position: absolute;
        left: 50%;
        max-width: none;
        transform: translateX(-50%)
    }
}

@media screen and (min-width:1200px) {
    .p-homeKv__image img {
        width: 53.4407027818vw;
        height: 58.5651537335vw
    }
}

.p-homeKv__title {
    position: absolute;
    transform: translate(8.5333333333vw, 76.2666666667vw);
    z-index: 1;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 42px;
    font-style: italic;
    line-height: 1.5952380952;
    letter-spacing: .08em
}

.p-homeKv__title span {
    display: inline-block;
    width: 15px
}

@media screen and (min-width:768px) {
    .p-homeKv__title {
        transform: translate(9.3333333333vw, 45.1822916667vw);
        font-size: 65px;
        line-height: 1.6923076923
    }
}

@media screen and (min-width:1024px) {
    .p-homeKv__title {
        transform: translate(12.3718887262vw, 14.2020497804vw)
    }
}

.p-homeKv__paragraph {
    position: relative;
    top: 266.6666666667vw;
    left: 9.3333333333vw;
    max-width: 305px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 15px;
    line-height: 2.1333333333;
    letter-spacing: .04em;
    opacity: 0;
    transform: translateX(-100vw);
    transition: .4s ease
}

@media screen and (min-width:768px) {
    .p-homeKv__paragraph {
        top: 195.3125vw;
        left: 9.3333333333vw;
        max-width: calc(100vw - (9.3333333333vw * 2));
        font-size: 18px;
        line-height: 1.8888888889
    }
}

@media screen and (min-width:1024px) {
    .p-homeKv__paragraph {
        top: 122.0703125vw;
        left: 9.3333333333vw;
        max-width: 940px
    }
}

@media screen and (min-width:1200px) {
    .p-homeKv__paragraph {
        top: 95.168374817vw;
        left: 12.3718887262vw
    }
}

.p-homeKv__paragraph.is-show {
    opacity: 1;
    transform: translateX(0)
}

@media screen and (min-width:1200px) {
    .p-homeKv__scroll {
        background: transparent url(../img/home/icon_scroll.svg) no-repeat center;
        background-size: contain;
        width: 80px;
        height: 80px;
        transform: translate(12.298682284vw, 46.8521229868vw)
    }
}

.p-home__detail {
    background: #242424;
    margin-top: 74.6666666667vw;
    padding: 53.3333333333vw 0 37.3333333333vw;
    position: relative
}

@media screen and (min-width:768px) {
    .p-home__detail {
        margin-top: 42.8257686676vw;
        padding: 21.2298682284vw 0 21.6691068814vw
    }
}

.p-homeDetail__image {
    position: absolute;
    top: -32vw
}

@media screen and (min-width:768px) {
    .p-homeDetail__image {
        top: -20.4978038067vw;
        max-width: calc(100vw - (5.3333333333vw * 2))
    }
}

@media screen and (min-width:1024px) {
    .p-homeDetail__image {
        max-width: none
    }
}

.p-homeDetail__item {
    position: relative;
    padding-bottom: 24vw
}

@media screen and (min-width:768px) {
    .p-homeDetail__item {
        padding-bottom: 0
    }
}

.p-homeItem__about .p-homeItem__icon {
    transform: translateY(44px)
}

@media screen and (min-width:768px) {
    .p-homeItem__about .p-homeItem__icon {
        transform: none
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__about .p-homeItem__image {
        top: 6.588579795vw;
        left: 21.2298682284vw
    }
}

.p-homeItem__career {
    margin-top: 37.3333333333vw
}

@media screen and (min-width:768px) {
    .p-homeItem__career {
        margin-top: 23.2796486091vw
    }
}

.p-homeItem__career .p-homeItem__icon {
    transform: translateY(40px)
}

@media screen and (min-width:768px) {
    .p-homeItem__career .p-homeItem__icon {
        transform: translateY(0)
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__career .p-homeItem__image {
        top: 2.196193265vw;
        left: 15.7393850659vw
    }
}

.p-homeItem__detail {
    display: none
}

@media screen and (min-width:768px) {
    .p-homeItem__detail {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        position: relative;
        z-index: 1;
        margin: 37px 80px 76px auto;
        color: #fff;
        font-family: "Barlow Condensed", sans-serif;
        font-size: 14px;
        letter-spacing: .04em;
        text-align: right
    }
}

.p-homeItem__detail a {
    transition-property: all;
    transition: .25s ease
}

@media screen and (min-width:768px) {
    .p-homeItem__detail a {
        margin-left: 15px
    }
}

.p-homeItem__detail a:hover {
    color: #eb6b1a
}

@media screen and (min-width:768px) {
    .p-homeItem__detail a:before {
        content: "/";
        margin-right: 15px;
        color: #fff
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__detail a:nth-of-type(1) {
        margin-left: 0
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__detail a:nth-of-type(1):before {
        content: none
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__link {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__link:hover .p-homeItem__title {
        transform: translateX(15px)
    }
}

.p-homeItem__link:hover .c-iconSvg__circle {
    -webkit-animation: circle 1s;
    animation: circle 1s
}

@media screen and (min-width:768px) {
    .p-homeItem__link:hover+.p-homeItem__image {
        opacity: 1;
        visibility: visible
    }
}

@media screen and (min-width:768px) {
    .p-homeItem__link .c-icon {
        transform: scale(1.5)
    }
}

.p-homeItem__link .c-icon__container {
    margin-right: 25px;
    margin-bottom: -1px
}

.p-homeItem__link .c-icon__arrow {
    width: 32px;
    height: 28px;
    background-image: url(../img/home/icon_arrow_home.svg)
}

.p-homeItem__icon {
    position: absolute;
    left: 20px
}

@media screen and (min-width:768px) {
    .p-homeItem__icon {
        position: static
    }
}

.p-homeItem__title {
    position: relative;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 70px;
    letter-spacing: .03em;
    line-height: 1;
    z-index: 1
}

@media screen and (min-width:768px) {
    .p-homeItem__title {
        transition-property: all;
        transition: .25s ease;
        letter-spacing: .02em;
        font-size: 150px
    }
}

.p-homeItem__title small {
    display: block;
    font-size: 40px
}

@media screen and (min-width:768px) {
    .p-homeItem__title small {
        display: inline-block;
        margin-right: 30px;
        font-size: 150px
    }
}

.p-homeItem__image {
    margin: -25px -20px 10px;
    width: 100vw;
    pointer-events: none
}

@media screen and (min-width:768px) {
    .p-homeItem__image {
        opacity: 0;
        visibility: hidden;
        width: auto;
        position: absolute;
        margin: 0;
        transition-property: all;
        transition: .25s ease
    }
}

.p-homeItem__text {
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    line-height: 2.4615384615;
    letter-spacing: .04em
}

@media screen and (min-width:768px) {
    .p-homeItem__text {
        max-width: 448px;
        font-size: 15px;
        line-height: 2.6666666667
    }
}

.p-home__dig {
    margin: 80px auto 105px;
    max-width: calc(100% - 50px)
}

@media screen and (min-width:768px) {
    .p-home__dig {
        margin: 100px auto 120px;
        max-width: 940px
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item {
        width: 100%;
        max-width: none;
        margin: 0 auto 0 70px
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item:first-child {
        max-width: 490px;
        margin-left: 0
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item:nth-of-type(2) {
        max-width: 380px;
        margin-top: 190px !important
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item:nth-of-type(3) {
        max-width: 380px
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item:nth-of-type(4) {
        margin-left: 150px;
        max-width: 250px;
        margin-top: 115px !important
    }
}

.p-home__dig .c-otherLink__item+.c-otherLink__item {
    margin-top: 65px
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__item+.c-otherLink__item {
        margin-top: 0
    }
}

.p-home__dig .c-otherLink__link {
    max-width: none
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__link {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__link:hover .c-otherLink__thumbnail {
        transform-origin: center top;
        transform: scale(.96)
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__link:hover .c-otherLink__thumbnail img {
        transform-origin: center;
        transform: scale(1.2)
    }
}

.p-home__dig .c-otherLink__link:hover .c-link__text {
    transform: none
}

.p-home__dig .c-otherLink__link:hover .c-link:after {
    -webkit-animation: arrow .5s;
    animation: arrow .5s
}

.p-home__dig .c-otherLink__link .c-link {
    position: relative
}

.p-home__dig .c-otherLink__link .c-link:after {
    background: #454545;
    content: "";
    width: 115px;
    height: 1px;
    position: absolute;
    bottom: -7px;
    transform-origin: left top
}

.p-home__dig .c-otherLink__link .c-link__text {
    font-size: 16px
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__link .c-link__text {
        font-size: 15px
    }
}

.p-home__dig .c-otherLink__link .c-icon__container {
    margin-left: 6px;
    margin-bottom: -1px
}

.p-home__dig .c-otherLink__link .c-icon__arrow {
    width: 10px;
    height: 10px;
    background-image: url(../img/common/icon_arrow_text.svg)
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__thumbnail {
        width: 100%;
        margin-bottom: 20px;
        transition-property: all;
        transition: .8s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        overflow: hidden
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__thumbnail img {
        transition-property: all;
        transition: 1s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__detail {
        max-width: none
    }
}

.p-home__dig .c-otherLink__title {
    font-size: 26px;
    letter-spacing: .04em
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__title {
        margin-bottom: 15px;
        font-size: 30px
    }
}

.p-home__dig .c-otherLink__text {
    margin-bottom: 25px
}

@media screen and (min-width:768px) {
    .p-home__dig .c-otherLink__text {
        margin-bottom: 20px
    }
}

@media screen and (min-width:768px) {
    .p-homeDig__wrapper {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap
    }
}

@media screen and (min-width:1024px) {
    .p-homeDig__wrapper {
        position: relative
    }
}

@media screen and (min-width:1024px) {
    .p-homeDig__wrapper:after {
        background: transparent url(../img/home/object.svg) no-repeat center;
        background-size: contain;
        content: "";
        width: 74.8901903367vw;
        height: 74.8901903367vw;
        top: 50%;
        left: 120%;
        transform: translate(-50%, -50%);
        position: absolute;
        z-index: -1;
        opacity: .3
    }
}

.p-homeDig__sectionHeading {
    margin-bottom: 30px
}

.p-home__news {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column
}

@media screen and (min-width:768px) {
    .p-home__news {
        display: block;
        position: relative
    }
}

@media screen and (min-width:1024px) {
    .p-home__news {
        position: relative
    }
}

@media screen and (min-width:1024px) {
    .p-home__news:after {
        background: transparent url(../img/home/object.svg) no-repeat center;
        background-size: contain;
        content: "";
        width: 74.8901903367vw;
        height: 74.8901903367vw;
        top: 50%;
        right: 20%;
        transform: translate(-50%, -50%);
        position: absolute;
        z-index: -1;
        opacity: .3
    }
}

.p-home__news.p-news {
    margin: 0 auto 100px;
    max-width: calc(100% - 50px)
}

@media screen and (min-width:768px) {
    .p-home__news.p-news {
        max-width: 905px
    }
}

.p-home__news.p-news .p-news__list {
    margin-top: 20px;
    width: 100%
}

.p-home__news.p-news .p-newsList__item:nth-of-type(n+4) {
    display: none
}

@media screen and (min-width:768px) {
    .p-home__news.p-news .p-newsList__item:nth-of-type(n+4) {
        display: block
    }
}

.p-home__news.p-news .p-newsList__link:before {
    background: #eae8e6
}

.p-homeNews__link {
    order: 3;
    margin-top: 40px
}

@media screen and (min-width:768px) {
    .p-homeNews__link {
        position: absolute;
        right: 0;
        top: 0;
        margin-top: 20px;
        z-index: 5
    }
}

.p-homeNews__link .c-link__text {
    font-size: 22px
}

@media screen and (min-width:768px) {
    .p-homeNews__link .c-link__text {
        font-size: 25px
    }
}

.p-home__aside {
    margin-bottom: 25px;
    text-align: center;
    position: relative;
    z-index: 5
}

@media screen and (min-width:768px) {
    .p-home__aside {
        margin-bottom: 70px
    }
}

.p-homeAside__image {
    width: 100%
}

@media screen and (min-width:560px) {
    .p-homeAside__image {
        max-width: 1100px
    }
}

.p-home .l-footer__image {
    display: block
}

@-webkit-keyframes arrow {
    0% {
        transform: scale(0, 1)
    }

    100% {
        transform: scale(1, 1)
    }
}

@keyframes arrow {
    0% {
        transform: scale(0, 1)
    }

    100% {
        transform: scale(1, 1)
    }
}

@-webkit-keyframes fuwafuwa {
    0% {
        transform: translate(0, 0)
    }

    25% {
        transform: translate(-5px, 5px)
    }

    50% {
        transform: translate(5px, 0)
    }

    75% {
        transform: translate(0, 5px)
    }

    100% {
        transform: translate(0, 0)
    }
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0)
    }

    25% {
        transform: translate(-5px, 5px)
    }

    50% {
        transform: translate(5px, 0)
    }

    75% {
        transform: translate(0, 5px)
    }

    100% {
        transform: translate(0, 0)
    }
}

.p-jp.p-home .p-homeKv__paragraph {
    font-size: 14px;
    line-height: 2.2857142857;
    letter-spacing: .04em
}

@media screen and (min-width:768px) {
    .p-jp.p-home .p-homeKv__paragraph {
        font-size: 16px;
        line-height: 2.1875
    }
}

.p-jp.p-home .p-homeItem__text {
    line-height: 2.4615384615
}

.p-about:before {
    z-index: 0 !important
}

.p-about .c-heading--pageHeading {
    font-size: 70px
}

@media screen and (min-width:768px) {
    .p-about .c-heading--pageHeading {
        letter-spacing: .02em;
        font-size: 100px
    }
}

@media screen and (min-width:1024px) {
    .p-about .c-heading--pageHeading {
        font-size: 150px
    }
}

.p-about .c-heading--pageHeading span {
    line-height: .9
}

@media screen and (min-width:768px) {
    .p-about .c-heading--pageHeading span {
        line-height: initial
    }
}

.p-about .c-heading--pageHeading small {
    display: block;
    font-size: 40px
}

@media screen and (min-width:768px) {
    .p-about .c-heading--pageHeading small {
        display: inline-block;
        margin-right: 2.196193265vw;
        font-size: 100px
    }
}

@media screen and (min-width:1024px) {
    .p-about .c-heading--pageHeading small {
        font-size: 150px
    }
}

.p-about .c-heading--pageHeading:after {
    margin-top: 11px
}

@media screen and (min-width:768px) {
    .p-about .c-heading--pageHeading:after {
        margin-top: 6px
    }
}

.p-about .l-aside {
    background: #ebebeb;
    position: relative;
    z-index: 1
}

.p-about .c-breadcrumb {
    margin-bottom: 0;
    padding-bottom: 60px
}

@media screen and (min-width:768px) {
    .p-about .c-breadcrumb {
        padding: 0 0 80px
    }
}

.p-about__content {
    background-color: #f2f2f2;
    position: relative;
    z-index: 1
}

.p-aboutSection__intro {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0
}

.p-about__intro {
    margin: 80px auto 40px;
    position: relative;
    z-index: 5;
    text-align: center
}

@media screen and (min-width:768px) {
    .p-about__intro {
        margin: 200px auto 100px
    }
}

.p-about__philosophy {
    padding-bottom: 120px
}

@media screen and (min-width:768px) {
    .p-about__philosophy {
        padding-bottom: 200px
    }
}

.p-aboutPhilosophy__sectionHeading {
    margin-bottom: 20px;
    font-size: 35px
}

@media screen and (min-width:768px) {
    .p-aboutPhilosophy__sectionHeading {
        margin-bottom: 30px;
        font-size: 60px
    }
}

.p-aboutPhilosophy__text {
    font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .04em;
    line-height: 2.1333333333
}

@media screen and (min-width:768px) {
    .p-aboutPhilosophy__text {
        font-size: 18px;
        line-height: 2.2222222222
    }
}

.p-aboutPhilosophy__text+.p-aboutPhilosophy__text {
    margin-top: 15px
}

.p-about__service {
    background-image: url(../img/about/bg_about_service-sp.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0
}

@media screen and (min-width:1024px) {
    .p-about__service {
        background-image: url(../img/about/bg_about_service-pc.png)
    }
}

.p-about__service .c-link__text {
    font-size: 22px
}

@media screen and (min-width:768px) {
    .p-about__service .c-link__text {
        font-size: 25px
    }
}

.p-aboutService__content {
    height: 100vh;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
    padding: 0;
    display: -ms-flex;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column
}

.p-aboutService__sectionHeading {
    margin-bottom: 15px;
    font-size: 44px;
    letter-spacing: .03em
}

@media screen and (min-width:1024px) {
    .p-aboutService__sectionHeading {
        margin-bottom: 65px;
        font-size: 90px
    }
}

.p-aboutService__text {
    margin-bottom: 30px;
    font-size: 13px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .03em;
    line-height: 2.4615384615
}

@media screen and (min-width:1024px) {
    .p-aboutService__text {
        margin-bottom: 165px;
        font-size: 15px;
        letter-spacing: .04em;
        line-height: 2.6666666667
    }
}

.p-about__career {
    background: #242424;
    overflow: hidden;
    position: relative;
    z-index: 1
}

@media screen and (min-width:768px) {
    .p-about__career {
        display: flex
    }
}

.p-about__career .c-link {
    margin-bottom: 140px
}

@media screen and (min-width:768px) {
    .p-about__career .c-link {
        margin-bottom: 0
    }
}

.p-about__career .c-link__text {
    color: #fff;
    font-size: 22px
}

.p-about__career .c-icon__arrow {
    background-image: url(../img/common/icon_arrow-w-sp.svg)
}

@media screen and (min-width:1024px) {
    .p-about__career .c-icon__arrow {
        background-image: url(../img/common/icon_arrow-w-pc.svg)
    }
}

.p-about__career .c-iconSvg__circle {
    stroke: #FFF
}

.p-aboutCareer__image {
    overflow: hidden;
    position: relative
}

.p-aboutCareer__image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 133.3333333333%
}

@media screen and (min-width:768px) {
    .p-aboutCareer__image:before {
        content: none
    }
}

@media screen and (min-width:768px) {
    .p-aboutCareer__image {
        width: 46.8521229868vw;
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
        position: relative
    }
}

.p-aboutCareer__image img {
    mix-blend-mode: lighten;
    opacity: .85;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

@media screen and (min-width:768px) {
    .p-aboutCareer__image img {
        height: 100%;
        width: auto;
        max-width: none;
        left: unset;
        right: 0
    }
}

@media screen and (min-width:1024px) {
    .p-aboutCareer__image img {
        width: 100%
    }
}

.p-aboutCareer__content {
    margin-top: -30px
}

@media screen and (min-width:768px) {
    .p-aboutCareer__content {
        margin-top: 0;
        width: calc(100% - 46.8521229868vw);
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column
    }
}

@media screen and (min-width:768px) {
    .p-aboutCareer__content .l-inner {
        width: auto;
        max-width: none
    }
}

.p-aboutCareer__sectionHeading {
    margin-bottom: 15px;
    color: #fff;
    font-size: 44px
}

@media screen and (min-width:1024px) {
    .p-aboutCareer__sectionHeading {
        margin-bottom: 60px;
        font-size: 90px;
        letter-spacing: .03em
    }
}

.p-aboutCareer__text {
    margin-bottom: 60px;
    color: #fff;
    font-size: 13px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .03em;
    line-height: 2.4615384615
}

@media screen and (min-width:768px) {
    .p-aboutCareer__text {
        max-width: 34.0409956076vw;
        margin-bottom: 130px
    }
}

.p-about__company {
    padding: 120px 0 80px
}

.p-aboutCompany__sectionHeading {
    margin-bottom: 40px;
    font-size: 35px
}

@media screen and (min-width:768px) {
    .p-aboutCompany__sectionHeading {
        font-size: 60px
    }
}

.p-aboutCompany__infomation {
    border-top: 1px solid #dbdbdb;
    margin-bottom: 80px
}

.p-aboutCompany__infomationContent {
    border-bottom: 1px solid #dbdbdb;
    padding: 22px 0 28px
}

@media screen and (min-width:768px) {
    .p-aboutCompany__infomationContent {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 29px 0 38px
    }
}

.p-aboutCompany__infomationTitle {
    margin-bottom: 8px;
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-aboutCompany__infomationTitle {
        width: 150px;
        flex-shrink: 0;
        margin: 0 10px 0 0
    }
}

.p-aboutCompany__infomationDescription {
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-aboutCompany__office {
        display: flex;
        align-items: flex-start;
        justify-content: space-between
    }
}

@media screen and (min-width:768px) {
    .p-aboutCompany__detail {
        width: 100%;
        max-width: calc((100% - 30px)/ 2)
    }
}

@media screen and (min-width:1024px) {
    .p-aboutCompany__detail {
        max-width: calc((100% - 60px)/ 2)
    }
}

.p-aboutCompany__detail .p-aboutCompany__sectionHeading {
    margin-bottom: 17px;
    font-size: 26px
}

@media screen and (min-width:768px) {
    .p-aboutCompany__detail .p-aboutCompany__sectionHeading {
        font-size: 30px
    }
}

.p-aboutCompany__detail+.p-aboutCompany__detail {
    margin-top: 70px
}

@media screen and (min-width:768px) {
    .p-aboutCompany__detail+.p-aboutCompany__detail {
        margin-top: 0
    }
}

.p-aboutCompany__detailMap {
    position: relative;
    margin-bottom: 17px;
}

.p-aboutCompany__detailMap:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 68.0701754386%
}

.p-aboutCompany__text {
    margin-bottom: 34px;
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 1.8333333333
}

.p-about__member {
    background: #ebebeb;
    padding: 80px 0 140px
}

@media screen and (min-width:768px) {
    .p-about__member {
        padding: 120px 0 170px
    }
}

.p-aboutMember__content {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column
}

@media screen and (min-width:768px) {
    .p-aboutMember__content {
        display: block;
        position: relative
    }
}

.p-aboutMember__sectionHeading {
    margin-bottom: 40px;
    font-size: 35px
}

@media screen and (min-width:768px) {
    .p-aboutMember__sectionHeading {
        margin-bottom: 60px;
        font-size: 60px
    }
}

.p-aboutMember__btns {
    order: 3;
    margin-top: 40px
}

@media screen and (min-width:768px) {
    .p-aboutMember__btns {
        position: absolute;
        right: 0;
        top: 0;
        margin-top: 20px;
        z-index: 5
    }
}

.p-aboutMember__btns .slick-arrow {
    background: transparent url(../img/about/icon_active.svg) no-repeat center;
    background-size: contain;
    width: 40px;
    height: 40px
}

@media screen and (min-width:768px) {
    .p-aboutMember__btns .slick-arrow:hover {
        opacity: .5
    }
}

.p-aboutMember__btns .prev-arrow {
    transform: rotate(180deg)
}

.p-aboutMember__btns .next-arrow {
    margin-left: 50px
}

.p-aboutMember__btns .slick-disabled {
    opacity: .5;
    pointer-events: none
}

.p-aboutMember__list .slick-slide+.slick-slide {
    margin-left: 40px
}

@media screen and (min-width:768px) {
    .p-aboutMember__list .slick-slide+.slick-slide {
        margin-left: calc(5vw + 10px)
    }
}

@media screen and (min-width:1024px) {
    .p-aboutMember__list .slick-slide+.slick-slide {
        margin-left: 80px
    }
}

.p-aboutMember__item {
    width: 100%;
    max-width: calc(100vw - 80px)
}

@media screen and (min-width:768px) {
    .p-aboutMember__item {
        max-width: calc(90vw - 20px)
    }
}

@media screen and (min-width:1024px) {
    .p-aboutMember__item {
        max-width: 430px
    }
}

.p-aboutMember__name {
    margin-bottom: 20px;
    font-size: 26px
}

@media screen and (min-width:768px) {
    .p-aboutMember__name {
        margin-bottom: 30px;
        font-size: 30px
    }
}

.p-aboutMember__name small {
    display: block;
    margin-top: 7px;
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif
}

@media screen and (min-width:768px) {
    .p-aboutMember__name small {
        margin-top: 8px;
        font-size: 13px
    }
}

.p-aboutMember__name:before {
    height: 44px;
    position: relative;
    top: 2px
}

@media screen and (min-width:768px) {
    .p-aboutMember__name:before {
        height: 52px
    }
}

.p-aboutMember__text {
    max-width: calc(100vw - 80px);
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-aboutMember__text {
        max-width: 100%
    }
}

.p-about .c-jobLink__item {
    position: relative;
    z-index: 10
}

.p-about .l-footer {
    position: relative
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutPhilosophy__sectionHeading {
        margin-bottom: 65px
    }
}

.p-jp.p-about .p-aboutPhilosophy__text {
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 2.1428571429;
    font-feature-settings: unset
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutPhilosophy__text {
        font-size: 16px;
        letter-spacing: .04em;
        line-height: 2.125
    }
}

.p-jp.p-about .p-aboutPhilosophy__text+.p-aboutPhilosophy__text {
    margin-top: 30px
}

.p-jp.p-about .p-aboutPhilosophy__text .is-pc {
    display: none
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutPhilosophy__text .is-pc {
        display: inline-block
    }
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutService__text {
        font-size: 14px;
        letter-spacing: .04em;
        line-height: 2.8571428571
    }
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutCareer__text {
        font-size: 14px;
        letter-spacing: .04em;
        line-height: 2.8571428571
    }
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutCompany__text {
        font-size: 13px;
        letter-spacing: .04em;
        line-height: 1.8461538462
    }
}

.p-jp.p-about .p-aboutMember__name {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 20px
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutMember__name {
        font-size: 24px
    }
}

@media screen and (min-width:768px) {
    .p-jp.p-about .p-aboutMember__text {
        font-size: 13px;
        line-height: 2.1538461538
    }
}

.p-service .c-heading--pageHeading {
    font-size: 70px
}

@media screen and (min-width:768px) {
    .p-service .c-heading--pageHeading {
        font-size: 150px
    }
}

.p-service .c-heading--pageHeading+.c-section--service {
    margin-top: 90px
}

@media screen and (min-width:1024px) {
    .p-service .c-heading--pageHeading+.c-section--service {
        margin-top: 190px
    }
}

.p-service__sectionHeading {
    margin-bottom: 20px
}

.p-service__text {
    margin: 0;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 15px;
    letter-spacing: .035em;
    line-height: 2.1333333333
}

.p-service__text+.p-service__text {
    margin-top: 15px
}

.p-service .c-section--service {
    padding: 0 25px;
    position: relative
}

@media screen and (min-width:768px) {
    .p-service .c-section--service {
        padding: 0 50px
    }
}

@media screen and (min-width:1024px) {
    .p-service .c-section--service {
        padding: 0 80px
    }
}

.p-service .c-section--service:after {
    background: transparent url(../img/home/object.svg) no-repeat center;
    background-size: contain;
    content: "";
    width: 87.2vw;
    height: 87.2vw;
    position: absolute;
    top: 47.2vw;
    left: 18.6666666667vw;
    z-index: -1;
    opacity: .4;
    -webkit-animation: 7s fuwafuwa infinite;
    animation: 7s fuwafuwa infinite
}

@media screen and (min-width:1024px) {
    .p-service .c-section--service:after {
        width: 45.0219619327vw;
        height: 45.0219619327vw;
        top: 0;
        left: 34.4070278184vw
    }
}

.p-service #js-serviceSlideContent {
    transform: translateX(80vw);
    transition: 1s ease
}

.p-service #js-serviceSlideContent.is-active {
    transform: none
}

.p-service__content .c-section {
    padding: 50px 0
}

.p-service__content .c-section+.c-section {
    padding-bottom: 120px
}

@media screen and (min-width:768px) {
    .p-service__content .c-section+.c-section {
        padding-bottom: 0
    }
}

@media screen and (min-width:768px) {
    .p-service__content-01 {
        display: flex;
        align-items: flex-start;
        justify-content: space-between
    }
}

.p-service__content-01>.c-section {
    width: 100%
}

@media screen and (min-width:768px) {
    .p-service__content-01>.c-section {
        max-width: calc((100% - 80px)/ 2)
    }
}

@media screen and (min-width:1200px) {
    .p-service__content-01>.c-section {
        max-width: calc((100% - 150px)/ 2)
    }
}

@media screen and (min-width:768px) {
    .p-service__content-01>.c-section>.p-service__sectionHeading {
        margin-bottom: 35px;
        font-size: 60px
    }
}

@media screen and (min-width:1024px) {
    .p-service__content-01>.c-section>.p-service__sectionHeading {
        font-size: 90px
    }
}

.p-service__contentWrapper {
    margin-top: 90px
}

@media screen and (min-width:768px) {
    .p-service__contentWrapper {
        margin-top: 290px;
        height: 100vh;
        overflow: hidden;
        margin-bottom: 110px;
        padding-bottom: 110px
    }
}

@media screen and (min-width:1024px) {
    .p-service__contentWrapper {
        left: unset !important
    }
}

.p-service__content-02 {
    background: #242424;
    position: relative;
    z-index: 1
}

@media screen and (min-width:768px) {
    .p-service__content-02 {
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        flex-direction: row-reverse
    }
}

@media screen and (min-width:768px) {
    .p-service__content-02>.l-inner {
        padding-left: calc((100vw - 90%)/ 2);
        padding-right: calc((100vw - 90%)/ 2);
        display: flex;
        align-items: center;
        justify-content: center
    }
}

@media screen and (min-width:1024px) {
    .p-service__content-02>.l-inner {
        padding-left: calc((100vw - 1100px)/ 2);
        padding-right: 9.5168374817vw
    }
}

.p-service__content-02 .c-section {
    padding-bottom: 120px
}

@media screen and (min-width:768px) {
    .p-service__content-02 .c-section {
        padding: 0
    }
}

.p-service__content-02 .p-service__sectionHeading {
    margin-top: -70px;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 44px;
    line-height: 1;
    letter-spacing: .03em
}

@media screen and (min-width:768px) {
    .p-service__content-02 .p-service__sectionHeading {
        margin-top: 0
    }
}

@media screen and (min-width:1024px) {
    .p-service__content-02 .p-service__sectionHeading {
        margin-bottom: 85px;
        font-size: 90px
    }
}

.p-service__content-02 .p-serviceContent__image {
    margin-top: 0
}

@media screen and (min-width:768px) {
    .p-service__content-02 .p-serviceContent__image {
        width: 100%;
        max-width: 46.8521229868vw
    }
}

@media screen and (min-width:768px) {
    .p-service__content-02 .p-serviceContent__image img {
        width: 100%
    }
}

.p-service__content-02 .p-serviceContent__text {
    color: #fff;
    letter-spacing: .03em;
    line-height: 2.4615384615
}

@media screen and (min-width:1024px) {
    .p-service__content-02 .p-serviceContent__text {
        font-size: 15px;
        letter-spacing: .012em;
        line-height: 2.6666666667
    }
}

.p-serviceContent__text {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 2.6923076923
}

.p-serviceContent__image {
    margin-top: 55px
}

.p-serviceContent__detail {
    width: 100%
}

@media screen and (min-width:768px) {
    .p-serviceContent__detail {
        max-width: calc((100% - 80px)/ 2);
        position: relative
    }
}

@media screen and (min-width:1200px) {
    .p-serviceContent__detail {
        max-width: calc((100% - 150px)/ 2)
    }
}

@media screen and (min-width:768px) {
    .p-serviceContent__detail .p-service__sectionHeading {
        margin-bottom: 40px
    }
}

.p-service__list {
    border-top: 1px solid #dbdbdb
}

.p-service__item {
    border-bottom: 1px solid #dbdbdb;
    padding: 20px 0;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-service__item {
        padding: 35px 0;
        font-size: 13px;
        line-height: 1.8461538462;
        letter-spacing: .04em
    }
}

.p-service .c-otherLink {
    background: #f2f2f2;
    margin: 0;
    padding: 80px 0 130px;
    z-index: 1;
    position: relative
}

.p-service .l-aside {
    background: #f2f2f2
}

@media screen and (min-width:768px) {
    .p-jp.p-service .p-service__sectionHeading {
        margin-bottom: 45px
    }
}

.p-jp.p-service .p-service__text {
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .02em;
    line-height: 2.1428571429;
    font-feature-settings: unset
}

@media screen and (min-width:768px) {
    .p-jp.p-service .p-service__text {
        font-size: 16px;
        letter-spacing: .04em;
        line-height: 2.125
    }
}

.p-jp.p-service .p-service__text+.p-aboutPhilosophy__text {
    margin-top: 30px
}

.p-jp.p-service .p-serviceContent__text {
    font-size: 13px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: .032em;
    line-height: 2;
    font-feature-settings: unset
}

@media screen and (min-width:768px) {
    .p-jp.p-service .p-serviceContent__text {
        font-size: 14px;
        letter-spacing: .04em;
        line-height: 2.5
    }
}

@media screen and (min-width:768px) {
    .p-jp.p-service .p-service__item {
        font-size: 13px;
        letter-spacing: .04em
    }
}

@media screen and (min-width:1024px) {
    .chrome .p-service__contentWrapper {
        left: unset !important
    }
}

@media screen and (min-width:1024px) {
    .safari #js-serviceSlideContent .l-inner>.pin-spacer {
        inset: unset !important
    }
}

.p-career {
    overflow-x: unset
}

.p-career.is-active .pin-spacer {
    z-index: 1 !important
}

.p-career.is-active #culture {
    position: fixed
}

.p-career.is-active #data {
    margin-top: 100vh
}

.p-career .c-heading--pageHeading {
    font-size: 70px
}

@media screen and (min-width:768px) {
    .p-career .c-heading--pageHeading {
        font-size: 150px
    }
}

.p-career .l-main.is-fixed {
    overflow-y: hidden
}

.p-career .l-aside {
    background: #f2f2f2;
    position: relative;
    z-index: 0
}

.p-career .c-breadcrumb {
    margin-bottom: 0;
    padding-bottom: 60px
}

@media screen and (min-width:768px) {
    .p-career .c-breadcrumb {
        padding: 0 0 80px
    }
}

.p-career .l-footer {
    position: relative
}

.p-career .c-section--career {
    background: #f2f2f2;
    position: relative;
    width: 100vw;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
    z-index: 0;
    margin-top: 56vw
}

@media screen and (min-width:1024px) {
    .p-career .c-section--career {
        margin-top: 260px
    }
}

.p-career .c-section--career.is-active {
    margin-top: 100vh
}

.p-career .c-section--career.is-fixed {
    overflow: hidden;
    z-index: 4;
    height: 100%
}

@media screen and (min-width:1024px) {
    .p-career .c-section--career.is-fixed {
        z-index: 1
    }
}

.p-career__intro {
    z-index: 1;
    position: relative;
    pointer-events: none
}

.p-career__intro.is-fixed {
    position: fixed;
    width: 100%;
    height: 400vh;
    top: 0;
    left: 0;
    z-index: 90
}

.p-career__intro.is-done {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 90
}

.p-career__intro .js-careerIntro__item {
    top: 0;
    left: 0;
    transition: all 1s ease
}

.p-career__intro .js-careerIntro__item:not(.is-first) {
    opacity: 0;
    visibility: hidden
}

.p-career__intro .js-careerIntro__item.is-show {
    opacity: 1;
    visibility: visible
}

.p-careerIntro__item {
    height: 100vh;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
    position: relative
}

@media screen and (min-width:1024px) {
    .p-careerIntro__item {
        display: flex;
        align-items: center;
        flex-direction: row-reverse;
        overflow: hidden
    }
}

@media screen and (min-width:1024px) {
    .p-careerIntro__item:before {
        border: 1px solid #525252;
        content: "";
        position: absolute;
        width: 80.5270863836vw;
        height: 14.2020497804vw;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1
    }
}

.p-careerIntro__image {
    width: 100vw;
    height: 50vh;
    height: calc(var(--vh, 1vh) * 50);
    position: relative
}

@media screen and (min-width:1024px) {
    .p-careerIntro__image {
        width: 50vw;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100)
    }
}

.p-careerIntro__image img {
    vertical-align: bottom;
    max-width: none;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

@media screen and (min-width:768px) {
    .p-careerIntro__image img {
        width: 100vw;
        height: auto;
        vertical-align: baseline
    }
}

@media screen and (min-width:1024px) {
    .p-careerIntro__image img {
        height: 100vh;
        width: 100%;
        max-width: none;
        vertical-align: baseline
    }
}

.p-careerIntro__detail {
    background-color: #f2f2f2;
    height: 50vh;
    min-height: 50vh;
    min-height: calc(var(--vh, 1vh) * 50);
    position: relative
}

@media screen and (min-width:1024px) {
    .p-careerIntro__detail {
        width: 50vw;
        height: 100vh;
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
        position: relative
    }
}

.p-careerIntro__text {
    background-repeat: repeat-x;
    background-size: contain;
    display: block;
    width: 100%;
    height: 16px
}

@media screen and (min-width:1024px) {
    .p-careerIntro__text {
        background-repeat: repeat-y;
        height: 100%;
        width: 16px;
        position: absolute;
        right: 0
    }
}

.p-careerIntro__text-01 {
    background-image: url(../img/career/bg_career_01-sp.png)
}

@media screen and (min-width:1024px) {
    .p-careerIntro__text-01 {
        background-image: url(../img/career/bg_career_01-pc.png)
    }
}

.p-careerIntro__text-02 {
    background-image: url(../img/career/bg_career_02-sp.png)
}

@media screen and (min-width:1024px) {
    .p-careerIntro__text-02 {
        background-image: url(../img/career/bg_career_02-pc.png)
    }
}

.p-careerIntro__text-03 {
    background-image: url(../img/career/bg_career_03-sp.png)
}

@media screen and (min-width:1024px) {
    .p-careerIntro__text-03 {
        background-image: url(../img/career/bg_career_03-pc.png)
    }
}

.p-careerIntro__title {
    width: 100%;
    max-width: calc(100% - 90px);
    margin: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding-left: 20px;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 25px;
    font-style: italic
}

@media screen and (min-width:1024px) {
    .p-careerIntro__title {
        padding: 0;
        top: 50%;
        left: 15.5929721816vw;
        transform: translateY(-50%);
        font-size: 20px
    }
}

@media screen and (min-width:1024px) {
    .p-careerIntro__title .hidden-pc {
        display: none
    }
}

.p-career__lead {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden
}

.p-career__lead.is-show {
    opacity: 1;
    visibility: visible
}

.p-careerLead__bg {
    background: transparent url(../img/career/bg_lead.png) no-repeat center;
    background-size: cover;
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0
}

.p-careerLead__title {
    position: absolute;
    top: 50% !important;
    left: 50% !important;
    right: unset !important;
    transform: translate(-50%, -50%) !important;
    clip: unset !important;
    z-index: 10;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 26px;
    line-height: 1;
    text-align: center
}

@media screen and (min-width:768px) {
    .p-careerLead__title {
        font-size: 40px
    }
}

.p-careerLead__title small {
    display: block;
    margin-top: 10px;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    letter-spacing: .02
}

@media screen and (min-width:768px) {
    .p-careerLead__title small {
        margin-top: 15px;
        letter-spacing: .04em
    }
}

.p-career__culture {
    background: #242424 url(../img/career/bg_culture-sp.png) no-repeat center right;
    background-size: 88vw auto;
    background-blend-mode: color;
    padding: 80px 0 25px;
    color: #fff;
    z-index: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100vw;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100)
}

@media screen and (min-width:1024px) {
    .p-career__culture {
        background: #242424 url(../img/career/bg_culture-pc.png) no-repeat center right;
        background-size: contain;
        padding-bottom: 0
    }
}

.p-career__culture.is-fixed {
    position: fixed
}

.p-career__culture .p-career__sectionHeading {
    margin-bottom: 15px;
    color: #fff;
    font-size: 44px
}

@media screen and (min-width:768px) {
    .p-career__culture .p-career__sectionHeading {
        font-size: 90px
    }
}

.p-career__culture .c-link {
    margin-bottom: 60px
}

.p-career__culture .c-link__text {
    font-size: 22px
}

.p-career__culture .c-icon__arrow {
    background-image: url(../img/common/icon_arrow-w-sp.svg)
}

@media screen and (min-width:1024px) {
    .p-career__culture .c-icon__arrow {
        background-image: url(../img/common/icon_arrow-w-pc.svg)
    }
}

.p-career__culture .c-iconSvg__circle {
    stroke: #FFF
}

.p-career__culture .l-inner {
    position: relative;
    z-index: 1
}

@media screen and (min-width:1024px) {
    .p-career__culture .l-inner {
        height: 100%
    }
}

.p-careerCulture__content {
    margin-bottom: 50px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    line-height: 1.09375;
    letter-spacing: .03em
}

@media screen and (min-width:1024px) {
    .p-careerCulture__content {
        max-width: 36.3103953148vw
    }
}

.p-careerCulture__image {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 335px;
    height: 253px
}

@media screen and (min-width:768px) {
    .p-careerCulture__image {
        width: 58.2723279649vw;
        height: 44.1434846266vw
    }
}

@media screen and (min-width:1024px) {
    .p-careerCulture__image img {
        max-width: 58.2723279649vw;
        position: absolute;
        right: 0;
        bottom: 0
    }
}

.p-careerCulture__text {
    margin-bottom: 50px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    line-height: 2.6923076923;
    letter-spacing: .03em
}

@media screen and (min-width:768px) {
    .p-careerCulture__text {
        margin-bottom: 100px;
        font-size: 15px;
        line-height: 2.6666666667;
        letter-spacing: .04em
    }
}

.p-career__statistics {
    background: #f2f2f2;
    padding: 120px 0 140px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1
}

@media screen and (min-width:768px) {
    .p-career__statistics {
        overflow-x: hidden;
        padding: 140px 0
    }
}

.p-career__statistics .p-career__sectionHeading {
    margin-bottom: 15px;
    font-size: 44px
}

@media screen and (min-width:768px) {
    .p-career__statistics .p-career__sectionHeading {
        font-size: 90px
    }
}

@media screen and (min-width:768px) {
    .p-career__statistics .l-inner {
        position: relative
    }
}

.p-careerStatistics__wrapper.is-show {
    margin-top: 400vh
}

@media screen and (min-width:1024px) {
    .p-careerStatistics__wrapper.is-show {
        margin-top: 100vh
    }
}

.p-careerStatistics__content {
    margin-bottom: 40px
}

@media screen and (min-width:768px) {
    .p-careerStatistics__content {
        margin-bottom: 60px
    }
}

.p-careerStatistics__item {
    width: 100vw !important;
    max-width: 89.3333333333vw;
    flex-shrink: 0
}

@media screen and (min-width:1024px) {
    .p-careerStatistics__item {
        max-width: calc((95vw - 80px)/ 2)
    }
}

@media screen and (min-width:1200px) {
    .p-careerStatistics__item {
        max-width: 510px
    }
}

.p-careerStatistics__detail {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap
}

.p-careerStatistics__detail .p-careerStatistics__text {
    border-bottom: 1px solid #dbdbdb;
    height: 68px;
    padding-bottom: 20px;
    margin-bottom: 35px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    letter-spacing: .02em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-careerStatistics__detail .p-careerStatistics__text {
        height: 80px;
        padding-bottom: 30px;
        margin-bottom: 50px;
        font-size: 13px;
        line-height: 1.8461538462
    }
}

@media screen and (min-width:1024px) {
    .p-careerStatistics__detail .slick-slide+.slick-slide {
        margin-left: 80px
    }
}

.p-careerStatistics__sectionHeading {
    margin-bottom: 17px
}

.p-careerStatistics__text {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    letter-spacing: .02em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-careerStatistics__text {
        font-size: 13px;
        line-height: 1.8461538462
    }
}

.p-careerStatistics__image {
    margin: 0 auto;
    width: 286px;
    height: 285px
}

@media screen and (min-width:768px) {
    .p-careerStatistics__image {
        width: 400px;
        height: 400px
    }
}

.p-careerStatistics__btns {
    order: 3;
    margin-top: 40px
}

@media screen and (min-width:768px) {
    .p-careerStatistics__btns {
        position: absolute;
        right: 0;
        top: 0;
        margin-top: 115px;
        z-index: 5
    }
}

.p-careerStatistics__btns .slick-arrow {
    background: transparent url(../img/about/icon_active.svg) no-repeat center;
    background-size: contain;
    width: 40px;
    height: 40px
}

@media screen and (min-width:768px) {
    .p-careerStatistics__btns .slick-arrow:hover {
        opacity: .5
    }
}

.p-careerStatistics__btns .prev-arrow {
    transform: rotate(180deg)
}

.p-careerStatistics__btns .next-arrow {
    margin-left: 50px
}

.p-careerStatistics__btns .slick-disabled {
    opacity: .5;
    pointer-events: none
}

.p-career .c-jobLink {
    background: #f2f2f2;
    z-index: 4;
    position: relative;
    margin: auto
}

.p-career .c-otherLink {
    background: #f2f2f2;
    margin: 0;
    padding: 80px 0 130px;
    z-index: 1;
    position: relative
}

.p-jp.p-career .p-careerIntro__title {
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-size: 16px;
    line-height: 1.875;
    letter-spacing: .04em
}

@media screen and (min-width:768px) {
    .p-jp.p-career .p-careerIntro__title {
        font-size: 14px;
        letter-spacing: .04em;
        line-height: 2.4285714286
    }
}

.p-jp.p-career .p-careerCulture__text {
    font-size: 13px;
    letter-spacing: .03em;
    line-height: 2.4615384615
}

@media screen and (min-width:768px) {
    .p-jp.p-career .p-careerCulture__text {
        font-size: 14px;
        letter-spacing: .04em;
        line-height: 2.8571428571
    }
}

.p-jp.p-career .p-careerCulture__text .is-pc {
    display: none
}

@media screen and (min-width:768px) {
    .p-jp.p-career .p-careerCulture__text .is-pc {
        display: inline-block
    }
}

.p-jp.p-career .p-careerStatistics__text {
    font-size: 13px;
    letter-spacing: .03em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-jp.p-career .p-careerStatistics__text {
        font-size: 14px;
        letter-spacing: .04em
    }
}

.p-jp.p-career .p-careerStatistics__detail .p-careerStatistics__text {
    font-size: 12px;
    letter-spacing: .02em;
    line-height: 1.8333333333
}

@media screen and (min-width:768px) {
    .p-jp.p-career .p-careerStatistics__detail .p-careerStatistics__text {
        font-size: 13px;
        letter-spacing: .04em;
        line-height: 1.6923076923
    }
}

.p-culture .l-inner {
    padding: 0 45px
}

@media screen and (min-width:768px) {
    .p-culture .l-inner {
        padding: 0;
        max-width: 85%
    }
}

@media screen and (min-width:1024px) {
    .p-culture .l-inner {
        max-width: 940px
    }
}

.p-culture__list {
    margin-bottom: 170px;
    position: relative
}

.p-cultureList__item {
    margin-top: 110px;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-content: flex-start
}

@media screen and (min-width:768px) {
    .p-cultureList__item {
        flex-direction: row-reverse;
        justify-content: space-between
    }
}

@media screen and (min-width:768px) {
    .p-cultureList__item:nth-of-type(2n) {
        flex-direction: row;
        justify-content: space-between
    }
}

.p-cultureItem__detail {
    width: 100%
}

@media screen and (min-width:768px) {
    .p-cultureItem__detail {
        max-width: calc(100% - 250px - 20px)
    }
}

@media screen and (min-width:1024px) {
    .p-cultureItem__detail {
        max-width: calc(100% - 400px - 40px)
    }
}

.p-cultureItem__number {
    color: #e0e0e0;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 80px;
    letter-spacing: .04em;
    line-height: 1
}

@media screen and (min-width:1024px) {
    .p-cultureItem__number {
        font-size: 100px
    }
}

.p-cultureItem__heading {
    margin: -30px 0 17px;
    color: #404040;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    letter-spacing: .01em;
    line-height: 1.5555555556
}

@media screen and (min-width:768px) {
    .p-cultureItem__heading {
        font-size: 20px
    }
}

.p-cultureItem__paragraph {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    letter-spacing: .01em;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-cultureItem__paragraph {
        font-size: 13px;
        line-height: 2.1538461538
    }
}

@media screen and (min-width:768px) {
    .p-cultureItem__thumbnail {
        max-width: 250px;
        margin-top: 20px
    }
}

@media screen and (min-width:1024px) {
    .p-cultureItem__thumbnail {
        margin-top: 20px;
        max-width: 400px
    }
}

.p-technology .l-inner {
    padding: 0 45px
}

@media screen and (min-width:768px) {
    .p-technology .l-inner {
        padding: 0;
        max-width: 85%
    }
}

@media screen and (min-width:1024px) {
    .p-technology .l-inner {
        max-width: 940px
    }
}

.p-technology__list {
    margin-bottom: 140px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    position: relative
}

@media screen and (min-width:768px) {
    .p-technology__list {
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap
    }
}

.p-technologyList__item {
    margin-top: 80px;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-content: flex-start
}

@media screen and (min-width:768px) {
    .p-technologyList__item {
        width: 100%;
        max-width: calc((100% - 60px)/ 2);
        margin-top: 130px
    }
}

.p-technologyList__item:first-child {
    margin-top: 110px
}

@media screen and (min-width:768px) {
    .p-technologyList__item:first-child {
        margin-top: 130px
    }
}

@media screen and (min-width:768px) {
    .p-technologyList__item:nth-of-type(2n) {
        flex-direction: row;
        justify-content: space-between
    }
}

.p-technologyList__item .c-icon {
    justify-content: flex-start;
    transform: rotate(-45deg);
    transform-origin: left;
    top: 18px
}

.p-technologyList__item .c-icon__container {
    margin-right: 0;
    margin-left: 14px
}

.p-technologyList__item .c-icon__container:before {
    background: #242424
}

.p-technologyList__item .c-icon__arrow:after, .p-technologyList__item .c-icon__arrow:before {
    background: #242424
}

.p-technologyList__item .c-icon__svg {
    left: 0
}

.p-technologyList__item .c-icon .c-iconSvg__circle {
    stroke: #242424
}

.p-technologyList__link:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.p-technologyItem__detail {
    background: #242424;
    width: 100%;
    position: relative;
    margin-bottom: 18px
}

.p-technologyItem__detail:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 36.1403508772%
}

@media screen and (min-width:768px) {
    .p-technologyItem__detail {
        margin-bottom: 20px
    }
}

.p-technologyItem__number {
    position: absolute;
    top: 10px;
    left: 20px;
    color: #fff;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 38px;
    letter-spacing: .06em;
    line-height: 1
}

@media screen and (min-width:768px) {
    .p-technologyItem__number {
        top: 15px;
        left: 33px;
        font-size: 60px
    }
}

.p-technologyItem__heading {
    margin-bottom: 17px;
    color: #404040;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    letter-spacing: .01em;
    line-height: 1.7777777778
}

@media screen and (min-width:768px) {
    .p-technologyItem__heading {
        margin-bottom: 6px;
        font-size: 20px
    }
}

.p-technologyItem__paragraph {
    margin-bottom: 26px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    line-height: 2
}

@media screen and (min-width:768px) {
    .p-technologyItem__paragraph {
        margin-bottom: 35px;
        font-size: 13px;
        letter-spacing: .04em;
        line-height: 1.8461538462
    }
}

.p-news .l-inner {
    padding: 0 45px
}

@media screen and (min-width:768px) {
    .p-news .l-inner {
        padding: 0;
        max-width: 85%
    }
}

@media screen and (min-width:1024px) {
    .p-news .l-inner {
        max-width: 940px
    }
}

.p-news .p-news__list {
    margin-top: 110px
}

.p-news .p-news__footer {
    margin: 40px auto 140px;
    text-align: center
}

@media screen and (min-width:768px) {
    .p-news .p-news__footer {
        margin: 60px auto 200px
    }
}

.p-404__inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column
}

@media screen and (min-width:768px) {
    .p-404__inner {
        flex-direction: row;
        justify-content: space-between;
        margin: 110px auto 200px
    }
}

@media screen and (min-width:1024px) {
    .p-404__inner {
        margin: 110px auto 200px
    }
}

.p-404__inner .c-section {
    padding: 0 20px
}

@media screen and (min-width:768px) {
    .p-404__inner .c-section {
        padding: 0;
        width: 100%;
        max-width: calc(100% - 320px - 40px)
    }
}

@media screen and (min-width:1024px) {
    .p-404__inner .c-section {
        max-width: calc(100% - 542px - 60px)
    }
}

.p-404__image {
    margin: 28px auto 24px
}

@media screen and (min-width:768px) {
    .p-404__image {
        margin: 0;
        width: 320px
    }
}

@media screen and (min-width:1024px) {
    .p-404__image {
        width: 542px
    }
}

.p-404__heading {
    display: none
}

@media screen and (min-width:768px) {
    .p-404__heading {
        display: block;
        margin-bottom: 20px;
        font-size: 30px;
        letter-spacing: .02em
    }
}

@media screen and (min-width:1024px) {
    .p-404__heading {
        font-size: 40px
    }
}

.p-404__paragraph {
    margin-bottom: 40px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    line-height: 2.1666666667
}

@media screen and (min-width:768px) {
    .p-404__paragraph {
        margin-bottom: 65px;
        font-size: 13px;
        line-height: 2.1538461538
    }
}

@media screen and (min-width:1024px) {
    .p-404__paragraph {
        margin-bottom: 85px
    }
}

.p-404__block {
    margin-bottom: 200px
}

@media screen and (min-width:768px) {
    .p-404__block {
        margin-bottom: 0
    }
}

@media screen and (min-width:1024px) {
    .p-404__block {
        margin-bottom: 60px
    }
}

.p-404__block .c-link__text {
    font-size: 22px
}

.p-404__block .c-icon__svg {
    transform: translateY(-50%) scale(.9)
}

@media screen and (min-width:1024px) {
    .p-404__block .c-icon__svg {
        transform: translateY(-50%)
    }
}

.p-contact ::-moz-placeholder {
    color: #a3a3a3
}

.p-contact :-ms-input-placeholder {
    color: #a3a3a3
}

.p-contact ::placeholder {
    color: #a3a3a3
}

.p-contact .l-inner {
    padding: 0 45px
}

@media screen and (min-width:768px) {
    .p-contact .l-inner {
        padding: 0;
        max-width: 85%
    }
}

@media screen and (min-width:1024px) {
    .p-contact .l-inner {
        max-width: 940px
    }
}

.p-contact__content {
    margin-top: 50px
}

@media screen and (min-width:768px) {
    .p-contact__content {
        margin-top: 60px
    }
}

.p-contact__heading {
    margin-bottom: 10px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px
}

@media screen and (min-width:768px) {
    .p-contact__heading {
        font-size: 22px
    }
}

.p-contact__paragraph {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    line-height: 2;
    letter-spacing: .032em
}

@media screen and (min-width:768px) {
    .p-contact__paragraph {
        font-size: 15px;
        line-height: 2;
        letter-spacing: .04em
    }
}

.p-contact__paragraph--primary {
    margin-top: 10px;
    color: #eb6b1a;
    font-weight: 600
}

.p-contactStep__list {
    margin: 60px auto 40px;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:768px) {
    .p-contactStep__list {
        margin: 70px auto 65px
    }
}

.p-contactStep__item {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #b7b7b7;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 20px
}

@media screen and (min-width:768px) {
    .p-contactStep__item {
        font-size: 28px
    }
}

.p-contactStep__item:before {
    background: #454545;
    content: "";
    width: 20px;
    height: 1px;
    margin: 0 10px
}

@media screen and (min-width:1024px) {
    .p-contactStep__item:before {
        width: 50px
    }
}

.p-contactStep__item:first-child:before {
    content: none
}

.p-contactStep__item.is-current {
    color: #eb6b1a
}

.p-contact__form {
    font-family: "Noto Sans JP", sans-serif
}

.p-contact__form--confirm .p-contactForm__group {
    border-top: 1px solid #dbdbdb;
    padding: 24px 0;
    margin-bottom: 0
}

.p-contactForm__label {
    margin-bottom: 8px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.875
}

.p-contactForm__label span {
    color: #eb6b1a
}

.p-contactForm__group {
    margin-bottom: 40px
}

@media screen and (min-width:768px) {
    .p-contactForm__group {
        margin-bottom: 70px
    }
}

.p-contactForm__group.is-error .p-contactForm__selectWrapper {
    border-color: #eb6b1a
}

.p-contactForm__group.is-error .p-contactForm__input {
    border-color: #eb6b1a
}

.p-contactForm__content {
    width: 100%
}

.p-contactForm__input {
    border: 1px solid #777;
    width: 100%;
    padding: 4px 11px 8px;
    font-size: 16px;
    line-height: 2
}

.p-contactForm__select {
    width: 100%;
    display: block;
    padding: 4px 11px 8px;
    outline: 0;
    font-size: 16px;
    line-height: 2
}

.p-contactForm__selectWrapper {
    background: #f2f2f2;
    border: 1px solid #777;
    width: 100%;
    position: relative;
    overflow: hidden;
    color: #454545
}

.p-contactForm__selectWrapper:before {
    background: transparent url(../img/common/icon_angle.svg) no-repeat center;
    background-size: contain;
    content: "";
    width: 6px;
    height: 12px;
    position: absolute;
    top: 18px;
    right: 20px;
    z-index: 1;
    pointer-events: none;
    transform: rotate(90deg)
}

.p-contactForm__static {
    font-size: 16px
}

.p-contactForm__static pre {
    white-space: pre
}

.p-contactForm__error {
    margin-top: 5px;
    color: #eb6b1a;
    font-size: 15px;
    font-weight: 600
}

.p-contact__button {
    width: 100%;
    max-width: 300px;
    height: 50px;
    padding: 0 20px;
    margin: 20px auto 140px;
    position: relative;
    z-index: 4;
    font-size: 20px;
    letter-spacing: .02em
}

@media screen and (min-width:768px) {
    .p-contact__button {
        margin: 45px auto 200px
    }
}

.p-contact__button .c-button__text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.p-contact__button .c-icon {
    position: absolute;
    right: 20px
}

.p-contact__button .c-icon__container {
    margin-right: 6px;
    margin-bottom: -2px
}

.p-contact__button .c-icon__arrow {
    background-image: url(../img/common/icon_arrow-w-sp.svg);
    width: 12px;
    height: 10px
}

@media screen and (min-width:1024px) {
    .p-contact__button .c-icon__arrow {
        background-image: url(../img/common/icon_arrow-w-pc.svg)
    }
}

.p-contact__button:hover .c-iconSvg__circle {
    -webkit-animation: circle 2s;
    animation: circle 2s
}

.p-contact__block {
    margin: 40px auto 140px
}

@media screen and (min-width:768px) {
    .p-contact__block {
        margin: 70px auto 200px
    }
}

.p-contact__block .c-link__text {
    font-size: 22px
}

.p-contact__block .c-icon__svg {
    transform: translateY(-50%) scale(.9)
}

@media screen and (min-width:1024px) {
    .p-contact__block .c-icon__svg {
        transform: translateY(-50%)
    }
}

.p-contact.p-jp .p-contact__button {
    font-size: 17px
}

.p-contact.p-jp .p-contact__button .c-button__text {
    white-space: pre
}