/*!
 * ress.css â€¢ v2.0.2
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    word-break: break-word;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

*,::before,::after {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

::before,::after {
    text-decoration: inherit;
    vertical-align: inherit
}

* {
    padding: 0;
    margin: 0
}

hr {
    overflow: visible;
    height: 0
}

details,main {
    display: block
}

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden] {
    display: none
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

a {
    background-color: rgba(0,0,0,0);
    text-decoration: none
}

a:active,a:hover {
    outline-width: 0
}

code,kbd,pre,samp {
    font-family: monospace,monospace
}

pre {
    font-size: 1em
}

b,strong {
    font-weight: bolder
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

input {
    border-radius: 0
}

[disabled] {
    cursor: default
}

[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    resize: vertical
}

button,input,optgroup,select,textarea {
    font: inherit
}

optgroup {
    font-weight: bold
}

button {
    overflow: visible
}

button,select {
    text-transform: none
}

button,[type=button],[type=reset],[type=submit],[role=button] {
    cursor: pointer;
    color: inherit
}

button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    outline: 1px dotted ButtonText
}

button,html [type=button],[type=reset],[type=submit] {
    -webkit-appearance: button
}

button,input,select,textarea {
    background-color: rgba(0,0,0,0);
    border-style: none
}

select {
    -moz-appearance: none;
    -webkit-appearance: none
}

select::-ms-expand {
    display: none
}

select::-ms-value {
    color: currentColor
}

legend {
    border: 0;
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal;
    max-width: 100%
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    color: inherit;
    font: inherit
}

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

svg:not([fill]) {
    fill: currentColor
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important
    }
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

ul {
    list-style-type: none
}

em {
    font-style: normal
}

main .profile-modal .container::-webkit-scrollbar,.global-menu .body::-webkit-scrollbar {
    width: 3px
}

main .profile-modal .container::-webkit-scrollbar-track,.global-menu .body::-webkit-scrollbar-track {
    border-radius: 3px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.1);
    box-shadow: inset 0 0 6px rgba(0,0,0,.1)
}

main .profile-modal .container::-webkit-scrollbar-thumb,.global-menu .body::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,.2);
    border-radius: 3px
}

html {
    font-size: 62.5%;
    background-color: #edf4ff;
    color: #1f1f1d;
    min-height: -webkit-fill-available
}

body {
    font-family: "neue-haas-grotesk-display","Gothic Medium BBB",sans-serif;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: .03em;
    position: relative;
    min-height: 100vh;
    min-height: -webkit-fill-available;
    position: relative
}

header {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: calc(20*.266667vw) calc(20*.266667vw) 0 calc(20*.266667vw)
}

header .logo {
    display: block
}

header .logo img {
    display: block;
    width: calc(64*.266667vw);
    height: calc(40*.266667vw)
}

header .wrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    font-size: calc(13 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(15*.266667vw)
}

header .wrapper a {
    color: blue;
    white-space: nowrap
}

header .wrapper label {
    margin-left: calc(40*.266667vw);
    font-size: calc(13 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal
}

@media screen and (min-width: 980px) {
    header {
        padding:calc(40*.073206vw) calc(40*.073206vw) 0 calc(40*.073206vw)
    }

    header .logo img {
        width: calc(100*.073206vw);
        height: calc(100*.073206vw)
    }

    header .wrapper {
        font-size: calc(16 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(18.3*.073206vw)
    }

    header .wrapper a:hover {
        text-decoration: line-through
    }

    header .wrapper label {
        margin-left: calc(730*.073206vw);
        font-size: calc(16 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        cursor: pointer
    }

    header .wrapper label:hover {
        text-decoration: line-through
    }
}

@media screen and (min-width: 1920px) {
    header {
        padding:calc(40*1.405564px) calc(40*1.405564px) 0 calc(40*1.405564px)
    }

    header .logo img {
        width: calc(75*1.405564px);
        height: calc(14*1.405564px)
    }

    header .wrapper {
        font-size: calc(16 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(18.3*1.405564px)
    }

    header .wrapper label {
        margin-left: calc(730*1.405564px);
        font-size: calc(16 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal
    }
}

footer {
    background-color: #edf4ff;
    border-top: 1px dashed #000;
    padding: calc(110*.266667vw) calc(20*.266667vw) calc(35*.266667vw) calc(20*.266667vw);
    position: relative
}

footer .return-top {
    position: absolute;
    right: calc(12*.266667vw);
    top: calc(30*.266667vw)
}

footer .return-top .i {
    display: block;
    width: calc(35*.266667vw);
    height: calc(40*.266667vw)
}

footer .return-top.active {
    position: fixed;
    z-index: 800;
    top: auto;
    bottom: calc(30*.266667vw)
}

footer a {
    color: blue;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

footer a .i {
    width: calc(14*.266667vw);
    height: calc(14*.266667vw);
    fill: rgba(0,0,0,0);
    margin: calc(10*.266667vw) calc(8*.266667vw) 0 0;
    stroke: blue
}

footer dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw)
}

footer dl dt {
    width: calc(87*.266667vw)
}

footer dl.tel {
    padding: calc(40*.266667vw) 0 calc(10*.266667vw) 0
}

footer dl dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

footer dl dd .h-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

footer dl dd p+a,footer dl dd a+a,footer dl dd .h-wrapper+a {
    margin-top: calc(6*.266667vw)
}

footer dl dd .h-wrapper+.h-wrapper a {
    margin-top: calc(6*.266667vw)
}

footer .copyright {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    padding: calc(9*.266667vw) 0 0 calc(87*.266667vw);
    line-height: calc(53*.266667vw)
}

@media screen and (min-width: 980px) {
    footer {
        padding:calc(174*.073206vw) calc(40*.073206vw) calc(130*.073206vw) calc(255*.073206vw)
    }

    footer .return-top {
        right: calc(31.6*.073206vw);
        top: calc(60*.073206vw)
    }

    footer .return-top .i {
        width: calc(51*.073206vw);
        height: calc(59*.073206vw)
    }

    footer .return-top.active {
        bottom: calc(30*.073206vw)
    }

    footer a {
        margin-top: calc(5*.073206vw)
    }

    footer a .i {
        width: calc(32*.073206vw);
        height: calc(32*.073206vw);
        margin: calc(15*.073206vw) calc(12*.073206vw) 0 0
    }

    footer a:hover {
        -webkit-text-decoration: line-through 2px solid blue;
        text-decoration: line-through 2px solid blue
    }

    footer dl {
        font-size: calc(40 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(63*.073206vw)
    }

    footer dl dt {
        width: calc(216*.073206vw)
    }

    footer dl.tel {
        padding: calc(66*.073206vw) 0 0 0
    }

    footer dl.social dd {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    footer dl.social dd a {
        margin-right: calc(62*.073206vw)
    }

    footer dl.social dd .h-wrapper {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    footer dl.social dd .h-wrapper a {
        margin-top: 0
    }

    footer dl.social dd p+a,footer dl.social dd a+a,footer dl.social dd .h-wrapper+a {
        margin-top: calc(5*.073206vw)
    }

    footer .copyright {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        padding: calc(66*.073206vw) 0 0 calc(216*.073206vw);
        line-height: calc(53*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    footer {
        padding:calc(174*1.405564px) calc(40*1.405564px) calc(130*1.405564px) calc(255*1.405564px)
    }

    footer .return-top {
        right: calc(31.6*1.405564px);
        top: calc(60*1.405564px)
    }

    footer .return-top .i {
        width: calc(51*1.405564px);
        height: calc(59*1.405564px)
    }

    footer .return-top.active {
        bottom: calc(30*1.405564px)
    }

    footer a {
        margin-top: calc(5*1.405564px)
    }

    footer a .i {
        width: calc(32*1.405564px);
        height: calc(32*1.405564px);
        margin: calc(15*1.405564px) calc(12*1.405564px) 0 0
    }

    footer dl {
        font-size: calc(56 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(63*1.405564px)
    }

    footer dl dt {
        width: calc(216*1.405564px)
    }

    footer dl.tel {
        padding: calc(66*1.405564px) 0 0 0
    }

    footer dl.social dd a {
        margin-right: calc(62*1.405564px)
    }

    footer dl.social dd p+a,footer dl.social dd a+a,footer dl.social dd .h-wrapper+a {
        margin-top: calc(5*1.405564px)
    }

    footer .copyright {
        font-size: calc(56 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        padding: calc(66*1.405564px) 0 0 calc(216*1.405564px);
        line-height: calc(53*1.405564px)
    }
}

br.pc {
    display: none
}

@media screen and (min-width: 980px) {
    br.pc {
        display:inline
    }

    br.sp {
        display: none
    }
}

@-webkit-keyframes blink {
    0% {
        opacity: 0
    }

    40% {
        opacity: 0
    }

    60% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@keyframes blink {
    0% {
        opacity: 0
    }

    40% {
        opacity: 0
    }

    60% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes text-blink {
    0% {
        opacity: 1
    }

    10% {
        opacity: 0
    }

    20% {
        opacity: 1
    }

    40% {
        opacity: .3
    }

    50% {
        opacity: .7
    }

    60% {
        opacity: .3
    }

    80% {
        opacity: 1
    }

    90% {
        opacity: .3
    }

    100% {
        opacity: 1
    }
}

@keyframes text-blink {
    0% {
        opacity: 1
    }

    10% {
        opacity: 0
    }

    20% {
        opacity: 1
    }

    40% {
        opacity: .3
    }

    50% {
        opacity: .7
    }

    60% {
        opacity: .3
    }

    80% {
        opacity: 1
    }

    90% {
        opacity: .3
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes sp-sprite {
    to {
        background-position: calc(-15660*.266667vw) 0
    }
}

@keyframes sp-sprite {
    to {
        background-position: calc(-15660*.266667vw) 0
    }
}

@-webkit-keyframes pc-sprite {
    to {
        background-position: calc(-31050*.073206vw) 0
    }
}

@keyframes pc-sprite {
    to {
        background-position: calc(-31050*.073206vw) 0
    }
}

@-webkit-keyframes wd-sprite {
    to {
        background-position: calc(-31050*1.405564px) 0
    }
}

@keyframes wd-sprite {
    to {
        background-position: calc(-31050*1.405564px) 0
    }
}

.opener-checkbox {
    display: none
}

.global-menu {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #edf4ff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    opacity: 0;
    pointer-events: none
}

.global-menu .header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: calc(20*.266667vw) calc(1*.266667vw) 0 calc(20*.266667vw)
}

.global-menu .header .logo {
    display: block
}

.global-menu .header .logo img {
    display: block;
    width: calc(64*.266667vw);
    height: calc(50*.266667vw)
}

.global-menu .header .i {
    width: calc(80*.266667vw);
    height: calc(29*.266667vw);
    stroke: #1f1f1d;
    fill: #1f1f1d
}

.global-menu .body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-height: 0;
    overflow: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: calc(30*.266667vw) calc(20*.266667vw)
}

.global-menu .body h2 {
    font-size: calc(70 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

.global-menu .body .menus li {
    margin-top: calc(10*.266667vw)
}

.global-menu .body .menus li a {
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    color: #1f1f1d
}

.global-menu .body .menus li a.active {
    color: blue
}

.global-menu .body .menus li .i {
    display: inline-block;
    width: calc(10*.266667vw);
    height: calc(10*.266667vw);
    stroke: #1f1f1d;
    vertical-align: baseline;
    margin-left: calc(6*.266667vw)
}

.global-menu .body .menus.bottom {
    padding: calc(45*.266667vw) 0 calc(60*.266667vw) 0
}

.global-menu .body .menus.bottom a {
    font-size: calc(25 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal
}

@media screen and (min-width: 980px) {
    .global-menu .header {
        padding:calc(40*.073206vw) calc(22*.073206vw) 0 calc(40*.073206vw)
    }

    .global-menu .header .logo img {
        width: calc(75*.073206vw);
        height: calc(100*.073206vw)
    }

    .global-menu .header .i {
        width: calc(80*.073206vw);
        height: calc(29*.073206vw)
    }

    .global-menu .body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding: calc(42*.073206vw) calc(40*.073206vw) calc(47*.073206vw) calc(40*.073206vw)
    }

    .global-menu .body h2 {
        font-size: calc(145 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    .global-menu .body .menu-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .global-menu .body .menus {
        padding-left: calc(267*.073206vw);
        padding-top: calc(7*.073206vw)
    }

    .global-menu .body .menus li {
        margin-top: 0
    }

    .global-menu .body .menus li a {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(65*.073206vw)
    }

    .global-menu .body .menus li a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    .global-menu .body .menus li a.active:hover {
        text-decoration: none
    }

    .global-menu .body .menus li .i {
        width: calc(14*.073206vw);
        height: calc(14*.073206vw);
        margin-left: calc(10*.073206vw)
    }

    .global-menu .body .menus.bottom {
        padding-left: calc(267*.073206vw);
        display: block
    }

    .global-menu .body .menus.bottom li+li {
        margin-top: calc(20*.073206vw)
    }

    .global-menu .body .menus.bottom li a {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    .global-menu .header {
        padding:calc(40*1.405564px) calc(22*1.405564px) 0 calc(40*1.405564px)
    }

    .global-menu .header .logo img {
        width: calc(75*1.405564px);
        height: calc(14*1.405564px)
    }

    .global-menu .header .i {
        width: calc(80*1.405564px);
        height: calc(29*1.405564px)
    }

    .global-menu .body {
        padding: calc(42*1.405564px) calc(40*1.405564px) calc(47*1.405564px) calc(40*1.405564px)
    }

    .global-menu .body h2 {
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    .global-menu .body .menus {
        padding-left: calc(267*1.405564px)
    }

    .global-menu .body .menus li a {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(65*1.405564px)
    }

    .global-menu .body .menus li .i {
        width: calc(14*1.405564px);
        height: calc(14*1.405564px);
        margin-left: calc(10*1.405564px)
    }

    .global-menu .body .menus.bottom {
        padding-left: calc(267*1.405564px)
    }

    .global-menu .body .menus.bottom li+li {
        margin-top: calc(20*1.405564px)
    }

    .global-menu .body .menus.bottom li a {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px)
    }
}

#menu-opener:checked+.global-menu {
    opacity: 1;
    pointer-events: auto
}

main {
    background-color: #edf4ff;
    position: relative
}

main section.fv {
    height: 100vh
}

@supports(-webkit-touch-callout: none) {
    main section.fv {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main ul.news li {
    border-top: 1px solid #1f1f1d;
    padding: calc(40*.266667vw) calc(20*.266667vw) calc(40*.266667vw) calc(71*.266667vw)
}

main ul.news li .header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(23*.266667vw)
}

main ul.news li .header .date {
    padding-right: calc(68*.266667vw)
}

main ul.news li .body {
    padding-top: calc(15*.266667vw)
}

main ul.news li .body h4 {
    font-size: calc(22 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(34*.266667vw)
}

main ul.news li .body h4+h4 {
    padding-top: calc(20*.266667vw)
}

main ul.news li .body .external+h4 {
    padding-top: calc(40*.266667vw)
}

main ul.news li .body p {
    padding-top: calc(10*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(25*.266667vw)
}

main ul.news li .body .external {
    display: block;
    padding-top: calc(15*.266667vw)
}

main ul.news li .body .external a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(23*.266667vw);
    color: blue
}

main ul.news li .body .external a .i {
    width: calc(12*.266667vw);
    height: calc(12*.266667vw);
    margin-right: calc(12*.266667vw);
    stroke: blue
}

@media screen and (min-width: 980px) {
    main ul.news li {
        padding:calc(40*.073206vw) calc(40*.073206vw) calc(40*.073206vw) calc(40*.073206vw);
        min-height: calc(256*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main ul.news li .header {
        width: calc(432*.073206vw);
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        font-size: calc(18 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(25*.073206vw)
    }

    main ul.news li .header .new {
        font-size: calc(16 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(23*.073206vw);
        width: calc(217*.073206vw)
    }

    main ul.news li .header .date {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding-right: 0
    }

    main ul.news li .body {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding-top: 0
    }

    main ul.news li .body h4 {
        font-size: calc(34 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(46*.073206vw)
    }

    main ul.news li .body h4+h4 {
        padding-top: calc(20*.073206vw)
    }

    main ul.news li .body .external+h4 {
        padding-top: calc(40*.073206vw)
    }

    main ul.news li .body p {
        padding-top: calc(15*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(25*.073206vw)
    }

    main ul.news li .body .external {
        padding-top: calc(25*.073206vw)
    }

    main ul.news li .body .external a {
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(14*.073206vw)
    }

    main ul.news li .body .external a .i {
        width: calc(13*.073206vw);
        height: calc(13*.073206vw);
        margin-right: calc(6*.073206vw)
    }

    main ul.news li .body .external a:hover {
        -webkit-text-decoration: line-through 2px solid blue;
        text-decoration: line-through 2px solid blue
    }
}

@media screen and (min-width: 1920px) {
    main ul.news li {
        padding:calc(40*1.405564px) calc(40*1.405564px) calc(40*1.405564px) calc(40*1.405564px);
        min-height: calc(256*1.405564px)
    }

    main ul.news li .header {
        width: calc(432*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(25*1.405564px)
    }

    main ul.news li .header .new {
        font-size: calc(16 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(23*1.405564px);
        width: calc(217*1.405564px)
    }

    main ul.news li .body h4 {
        font-size: calc(34 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(46*1.405564px)
    }

    main ul.news li .body h4+h4 {
        padding-top: calc(20*1.405564px)
    }

    main ul.news li .body .external+h4 {
        padding-top: calc(40*1.405564px)
    }

    main ul.news li .body p {
        padding-top: calc(15*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(25*1.405564px)
    }

    main ul.news li .body .external {
        padding-top: calc(25*1.405564px)
    }

    main ul.news li .body .external a {
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(14*1.405564px)
    }

    main ul.news li .body .external a .i {
        width: calc(13*1.405564px);
        height: calc(13*1.405564px);
        margin-right: calc(6*1.405564px)
    }
}

main section.nav .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

main section.nav .wrapper a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #1f1f1d
}

main section.nav .wrapper a:nth-child(1) {
    margin-right: calc(45*.266667vw)
}

main section.nav .wrapper a:nth-child(3) {
    margin-top: calc(45*.266667vw)
}

main section.nav .i {
    display: block;
    width: calc(16*.266667vw);
    height: calc(16*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: #1f1f1d;
    margin-right: calc(19*.266667vw)
}

main section.nav span {
    margin-top: calc(-4*.266667vw);
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    white-space: nowrap
}

@media screen and (min-width: 980px) {
    main section.nav .wrapper {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap
    }

    main section.nav .wrapper a:nth-child(1) {
        margin-right: calc(131*.073206vw)
    }

    main section.nav .wrapper a:nth-child(3) {
        margin-top: 0;
        margin-left: calc(144*.073206vw)
    }

    main section.nav .wrapper a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main section.nav .i {
        width: calc(26*.073206vw);
        height: calc(26*.073206vw);
        margin-right: calc(32*.073206vw)
    }

    main section.nav span {
        margin-top: calc(-4*.073206vw);
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main section.nav .wrapper a:nth-child(1) {
        margin-right:calc(131*1.405564px)
    }

    main section.nav .wrapper a:nth-child(3) {
        margin-left: calc(144*1.405564px)
    }

    main section.nav .i {
        width: calc(26*1.405564px);
        height: calc(26*1.405564px);
        margin-right: calc(32*1.405564px)
    }

    main section.nav span {
        margin-top: calc(-4*1.405564px);
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*1.405564px)
    }
}

main section.request .container,main section.join-us .container {
    padding: 0 calc(20*.266667vw) 0 calc(70*.266667vw)
}

main section.request .title,main section.join-us .title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #1f1f1d;
    font-size: calc(28 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(36*.266667vw)
}

main section.request .title .i,main section.join-us .title .i {
    display: block;
    width: calc(16*.266667vw);
    height: calc(16*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: #1f1f1d;
    margin-right: calc(19*.266667vw)
}

main section.request .title span,main section.join-us .title span {
    display: inline-block;
    margin-top: calc(-8*.266667vw)
}

main section.request p,main section.join-us p {
    padding: calc(20*.266667vw) 0 0 calc(38*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main section.request .container,main section.join-us .container {
        padding:0 calc(40*.073206vw) 0 calc(472*.073206vw)
    }

    main section.request .title,main section.join-us .title {
        font-size: calc(46 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(46*.073206vw)
    }

    main section.request .title .i,main section.join-us .title .i {
        width: calc(28*.073206vw);
        height: calc(28*.073206vw);
        margin-right: calc(28*.073206vw)
    }

    main section.request .title span,main section.join-us .title span {
        margin-top: 0
    }

    main section.request .title:hover,main section.join-us .title:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main section.request p,main section.join-us p {
        padding: calc(30*.073206vw) 0 0 calc(60*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main section.request .container,main section.join-us .container {
        padding:0 calc(40*1.405564px) 0 calc(472*1.405564px)
    }

    main section.request .title,main section.join-us .title {
        font-size: calc(46 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(46*1.405564px)
    }

    main section.request .title .i,main section.join-us .title .i {
        width: calc(28*1.405564px);
        height: calc(28*1.405564px);
        margin-right: calc(28*1.405564px)
    }

    main section.request p,main section.join-us p {
        padding: calc(30*1.405564px) 0 0 calc(60*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main .profile-modal {
    position: fixed;
    z-index: 1100;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(31,31,29,.1);
    opacity: 0;
    pointer-events: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

main .profile-modal .modal-backdrop {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

main .profile-modal .container {
    z-index: 2;
    width: calc(100vw - calc(19 * 0.266667vw));
    height: 100%;
    background-color: #1f1f1d;
    padding: calc(40*.266667vw) 0 calc(40*.266667vw) calc(50*.266667vw);
    overflow: auto
}

main .profile-modal .container .header,main .profile-modal .container .footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

main .profile-modal .container .header label,main .profile-modal .container .footer label {
    cursor: pointer
}

main .profile-modal .container .header .i,main .profile-modal .container .footer .i {
    display: block;
    width: calc(80*.266667vw);
    height: calc(29*.266667vw);
    stroke: #efeeea;
    fill: #efeeea
}

main .profile-modal .container .body {
    padding: calc(30*.266667vw) 0;
    color: #efeeea
}

main .profile-modal .container .body .img {
    display: block;
    width: calc(284.05*.266667vw)
}

main .profile-modal .container .body .name {
    padding-top: calc(25*.266667vw);
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw)
}

main .profile-modal .container .body .desc {
    padding-top: calc(15*.266667vw);
    padding-right: calc(18*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main .profile-modal {
        padding-left:calc(256*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    main .profile-modal .container {
        width: calc(1110*.073206vw);
        height: calc(687*.073206vw);
        padding: calc(160*.073206vw) calc(148*.073206vw) 0 0;
        overflow: auto;
        position: relative
    }

    main .profile-modal .container .header label {
        position: absolute;
        top: calc(160*.073206vw);
        right: calc(21*.073206vw)
    }

    main .profile-modal .container .header .i {
        width: calc(80*.073206vw);
        height: calc(29*.073206vw)
    }

    main .profile-modal .container .footer {
        display: none
    }

    main .profile-modal .container .body {
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main .profile-modal .container .body .img {
        width: calc(314*.073206vw);
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    main .profile-modal .container .body .content-wrapper {
        padding-left: calc(60*.073206vw)
    }

    main .profile-modal .container .body .name {
        padding-top: 0;
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw)
    }

    main .profile-modal .container .body .desc {
        padding-top: calc(40*.073206vw);
        padding-right: 0;
        font-size: calc(14 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main .profile-modal {
        padding-left:calc(256*1.405564px)
    }

    main .profile-modal .container {
        width: calc(1110*1.405564px);
        height: calc(687*1.405564px);
        padding: calc(160*1.405564px) calc(148*1.405564px) 0 0
    }

    main .profile-modal .container .header label {
        top: calc(160*1.405564px);
        right: calc(21*1.405564px)
    }

    main .profile-modal .container .header .i {
        width: calc(80*1.405564px);
        height: calc(29*1.405564px)
    }

    main .profile-modal .container .body .img {
        width: calc(314*1.405564px)
    }

    main .profile-modal .container .body .content-wrapper {
        padding-left: calc(60*1.405564px)
    }

    main .profile-modal .container .body .name {
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px)
    }

    main .profile-modal .container .body .desc {
        padding-top: calc(40*1.405564px);
        padding-right: 0;
        font-size: calc(14 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px)
    }
}

main #profile-opener:checked+.profile-modal {
    opacity: 1;
    pointer-events: auto
}

main div.works {
    margin-top: calc(-100*.266667vw)
}

main div.works .work {
    display: block;
    color: #1f1f1d;
    margin-top: calc(100*.266667vw)
}

main div.works .work .img {
    display: block;
    width: calc(285*.266667vw);
    height: calc(378*.266667vw);
    -o-object-fit: cover;
    object-fit: cover
}

main div.works .work .title {
    padding-top: calc(25*.266667vw);
    letter-spacing: .04em;
    line-height: calc(29*.266667vw)
}

main div.works .work .title.ja {
    font-size: calc(22 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal
}

main div.works .work .title.en {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal
}

main div.works .work .client {
    padding-top: calc(5*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw)
}

main div.works .work p {
    padding-top: calc(25*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(22*.266667vw)
}

main div.works .work .service {
    padding-top: calc(15*.266667vw);
    font-size: calc(12 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(14*.266667vw);
    color: rgba(31,31,29,.5)
}

main div.works .work.hide {
    display: none
}

@media screen and (min-width: 980px) {
    main div.works {
        -webkit-box-flex:1;
        -ms-flex: 1;
        flex: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: calc(-100*.073206vw) 0 0 calc(-70*.073206vw)
    }

    main div.works .work {
        width: calc(382*.073206vw);
        margin: calc(100*.073206vw) 0 0 calc(70*.073206vw)
    }

    main div.works .work .img {
        width: calc(385*.073206vw);
        height: calc(512*.073206vw)
    }

    main div.works .work .title {
        padding-top: calc(32*.073206vw);
        line-height: calc(32*.073206vw)
    }

    main div.works .work .title.ja {
        font-size: calc(24 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal
    }

    main div.works .work .title.en {
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal
    }

    main div.works .work .client {
        padding-top: calc(5*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw)
    }

    main div.works .work p {
        padding-top: calc(25*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main div.works .work .service {
        padding-top: calc(5*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*.073206vw)
    }

    main div.works .work:hover .title {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }
}

@media screen and (min-width: 1920px) {
    main div.works {
        margin:calc(-100*1.405564px) 0 0 calc(-70*1.405564px)
    }

    main div.works .work {
        width: calc(385*1.405564px);
        margin: calc(100*1.405564px) 0 0 calc(70*1.405564px)
    }

    main div.works .work .img {
        width: calc(385*1.405564px);
        height: calc(512*1.405564px)
    }

    main div.works .work .title {
        padding-top: calc(30*1.405564px);
        line-height: calc(32*1.405564px)
    }

    main div.works .work .title.ja {
        font-size: calc(24 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal
    }

    main div.works .work .title.en {
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal
    }

    main div.works .work .client {
        padding-top: calc(5*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px)
    }

    main div.works .work p {
        padding-top: calc(25*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main div.works .work .service {
        padding-top: calc(5*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*1.405564px)
    }
}

.page-backdrop {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1200;
    background-color: rgba(31,31,29,.1);
    opacity: 0;
    pointer-events: none
}

.page-backdrop.active {
    opacity: 1;
    pointer-events: auto
}

main.top section.fv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

main.top section.fv .container {
    padding: calc(20*.266667vw)
}

main.top section.fv .wrapper {
    height: calc(96*.266667vw);
    position: relative
}

main.top section.fv .wrapper.active {
    border-bottom: 1px solid #000
}

main.top section.fv .wrapper .motion-text {
    font-size: calc(55 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(96*.266667vw);
    margin-left: calc(-3*.266667vw)
}

main.top section.fv .wrapper .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(68*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.top section.fv .wrapper .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.top section.fv .copy {
    padding-top: calc(10*.266667vw);
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(27*.266667vw);
    letter-spacing: .02em;
    visibility: hidden
}

main.top section.fv .copy.active {
    visibility: visible
}

main.top section.fv .desc {
    padding-top: calc(40*.266667vw);
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(21*.266667vw);
    visibility: hidden
}

main.top section.fv .desc.active {
    visibility: visible
}

main.top section.fv .desc-ja {
    padding-top: calc(10*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(20*.266667vw);
    visibility: hidden
}

main.top section.fv .desc-ja.active {
    visibility: visible
}

@media screen and (min-width: 980px) {
    main.top section.fv .container {
        padding:calc(40*.073206vw)
    }

    main.top section.fv .wrapper {
        height: calc(190*.073206vw);
        position: relative
    }

    main.top section.fv .wrapper:before {
        width: calc(1286*.073206vw)
    }

    main.top section.fv .wrapper .motion-text {
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(180*.073206vw);
        margin-left: calc(-2*.073206vw)
    }

    main.top section.fv .wrapper .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.top section.fv .copy {
        padding-top: calc(15*.073206vw);
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*.073206vw)
    }

    main.top section.fv .desc {
        padding-top: calc(22*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(35*.073206vw)
    }

    main.top section.fv .desc-ja {
        padding-top: 0;
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.top section.fv .container {
        padding:calc(40*1.405564px);
        width: 1920px
    }

    main.top section.fv .wrapper {
        height: calc(190*1.405564px);
        position: relative
    }

    main.top section.fv .wrapper:before {
        width: calc(1286*1.405564px)
    }

    main.top section.fv .wrapper .motion-text {
        font-size: calc(230 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(180*1.405564px);
        margin-left: calc(-2*1.405564px)
    }

    main.top section.fv .wrapper .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.top section.fv .copy {
        padding-top: calc(15*1.405564px);
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*1.405564px)
    }

    main.top section.fv .desc {
        padding-top: calc(22*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(35*1.405564px)
    }

    main.top section.fv .desc-ja {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px)
    }
}

main.top section.message .container {
    padding: calc(130*.266667vw) calc(20*.266667vw) calc(100*.266667vw) calc(70*.266667vw)
}

main.top section.message .en {
    font-size: calc(26 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(26*.266667vw)
}

main.top section.message .ja {
    padding-top: calc(50*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(17*.266667vw)
}

@media screen and (min-width: 980px) {
    main.top section.message .container {
        padding:calc(286*.073206vw) calc(40*.073206vw) calc(250*.073206vw) calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    main.top section.message .en {
        text-align: right;
        font-size: calc(28 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(35*.073206vw);
        width: calc(538*.073206vw)
    }

    main.top section.message .ja {
        padding-top: 0;
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw);
        width: calc(408*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.top section.message .container {
        padding:calc(286*1.405564px) calc(40*1.405564px) calc(250*1.405564px) calc(40*1.405564px);
        width: 1920px
    }

    main.top section.message .en {
        font-size: calc(28 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(35*1.405564px);
        width: calc(538*1.405564px)
    }

    main.top section.message .ja {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px);
        width: calc(408*1.405564px)
    }
}

main.top section.nav .container {
    padding: calc(150*.266667vw) 0 calc(150*.266667vw) calc(70*.266667vw)
}

@media screen and (min-width: 980px) {
    main.top section.nav .container {
        padding:calc(240*.073206vw) calc(40*.073206vw) calc(240*.073206vw) calc(472*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.top section.nav .container {
        padding:calc(240*1.405564px) calc(40*1.405564px) calc(240*1.405564px) calc(472*1.405564px);
        width: 1920px
    }
}

main.top section.news h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(53*.266667vw);
    padding: 0 0 calc(50*.266667vw) calc(20*.266667vw)
}

@media screen and (min-width: 980px) {
    main.top section.news h2 {
        font-size:calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*.073206vw);
        padding: 0 0 calc(70*.073206vw) calc(40*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.top section.news .container {
        width:1920px
    }

    main.top section.news h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(52*1.405564px);
        padding: 0 0 calc(70*1.405564px) calc(40*1.405564px)
    }
}

main.who-we-are section.fv .container {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@supports(-webkit-touch-callout: none) {
    main.who-we-are section.fv .container {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main.who-we-are section.fv .motion-text {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: calc(72*.266667vw) 0 0 calc(20*.266667vw);
    font-size: calc(76 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

main.who-we-are section.fv .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(60*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.who-we-are section.fv .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.who-we-are section.fv .page-nav-wrapper {
    padding: 0 0 calc(30*.266667vw) calc(20*.266667vw)
}

main.who-we-are section.fv .page-nav-wrapper li+li {
    margin-top: calc(7*.266667vw)
}

main.who-we-are section.fv .page-nav-wrapper a {
    color: #1f1f1d;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    white-space: nowrap
}

main.who-we-are section.fv .page-nav-wrapper .i {
    display: block;
    width: calc(16*.266667vw);
    height: calc(16*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: #1f1f1d;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-right: calc(30*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.fv .motion-text {
        padding:calc(96*.073206vw) 0 0 calc(40*.073206vw);
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    main.who-we-are section.fv .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.who-we-are section.fv .page-nav-wrapper {
        padding: 0 0 calc(40*.073206vw) calc(40*.073206vw)
    }

    main.who-we-are section.fv .page-nav-wrapper li+li {
        margin-top: calc(15*.073206vw)
    }

    main.who-we-are section.fv .page-nav-wrapper a {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw)
    }

    main.who-we-are section.fv .page-nav-wrapper a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main.who-we-are section.fv .page-nav-wrapper .i {
        width: calc(18*.073206vw);
        height: calc(18*.073206vw);
        margin-right: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.fv .motion-text {
        padding:calc(96*1.405564px) 0 0 calc(40*1.405564px);
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    main.who-we-are section.fv .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.who-we-are section.fv .page-nav-wrapper {
        padding: 0 0 calc(40*1.405564px) calc(40*1.405564px)
    }

    main.who-we-are section.fv .page-nav-wrapper li+li {
        margin-top: calc(15*1.405564px)
    }

    main.who-we-are section.fv .page-nav-wrapper a {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px)
    }

    main.who-we-are section.fv .page-nav-wrapper .i {
        width: calc(18*1.405564px);
        height: calc(18*1.405564px);
        margin-right: calc(10*1.405564px)
    }
}

main.who-we-are section.statement {
    border-top: 1px dashed #000
}

main.who-we-are section.statement .container {
    padding: calc(100*.266667vw) calc(20*.266667vw) 0 calc(20*.266667vw)
}

main.who-we-are section.statement .copy {
    width: calc(335*.266667vw);
    height: calc(171*.266667vw);
    margin: 0 auto;
    position: relative
}

main.who-we-are section.statement .copy .c {
    position: absolute;
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(45*.266667vw);
    white-space: nowrap
}

main.who-we-are section.statement .copy .c.c1 {
    top: 0;
    left: 0
}

main.who-we-are section.statement .copy .c.c2 {
    left: calc(51*.266667vw);
    top: calc(45*.266667vw)
}

main.who-we-are section.statement .copy .c.c3 {
    right: 0;
    top: calc(45*.266667vw)
}

main.who-we-are section.statement .copy .c.c4 {
    line-height: calc(36*.266667vw);
    color: green;
    left: calc(98*.266667vw);
    top: calc(90*.266667vw)
}

main.who-we-are section.statement .copy .c.c4.blink {
    -webkit-animation-name: text-blink;
    animation-name: text-blink;
    -webkit-animation-duration: .3s;
    animation-duration: .3s
}

main.who-we-are section.statement .copy .c.c5 {
    top: calc(126*.266667vw);
    left: calc(0*.266667vw)
}

main.who-we-are section.statement .copy .c.c6 {
    top: calc(126*.266667vw);
    left: calc(136*.266667vw)
}

main.who-we-are section.statement p {
    padding: calc(40*.266667vw) 0 0 calc(48*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.statement .container {
        padding:calc(103*.073206vw) calc(40*.073206vw) 0 calc(40*.073206vw)
    }

    main.who-we-are section.statement .copy {
        width: calc(426*.073206vw);
        height: calc(300*.073206vw);
        margin: 0
    }

    main.who-we-are section.statement .copy .c {
        font-size: calc(56 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(56*.073206vw)
    }

    main.who-we-are section.statement .copy .c.c2 {
        left: calc(128*.073206vw);
        top: calc(63*.073206vw)
    }

    main.who-we-are section.statement .copy .c.c3 {
        top: calc(63*.073206vw)
    }

    main.who-we-are section.statement .copy .c.c4 {
        line-height: calc(56*.073206vw);
        left: calc(198*.073206vw);
        top: calc(122*.073206vw)
    }

    main.who-we-are section.statement .copy .c.c5 {
        top: calc(183*.073206vw);
        left: 0
    }

    main.who-we-are section.statement .copy .c.c6 {
        top: calc(244*.073206vw);
        left: calc(104*.073206vw)
    }

    main.who-we-are section.statement p {
        padding: calc(43*.073206vw) 0 0 calc(432*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.statement .container {
        width:1920px;
        padding: calc(103*1.405564px) calc(40*1.405564px) 0 calc(40*1.405564px)
    }

    main.who-we-are section.statement .copy {
        width: calc(426*1.405564px);
        height: calc(300*1.405564px);
        margin: 0
    }

    main.who-we-are section.statement .copy .c {
        font-size: calc(56 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(56*1.405564px)
    }

    main.who-we-are section.statement .copy .c.c2 {
        left: calc(128*1.405564px);
        top: calc(63*1.405564px)
    }

    main.who-we-are section.statement .copy .c.c3 {
        top: calc(63*1.405564px)
    }

    main.who-we-are section.statement .copy .c.c4 {
        line-height: calc(56*1.405564px);
        left: calc(198*1.405564px);
        top: calc(122*1.405564px)
    }

    main.who-we-are section.statement .copy .c.c5 {
        top: calc(183*1.405564px)
    }

    main.who-we-are section.statement .copy .c.c6 {
        top: calc(244*1.405564px);
        left: calc(104*1.405564px)
    }

    main.who-we-are section.statement p {
        padding: calc(43*1.405564px) 0 0 calc(432*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.who-we-are section.member {
    padding-top: calc(150*.266667vw)
}

main.who-we-are section.member .container {
    padding: 0 calc(20*.266667vw)
}

main.who-we-are section.member .title-wrapper h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.who-we-are section.member .title-wrapper p {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw);
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw)
}

main.who-we-are section.member .members li {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw);
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw)
}

main.who-we-are section.member .members li .img {
    display: block;
    width: calc(284.05*.266667vw)
}

main.who-we-are section.member .members li .name {
    padding-top: calc(25*.266667vw)
}

main.who-we-are section.member .members li p {
    display: none
}

main.who-we-are section.member .members li .launch-profile {
    padding-top: calc(15*.266667vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw);
    color: blue
}

main.who-we-are section.member .members li .launch-profile .i {
    width: calc(14*.266667vw);
    height: calc(14*.266667vw);
    margin-right: calc(8*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.member {
        padding-top:calc(207*.073206vw)
    }

    main.who-we-are section.member .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.who-we-are section.member .title-wrapper {
        width: calc(432*.073206vw);
        position: sticky;
        top: calc(100*.073206vw)
    }

    main.who-we-are section.member .title-wrapper h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        height: calc(53*.073206vw)
    }

    main.who-we-are section.member .title-wrapper p {
        font-size: calc(15 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw);
        width: calc(206*.073206vw);
        padding: calc(308*.073206vw) 0 0 0
    }

    main.who-we-are section.member .members {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.who-we-are section.member .members li {
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw);
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    main.who-we-are section.member .members li .img {
        width: calc(314*.073206vw);
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    main.who-we-are section.member .members li .content-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding-left: calc(60*.073206vw)
    }

    main.who-we-are section.member .members li .name {
        padding-top: 0
    }

    main.who-we-are section.member .members li .launch-profile {
        padding-top: calc(30*.073206vw);
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw)
    }

    main.who-we-are section.member .members li .launch-profile .i {
        width: calc(13*.073206vw);
        height: calc(13*.073206vw);
        margin-right: calc(10*.073206vw)
    }

    main.who-we-are section.member .members li .launch-profile:hover {
        -webkit-text-decoration: line-through 2px solid blue;
        text-decoration: line-through 2px solid blue
    }

    main.who-we-are section.member .members li+li {
        margin-top: calc(40*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.member {
        padding-top:calc(207*1.405564px)
    }

    main.who-we-are section.member .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.who-we-are section.member .title-wrapper {
        width: calc(432*1.405564px);
        top: calc(100*1.405564px)
    }

    main.who-we-are section.member .title-wrapper h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        height: calc(53*1.405564px)
    }

    main.who-we-are section.member .title-wrapper p {
        font-size: calc(15 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px);
        width: calc(206*1.405564px);
        padding: calc(308*1.405564px) 0 0 0
    }

    main.who-we-are section.member .members {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.who-we-are section.member .members li {
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px)
    }

    main.who-we-are section.member .members li .img {
        width: calc(314*1.405564px)
    }

    main.who-we-are section.member .members li .content-wrapper {
        padding-left: calc(60*1.405564px)
    }

    main.who-we-are section.member .members li .launch-profile {
        padding-top: calc(30*1.405564px);
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px)
    }

    main.who-we-are section.member .members li .launch-profile .i {
        width: calc(13*1.405564px);
        height: calc(13*1.405564px);
        margin-right: calc(10*1.405564px)
    }

    main.who-we-are section.member .members li+li {
        margin-top: calc(40*1.405564px)
    }
}

main.who-we-are section.studio {
    padding-top: calc(150*.266667vw)
}

main.who-we-are section.studio .container {
    padding: 0 calc(20*.266667vw)
}

main.who-we-are section.studio .title-wrapper h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.who-we-are section.studio .title-wrapper p {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw);
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw)
}

main.who-we-are section.studio .photos {
    padding: calc(50*.266667vw) 0 0 calc(51*.266667vw)
}

main.who-we-are section.studio .photos img {
    display: block;
    margin: 0 0 0 auto;
    width: 305px;
    height: 170px;
    -o-object-fit: contain;
    object-fit: contain
}

main.who-we-are section.studio .photos img+img {
    margin-top: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.studio {
        padding-top:calc(200*.073206vw)
    }

    main.who-we-are section.studio .container {
        padding: 0 0 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.who-we-are section.studio .title-wrapper {
        position: sticky;
        top: calc(100*.073206vw);
        width: calc(432*.073206vw)
    }

    main.who-we-are section.studio .title-wrapper h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        height: calc(106*.073206vw)
    }

    main.who-we-are section.studio .title-wrapper p {
        font-size: calc(15 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw);
        width: calc(206*.073206vw);
        padding: calc(308*.073206vw) 0 0 0
    }

    main.who-we-are section.studio .photos {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 0
    }

    main.who-we-are section.studio .photos img {
        width: calc(894*.073206vw);
        height: calc(503*.073206vw)
    }

    main.who-we-are section.studio .photos img+img {
        margin-top: calc(45*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.studio {
        padding-top:calc(200*1.405564px)
    }

    main.who-we-are section.studio .container {
        padding: 0 0 0 calc(40*1.405564px);
        width: 1920px
    }

    main.who-we-are section.studio .title-wrapper {
        top: calc(100*1.405564px);
        width: calc(432*1.405564px)
    }

    main.who-we-are section.studio .title-wrapper h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        height: calc(106*1.405564px)
    }

    main.who-we-are section.studio .title-wrapper p {
        font-size: calc(15 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px);
        width: calc(206*1.405564px);
        padding: calc(308*1.405564px) 0 0 0
    }

    main.who-we-are section.studio .photos img {
        width: calc(894*1.405564px);
        height: calc(503*1.405564px)
    }

    main.who-we-are section.studio .photos img+img {
        margin-top: calc(45*1.405564px)
    }
}

main.who-we-are section.company {
    padding-top: calc(150*.266667vw)
}

main.who-we-are section.company .container {
    padding: 0 calc(20*.266667vw)
}

main.who-we-are section.company h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.who-we-are section.company .info {
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw)
}

main.who-we-are section.company .info li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

main.who-we-are section.company .info li .label {
    width: calc(92*.266667vw)
}

main.who-we-are section.company .info li .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

main.who-we-are section.company .info li+li {
    margin-top: calc(20*.266667vw)
}

main.who-we-are section.company .info li a {
    margin-top: calc(10*.266667vw);
    line-height: calc(16*.266667vw);
    color: blue;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

main.who-we-are section.company .info li a .i {
    display: block;
    width: calc(8*.266667vw);
    height: calc(8*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: blue;
    margin-right: calc(7*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.company {
        padding-top:calc(200*.073206vw)
    }

    main.who-we-are section.company .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.who-we-are section.company h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        height: calc(106*.073206vw)
    }

    main.who-we-are section.company .title-wrapper {
        position: sticky;
        top: calc(100*.073206vw);
        width: calc(432*.073206vw)
    }

    main.who-we-are section.company .info {
        padding: 0
    }

    main.who-we-are section.company .info li {
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.who-we-are section.company .info li .label {
        width: calc(216*.073206vw)
    }

    main.who-we-are section.company .info li+li {
        margin-top: calc(30*.073206vw)
    }

    main.who-we-are section.company .info li a {
        margin-top: 0;
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(30*.073206vw)
    }

    main.who-we-are section.company .info li a:hover {
        -webkit-text-decoration: line-through 2px solid blue;
        text-decoration: line-through 2px solid blue
    }

    main.who-we-are section.company .info li a .i {
        width: calc(12*.073206vw);
        height: calc(12*.073206vw);
        margin-right: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.company {
        padding-top:calc(200*1.405564px)
    }

    main.who-we-are section.company .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.who-we-are section.company h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        height: calc(106*1.405564px)
    }

    main.who-we-are section.company .title-wrapper {
        top: calc(100*1.405564px);
        width: calc(432*1.405564px)
    }

    main.who-we-are section.company .info li {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.who-we-are section.company .info li .label {
        width: calc(216*1.405564px)
    }

    main.who-we-are section.company .info li+li {
        margin-top: calc(30*1.405564px)
    }

    main.who-we-are section.company .info li a {
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(wd*.073206vw)
    }

    main.who-we-are section.company .info li a .i {
        width: calc(12*1.405564px);
        height: calc(12*1.405564px);
        margin-right: calc(10*1.405564px)
    }
}

main.who-we-are section.request {
    padding-top: calc(150*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.request {
        padding-top:calc(200*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.request {
        padding-top:calc(200*1.405564px)
    }
}

main.who-we-are section.nav .container {
    padding: calc(100*.266667vw) 0 calc(150*.266667vw) calc(70*.266667vw)
}

@media screen and (min-width: 980px) {
    main.who-we-are section.nav .container {
        padding:calc(150*.073206vw) 0 calc(200*.073206vw) calc(472*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.who-we-are section.nav .container {
        padding:calc(150*1.405564px) 0 calc(200*1.405564px) calc(472*1.405564px)
    }
}

main.news section.fv .container {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@supports(-webkit-touch-callout: none) {
    main.news section.fv .container {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main.news section.fv .motion-text {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: calc(116*.266667vw) 0 0 calc(20*.266667vw);
    font-size: calc(76 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

main.news section.fv .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(60*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.news section.fv .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.news section.fv p {
    padding: 0 0 calc(30*.266667vw) calc(20*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main.news section.fv .motion-text {
        -webkit-box-sizing:content-box;
        box-sizing: content-box;
        padding: calc(103*.073206vw) 0 0 calc(40*.073206vw);
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    main.news section.fv .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.news section.fv p {
        padding: 0 0 calc(55*.073206vw) calc(40*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.news section.fv .container {
        width:1920px
    }

    main.news section.fv .motion-text {
        -webkit-box-sizing: content-box;
        box-sizing: content-box;
        padding: calc(103*1.405564px) 0 0 calc(40*1.405564px);
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    main.news section.fv .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.news section.fv p {
        padding: 0 0 calc(55*1.405564px) calc(40*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.what-we-do section.fv .container {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@supports(-webkit-touch-callout: none) {
    main.what-we-do section.fv .container {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main.what-we-do section.fv .motion-text {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: calc(72*.266667vw) 0 0 calc(20*.266667vw);
    font-size: calc(76 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

main.what-we-do section.fv .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(60*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.what-we-do section.fv .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.what-we-do section.fv .page-nav-wrapper {
    padding: 0 0 calc(30*.266667vw) calc(20*.266667vw)
}

main.what-we-do section.fv .page-nav-wrapper li+li {
    margin-top: calc(7*.266667vw)
}

main.what-we-do section.fv .page-nav-wrapper a {
    color: #1f1f1d;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    white-space: nowrap
}

main.what-we-do section.fv .page-nav-wrapper .i {
    display: block;
    width: calc(16*.266667vw);
    height: calc(16*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: #1f1f1d;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-right: calc(30*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.fv .motion-text {
        padding:calc(103*.073206vw) 0 0 calc(40*.073206vw);
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    main.what-we-do section.fv .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.what-we-do section.fv .page-nav-wrapper {
        padding: 0 0 calc(40*.073206vw) calc(40*.073206vw)
    }

    main.what-we-do section.fv .page-nav-wrapper li+li {
        margin-top: calc(15*.073206vw)
    }

    main.what-we-do section.fv .page-nav-wrapper a {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw)
    }

    main.what-we-do section.fv .page-nav-wrapper a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main.what-we-do section.fv .page-nav-wrapper .i {
        width: calc(18*.073206vw);
        height: calc(18*.073206vw);
        margin-right: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.fv .motion-text {
        padding:calc(103*1.405564px) 0 0 calc(40*1.405564px);
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    main.what-we-do section.fv .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.what-we-do section.fv .page-nav-wrapper {
        padding: 0 0 calc(40*1.405564px) calc(40*1.405564px)
    }

    main.what-we-do section.fv .page-nav-wrapper li+li {
        margin-top: calc(15*1.405564px)
    }

    main.what-we-do section.fv .page-nav-wrapper a {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px)
    }

    main.what-we-do section.fv .page-nav-wrapper .i {
        width: calc(18*1.405564px);
        height: calc(18*1.405564px);
        margin-right: calc(10*1.405564px)
    }
}

main.what-we-do section.design {
    border-top: 1px dashed #000;
    padding-top: calc(100*.266667vw)
}

main.what-we-do section.design .container {
    padding: 0 calc(20*.266667vw)
}

main.what-we-do section.design h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(108*.266667vw)
}

main.what-we-do section.design .content-wrapper {
    padding-left: calc(50*.266667vw)
}

main.what-we-do section.design p {
    padding: calc(40*.266667vw) 0 0 0;
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

main.what-we-do section.design .anim {
    margin-top: calc(60*.266667vw);
    width: calc(284*.266667vw);
    height: calc(326*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.design {
        padding-top:calc(150*.073206vw)
    }

    main.what-we-do section.design .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.what-we-do section.design h2 {
        width: calc(432*.073206vw);
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        position: sticky;
        top: calc(100*.073206vw);
        height: calc(159*.073206vw)
    }

    main.what-we-do section.design .content-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    main.what-we-do section.design p {
        padding: calc(50*.073206vw) 0 0 0;
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.what-we-do section.design .anim {
        margin-top: 0;
        width: calc(611*.073206vw);
        height: calc(620*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.design {
        padding-top:calc(150*1.405564px)
    }

    main.what-we-do section.design .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.what-we-do section.design h2 {
        width: calc(432*1.405564px);
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        top: calc(100*1.405564px);
        height: calc(159*1.405564px)
    }

    main.what-we-do section.design p {
        padding: calc(50*1.405564px) 0 0 0;
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.what-we-do section.design .anim {
        width: calc(611*1.405564px);
        height: calc(620*1.405564px)
    }
}

main.what-we-do section.deliver {
    padding-top: calc(150*.266667vw)
}

main.what-we-do section.deliver .container {
    padding: 0 calc(20*.266667vw) 0 calc(20*.266667vw)
}

main.what-we-do section.deliver h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.what-we-do section.deliver p {
    padding-top: calc(50*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

main.what-we-do section.deliver p.top {
    padding-left: calc(50*.266667vw)
}

main.what-we-do section.deliver .services {
    padding-left: calc(50*.266667vw)
}

main.what-we-do section.deliver .services li {
    margin-top: calc(100*.266667vw)
}

main.what-we-do section.deliver .services li h3 {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw);
    letter-spacing: .05em
}

main.what-we-do section.deliver .services li p {
    padding-top: calc(25*.266667vw)
}

main.what-we-do section.deliver .services li .menus {
    padding-top: calc(5*.266667vw);
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(23*.266667vw);
    letter-spacing: .05em;
    color: rgba(31,31,29,.3)
}

main.what-we-do section.deliver .services li .view {
    padding-top: calc(10*.266667vw)
}

main.what-we-do section.deliver .services li .view a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(23*.266667vw);
    color: blue
}

main.what-we-do section.deliver .services li .view .i {
    width: calc(10*.266667vw);
    height: calc(10*.266667vw);
    fill: rgba(0,0,0,0);
    margin-right: calc(8*.266667vw);
    stroke: blue
}

@media screen and (min-width: 980px) {
    main.what-we-do section.deliver {
        padding-top:calc(200*.073206vw)
    }

    main.what-we-do section.deliver .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.what-we-do section.deliver h2 {
        width: calc(432*.073206vw);
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        position: sticky;
        top: calc(100*.073206vw);
        height: calc(159*.073206vw)
    }

    main.what-we-do section.deliver .content-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.what-we-do section.deliver p {
        padding: 0 0 0 calc(321*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.what-we-do section.deliver p.top {
        padding-left: calc(321*.073206vw)
    }

    main.what-we-do section.deliver .services {
        padding-left: 0
    }

    main.what-we-do section.deliver .services li {
        margin-top: calc(100*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.what-we-do section.deliver .services li h3 {
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw);
        width: calc(321*.073206vw)
    }

    main.what-we-do section.deliver .services li .detail-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.what-we-do section.deliver .services li p {
        padding: 0
    }

    main.what-we-do section.deliver .services li .menus {
        padding-top: calc(5*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*.073206vw)
    }

    main.what-we-do section.deliver .services li .view {
        padding-top: calc(20*.073206vw)
    }

    main.what-we-do section.deliver .services li .view a {
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*.073206vw)
    }

    main.what-we-do section.deliver .services li .view a:hover {
        -webkit-text-decoration: line-through 2px solid;
        text-decoration: line-through 2px solid
    }

    main.what-we-do section.deliver .services li .view .i {
        width: calc(12*.073206vw);
        height: calc(12*.073206vw);
        margin-right: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.deliver {
        padding-top:calc(200*1.405564px)
    }

    main.what-we-do section.deliver .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.what-we-do section.deliver h2 {
        width: calc(432*1.405564px);
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        top: calc(100*1.405564px);
        height: calc(159*1.405564px)
    }

    main.what-we-do section.deliver p {
        padding: 0 0 0 calc(321*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.what-we-do section.deliver .services {
        padding-left: 0
    }

    main.what-we-do section.deliver .services li {
        margin-top: calc(100*1.405564px)
    }

    main.what-we-do section.deliver .services li h3 {
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px);
        width: calc(321*1.405564px)
    }

    main.what-we-do section.deliver .services li .menus {
        padding-top: calc(5*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*1.405564px)
    }

    main.what-we-do section.deliver .services li .view {
        padding-top: calc(20*1.405564px)
    }

    main.what-we-do section.deliver .services li .view a {
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(30*1.405564px)
    }

    main.what-we-do section.deliver .services li .view .i {
        width: calc(12*1.405564px);
        height: calc(12*1.405564px);
        margin-right: calc(10*1.405564px)
    }
}

main.what-we-do section.capability {
    padding-top: calc(150*.266667vw)
}

main.what-we-do section.capability .container {
    padding: 0 calc(20*.266667vw) 0 calc(20*.266667vw)
}

main.what-we-do section.capability h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.what-we-do section.capability .capabilities {
    padding-left: calc(50*.266667vw);
    margin-top: calc(100*.266667vw)
}

main.what-we-do section.capability .capabilities li+li {
    margin-top: calc(100*.266667vw)
}

main.what-we-do section.capability .capabilities li h3 {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw);
    letter-spacing: .05em
}

main.what-we-do section.capability .capabilities li p {
    padding-top: calc(15*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

main.what-we-do section.capability .capabilities li .case {
    padding-top: calc(15*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(26*.266667vw);
    color: #878683
}

main.what-we-do section.capability .capabilities li .case li+li {
    margin-top: calc(10*.266667vw)
}

main.what-we-do section.capability .capabilities li .case-ttl {
    font-size: calc(16 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw);
    padding-top: calc(20*.266667vw);
    color: #878683
}

main.what-we-do section.capability .capabilities li .subject {
    padding-top: calc(25*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw);
    text-decoration: underline
}

@media screen and (min-width: 980px) {
    main.what-we-do section.capability {
        padding-top:calc(200*.073206vw)
    }

    main.what-we-do section.capability .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.what-we-do section.capability h2 {
        width: calc(432*.073206vw);
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        position: sticky;
        top: calc(100*.073206vw);
        height: calc(159*.073206vw)
    }

    main.what-we-do section.capability .capabilities {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding-left: 0;
        margin-top: 0
    }

    main.what-we-do section.capability .capabilities li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    main.what-we-do section.capability .capabilities li+li {
        margin-top: calc(100*.073206vw)
    }

    main.what-we-do section.capability .capabilities li h3 {
        width: calc(322*.073206vw);
        font-size: calc(26 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*.073206vw)
    }

    main.what-we-do section.capability .capabilities li .detail-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.what-we-do section.capability .capabilities li p {
        padding-top: calc(32*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.what-we-do section.capability .capabilities li .case {
        padding-top: calc(10*.073206vw);
        font-size: calc(14 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(26*.073206vw)
    }

    main.what-we-do section.capability .capabilities li .case li {
        display: block
    }

    main.what-we-do section.capability .capabilities li .case li+li {
        margin-top: 0
    }

    main.what-we-do section.capability .capabilities li .case-ttl {
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(30*.073206vw);
        padding-top: calc(30*.073206vw)
    }

    main.what-we-do section.capability .capabilities li .subject {
        padding-top: 0;
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.capability {
        padding-top:calc(200*1.405564px)
    }

    main.what-we-do section.capability .container {
        padding: 0 calc(40*1.405564px)
    }

    main.what-we-do section.capability h2 {
        width: calc(432*1.405564px);
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        top: calc(100*1.405564px);
        height: calc(159*1.405564px)
    }

    main.what-we-do section.capability .capabilities li+li {
        margin-top: calc(100*1.405564px)
    }

    main.what-we-do section.capability .capabilities li h3 {
        width: calc(322*1.405564px);
        font-size: calc(26 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(32*1.405564px)
    }

    main.what-we-do section.capability .capabilities li p {
        padding-top: calc(32*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.what-we-do section.capability .capabilities li .case {
        padding-top: calc(10*1.405564px);
        font-size: calc(14 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(26*1.405564px)
    }

    main.what-we-do section.capability .capabilities li .case-ttl {
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(30*1.405564px);
        padding-top: calc(30*1.405564px)
    }

    main.what-we-do section.capability .capabilities li .subject {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.what-we-do section.client {
    padding-top: calc(150*.266667vw)
}

main.what-we-do section.client .container {
    padding: 0 calc(20*.266667vw)
}

main.what-we-do section.client h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(36*.266667vw);
    height: calc(36*.266667vw)
}

main.what-we-do section.client .clients {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: calc(50*.266667vw) 0 0 calc(16*.266667vw)
}

main.what-we-do section.client .clients img {
    display: block;
    width: calc(72*.266667vw);
    height: calc(50*.266667vw);
    -o-object-fit: contain;
    object-fit: contain;
    margin-left: calc(34*.266667vw)
}

main.what-we-do section.client .clients img:nth-child(n+4) {
    margin-top: calc(34*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.client {
        padding-top:calc(200*.073206vw)
    }

    main.what-we-do section.client .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.what-we-do section.client h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*.073206vw);
        line-height: calc(53*.073206vw);
        position: sticky;
        top: calc(100*.073206vw);
        width: calc(361*.073206vw);
        height: calc(106*.073206vw)
    }

    main.what-we-do section.client .clients {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 0
    }

    main.what-we-do section.client .clients img {
        width: calc(161*.073206vw);
        height: calc(112*.073206vw);
        margin-left: calc(66*.073206vw)
    }

    main.what-we-do section.client .clients img:nth-child(n+4) {
        margin-top: 0
    }

    main.what-we-do section.client .clients img:nth-child(n+5) {
        margin-top: calc(70*.073206vw) !important
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.client {
        padding-top:calc(200*1.405564px)
    }

    main.what-we-do section.client .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.what-we-do section.client h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(53*1.405564px);
        line-height: calc(53*1.405564px);
        top: calc(100*1.405564px);
        width: calc(361*1.405564px);
        height: calc(106*1.405564px)
    }

    main.what-we-do section.client .clients img {
        width: calc(161*1.405564px);
        height: calc(112*1.405564px);
        margin-left: calc(66*1.405564px)
    }

    main.what-we-do section.client .clients img:nth-child(n+5) {
        margin-top: calc(70*1.405564px) !important
    }
}

main.what-we-do section.join-us {
    padding-top: calc(150*.266667vw)
}

main.what-we-do section.join-us .title.f-g {
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.join-us {
        padding-top:calc(200*.073206vw)
    }

    main.what-we-do section.join-us .title.f-g {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(46*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.join-us {
        padding-top:calc(200*1.405564px)
    }

    main.what-we-do section.join-us .title.f-g {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(46*1.405564px)
    }
}

main.what-we-do section.request {
    padding-top: calc(100*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.request {
        padding-top:calc(150*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.request {
        padding-top:calc(150*1.405564px)
    }
}

main.what-we-do section.nav .container {
    padding: calc(100*.266667vw) 0 calc(150*.266667vw) calc(70*.266667vw)
}

@media screen and (min-width: 980px) {
    main.what-we-do section.nav .container {
        padding:calc(150*.073206vw) 0 calc(200*.073206vw) calc(472*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.what-we-do section.nav .container {
        padding:calc(150*1.405564px) 0 calc(200*1.405564px) calc(472*1.405564px)
    }
}

main.our-works section.fv .container {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@supports(-webkit-touch-callout: none) {
    main.our-works section.fv .container {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main.our-works section.fv .motion-text {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: calc(72*.266667vw) 0 0 calc(20*.266667vw);
    font-size: calc(76 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

main.our-works section.fv .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(60*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.our-works section.fv .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.our-works section.fv .filters {
    top: calc(-170*.266667vw);
    left: 0;
    padding: 0 0 calc(30*.266667vw) calc(20*.266667vw)
}

main.our-works section.fv .filters li+li {
    margin-top: calc(7*.266667vw)
}

main.our-works section.fv .filters a {
    color: #1f1f1d;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    white-space: nowrap;
    height: calc(30*.266667vw)
}

main.our-works section.fv .filters a.active {
    color: blue
}

main.our-works section.fv .filters a.active .i {
    visibility: visible
}

main.our-works section.fv .filters .i {
    visibility: hidden;
    width: calc(10*.266667vw);
    height: calc(10*.266667vw);
    margin-right: calc(40*.266667vw)
}

@media screen and (min-width: 980px) {
    main.our-works section.fv .motion-text {
        padding:calc(96*.073206vw) 0 0 calc(40*.073206vw);
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    main.our-works section.fv .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.our-works section.fv .filters {
        padding: 0 0 calc(40*.073206vw) calc(40*.073206vw);
        margin-top: calc(-320*.073206vw);
        width: calc(430*.073206vw)
    }

    main.our-works section.fv .filters li+li {
        margin-top: calc(15*.073206vw)
    }

    main.our-works section.fv .filters a {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw);
        height: calc(26*.073206vw)
    }

    main.our-works section.fv .filters a.active:hover {
        text-decoration: none
    }

    main.our-works section.fv .filters a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main.our-works section.fv .filters .i {
        width: calc(10*.073206vw);
        height: calc(10*.073206vw);
        margin-right: calc(23*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.our-works section.fv .container {
        width:1920px
    }

    main.our-works section.fv .motion-text {
        padding: calc(96*1.405564px) 0 0 calc(40*1.405564px);
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    main.our-works section.fv .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.our-works section.fv .filters {
        top: calc(100*1.405564px);
        margin-top: calc(-300*1.405564px);
        padding: 0 0 calc(40*1.405564px) calc(40*1.405564px);
        width: calc(432*1.405564px)
    }

    main.our-works section.fv .filters li+li {
        margin-top: calc(15*1.405564px)
    }

    main.our-works section.fv .filters a {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px);
        height: calc(26*1.405564px)
    }

    main.our-works section.fv .filters .i {
        width: calc(10*1.405564px);
        height: calc(10*1.405564px);
        margin-right: calc(23*1.405564px)
    }
}

main.our-works section.works {
    border-top: 1px dashed #000
}

main.our-works section.works .container {
    position: relative;
    padding: calc(100*.266667vw) calc(20*.266667vw) 0 calc(70*.266667vw)
}

main.our-works section.works .filters {
    display: none;
    top: calc(-170*.266667vw);
    left: 0;
    padding: 0 0 0 calc(20*.266667vw)
}

main.our-works section.works .filters li+li {
    margin-top: calc(7*.266667vw)
}

main.our-works section.works .filters a {
    color: #1f1f1d;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(30 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    white-space: nowrap;
    height: calc(30*.266667vw)
}

main.our-works section.works .filters a.active {
    color: blue
}

main.our-works section.works .filters a.active .i {
    visibility: visible
}

main.our-works section.works .filters .i {
    visibility: hidden;
    width: calc(10*.266667vw);
    height: calc(10*.266667vw);
    margin-right: calc(40*.266667vw)
}

@media screen and (min-width: 980px) {
    main.our-works section.works .container {
        padding:calc(100*.073206vw) calc(40*.073206vw) 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.our-works section.works .filters {
        display: block;
        position: sticky;
        top: calc(100*.073206vw);
        left: 0;
        padding: 0;
        width: calc(430*.073206vw);
        opacity: 0
    }

    main.our-works section.works .filters.active {
        opacity: 1
    }

    main.our-works section.works .filters li+li {
        margin-top: calc(15*.073206vw)
    }

    main.our-works section.works .filters a {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw);
        height: calc(26*.073206vw)
    }

    main.our-works section.works .filters a.active:hover {
        text-decoration: none
    }

    main.our-works section.works .filters a:hover {
        -webkit-text-decoration: line-through 2px solid #1f1f1d;
        text-decoration: line-through 2px solid #1f1f1d
    }

    main.our-works section.works .filters .i {
        width: calc(10*.073206vw);
        height: calc(10*.073206vw);
        margin-right: calc(23*.073206vw)
    }

    main.our-works section.works .works {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}

@media screen and (min-width: 1920px) {
    main.our-works section.works .container {
        padding:calc(100*1.405564px) calc(40*1.405564px) 0 calc(40*1.405564px);
        width: 1920px
    }

    main.our-works section.works .filters {
        top: calc(100*1.405564px);
        width: calc(432*1.405564px)
    }

    main.our-works section.works .filters li+li {
        margin-top: calc(15*1.405564px)
    }

    main.our-works section.works .filters a {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px);
        height: calc(26*1.405564px)
    }

    main.our-works section.works .filters .i {
        width: calc(10*1.405564px);
        height: calc(10*1.405564px);
        margin-right: calc(23*1.405564px)
    }
}

main.our-works section.nav .container {
    padding: calc(150*.266667vw) 0 calc(150*.266667vw) calc(70*.266667vw)
}

@media screen and (min-width: 980px) {
    main.our-works section.nav .container {
        padding:calc(200*.073206vw) 0 calc(200*.073206vw) calc(472*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.our-works section.nav .container {
        padding:calc(200*1.405564px) 0 calc(200*1.405564px) calc(472*1.405564px)
    }
}

main.contact {
    width: 100%
}

main.contact section.fv .container {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@supports(-webkit-touch-callout: none) {
    main.contact section.fv .container {
        height: -webkit-fill-available;
        height: 100dvh
    }
}

main.contact section.fv .motion-text {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: calc(116*.266667vw) 0 0 calc(20*.266667vw);
    font-size: calc(76 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(68*.266667vw)
}

main.contact section.fv .motion-text:after {
    content: "";
    display: inline-block;
    height: calc(60*.266667vw);
    width: calc(7*.266667vw);
    border-right: 1px solid #000;
    -webkit-animation-name: blink;
    animation-name: blink;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

main.contact section.fv .motion-text.complete:after {
    -webkit-animation: none;
    animation: none;
    opacity: 0
}

main.contact section.fv p {
    padding: 0 0 calc(30*.266667vw) calc(20*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw)
}

@media screen and (min-width: 980px) {
    main.contact section.fv .motion-text {
        padding:calc(96*.073206vw) 0 0 calc(40*.073206vw);
        font-size: calc(200 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*.073206vw)
    }

    main.contact section.fv .motion-text:after {
        height: calc(179*.073206vw);
        width: calc(42*.073206vw)
    }

    main.contact section.fv p {
        padding: 0 0 calc(55*.073206vw) calc(40*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.contact section.fv .motion-text {
        padding:calc(96*1.405564px) 0 0 calc(40*1.405564px);
        font-size: calc(200 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(189*1.405564px)
    }

    main.contact section.fv .motion-text:after {
        height: calc(179*1.405564px);
        width: calc(42*1.405564px)
    }

    main.contact section.fv p {
        padding: 0 0 calc(55*1.405564px) calc(40*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.contact section.contact {
    border-top: 1px dashed #000
}

main.contact section.contact .container {
    padding: calc(77*.266667vw) calc(20*.266667vw) calc(150*.266667vw) calc(20*.266667vw)
}

main.contact section.contact .contact-form.hide {
    display: none
}

main.contact section.contact input[type=text],main.contact section.contact input[type=email],main.contact section.contact textarea {
    border: 1px solid #1f1f1d;
    width: 100%;
    font-size: calc(16 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw);
    border-radius: 0;
    outline: none
}

main.contact section.contact input[type=text],main.contact section.contact input[type=email] {
    height: calc(50*.266667vw);
    padding: 0 calc(15*.266667vw)
}

main.contact section.contact textarea {
    height: calc(143*.266667vw);
    padding: calc(13*.266667vw) calc(15*.266667vw)
}

main.contact section.contact .control-group {
    margin-bottom: calc(30*.266667vw)
}

main.contact section.contact .control-group .label {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw);
    margin-bottom: calc(5*.266667vw)
}

main.contact section.contact .btn-wrapper {
    padding-top: calc(10*.266667vw)
}

main.contact section.contact .btn-wrapper .btn {
    background-color: #1f1f1d;
    width: calc(160*.266667vw);
    height: calc(50*.266667vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: calc(13 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    color: #efeeea
}

main.contact section.contact .column-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

main.contact section.contact .column-wrapper .control-group {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

main.contact section.contact .column-wrapper .control-group+.control-group {
    margin-left: calc(15*.266667vw)
}

main.contact section.contact p {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw);
    height: calc(335*.266667vw);
    display: none
}

main.contact section.contact p a {
    color: blue;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

main.contact section.contact p .i {
    display: block;
    width: calc(12*.266667vw);
    height: calc(12*.266667vw);
    margin-right: calc(10*.266667vw);
    fill: rgba(0,0,0,0);
    stroke: blue
}

main.contact section.contact p.active {
    display: block
}

@media screen and (min-width: 980px) {
    main.contact section.contact .container {
        padding:calc(150*.073206vw) calc(40*.073206vw) calc(133*.073206vw) calc(473*.073206vw)
    }

    main.contact section.contact input[type=text],main.contact section.contact input[type=email],main.contact section.contact textarea {
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*.073206vw)
    }

    main.contact section.contact input[type=text],main.contact section.contact input[type=email] {
        height: calc(50*.073206vw);
        padding: 0 calc(20*.073206vw)
    }

    main.contact section.contact textarea {
        height: calc(143*.073206vw);
        padding: calc(15*.073206vw) calc(20*.073206vw)
    }

    main.contact section.contact .control-group {
        margin-bottom: calc(40*.073206vw)
    }

    main.contact section.contact .control-group .label {
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(16*.073206vw);
        margin-bottom: calc(10*.073206vw)
    }

    main.contact section.contact .btn-wrapper {
        padding-top: 0
    }

    main.contact section.contact .btn-wrapper .btn {
        width: calc(215*.073206vw);
        height: calc(50*.073206vw);
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal
    }

    main.contact section.contact .btn-wrapper .btn:hover {
        background-color: blue
    }

    main.contact section.contact .column-wrapper .control-group+.control-group {
        margin-left: calc(19*.073206vw)
    }

    main.contact section.contact p {
        font-size: calc(18 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw);
        height: calc(610.87*.073206vw)
    }

    main.contact section.contact p .i {
        width: calc(14*.073206vw);
        height: calc(14*.073206vw);
        margin-right: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.contact section.contact .container {
        padding:calc(150*1.405564px) calc(40*1.405564px) calc(133*1.405564px) calc(473*1.405564px)
    }

    main.contact section.contact input[type=text],main.contact section.contact input[type=email],main.contact section.contact textarea {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(25*1.405564px)
    }

    main.contact section.contact input[type=text],main.contact section.contact input[type=email] {
        height: calc(50*1.405564px);
        padding: 0 calc(20*1.405564px)
    }

    main.contact section.contact textarea {
        height: calc(143*1.405564px);
        padding: calc(15*1.405564px) calc(20*1.405564px)
    }

    main.contact section.contact .control-group {
        margin-bottom: calc(40*1.405564px)
    }

    main.contact section.contact .control-group .label {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(16*1.405564px);
        margin-bottom: calc(10*1.405564px)
    }

    main.contact section.contact .btn-wrapper {
        padding-top: 0
    }

    main.contact section.contact .btn-wrapper .btn {
        width: calc(215*1.405564px);
        height: calc(50*1.405564px);
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal
    }

    main.contact section.contact .column-wrapper .control-group+.control-group {
        margin-left: calc(19*1.405564px)
    }

    main.contact section.contact p {
        font-size: calc(18 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px);
        height: calc(610.87*1.405564px)
    }

    main.contact section.contact p .i {
        width: calc(14*1.405564px);
        height: calc(14*1.405564px);
        margin-right: calc(10*1.405564px)
    }
}

main.work .exp-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: calc(-10*.266667vw)
}

main.work .exp-items li {
    width: calc(127*.266667vw);
    height: calc(36*.266667vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 2px solid #000;
    font-size: calc(12 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1;
    letter-spacing: .05em;
    text-align: center;
    margin-top: calc(10*.266667vw);
    margin-left: calc(10*.266667vw)
}

main.work .exp-items li.off {
    opacity: .2
}

@media screen and (min-width: 980px) {
    main.work .exp-items {
        margin-left:calc(-10*.073206vw)
    }

    main.work .exp-items li {
        width: calc(206*.073206vw);
        height: calc(55*.073206vw);
        border: 3px solid #000;
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(22*.073206vw);
        margin-top: 0;
        margin-left: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.work .exp-items {
        margin-left:calc(-10*1.405564px)
    }

    main.work .exp-items li {
        width: calc(206*1.405564px);
        height: calc(55*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(22*1.405564px);
        margin-left: calc(10*1.405564px)
    }
}

main.work section.kv .container {
    padding: calc(62*.266667vw) calc(20*.266667vw) 0 calc(20*.266667vw)
}

main.work section.kv .sp-img {
    display: block;
    width: 100%;
    height: calc(446*.266667vw);
    -o-object-fit: cover;
    object-fit: cover
}

main.work section.kv .pc-img {
    display: none
}

@media screen and (min-width: 980px) {
    main.work section.kv .container {
        padding:calc(96*.073206vw) calc(40*.073206vw) 0 calc(40*.073206vw)
    }

    main.work section.kv .sp-img {
        display: none
    }

    main.work section.kv .pc-img {
        display: block;
        height: calc(723*.073206vw);
        -o-object-fit: cover;
        object-fit: cover
    }
}

@media screen and (min-width: 1920px) {
    main.work section.kv .container {
        padding:calc(96*1.405564px) calc(40*1.405564px) 0 calc(40*1.405564px);
        width: 1920px
    }

    main.work section.kv .img {
        height: calc(723*1.405564px)
    }
}

main.work section.info .container {
    padding: calc(30*.266667vw) calc(20*.266667vw) 0 calc(20*.266667vw)
}

main.work section.info .header .expertise {
    font-size: calc(12 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(13.75*.266667vw);
    color: #878683
}

main.work section.info .header h1 {
    padding: calc(10*.266667vw) 0 calc(15*.266667vw) 0
}

main.work section.info .header h1.en {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(45*.266667vw)
}

main.work section.info .header h1.ja {
    font-size: calc(36 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(45*.266667vw)
}

main.work section.info .header p {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw)
}

main.work section.info .body {
    padding: calc(120*.266667vw) 0 0 calc(50*.266667vw)
}

main.work section.info .body dl {
    padding-top: calc(30*.266667vw)
}

main.work section.info .body dl dt {
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(24*.266667vw);
    letter-spacing: .05em;
    color: rgba(31,31,29,.3)
}

main.work section.info .body dl dd {
    padding-top: calc(10*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(23*.266667vw)
}

main.work section.info .body dl dd a {
    color: #1f1f1d;
    text-decoration: underline
}

@media screen and (min-width: 980px) {
    main.work section.info .container {
        padding:calc(50*.073206vw) calc(40*.073206vw) 0 calc(40*.073206vw)
    }

    main.work section.info .header .expertise {
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(29*.073206vw);
        letter-spacing: .05em
    }

    main.work section.info .header h1 {
        padding: calc(15*.073206vw) 0
    }

    main.work section.info .header h1.en {
        font-size: calc(106 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(106*.073206vw)
    }

    main.work section.info .header h1.ja {
        font-size: calc(106 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(106*.073206vw)
    }

    main.work section.info .header p {
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.work section.info .body {
        padding: calc(100*.073206vw) 0 0 calc(432*.073206vw)
    }

    main.work section.info .body .column-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    main.work section.info .body .column-wrapper dl {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.work section.info .body dl {
        padding-top: calc(100*.073206vw)
    }

    main.work section.info .body dl dt {
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(29*.073206vw)
    }

    main.work section.info .body dl dd {
        padding-top: calc(15*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.work section.info .container {
        padding:calc(50*1.405564px) calc(40*1.405564px) 0 calc(40*1.405564px);
        width: 1920px
    }

    main.work section.info .header .expertise {
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(29*1.405564px)
    }

    main.work section.info .header h1 {
        padding: calc(15*1.405564px) 0
    }

    main.work section.info .header h1.en {
        font-size: calc(106 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(106*1.405564px)
    }

    main.work section.info .header h1.ja {
        font-size: calc(106 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(106*1.405564px)
    }

    main.work section.info .header p {
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.work section.info .body {
        padding: calc(100*1.405564px) 0 0 calc(432*1.405564px)
    }

    main.work section.info .body dl {
        padding-top: calc(100*1.405564px)
    }

    main.work section.info .body dl dt {
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(29*1.405564px)
    }

    main.work section.info .body dl dd {
        padding-top: calc(15*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.work section.content .container {
    padding: calc(150*.266667vw) 0 0 calc(71*.266667vw)
}

main.work section.content .exp-items {
    margin-bottom: calc(30*.266667vw);
    margin-top: calc(-10*.266667vw)
}

main.work section.content .content .movie {
    display: block;
    width: calc(304*.266667vw);
    height: calc(171*.266667vw)
}

main.work section.content .content .movie .cover {
    display: block;
    width: calc(304*.266667vw);
    height: calc(171*.266667vw);
    -o-object-fit: cover;
    object-fit: cover
}

main.work section.content .content .movie iframe {
    width: 100%;
    height: 100%
}

main.work section.content .content .movie+.title {
    padding-top: calc(30*.266667vw)
}

main.work section.content .content .img {
    display: block;
    width: calc(304*.266667vw)
}

main.work section.content .content .img+.title {
    padding-top: calc(30*.266667vw)
}

main.work section.content .content .title {
    padding: 0 calc(20*.266667vw) calc(30*.266667vw) 0;
    font-size: calc(26 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(36*.266667vw)
}

main.work section.content .content p {
    padding-right: calc(20*.266667vw);
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

@media screen and (min-width: 980px) {
    main.work section.content .container {
        padding:calc(150*.073206vw) 0 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    main.work section.content .exp-items {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        margin-bottom: 0;
        margin-top: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    main.work section.content .exp-items li {
        margin-top: calc(10*.073206vw)
    }

    main.work section.content .content {
        width: calc(894*.073206vw)
    }

    main.work section.content .content .movie {
        width: calc(894*.073206vw);
        height: calc(502*.073206vw)
    }

    main.work section.content .content .movie .cover {
        width: calc(894*.073206vw);
        height: calc(502*.073206vw);
        cursor: pointer
    }

    main.work section.content .content .movie+.title {
        padding-top: calc(40*.073206vw)
    }

    main.work section.content .content .img {
        width: calc(894*.073206vw)
    }

    main.work section.content .content .img+.title {
        padding-top: calc(40*.073206vw)
    }

    main.work section.content .content .title {
        padding: 0 calc(40*.073206vw) calc(45*.073206vw) 0;
        font-size: calc(36 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(50.4*.073206vw)
    }

    main.work section.content .content p {
        padding-right: calc(40*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.work section.content .container {
        padding:calc(150*1.405564px) 0 0 calc(40*1.405564px);
        width: 1920px
    }

    main.work section.content .exp-items li {
        margin-top: calc(10*1.405564px)
    }

    main.work section.content .content {
        width: calc(894*1.405564px)
    }

    main.work section.content .content .movie {
        width: calc(894*1.405564px);
        height: calc(502*1.405564px)
    }

    main.work section.content .content .movie .cover {
        width: calc(894*1.405564px);
        height: calc(502*1.405564px)
    }

    main.work section.content .content .movie+.title {
        padding-top: calc(40*1.405564px)
    }

    main.work section.content .content .img {
        width: calc(894*1.405564px)
    }

    main.work section.content .content .img+.title {
        padding-top: calc(40*1.405564px)
    }

    main.work section.content .content .title {
        padding: 0 calc(40*1.405564px) calc(45*1.405564px) 0;
        font-size: calc(36 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(50.4*1.405564px)
    }

    main.work section.content .content p {
        padding-right: calc(40*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }
}

main.work section.process .container {
    padding: calc(150*.266667vw) 0 0 calc(71*.266667vw)
}

main.work section.process .title {
    font-size: calc(24 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(32*.266667vw)
}

main.work section.process .sub-title {
    font-size: calc(14 * 0.266667vw);
    font-family: "Gothic Medium BBB",sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: calc(25*.266667vw)
}

main.work section.process .img {
    display: block;
    width: calc(283*.266667vw);
    margin-top: calc(15*.266667vw)
}

@media screen and (min-width: 980px) {
    main.work section.process .container {
        padding:calc(150*.073206vw) 0 0 calc(472*.073206vw)
    }

    main.work section.process .title {
        font-size: calc(36 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*.073206vw)
    }

    main.work section.process .sub-title {
        padding-top: calc(5*.073206vw);
        font-size: calc(20 * 0.073206vw);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*.073206vw)
    }

    main.work section.process .img {
        width: calc(854*.073206vw);
        margin-top: calc(30*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.work section.process .container {
        padding:calc(150*1.405564px) 0 0 calc(472*1.405564px);
        width: 1920px
    }

    main.work section.process .title {
        font-size: calc(36 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(26*1.405564px)
    }

    main.work section.process .sub-title {
        padding-top: calc(5*1.405564px);
        font-size: calc(20 * 1.405564px);
        font-family: "Gothic Medium BBB",sans-serif;
        font-style: normal;
        font-weight: normal;
        line-height: calc(32*1.405564px)
    }

    main.work section.process .img {
        width: calc(854*1.405564px);
        margin-top: calc(30*1.405564px)
    }
}

main.work section.expertise {
    padding-top: calc(150*.266667vw)
}

main.work section.expertise .container {
    padding: 0 calc(20*.266667vw)
}

main.work section.expertise h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1
}

main.work section.expertise .block {
    position: relative;
    padding: calc(30*.266667vw) 0 0 calc(50*.266667vw)
}

main.work section.expertise .block.story {
    padding-top: calc(50*.266667vw)
}

main.work section.expertise .block.product .title {
    color: purple
}

main.work section.expertise .block.brand .title {
    color: orange
}

main.work section.expertise .block.business .title {
    color: #0f870e
}

main.work section.expertise .block .title {
    font-size: calc(16 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(24*.266667vw);
    font-weight: 600
}

@media screen and (min-width: 980px) {
    main.work section.expertise {
        padding-top:calc(150*.073206vw)
    }

    main.work section.expertise .container {
        padding: 0 0 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.work section.expertise h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*.073206vw)
    }

    main.work section.expertise .content {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    main.work section.expertise .block-wrapper {
        padding-top: calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    main.work section.expertise .block {
        position: relative;
        padding: 0
    }

    main.work section.expertise .block .title {
        font-size: calc(20 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(22*.073206vw);
        font-weight: 600
    }

    main.work section.expertise .block.story {
        padding-top: 0
    }

    main.work section.expertise .block.product .exp-items {
        width: calc(648*.073206vw)
    }

    main.work section.expertise .block.product.wide .exp-items {
        width: calc(648*.073206vw)
    }

    main.work section.expertise .block.brand .exp-items,main.work section.expertise .block.business .exp-items {
        width: calc(216*.073206vw)
    }

    main.work section.expertise .block .exp-items {
        padding-top: calc(15*.073206vw);
        margin-top: calc(-10*.073206vw)
    }

    main.work section.expertise .block .exp-items li {
        margin-top: calc(10*.073206vw)
    }

    main.work section.expertise .block+.block {
        margin-left: calc(10*.073206vw)
    }
}

@media screen and (min-width: 1920px) {
    main.work section.expertise {
        padding-top:calc(150*1.405564px)
    }

    main.work section.expertise .container {
        padding: 0 0 0 calc(40*1.405564px)
    }

    main.work section.expertise h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*1.405564px)
    }

    main.work section.expertise .block-wrapper {
        padding-top: calc(40*1.405564px)
    }

    main.work section.expertise .block .title {
        font-size: calc(20 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(22*1.405564px);
        font-weight: 600
    }

    main.work section.expertise .block.product .exp-items {
        width: calc(648*1.405564px)
    }

    main.work section.expertise .block.product.wide .exp-items {
        width: calc(648*.073206vw)
    }

    main.work section.expertise .block.brand .exp-items,main.work section.expertise .block.business .exp-items {
        width: calc(216*1.405564px)
    }

    main.work section.expertise .block .exp-items {
        padding-top: calc(15*1.405564px);
        margin-top: calc(-10*1.405564px)
    }

    main.work section.expertise .block .exp-items li {
        margin-top: calc(10*1.405564px)
    }

    main.work section.expertise .block+.block {
        margin-left: calc(10*1.405564px)
    }
}

main.work section.credit {
    margin-top: calc(150*.266667vw)
}

main.work section.credit .container {
    padding: 0 calc(20*.266667vw)
}

main.work section.credit h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1
}

main.work section.credit dl {
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw);
    font-size: calc(20 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: calc(30*.266667vw);
    letter-spacing: .05em
}

main.work section.credit dl dt {
    color: #9e9e9e
}

main.work section.credit dl dd+dt {
    padding-top: calc(15*.266667vw)
}

@media screen and (min-width: 980px) {
    main.work section.credit {
        margin-top:calc(150*.073206vw)
    }

    main.work section.credit .container {
        padding: 0 calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.work section.credit h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*.073206vw)
    }

    main.work section.credit dl {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 0;
        margin-top: calc(-15*.073206vw);
        font-size: calc(22 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(29*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    main.work section.credit dl dt {
        width: calc(216*.073206vw)
    }

    main.work section.credit dl dd+dt {
        padding-top: 0
    }

    main.work section.credit dl dd {
        width: calc(100% - calc(216 * 0.073206vw))
    }

    main.work section.credit dl dt,main.work section.credit dl dd {
        padding-top: calc(15*.073206vw) !important
    }
}

@media screen and (min-width: 1920px) {
    main.work section.credit {
        margin-top:calc(150*1.405564px)
    }

    main.work section.credit .container {
        padding: 0 calc(40*1.405564px);
        width: 1920px
    }

    main.work section.credit h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*1.405564px)
    }

    main.work section.credit dl {
        margin-top: calc(-15*1.405564px);
        font-size: calc(22 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        line-height: calc(29*1.405564px)
    }

    main.work section.credit dl dt {
        width: calc(216*1.405564px)
    }

    main.work section.credit dl dd {
        width: calc(100% - calc(216 * 1.405564px))
    }

    main.work section.credit dl dt,main.work section.credit dl dd {
        padding-top: calc(15*1.405564px) !important
    }
}

main.work section.others {
    padding-top: calc(150*.266667vw)
}

main.work section.others .container {
    padding: 0 calc(20*.266667vw) calc(150*.266667vw) calc(20*.266667vw)
}

main.work section.others h2 {
    font-size: calc(36 * 0.266667vw);
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1
}

main.work section.others .works {
    padding: calc(50*.266667vw) 0 0 calc(50*.266667vw)
}

@media screen and (min-width: 980px) {
    main.work section.others {
        padding-top:calc(150*.073206vw)
    }

    main.work section.others .container {
        padding: 0 calc(40*.073206vw) calc(150*.073206vw) calc(40*.073206vw);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    main.work section.others h2 {
        font-size: calc(52 * 0.073206vw);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*.073206vw);
        line-height: 1
    }

    main.work section.others .works {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 0
    }
}

@media screen and (min-width: 1920px) {
    main.work section.others {
        padding-top:calc(150*1.405564px)
    }

    main.work section.others .container {
        padding: 0 calc(40*1.405564px) calc(150*1.405564px) calc(40*1.405564px);
        width: 1920px
    }

    main.work section.others h2 {
        font-size: calc(52 * 1.405564px);
        font-family: neue-haas-grotesk-display,sans-serif;
        font-weight: 500;
        font-style: normal;
        width: calc(432*1.405564px)
    }
}

.barba-leave-active,.barba-enter-active {
    -webkit-transition: all 1s cubic-bezier(0.5, 0.7, 0.4, 1);
    transition: all 1s cubic-bezier(0.5, 0.7, 0.4, 1)
}

.barba-leave {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.barba-enter {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
}

.barba-enter-to {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}
