@charset "UTF-8";
@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Thin.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Thin.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Thin.woff2) format("woff2"), url(../fonts/CalibreWeb-Thin.woff) format("woff"), url(../fonts/CalibreWeb-Thin.ttf) format("truetype");
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-ThinItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-ThinItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-ThinItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-ThinItalic.woff) format("woff"), url(../fonts/CalibreWeb-ThinItalic.ttf) format("truetype");
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Light.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Light.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Light.woff2) format("woff2"), url(../fonts/CalibreWeb-Light.woff) format("woff"), url(../fonts/CalibreWeb-Light.ttf) format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-LightItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-LightItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-LightItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-LightItalic.woff) format("woff"), url(../fonts/CalibreWeb-LightItalic.ttf) format("truetype");
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Regular.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Regular.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Regular.woff2) format("woff2"), url(../fonts/CalibreWeb-Regular.woff) format("woff"), url(../fonts/CalibreWeb-Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-RegularItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-RegularItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-RegularItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-RegularItalic.woff) format("woff"), url(../fonts/CalibreWeb-RegularItalic.ttf) format("truetype");
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Medium.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Medium.woff2) format("woff2"), url(../fonts/CalibreWeb-Medium.woff) format("woff"), url(../fonts/CalibreWeb-Medium.ttf) format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-MediumItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-MediumItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-MediumItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-MediumItalic.woff) format("woff"), url(../fonts/CalibreWeb-MediumItalic.ttf) format("truetype");
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Semibold.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Semibold.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Semibold.woff2) format("woff2"), url(../fonts/CalibreWeb-Semibold.woff) format("woff"), url(../fonts/CalibreWeb-Semibold.ttf) format("truetype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-SemiboldItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-SemiboldItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-SemiboldItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-SemiboldItalic.woff) format("woff"), url(../fonts/CalibreWeb-SemiboldItalic.ttf) format("truetype");
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Bold.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Bold.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Bold.woff2) format("woff2"), url(../fonts/CalibreWeb-Bold.woff) format("woff"), url(../fonts/CalibreWeb-Bold.ttf) format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-BoldItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-BoldItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-BoldItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-BoldItalic.woff) format("woff"), url(../fonts/CalibreWeb-BoldItalic.ttf) format("truetype");
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-Black.eot);
    src: local("☺"), url(../fonts/CalibreWeb-Black.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-Black.woff2) format("woff2"), url(../fonts/CalibreWeb-Black.woff) format("woff"), url(../fonts/CalibreWeb-Black.ttf) format("truetype");
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: Calibre;
    src: url(../fonts/CalibreWeb-BlackItalic.eot);
    src: local("☺"), url(../fonts/CalibreWeb-BlackItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/CalibreWeb-BlackItalic.woff2) format("woff2"), url(../fonts/CalibreWeb-BlackItalic.woff) format("woff"), url(../fonts/CalibreWeb-BlackItalic.ttf) format("truetype");
    font-weight: 900;
    font-style: italic;
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

a:active,
a:hover {
    outline: 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: 700;
}

dfn {
    font-style: italic;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

mark {
    background: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

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

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
}

pre {
    overflow: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: none;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

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

input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: 700;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0 0 0.5em;
}

.headline,
.starthero-text .starthero__overlay-text,
h1 {
    font-size: 3em;
    line-height: 1em;
    font-weight: 600;
    padding: 0;
    margin: 0.36364em 0;
}

.starthero-text :lang(jp) .starthero__overlay-text,
:lang(jp) .headline,
:lang(jp) .starthero-text .starthero__overlay-text,
:lang(jp) h1 {
    font-size: 2.75em;
    line-height: 1.25em;
}

@media all and (min-width: 420px) {
    .headline,
    .starthero-text .starthero__overlay-text,
    h1 {
        font-size: 4em;
        line-height: 1em;
        margin: 0.25em 0;
    }
    .starthero-text :lang(jp) .starthero__overlay-text,
    :lang(jp) .headline,
    :lang(jp) .starthero-text .starthero__overlay-text,
    :lang(jp) h1 {
        font-size: 3em;
        line-height: 1.25em;
        margin: 0.33333em 0;
    }
}

@media all and (min-width: 720px) {
    .headline,
    .starthero-text .starthero__overlay-text,
    h1 {
        font-size: 7.5em;
        line-height: 1em;
        margin: 0.18182em 0;
    }
    .starthero-text :lang(jp) .starthero__overlay-text,
    :lang(jp) .headline,
    :lang(jp) .starthero-text .starthero__overlay-text,
    :lang(jp) h1 {
        font-size: 5.5em;
        line-height: 1.25em;
    }
}

.menu__main-list .menu-item {
    font-size: 3em;
    line-height: 1em;
    font-weight: 500;
}

.menu__main-list :lang(jp) .menu-item,
:lang(jp) .menu__main-list .menu-item {
    font-size: 2.75em;
    line-height: 1.25em;
}

@media all and (min-width: 720px) {
    .menu__main-list .menu-item {
        font-size: 5em;
        line-height: 1em;
        font-weight: 500;
    }
    .menu__main-list :lang(jp) .menu-item,
    :lang(jp) .menu__main-list .menu-item {
        font-size: 4.75em;
        line-height: 1.25em;
    }
}

.box-header--big,
.intro-header,
h2 {
    font-size: 2.75em;
    line-height: 1em;
    font-weight: 700;
}

:lang(jp) .box-header--big,
:lang(jp) .intro-header,
:lang(jp) h2 {
    font-size: 2.5em;
    line-height: 1.25em;
}

@media all and (min-width: 720px) {
    .box-header--big,
    .intro-header,
    h2 {
        font-size: 3.75em;
        line-height: 1em;
    }
    :lang(jp) .box-header--big,
    :lang(jp) .intro-header,
    :lang(jp) h2 {
        font-size: 3.5em;
        line-height: 1.25em;
    }
}

.footer__menu.footer__menu--big .menu-item,
.form__title {
    font-size: 2em;
    line-height: 1em;
    font-weight: 500;
}

.footer__menu.footer__menu--big :lang(jp) .menu-item,
:lang(jp) .footer__menu.footer__menu--big .menu-item,
:lang(jp) .form__title {
    font-size: 1.75em;
    line-height: 1.25em;
}

@media all and (min-width: 720px) {
    .footer__menu.footer__menu--big .menu-item,
    .form__title {
        font-size: 2.5em;
        line-height: 1em;
    }
    .footer__menu.footer__menu--big :lang(jp) .menu-item,
    :lang(jp) .footer__menu.footer__menu--big .menu-item,
    :lang(jp) .form__title {
        font-size: 2.25em;
        line-height: 1.25em;
    }
}

.intro-header-thin {
    font-size: 2.75em;
    line-height: 1em;
    font-weight: 300;
}

:lang(jp) .intro-header-thin {
    font-size: 2.5em;
    line-height: 1.25em;
}

@media all and (min-width: 720px) {
    .intro-header-thin {
        font-size: 3.75em;
        line-height: 1em;
    }
    :lang(jp) .intro-header-thin {
        font-size: 3.5em;
        line-height: 1.25em;
    }
}

.link-title,
.quote,
h3 {
    font-size: 2em;
    line-height: 1.25em;
    font-weight: 100;
}

:lang(jp) .link-title,
:lang(jp) .quote,
:lang(jp) h3 {
    font-size: 1.75em;
    line-height: 1.57143em;
}

@media all and (min-width: 720px) {
    .link-title,
    .quote,
    h3 {
        font-size: 3.125em;
        line-height: 1.2em;
    }
    :lang(jp) .link-title,
    :lang(jp) .quote,
    :lang(jp) h3 {
        font-size: 2.875em;
        line-height: 1.3913em;
    }
}

.link-header,
.newsletterbanner__text .text,
h5 {
    font-size: 1.25em;
    line-height: 1.2em;
    font-weight: 100;
}

.newsletterbanner__text :lang(jp) .text,
:lang(jp) .link-header,
:lang(jp) .newsletterbanner__text .text,
:lang(jp) h5 {
    font-size: 1em;
    line-height: 1.75em;
}

@media all and (min-width: 720px) {
    .link-header,
    .newsletterbanner__text .text,
    h5 {
        font-size: 1.875em;
        line-height: 1em;
    }
    .newsletterbanner__text :lang(jp) .text,
    :lang(jp) .link-header,
    :lang(jp) .newsletterbanner__text .text,
    :lang(jp) h5 {
        font-size: 1.625em;
        line-height: 1.25em;
    }
}

.box-header,
h4 {
    font-size: 1.25em;
    line-height: 1.2em;
    font-weight: 700;
}

:lang(jp) .box-header,
:lang(jp) h4 {
    font-size: 1em;
    line-height: 1.75em;
}

@media all and (min-width: 720px) {
    .box-header,
    h4 {
        font-size: 1.875em;
        line-height: 1em;
    }
    :lang(jp) .box-header,
    :lang(jp) h4 {
        font-size: 1.625em;
        line-height: 1.25em;
    }
}

.box-text--big,
.date,
.form__subtitle,
.intro-text,
.person__name,
.textbox ul li,
.top-menu__list .menu-item,
h6,
menu.sub-menu li ul.sub-menu li {
    font-size: 1.125em;
    line-height: 1.11111em;
    font-weight: 400;
}

.textbox ul :lang(jp) li,
.top-menu__list :lang(jp) .menu-item,
:lang(jp) .box-text--big,
:lang(jp) .date,
:lang(jp) .form__subtitle,
:lang(jp) .intro-text,
:lang(jp) .person__name,
:lang(jp) .textbox ul li,
:lang(jp) .top-menu__list .menu-item,
:lang(jp) h6,
:lang(jp) menu.sub-menu li ul.sub-menu li,
menu.sub-menu li ul.sub-menu :lang(jp) li {
    font-size: 1em;
    line-height: 1.5em;
}

@media all and (min-width: 360px) {
    .box-text--big,
    .date,
    .form__subtitle,
    .intro-text,
    .person__name,
    .textbox ul li,
    .top-menu__list .menu-item,
    h6,
    menu.sub-menu li ul.sub-menu li {
        font-size: 1.125em;
        line-height: 1.11111em;
    }
    .textbox ul :lang(jp) li,
    .top-menu__list :lang(jp) .menu-item,
    :lang(jp) .box-text--big,
    :lang(jp) .date,
    :lang(jp) .form__subtitle,
    :lang(jp) .intro-text,
    :lang(jp) .person__name,
    :lang(jp) .textbox ul li,
    :lang(jp) .top-menu__list .menu-item,
    :lang(jp) h6,
    :lang(jp) menu.sub-menu li ul.sub-menu li,
    menu.sub-menu li ul.sub-menu :lang(jp) li {
        font-size: 1em;
        line-height: 1.5em;
    }
}

@media all and (min-width: 720px) {
    .box-text--big,
    .date,
    .form__subtitle,
    .intro-text,
    .person__name,
    .textbox ul li,
    .top-menu__list .menu-item,
    h6,
    menu.sub-menu li ul.sub-menu li {
        font-size: 1.5em;
        line-height: 1.25em;
    }
    .textbox ul :lang(jp) li,
    .top-menu__list :lang(jp) .menu-item,
    :lang(jp) .box-text--big,
    :lang(jp) .date,
    :lang(jp) .form__subtitle,
    :lang(jp) .intro-text,
    :lang(jp) .person__name,
    :lang(jp) .textbox ul li,
    :lang(jp) .top-menu__list .menu-item,
    :lang(jp) h6,
    :lang(jp) menu.sub-menu li ul.sub-menu li,
    menu.sub-menu li ul.sub-menu :lang(jp) li {
        font-size: 1.25em;
        line-height: 1.7em;
    }
    menu.sub-menu li ul.sub-menu li {
        font-size: 1.5rem;
    }

}

.box-text,
.footer__menu .menu-item,
.menu__search .search-input,
.pw-input,
.sai-form input[type="email"],
.sai-form input[type="text"],
.sai-form input[type="url"],
.sai-form select,
.sai-form textarea,
p {
    font-size: 1em;
    line-height: 1.25em;
    font-weight: 400;
}

.footer__menu :lang(jp) .menu-item,
.menu__search :lang(jp) .search-input,
.sai-form :lang(jp) input[type="email"],
.sai-form :lang(jp) input[type="text"],
.sai-form :lang(jp) input[type="url"],
.sai-form :lang(jp) select,
.sai-form :lang(jp) textarea,
:lang(jp) .box-text,
:lang(jp) .footer__menu .menu-item,
:lang(jp) .menu__search .search-input,
:lang(jp) .pw-input,
:lang(jp) .sai-form input[type="email"],
:lang(jp) .sai-form input[type="text"],
:lang(jp) .sai-form input[type="url"],
:lang(jp) .sai-form select,
:lang(jp) .sai-form textarea,
:lang(jp) p {
    line-height: 1.5em;
}

@media all and (min-width: 720px) {
    .box-text,
    .footer__menu .menu-item,
    .menu__search .search-input,
    .pw-input,
    .sai-form input[type="email"],
    .sai-form input[type="text"],
    .sai-form input[type="url"],
    .sai-form select,
    .sai-form textarea,
    p {
        font-size: 1em;
        line-height: 1.25em;
    }
    .footer__menu :lang(jp) .menu-item,
    .menu__search :lang(jp) .search-input,
    .sai-form :lang(jp) input[type="email"],
    .sai-form :lang(jp) input[type="text"],
    .sai-form :lang(jp) input[type="url"],
    .sai-form :lang(jp) select,
    .sai-form :lang(jp) textarea,
    :lang(jp) .box-text,
    :lang(jp) .footer__menu .menu-item,
    :lang(jp) .menu__search .search-input,
    :lang(jp) .pw-input,
    :lang(jp) .sai-form input[type="email"],
    :lang(jp) .sai-form input[type="text"],
    :lang(jp) .sai-form input[type="url"],
    :lang(jp) .sai-form select,
    :lang(jp) .sai-form textarea,
    :lang(jp) p {
        line-height: 1.75em;
    }
}

.infographic__row,
.layout__col,
.layout__section,
.link-slide__item-link,
.link-slide__wrapper,
.menu__main-list,
.top-menu__list,
.top-menu__list .menu-item {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
}

.clear {
    clear: both;
}

.main {
    padding-top: 4em;
}

@media all and (min-width: 720px) {
    .main {
        padding-top: 5em;
    }
}

.layout__section {
    width: 100%;
    margin: 0;
    position: relative;
    margin: 1.25em 0;
    padding: 0 0.625em;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media all and (min-width: 720px) {
    .layout__section {
        -webkit-box-direction: normal;
        -webkit-box-orient: horizontal;
        -moz-box-direction: normal;
        -moz-box-orient: horizontal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: column;
        padding: 0 1.25em;
    }
}

.layout__section__hero {
    -webkit-box-direction: reverse;
    -webkit-box-orient: vertical;
    -moz-box-direction: reverse;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin: 1.25em 0 2.5em;
}

@media all and (min-width: 720px) {
    .layout__section__hero {
        -webkit-box-direction: normal;
        -webkit-box-orient: horizontal;
        -moz-box-direction: normal;
        -moz-box-orient: horizontal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        margin: 1.25em 0;
    }
}

.layout__section--full {
    padding: 0;
}

@media all and (min-width: 720px) {
    .layout__section--full {
        padding: 0;
    }
}

.layout__col {
    flex: 1;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-direction: normal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: 0 1 auto;
    -ms-flex-direction: 0 1 auto;
    flex-direction: 0 1 auto;
    position: relative;
}

.layout__flow-wrapper {
    display: block;
    width: 100%;
}

.layout__item {
    width: 100%;
    margin: 0;
    padding: 1.25em 0.625em;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
}

@media all and (min-width: 720px) {
    .layout__item {
        padding: 1.25em;
    }
}

.layout__item--half {
    width: 100%;
}

@media all and (min-width: 720px) {
    .layout__item--half {
        width: 50%;
    }
}

.layout__item--quarter {
    width: 100%;
}

@media all and (min-width: 360px) {
    .layout__item--quarter {
        width: 50%;
    }
}

@media all and (min-width: 720px) {
    .layout__item--quarter {
        width: 25%;
    }
}

.layout__item--third {
    width: 100%;
}

@media all and (min-width: 360px) {
    .layout__item--third {
        width: 50%;
    }
}

@media all and (min-width: 720px) {
    .layout__item--third {
        width: 33%;
    }
}

.layout__item--less-pt {
    padding-top: 0.625em;
}

.layout__item--less-pr {
    padding-right: 0.625em;
}

.layout__item--less-pb {
    padding-bottom: 0.625em;
}

.layout__item--less-pl {
    padding-left: 0.625em;
}

.layout__item--no-pt {
    padding-top: 0;
}

.layout__item--no-pr {
    padding-right: 0;
}

.layout__item--no-pb {
    padding-bottom: 0;
}

.layout__item--no-pl {
    padding-left: 0;
}

.layout__item--full {
    padding: 1.25em 0;
}

@media all and (min-width: 720px) {
    .layout__item--full {
        padding: 1.25em 0;
    }
}

.layout__item.hero-img-item {
    height: 100%;
}

.box-wrapper .media-wrapper {
    overflow: hidden;
    width: auto;
}

.box-wrapper .media-wrapper img {
    max-width: 100%;
    width: auto;
    max-height: 85vh;
}

.box-wrapper a:hover .media-wrapper img {
    -webkit-transform: translate3d(0, 0, 0) scale(1.02);
    -moz-transform: translate3d(0, 0, 0) scale(1.02);
    -ms-transform: translate3d(0, 0, 0) scale(1.02);
    -o-transform: translate3d(0, 0, 0) scale(1.02);
    transform: translate3d(0, 0, 0) scale(1.02);
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.info-box {
    background: #91a3ac;
    width: 100%;
    padding: 1.25em;
    color: #fff;
}

@media all and (min-width: 420px) {
    .info-box {
        padding: 2.5em;
    }
}

@media all and (min-width: 720px) {
    .info-box {
        padding: 3.75em;
    }
}

.mt-0 {
    margin-top: 0 !important;
}

.mr-0 {
    margin-right: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.ml-0 {
    margin-left: 0 !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pr-0 {
    padding-right: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pl-0 {
    padding-left: 0 !important;
}

p b,
p strong {
    font-weight: 600;
}

.thin {
    font-weight: 300;
}

.intro-header {
    font-weight: 600;
    margin: 0 0 0.33333333333333em;
}

.intro-header {
    margin: 0 0 0.33333333333333em;
}

.intro-header--thin {
    font-weight: 600;
}

.intro-header-thin {
    margin: 0 0 0.33333333333333em;
}

.intro-text {
    margin: 0;
}

.box-header {
    /* margin: 0.2em 0 0.66em 0; */
    margin: 0.666666666667em 0;
    font-size: 1.5em;
}

.box-header--big {
    margin: 0.666666666667em 0 0.33333333333333em;
}

.box-text {
    margin: 0;
}

.box-text--big {
    margin: 0;
}

.link-header {
    font-weight: 300;
    margin: 0 0 0.25em;
    min-height: 2em;
}

.link-title {
    margin: 0;
}

.textbox ul {
    padding: 0;
    list-style: none;
    margin: 0.625em 0;
}

.textbox ul li {
    margin-bottom: 0.125em;
    padding-left: 1em;
    position: relative;
}

.textbox ul li:before {
    content: "–";
    position: absolute;
    left: 0;
    top: 0;
}

.person__name {
    margin-top: 0.4em;
}

@media all and (min-width: 720px) {
    .person__name {
        margin-top: 0.33333em;
    }
}

.person__title {
    font-weight: 600;
}

.form__title {
    font-weight: 700;
    margin-bottom: 0.25em;
}

.form__subtitle {
    font-weight: 500;
    margin: 0.6em 0 !important;
}

@media all and (min-width: 720px) {
    .form__subtitle {
        margin: 0.5em 0 !important;
    }
}

.service-title {
    margin-bottom: 0;
}

.quote {
    font-style: italic;
    text-align: center;
}

.quote:after,
.quote:before {
    content: '"';
}

:lang(jp) .quote {
    font-style: normal;
}

.align-right {
    text-align: right;
    float: right;
}

.pw-input {
    box-sizing: border-box;
    width: 10em;
    background: #213a8f;
    color: #fff;
    -webkit-appearance: none;
    border: none;
    padding: 0.25em 0;
    font-weight: 500;
    border-bottom: 1px solid #fff;
    border-radius: 0;
    -webkit-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    margin-bottom: 0.5em;
}

.pw-input::-webkit-input-placeholder {
    color: #fff;
}

.pw-input:-ms-input-placeholder {
    color: #fff;
}

.pw-input::placeholder {
    color: #fff;
}

.pw-input:hover {
    padding: 0.25em 0.5em;
}

.pw-input:active,
.pw-input:focus {
    outline: 0;
    background: #242657;
    padding: 0.25em 0.5em;
}

::selection {
    background: #101020;
    color: #fff;
}

::-moz-selection {
    background: #101020;
    color: #fff;
}

body,
html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    width: 100%;
}

:lang(jp) body {
    font-family: Calibre, NotoSansJP, "游ゴシック", "游ゴシック体", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", "MS Gothic", HiraKakuProN-W3, "TakaoExゴシック", TakaoExGothic, MotoyaLCedar, "Droid Sans Japanese", sans-serif;
    text-align: justify !important;
    line-height: 1.5em;
}

body {
    font-family: Calibre, sans-serif;
    font-weight: 400;
    font-size: 1em;
    line-height: 1.25em;
    background: #fff;
    color: #101020;
    position: relative;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    z-index: 10;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

@media all and (min-aspect-ratio: 2 / 1) {
    body {
        font-size: 7.2vh;
    }
}

@media all and (min-aspect-ratio: 100 / 45) {
    body {
        font-size: 3.24vw;
    }
}

@media all and (min-width: 720px) {
    body {
        font-size: 1.66667vw;
    }
}

@media all and (min-aspect-ratio: 2 / 1) and (min-width: 720px) {
    body {
        font-size: 3.33333vh;
    }
}

@media all and (min-aspect-ratio: 100 / 45) and (min-width: 720px) {
    body {
        font-size: 1.5vw;
    }
}

@media all and (min-width: 960px) {
    body {
        font-size: 1.5vw;
    }
}

@media all and (min-aspect-ratio: 2 / 1) and (min-width: 960px) {
    body {
        font-size: 3vh;
    }
}

@media all and (min-aspect-ratio: 100 / 45) and (min-width: 960px) {
    body {
        font-size: 1.35vw;
    }
}

@media all and (min-width: 1280px) {
    body {
        font-size: 1.11111vw;
    }
}

@media all and (min-aspect-ratio: 2 / 1) and (min-width: 1280px) {
    body {
        font-size: 2.22222vh;
    }
}

@media all and (min-aspect-ratio: 100 / 45) and (min-width: 1280px) {
    body {
        font-size: 1vw;
    }
}

body.loaded {
    opacity: 1 !important;
    -webkit-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

a,
a:focus,
a:visited {
    color: inherit;
}

a:active,
a:hover {
    color: inherit;
}

p a {
    display: inline-block;
}

img {
    width: 100%;
    height: auto;
    display: block;
    backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 0;
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
}

img.js-loaded {
    opacity: 1;
}

img.hidden {
    display: none;
}

svg {
    fill: currentColor;
    width: 100%;
    height: auto;
    display: block;
    clear: both;
}

iframe,
video {
    width: 100%;
    height: auto;
    display: block;
}

article,
div,
figure,
footer,
header,
section {
    box-sizing: border-box;
}

button {
    border: none;
    -webkit-appearance: none;
    padding: 0;
    margin: 0;
    background: 0 0;
    outline: 0;
}

.js-isinview.js-inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.2s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.2s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.2s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.2s cubic-bezier(0.18, 1, 0.21, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.2s cubic-bezier(0.18, 1, 0.21, 1);
}

.js-isinview.js-outofview {
    opacity: 0;
    -webkit-transform: translateY(2.5em);
    -moz-transform: translateY(2.5em);
    -ms-transform: translateY(2.5em);
    -o-transform: translateY(2.5em);
    transform: translateY(2.5em);
    -webkit-transition: opacity 0s linear, transform 0s linear;
    -moz-transition: opacity 0s linear, transform 0s linear;
    -ms-transition: opacity 0s linear, transform 0s linear;
    -o-transition: opacity 0s linear, transform 0s linear;
    transition: opacity 0s linear, transform 0s linear;
}

.js-isinview--from-side.js-inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.6s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.6s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.6s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.6s cubic-bezier(0.18, 1, 0.21, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1.6s cubic-bezier(0.18, 1, 0.21, 1);
}

.js-isinview--from-side.js-outofview {
    opacity: 0;
    -webkit-transform: translateX(5em);
    -moz-transform: translateX(5em);
    -ms-transform: translateX(5em);
    -o-transform: translateX(5em);
    transform: translateX(5em);
    -webkit-transition: opacity 0s linear, transform 0s linear;
    -moz-transition: opacity 0s linear, transform 0s linear;
    -ms-transition: opacity 0s linear, transform 0s linear;
    -o-transition: opacity 0s linear, transform 0s linear;
    transition: opacity 0s linear, transform 0s linear;
}

.js-isinview--from-side--l.js-outofview {
    opacity: 0;
    -webkit-transform: translateX(-5em);
    -moz-transform: translateX(-5em);
    -ms-transform: translateX(-5em);
    -o-transform: translateX(-5em);
    transform: translateX(-5em);
    -webkit-transition: opacity 0s linear, transform 0s linear;
    -moz-transition: opacity 0s linear, transform 0s linear;
    -ms-transition: opacity 0s linear, transform 0s linear;
    -o-transition: opacity 0s linear, transform 0s linear;
    transition: opacity 0s linear, transform 0s linear;
}

.case__full-media .media-wrapper img,
.case__full-media .media-wrapper video {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 100%;
    width: auto;
    max-height: 100vh;
}

.header-bg {
    position: fixed;
    z-index: 80;
    background: #fff;
    height: 4em;
    width: 100%;
    -webkit-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

@media all and (min-width: 720px) {
    .header-bg {
        height: 5em;
    }
}

.header-bg--hidden {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

body.menu-open .header-bg--hidden {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

.header {
    height: 4em;
    width: 100%;
    position: fixed;
    z-index: 110;
    -webkit-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

@media all and (min-width: 720px) {
    .header {
        height: 5em;
    }
}

.header--hidden {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

body.menu-open .header--hidden {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

.header-logo {
    width: 4em;
    padding: 0;
    float: left;
    margin: 1.333em 0.25em 0 0.675em;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 120;
    -webkit-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media all and (min-width: 360px) {
    .header-logo {
        margin: 1.33333em 0.25em 0 0.675em;
    }
}

@media all and (min-width: 420px) {
    .header-logo {
        margin: 1.25em 0.25em 0 1.25em;
        width: 4em;
    }
}

@media all and (min-width: 720px) {
    .header-logo {
        width: 7.5em;
        margin: 1.25em 2.5em 0;
    }
}

.top-menu {
    text-align: center;
    width: 100%;
    left: 0;
    padding: 0 2.575em 0 4.65em;
    box-sizing: border-box;
    margin: 1.45em auto 0;
    position: absolute;
    z-index: 110;
}

@media all and (min-width: 360px) {
    .top-menu {
        padding: 0;
        width: 66.66667%;
        left: 16.66667%;
    }
}

@media all and (min-width: 720px) {
    .top-menu {
        width: 50%;
        left: 25%;
        padding: 0;
        margin: 1.75em auto 0;
    }
}

.top-menu__list {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
    justify-content: space-around;
    padding: 0 0.625em;
    box-sizing: border-box;
}

@media all and (min-width: 360px) {
    .top-menu__list {
        padding: 0 1.25em;
    }
}

@media all and (min-width: 360px) {
    .top-menu__list {
        padding: 0;
        display: block;
    }
}

.top-menu__list .menu-item {
    width: auto;
    text-align: center;
    position: relative;
    width: auto;
    flex: 0 1;
    line-height: 1.25em !important;
    -webkit-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media all and (min-width: 360px) {
    .top-menu__list .menu-item {
        width: 33.33333%;
        display: block;
        float: left;
    }
}

.top-menu__list .menu-item.current-menu-ancestor,
.top-menu__list .menu-item.current-menu-item {
    font-weight: 600;
}

.top-menu__list .menu-item a {
    text-decoration: none;
}

menu.sub-menu {
    margin: 0;
    padding: 0 0.675em;
    width: 100%;
    display: block;
    box-sizing: border-box;
}

@media all and (min-width: 360px) {
    menu.sub-menu {
        padding: 0 16.66667%;
    }
}

@media all and (min-width: 720px) {
    menu.sub-menu {
        padding: 0 25%;
    }
}

menu.sub-menu .sub-menu-wrapper {
    margin: 0;
    padding: 0;
    width: 100%;
}

menu.sub-menu .sub-menu-wrapper:after {
    content: "";
    display: block;
    clear: both;
}

menu.sub-menu li {
    margin: 0;
    padding: 1em 0 0;
    width: 100%;
    list-style: none;
    text-align: center;
}

@media all and (min-width: 360px) {
    menu.sub-menu li {
        width: 33.33333%;
        float: left;
    }
}

menu.sub-menu li a {
    display: none;
}

menu.sub-menu li ul.sub-menu {
    display: none;
    margin: 0;
    padding: 0;
    width: 100%;
    list-style: none;
    text-align: center;
}

menu.sub-menu li ul.sub-menu a {
    display: inline;
}

menu.sub-menu li ul.sub-menu:after {
    content: "";
    display: block;
    clear: both;
}

menu.sub-menu li.current-menu-ancestor,
menu.sub-menu li.current-menu-item {
    padding: 0;
}

menu.sub-menu li.current-menu-ancestor ul.sub-menu,
menu.sub-menu li.current-menu-item ul.sub-menu {
    display: block;
}

menu.sub-menu li ul.sub-menu li {
    float: none;
    text-align: center;
    width: 100%;
    margin: 0 0 0.5em 0;
    padding: 0 0.675em;
    display: inline-block;
}

@media all and (min-width: 360px) {
    menu.sub-menu li ul.sub-menu li {
        padding: 0;
        display: block;
    }
}

menu.sub-menu li ul.sub-menu li.current-menu-ancestor,
menu.sub-menu li ul.sub-menu li.current-menu-item {
    font-weight: 600;
}

menu.sub-menu li ul.sub-menu li a {
    text-decoration: none;
}

body.menu-open .top-menu__list .menu-item {
    color: #fff;
}

body.menu-open .header-logo {
    color: #fff;
}

@media all and (min-width: 720px) {
    body.menu-open .header-logo {
        color: inherit;
    }
}

.starthero .slideshow {
    overflow: hidden;
    max-height: 80vh;
}

.starthero-text {
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    display: block;
    z-index: 3;
    padding: 0 1.25em;
}

@media all and (min-width: 720px) {
    .starthero-text {
        padding: 0 2.5em;
    }
}

.starthero-text .starthero__overlay-text {
    color: #fff;
}

.starthero-text .starthero__overlay-text__word-carousel {
    position: absolute;
    -webkit-transform: translateX(0.5em);
    -moz-transform: translateX(0.5em);
    -ms-transform: translateX(0.5em);
    -o-transform: translateX(0.5em);
    transform: translateX(0.5em);
    -webkit-transition: transform 0s linear, opacity 0s linear;
    -moz-transition: transform 0s linear, opacity 0s linear;
    -ms-transition: transform 0s linear, opacity 0s linear;
    -o-transition: transform 0s linear, opacity 0s linear;
    transition: transform 0s linear, opacity 0s linear;
    opacity: 0;
}

.starthero-text .starthero__overlay-text__word-carousel--current {
    position: relative;
    display: block;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    -webkit-transition: transform 1.6s cubic-bezier(0.18, 1, 0.21, 1), opacity 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: transform 1.6s cubic-bezier(0.18, 1, 0.21, 1), opacity 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: transform 1.6s cubic-bezier(0.18, 1, 0.21, 1), opacity 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: transform 1.6s cubic-bezier(0.18, 1, 0.21, 1), opacity 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: transform 1.6s cubic-bezier(0.18, 1, 0.21, 1), opacity 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.textbox-hero-wrapper {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-direction: normal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.textbox-hero {
    align-self: flex-end;
}

.footer {
    margin-top: 4em;
    width: 100%;
    background: #bdc8cd;
    color: #101020;
    padding: 1.25em 0 5em;
}

@media all and (min-width: 720px) {
    .footer {
        padding: 1.25em 0;
    }
}

.footer p {
    margin: 0;
}

.footer .logo {
    width: 7.5em;
    margin: 0;
    float: left;
    display: block;
}

.footer .logo a {
    display: block;
}

.footer .tagline {
    float: left;
    font-size: 0.69em;
    line-height: 1em;
    font-weight: 600;
    margin-top: 0.8em;
    margin-left: 1.25em;
}

.footer__menu {
    list-style: none;
    margin: 0 0 1.25em;
    padding: 0;
}

.footer__menu .sub-menu {
    margin: 0.25em 0 0 0.5em;
    list-style: none;
    padding: 0;
}

.footer__menu .menu-item {
    margin-bottom: 0.25em;
    font-weight: 600;
}

.footer__menu .menu-item .sub-menu .menu-item {
    font-weight: 400;
}

.footer__menu.footer__menu--big .menu-item {
    margin-bottom: 0.25em;
}

@media all and (min-width: 720px) {
    .footer__menu.footer__menu--big .menu-item {
        margin-bottom: 0.5em;
    }
}

.footer__menu.footer__menu--last .menu-item {
    font-weight: 400;
}

.footer__menu a {
    text-decoration: none;
}

.footer__menu a:hover {
    text-decoration: underline;
}

.footer .layout__section {
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media all and (min-width: 420px) {
    .footer .layout__section {
        -webkit-box-direction: normal;
        -webkit-box-orient: horizontal;
        -moz-box-direction: normal;
        -moz-box-orient: horizontal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .footer .layout__section .layout__col {
        flex: 0 1 50%;
    }
}

@media all and (min-width: 720px) {
    .footer .layout__section .layout__col {
        flex: 1;
    }
}

body.red .logo-bg {
    color: #e40134;
}

body.blue .logo-bg {
    color: #169fdb;
}

body.yellow .logo-bg {
    color: #f39200;
}

.logo-bg {
    margin: 0;
    padding: 0;
    color: #dae0e3;
    opacity: 0.2;
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    overflow: hidden;
}

.logo-bg svg {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-40%, -40%, 0);
    -moz-transform: translate3d(-40%, -40%, 0);
    -ms-transform: translate3d(-40%, -40%, 0);
    -o-transform: translate3d(-40%, -40%, 0);
    transform: translate3d(-40%, -40%, 0);
    -webkit-transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    width: 120%;
    height: auto;
}

@media all and (orientation: portrait) {
    .logo-bg svg {
        width: auto;
        height: 120%;
    }
}

.gmap__wrapper {
    width: 100%;
    display: block;
    position: relative;
    height: 0;
    margin: 0;
    padding: 0 0 66.6666666666667%;
}

.gmap__target {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
}

.gmap__target img {
    opacity: 1;
}

.menu-button {
    cursor: pointer;
    position: absolute;
    z-index: 150;
    display: block;
    width: 19px;
    height: 14px;
    top: 2.15em;
    right: 1.25em;
    -webkit-transform: translateY(-50%) scale(1);
    -moz-transform: translateY(-50%) scale(1);
    -ms-transform: translateY(-50%) scale(1);
    -o-transform: translateY(-50%) scale(1);
    transform: translateY(-50%) scale(1);
    -webkit-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
}

@media all and (min-width: 420px) {
    .menu-button {
        top: 2.0675em;
        width: 23px;
        height: 17px;
    }
}

@media all and (min-width: 720px) {
    .menu-button {
        top: 2.5em;
        right: 2.5em;
    }
}

.menu-button:hover {
    -webkit-transform: translateY(-50%) scale(1.15);
    -moz-transform: translateY(-50%) scale(1.15);
    -ms-transform: translateY(-50%) scale(1.15);
    -o-transform: translateY(-50%) scale(1.15);
    transform: translateY(-50%) scale(1.15);
}

.menu-button__span {
    position: absolute;
    width: 19px;
    height: 2px;
    left: 50%;
    background: #101020;
    -webkit-transform: translateX(-50%) rotate3d(0, 0, 1, 0deg);
    -moz-transform: translateX(-50%) rotate3d(0, 0, 1, 0deg);
    -ms-transform: translateX(-50%) rotate3d(0, 0, 1, 0deg);
    -o-transform: translateX(-50%) rotate3d(0, 0, 1, 0deg);
    transform: translateX(-50%) rotate3d(0, 0, 1, 0deg);
    -webkit-transition: background 0.2s 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), top 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: background 0.2s 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), top 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: background 0.2s 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), top 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: background 0.2s 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), top 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: background 0.2s 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), top 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media all and (min-width: 420px) {
    .menu-button__span {
        width: 23px;
        height: 3px;
    }
}

.menu-button__span--top {
    top: 0;
}

.menu-button__span--middle {
    top: 6px;
    opacity: 1;
}

@media all and (min-width: 420px) {
    .menu-button__span--middle {
        top: 7px;
    }
}

.menu-button__span--bottom {
    top: 12px;
}

@media all and (min-width: 420px) {
    .menu-button__span--bottom {
        top: 14px;
    }
}
/* vinod */
.menu {
    position: fixed;
    height: 100%;
    width: 100%;
    backface-visibility: hidden;
    background: #0d0c4a;
    top: 0;
    right: 0;
    margin: 0;
    padding: 1.25em;
    z-index: 100;
    -webkit-transform: translate3d(100%, 0, 0);
    -moz-transform: translate3d(100%, 0, 0);
    -ms-transform: translate3d(100%, 0, 0);
    -o-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    box-sizing: border-box;
    -webkit-transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    moz-transform-origin: top right;
    -o-transform-origin: top right;
    -ms-transform-origin: top right;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

@media all and (min-width: 720px) {
    .menu {
        width: 75%;
        padding: 2.5em;
    }
}

.menu__wrapper {
    height: 100%;
    position: relative;
    min-height: 30em;
}

.menu__main-list {
    margin: 0;
    padding: 2.5em 0 7.5em 0;
    list-style: none;
    height: 100%;
    box-sizing: border-box;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    justify-content: space-around;
    flex: 1;
}

@media all and (min-width: 720px) {
    .menu__main-list {
        padding: 2.5em 0 10em 0;
    }
}

.menu__main-list .menu-item {
    color: #fff;
}

.menu__main-list .menu-item a {
    text-decoration: none;
}

.menu__some {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    z-index: 20;
    color: #fff;
}

.menu__search {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    z-index: 20;
    padding-bottom: 1em;
    color: #fff;
}

.menu__search .search-input {
    box-sizing: border-box;
    width: 10em;
    background: #0d0c4a;
    color: #fff;
    -webkit-appearance: none;
    border: none;
    padding: 0.25em 0;
    font-weight: 500;
    border-bottom: 1px solid #fff;
    border-radius: 0;
    -webkit-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.menu__search .search-input::-webkit-input-placeholder {
    color: #fff;
}

.menu__search .search-input:-ms-input-placeholder {
    color: #fff;
}

.menu__search .search-input::placeholder {
    color: #fff;
}

.menu__search .search-input:hover {
    padding: 0.25em 0.5em;
}

.menu__search .search-input:active,
.menu__search .search-input:focus {
    outline: 0;
    background: #242657;
    padding: 0.25em 0.5em;
}

body.menu-open .menu-button__span {
    background: #fff;
    -webkit-transition: background 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), top 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: background 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), top 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: background 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), top 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: background 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), top 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: background 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), top 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

body.menu-open .menu-button__span--top {
    top: 7px;
    -webkit-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -moz-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -ms-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -o-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
}

body.menu-open .menu-button__span--middle {
    opacity: 0;
}

body.menu-open .menu-button__span--bottom {
    top: 7px;
    -webkit-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -moz-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -ms-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -o-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
}

/* vinod */
body.menu-open .menu {
    -webkit-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1);
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

body #header a,
body #header a:focus,
body #header a:visited,  
body #header a:active,
body #header a:hover {
    color: black;
}

body.menu-open #header a,
body.menu-open #header a:focus,
body.menu-open #header a:visited,  
body.menu-open #header a:active,
body.menu-open #header a:hover {
    color: white;
}


body.blog,
body.page-template-template-static-news-archive {
    background: #dae0e3;
}

.news-post-col {
    background: #dae0e3;
}

@media all and (min-width: 720px) {
    .news-post-col {
        margin-top: 2em;
    }
}

.news-post-col .layout__item.hero-img-item {
    height: auto;
}

.newsletterbanner {
    z-index: 20;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #0d0c4a;
    position: fixed;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
    padding: 2.5em 0;
    color: #fff;
    text-align: left;
}

@media all and (min-width: 720px) {
    .newsletterbanner {
        text-align: center;
        padding: 0.625em 0;
    }
}

.newsletterbanner--hide {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.newsletterbanner__text {
    margin: 0;
    width: auto;
    display: inline-block;
    padding: 0 2.5em 0 1.25em;
}

@media all and (min-width: 720px) {
    .newsletterbanner__text {
        padding: 0 1.25em;
    }
}

.newsletterbanner__text p {
    float: left;
    margin: 0;
}

.newsletterbanner__text .text {
    line-height: 1.5em;
}

.newsletterbanner .button-close {
    top: 50%;
    -webkit-transform: translateY(-50%) scale(1);
    -moz-transform: translateY(-50%) scale(1);
    -ms-transform: translateY(-50%) scale(1);
    -o-transform: translateY(-50%) scale(1);
    transform: translateY(-50%) scale(1);
}

.newsletterbanner .button-close:hover {
    -webkit-transform: translateY(-50%) scale(1.15);
    -moz-transform: translateY(-50%) scale(1.15);
    -ms-transform: translateY(-50%) scale(1.15);
    -o-transform: translateY(-50%) scale(1.15);
    transform: translateY(-50%) scale(1.15);
}

.newsletterbanner .button-close span {
    background: #fff;
}

.newsletterbanner--cookie {
    background: #fff;
    color: #101020;
}

.sai-logo-color-1 {
    fill: #e94e1b;
}

.sai-logo-color-2 {
    fill: #005368;
}

.sai-logo-color-3 {
    fill: #f39200;
}

.sai-logo-color-4 {
    fill: #009fe3;
}

.arrow-right {
    height: 2.25em;
    width: 3em;
    position: absolute;
    display: block;
    z-index: 1;
    cursor: pointer;
    top: 2em;
    right: 1.5em;
}

@media all and (min-width: 420px) {
    .arrow-right {
        width: 5em;
    }
}

@media all and (min-width: 720px) {
    .arrow-right {
        width: 8em;
    }
}

.arrow-right:before {
    content: "";
    position: absolute;
    height: 0.25em;
    background: #101020;
    left: 0;
    width: 100%;
    z-index: 2;
    box-sizing: border-box;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.arrow-right:after {
    content: "";
    position: absolute;
    height: 1.25em;
    width: 1.25em;
    right: 0;
    z-index: 2;
    box-sizing: border-box;
    border-top: 0.25em solid #101020;
    border-right: 0.25em solid #101020;
    -webkit-transform: rotate3d(0, 0, 1, 45deg) translate3d(-41%, -30%, 0);
    -moz-transform: rotate3d(0, 0, 1, 45deg) translate3d(-41%, -30%, 0);
    -ms-transform: rotate3d(0, 0, 1, 45deg) translate3d(-41%, -30%, 0);
    -o-transform: rotate3d(0, 0, 1, 45deg) translate3d(-41%, -30%, 0);
    transform: rotate3d(0, 0, 1, 45deg) translate3d(-41%, -30%, 0);
    top: 50%;
}

.button-close {
    cursor: pointer;
    position: absolute;
    z-index: 2;
    display: block;
    width: 23px;
    height: 17px;
    top: 1.25em;
    right: 1.25em;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 0.8s cubic-bezier(0.18, 1, 0.21, 1);
}

@media all and (min-width: 720px) {
    .button-close {
        top: 1.75em;
        right: 1.25em;
    }
}

.button-close:hover {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -ms-transform: scale(1.15);
    -o-transform: scale(1.15);
    transform: scale(1.15);
}

.button-close__span {
    position: absolute;
    width: 23px;
    height: 3px;
    left: 50%;
    background: #101020;
    top: 7px;
}

.button-close__span--top {
    -webkit-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -moz-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -ms-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    -o-transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
    transform: translateX(-50%) rotate3d(0, 0, 1, 45deg);
}

.button-close__span--bottom {
    -webkit-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -moz-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -ms-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    -o-transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
    transform: translateX(-50%) rotate3d(0, 0, 1, -45deg);
}

.button-close__span--white {
    background: #fff;
}

body.menu-open .top-menu__list-item {
    color: #fff;
}

body.menu-open .header-logo .sai-logo-color-1 {
    fill: #fff;
}

body.menu-open .header-logo .sai-logo-color-2 {
    fill: #fff;
}

body.menu-open .header-logo .sai-logo-color-3 {
    fill: #fff;
}

body.menu-open .header-logo .sai-logo-color-4 {
    fill: #fff;
}

@media all and (min-width: 720px) {
    body.menu-open .header-logo .sai-logo-color-1 {
        fill: #e94e1b;
    }
    body.menu-open .header-logo .sai-logo-color-2 {
        fill: #005368;
    }
    body.menu-open .header-logo .sai-logo-color-3 {
        fill: #f39200;
    }
    body.menu-open .header-logo .sai-logo-color-4 {
        fill: #009fe3;
    }
}

.sai-logo-color-1,
.sai-logo-color-2,
.sai-logo-color-3,
.sai-logo-color-4 {
    -webkit-transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.cta-button {
    display: inline-block;
    width: auto;
    padding: 0.3125em 0.625em 0.35em;
    border: 1px solid #101020;
    border-radius: 1em;
    text-decoration: none;
    line-height: 1em;
}

@media all and (min-width: 720px) {
    .cta-button {
        padding: 0.4em 0.625em 0.5em;
    }
}

.cta-button:hover {
    border-color: #0d0c4a;
    background: #0d0c4a;
    color: #fff;
}

.cta-button--newsletter {
    border-color: #fff;
    color: #fff;
    margin-left: 0.625em;
    margin-top: 0.125em;
}

:lang(jp) .cta-button--newsletter {
    margin-left: 0;
    margin-top: 0.75em;
}

@media all and (min-width: 720px) {
    .cta-button--newsletter {
        margin-left: 0.625em;
        margin-top: 0.5em;
    }
    :lang(jp) .cta-button--newsletter {
        margin-left: 1em;
        margin-top: 0.125em;
    }
}

.cta-button--newsletter:hover {
    border-color: #e40134;
    background: #e40134;
    color: #0d0c4a;
}

.cta-button--cookie {
    border-color: #101020;
    color: #101020;
    margin-left: 0.625em;
    margin-top: 0.125em;
}

@media all and (min-width: 720px) {
    .cta-button--cookie {
        margin-top: 0.6em;
        margin-bottom: 0;
    }
}

.cta-button--cookie:hover {
    background: #101020;
    color: #fff;
}

.cta-button--form {
    margin-top: 0.5em;
    border-color: #e94e1b;
    background: #fff;
    color: #e94e1b;
    float: right;
}

.cta-button--form:active,
.cta-button--form:focus,
.cta-button--form:hover {
    border-color: #fff;
    background: #e94e1b;
    color: #fff;
}

.cta-button--boxed {
    border-color: #fff;
    background: #213a8f;
    color: #fff;
}

.cta-button--boxed:active,
.cta-button--boxed:focus,
.cta-button--boxed:hover {
    border-color: #fff;
    background: #fff;
    color: #213a8f;
}

.infographic {
    background: #0d0c4a;
    color: #fff;
    box-sizing: border-box;
    width: 100%;
    padding: 1.25em;
}

@media all and (min-width: 720px) {
    .infographic {
        padding: 1.875em;
    }
}

.infographic.bc-black {
    background: #101020;
}

.infographic.bc-white {
    background: #fff;
}

.infographic.bc-grey_dark {
    background: #d8d8d8;
}

.infographic.bc-yellow {
    background: #f39200;
}

.infographic.bc-orange {
    background: #e94e1b;
}

.infographic.bc-red {
    background: #e40134;
}

.infographic.bc-red_dark {
    background: #701413;
}

.infographic.bc-blue_light {
    background: #169fdb;
}

.infographic.bc-blue {
    background: #213a8f;
}

.infographic.bc-blue_darker {
    background: #0d0c4a;
}

.infographic.bc-petrol {
    background: #005168;
}

.infographic.tc-black {
    color: #101020;
}

.infographic.tc-white {
    color: #fff;
}

.infographic.tc-grey_dark {
    color: #d8d8d8;
}

.infographic.tc-yellow {
    color: #f39200;
}

.infographic.tc-orange {
    color: #e94e1b;
}

.infographic.tc-red {
    color: #e40134;
}

.infographic.tc-red_dark {
    color: #701413;
}

.infographic.tc-blue_light {
    color: #169fdb;
}

.infographic.tc-blue {
    color: #213a8f;
}

.infographic.tc-blue_darker {
    color: #0d0c4a;
}

.infographic.tc-petrol {
    color: #005168;
}

.infographic__row {
    width: 100%;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media all and (min-width: 720px) {
    .infographic__row {
        -webkit-box-direction: normal;
        -webkit-box-orient: horizontal;
        -moz-box-direction: normal;
        -moz-box-orient: horizontal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }
}

.infographic__col {
    padding: 1.25em;
    width: 100%;
}

@media all and (min-width: 720px) {
    .infographic__col {
        padding: 1.875em;
    }
}

.infographic .media-wrapper {
    margin-bottom: 0.75em;
}

.infographic .icon {
    width: 5em;
}

.infographic h2 {
    margin-bottom: 0.125em;
}

.infographic h4 {
    margin-bottom: 0.33333em;
}

.people {
    display: block;
}

.people .layout__item {
    display: block;
    float: left;
}

@media all and (min-width: 360px) {
    .people .layout__item:nth-child(2n + 1) {
        clear: both;
    }
}

@media all and (min-width: 720px) {
    .people .layout__item:nth-child(2n + 1) {
        clear: none;
    }
    .people .layout__item:nth-child(4n + 1) {
        clear: both;
    }
}

.people .person__contact a {
    display: block;
    text-decoration: none;
}

.people .person__contact a:hover {
    text-decoration: underline;
}

.sai-form {
    cursor: pointer;
    padding: 1.25em;
    background: #e94e1b;
    color: #fff;
    width: 100%;
    position: fixed;
    z-index: 90;
    top: 0;
    right: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d;
    min-height: 30em;
    moz-transform-origin: top right;
    -o-transform-origin: top right;
    -ms-transform-origin: top right;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -webkit-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -moz-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -ms-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -o-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
}

@media all and (min-width: 360px) {
    .sai-form {
        padding: 2.5em;
        -webkit-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -o-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 420px) {
    .sai-form {
        width: 75%;
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 720px) {
    .sai-form {
        width: 50%;
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 960px) {
    .sai-form {
        width: 33.333333333%;
        -webkit-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
    }
}

.sai-form.js-hover,
.sai-form:hover {
    -webkit-transform: translate3d(42%, -20%, 0) rotateZ(-57.5deg);
    -moz-transform: translate3d(42%, -20%, 0) rotateZ(-57.5deg);
    -ms-transform: translate3d(42%, -20%, 0) rotateZ(-57.5deg);
    -o-transform: translate3d(42%, -20%, 0) rotateZ(-57.5deg);
    transform: translate3d(42%, -20%, 0) rotateZ(-57.5deg);
}

@media all and (min-width: 360px) {
    .sai-form.js-hover,
    .sai-form:hover {
        -webkit-transform: translate3d(38%, -12%, 0) rotateZ(-57.5deg);
        -moz-transform: translate3d(38%, -12%, 0) rotateZ(-57.5deg);
        -ms-transform: translate3d(38%, -12%, 0) rotateZ(-57.5deg);
        -o-transform: translate3d(38%, -12%, 0) rotateZ(-57.5deg);
        transform: translate3d(38%, -12%, 0) rotateZ(-57.5deg);
    }
}

@media all and (min-width: 420px) {
    .sai-form.js-hover,
    .sai-form:hover {
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
    }
}

@media all and (min-width: 720px) {
    .sai-form.js-hover,
    .sai-form:hover {
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-57.5deg);
    }
}

@media all and (min-width: 960px) {
    .sai-form.js-hover,
    .sai-form:hover {
        -webkit-transform: translate3d(36%, -5%, 0) rotateZ(-57.5deg);
        -moz-transform: translate3d(36%, -5%, 0) rotateZ(-57.5deg);
        -ms-transform: translate3d(36%, -5%, 0) rotateZ(-57.5deg);
        -o-transform: translate3d(36%, -5%, 0) rotateZ(-57.5deg);
        transform: translate3d(36%, -5%, 0) rotateZ(-57.5deg);
    }
}

.sai-form p {
    margin: 0 0 1em;
}

.sai-form input[type="radio"] {
    margin-right: 0.5em;
}

.sai-form .button-close {
    top: 1.75em;
}

@media all and (min-width: 360px) {
    .sai-form .button-close {
        top: 2.75em;
    }
}

@media all and (min-width: 720px) {
    .sai-form .button-close {
        right: 2.5em;
    }
}

.sai-form input[type="email"],
.sai-form input[type="text"],
.sai-form input[type="url"],
.sai-form textarea {
    box-sizing: border-box;
    width: 100%;
    background: #e94e1b;
    color: #fff;
    -webkit-appearance: none;
    border: none;
    padding: 0.25em 0;
    font-weight: 500;
    border-bottom: 1px solid #fff;
    border-radius: 0;
    -webkit-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.sai-form input[type="email"]::-webkit-input-placeholder,
.sai-form input[type="text"]::-webkit-input-placeholder,
.sai-form input[type="url"]::-webkit-input-placeholder,
.sai-form textarea::-webkit-input-placeholder {
    color: #fff;
}

.sai-form input[type="email"]:-ms-input-placeholder,
.sai-form input[type="text"]:-ms-input-placeholder,
.sai-form input[type="url"]:-ms-input-placeholder,
.sai-form textarea:-ms-input-placeholder {
    color: #fff;
}

.sai-form input[type="email"]::placeholder,
.sai-form input[type="text"]::placeholder,
.sai-form input[type="url"]::placeholder,
.sai-form textarea::placeholder {
    color: #fff;
}

.sai-form input[type="email"]:hover,
.sai-form input[type="text"]:hover,
.sai-form input[type="url"]:hover,
.sai-form textarea:hover {
    padding: 0.25em 0.5em;
}

.sai-form input[type="email"]:active,
.sai-form input[type="email"]:focus,
.sai-form input[type="text"]:active,
.sai-form input[type="text"]:focus,
.sai-form input[type="url"]:active,
.sai-form input[type="url"]:focus,
.sai-form textarea:active,
.sai-form textarea:focus {
    outline: 0;
    background: #d8d8d8;
    color: #101020;
    padding: 0.25em 0.5em;
}

.sai-form input[type="email"]:active::-webkit-input-placeholder,
.sai-form input[type="email"]:focus::-webkit-input-placeholder,
.sai-form input[type="text"]:active::-webkit-input-placeholder,
.sai-form input[type="text"]:focus::-webkit-input-placeholder,
.sai-form input[type="url"]:active::-webkit-input-placeholder,
.sai-form input[type="url"]:focus::-webkit-input-placeholder,
.sai-form textarea:active::-webkit-input-placeholder,
.sai-form textarea:focus::-webkit-input-placeholder {
    color: #101020;
}

.sai-form input[type="email"]:active:-ms-input-placeholder,
.sai-form input[type="email"]:focus:-ms-input-placeholder,
.sai-form input[type="text"]:active:-ms-input-placeholder,
.sai-form input[type="text"]:focus:-ms-input-placeholder,
.sai-form input[type="url"]:active:-ms-input-placeholder,
.sai-form input[type="url"]:focus:-ms-input-placeholder,
.sai-form textarea:active:-ms-input-placeholder,
.sai-form textarea:focus:-ms-input-placeholder {
    color: #101020;
}

.sai-form input[type="email"]:active::placeholder,
.sai-form input[type="email"]:focus::placeholder,
.sai-form input[type="text"]:active::placeholder,
.sai-form input[type="text"]:focus::placeholder,
.sai-form input[type="url"]:active::placeholder,
.sai-form input[type="url"]:focus::placeholder,
.sai-form textarea:active::placeholder,
.sai-form textarea:focus::placeholder {
    color: #101020;
}

.sai-form textarea {
    background: #e94e1b;
}

.sai-form select {
    color: #101020;
    box-sizing: border-box;
    width: 100%;
}

.sai-form .form-step {
    display: none;
}

.sai-form .form-step--current {
    display: block;
}

body.touch .sai-form:hover {
    -webkit-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -moz-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -ms-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    -o-transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
    transform: translate3d(42%, -20%, 0) rotateZ(-60deg);
}

@media all and (min-width: 360px) {
    body.touch .sai-form:hover {
        -webkit-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        -o-transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
        transform: translate3d(38%, -12%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 420px) {
    body.touch .sai-form:hover {
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 720px) {
    body.touch .sai-form:hover {
        -webkit-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -10%, 0) rotateZ(-60deg);
    }
}

@media all and (min-width: 960px) {
    body.touch .sai-form:hover {
        -webkit-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -moz-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -ms-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        -o-transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
        transform: translate3d(36%, -5%, 0) rotateZ(-60deg);
    }
}

body.form-open .sai-form,
body.form-open.touch .sai-form {
    cursor: default;
    top: 4em;
    -webkit-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -moz-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -ms-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -o-transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    transition: transform 1s cubic-bezier(0.18, 1, 0.21, 1), top 1s cubic-bezier(0.18, 1, 0.21, 1);
    -webkit-transform: translate3d(0, 0, 0) rotateZ(0);
    -moz-transform: translate3d(0, 0, 0) rotateZ(0);
    -ms-transform: translate3d(0, 0, 0) rotateZ(0);
    -o-transform: translate3d(0, 0, 0) rotateZ(0);
    transform: translate3d(0, 0, 0) rotateZ(0);
}

@media all and (min-width: 720px) {
    body.form-open .sai-form,
    body.form-open.touch .sai-form {
        top: 5em;
    }
}

body.form-open .sai-form:before,
body.form-open.touch .sai-form:before {
    opacity: 0;
}

body.form-open .sai-form:hover,
body.form-open.touch .sai-form:hover {
    -webkit-transform: translate3d(0, 0, 0) rotateZ(0);
    -moz-transform: translate3d(0, 0, 0) rotateZ(0);
    -ms-transform: translate3d(0, 0, 0) rotateZ(0);
    -o-transform: translate3d(0, 0, 0) rotateZ(0);
    transform: translate3d(0, 0, 0) rotateZ(0);
}

.service {
    background: #dae0e3;
    padding: 1.25em 0;
    margin-bottom: 2.5em;
}

.service--blue,
.service--discovery {
    background: #67c6f0;
}

.service--development,
.service--orange {
    background: #f29678;
}

.service--manufacturing,
.service--yellow {
    background: #ffbd5a;
}

.service .layout__section {
    margin-bottom: 0;
}

.link-slide--blue .link-slide__item-link,
.link-slide--discovery .link-slide__item-link {
    background: #67c6f0;
}

.link-slide--development .link-slide__item-link,
.link-slide--orange .link-slide__item-link {
    background: #f29678;
}

.link-slide--manufacturing .link-slide__item-link,
.link-slide--yellow .link-slide__item-link {
    background: #ffbd5a;
}

.info-box {
    background: #213a8f;
}

.link-slide {
    width: 100%;
    overflow-x: auto;
    padding: 0;
    -webkit-overflow-scrolling: touch;
}

.link-slide__col {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-direction: normal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.link-slide__wrapper {
    width: auto;
    padding: 0 0.625em;
    list-style: none;
}

@media all and (min-width: 720px) {
    .link-slide__wrapper {
        padding: 0 1.875em;
    }
}

.link-slide__item {
    width: 15em;
    min-width: 15em;
    padding: 0.625em;
    display: inline-block;
    min-height: 20em;
}

.link-slide__item-link {
    text-decoration: none;
    padding: 1.25em 1.25em 1.25em;
    background: #dae0e3;
    flex: 0 1;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    opacity: 1;
    -webkit-transition: opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: opacity 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    justify-content: space-between;
}

.link-slide__item-link:hover {
    opacity: 0.85;
    -webkit-transition: opacity 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -moz-transition: opacity 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -ms-transition: opacity 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -o-transition: opacity 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: opacity 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.link-slide__item-link:hover img {
    -webkit-transform: translate3d(0, 0, 0) scale(1.02);
    -moz-transform: translate3d(0, 0, 0) scale(1.02);
    -ms-transform: translate3d(0, 0, 0) scale(1.02);
    -o-transform: translate3d(0, 0, 0) scale(1.02);
    transform: translate3d(0, 0, 0) scale(1.02);
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.link-slide__item-link .media-wrapper {
    margin: 0.5em 0;
    overflow: hidden;
}

.link-slide__item--blue .link-slide__item-link,
.link-slide__item--discovery .link-slide__item-link {
    background: #67c6f0;
}

.link-slide__item--development .link-slide__item-link,
.link-slide__item--orange .link-slide__item-link {
    background: #f29678;
}

.link-slide__item--manufacturing .link-slide__item-link,
.link-slide__item--yellow .link-slide__item-link {
    background: #ffbd5a;
}

.link-slide--blue .link-slide__item-link,
.link-slide--discovery .link-slide__item-link {
    background: #67c6f0;
}

.link-slide--development .link-slide__item-link,
.link-slide--orange .link-slide__item-link {
    background: #f29678;
}

.link-slide--manufacturing .link-slide__item-link,
.link-slide--yellow .link-slide__item-link {
    background: #ffbd5a;
}

.slideshow {
    overflow: hidden;
    position: relative;
    display: block;
    width: 100%;
}

.slideshow__item {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: opacity 0s 0.6s linear;
    -moz-transition: opacity 0s 0.6s linear;
    -ms-transition: opacity 0s 0.6s linear;
    -o-transition: opacity 0s 0.6s linear;
    transition: opacity 0s 0.6s linear;
}

.slideshow__item--current {
    z-index: 2;
    position: relative;
    opacity: 1;
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.some_menu {
    margin: 0;
    padding: 0;
}

.some_menu__item {
    width: 1.5em;
    height: 1.5em;
    margin-right: 0.66667em;
    display: inline-block;
}

.some_menu__item a {
    text-decoration: none;
}

.some_menu__item a svg {
    width: 1.5em;
    height: auto;
}

.some-list {
    margin: 0.5em 0 0;
    padding: 0;
}

.some-list__item {
    display: inline-block;
    margin-right: 1em;
    margin-bottom: 1em;
}

.some-list__item a {
    text-decoration: none;
}

.some-list__item a svg {
    width: 1.5em;
    height: auto;
}

.some-list__item a:hover {
    text-decoration: underline;
}

.specials__bg-red {
    background: #e40134;
}

.newsletterbanner.newsletterbanner--cookie {
    width: 85%;
    top: 50%;
    left: 50%;
    height: auto;
    box-sizing: border-box;
    padding: 1em;
    bottom: auto;
    text-align: left;
    max-height: 95%;
    overflow-y: auto;
    overflow-x: hidden;
    margin: 0;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    z-index: 210;
    -webkit-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
    box-shadow: 0 0 0 100em rgba(0, 0, 0, 0.4);
    opacity: 1;
}

:lang(jp) .newsletterbanner.newsletterbanner--cookie {
    text-align: justify;
}

@media all and (min-width: 720px) {
    .newsletterbanner.newsletterbanner--cookie {
        width: 75%;
        padding: 2em;
    }
}

@media all and (min-width: 960px) {
    .newsletterbanner.newsletterbanner--cookie {
        width: 50%;
    }
}

.newsletterbanner.newsletterbanner--cookie .newsletterbanner--cookie__button-wrapper {
    text-align: right;
}

.newsletterbanner.newsletterbanner--cookie.newsletterbanner--hide {
    opacity: 0;
}

.newsletterbanner.newsletterbanner--cookie .newsletterbanner__text p {
    margin-bottom: 0.75em;
}


.blog-title-container {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    width: 100%;
    padding: 15px;

    }
.flex-row-container {
    background-color: #F4F4EA;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;    
    }
@media all and (min-width: 100px)
{
    .flex-row-container img{
        display: none!important;
        width: 100%;
    }
    .blog-title-container img{
        display: block!important;
        width: 80vw;
    }

    .flex-row-container>.flex-row-item {
        flex: 1 10 10%;

    }

}


@media all and (min-width: 960px)
{    

    .flex-row-container img{
        display: block!important;
        width: 100%;
    }
    .blog-title-container img{
        display: none!important;
        width: 80vw;
    }

    .flex-row-container>.flex-row-item {
        flex: 1 1 30%;

    }

}
@media (min-width: 768px){
   .news-section .single_blog_image .media-wrapper {
        width: 30%;
        padding-right: 30px;
        padding-bottom: 15px;
        float: left;
    }
    .single_blog_text{
        padding-right: 20px;
    }
}
.news-section .single_blog_image .media-wrapper img {
  width: 100%;
  height: auto; !important;
  object-fit: contain !important;
}
.news-section-title {
    padding: 0 1.25em;
}