/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* html {
 line-height: 1.15;
 -webkit-text-size-adjust: 100%
 }
 body {
 margin: 0
 } */
/*   * {
 font-family: 'Montserrat';
 } */
main {
  display: block;
  overflow: hidden; }

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

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

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

a {
  background-color: transparent; }

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

b, strong {
  font-weight: bolder; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button, input {
  overflow: visible; }

button, select {
  text-transform: none; }

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

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

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

fieldset {
  padding: 0.35em 0.75em 0.625em; }

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

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

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

[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; }

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

details {
  display: block; }

summary {
  display: list-item; }

[hidden], template {
  display: none; }

.text-inherit {
  font: inherit;
  background: inherit;
  text-transform: inherit; }

.text-inherit, .text-inherit:hover {
  color: inherit;
  text-decoration: inherit; }

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.h1, .h2, .h3, h1, h2, h3 {
  font-family: 'Montserrat';
  font-weight: 900;
  color: #000; }

.h1, h1 {
  font-size: 1.875rem;
  line-height: 0.66667;
  letter-spacing: 0; }

@media (min-width: 1440px) {
  .h1, h1 {
    font-size: 3.4375rem;
    line-height: 1.21818; } }

.h1, h1 {
  font-weight: 900; }

.h2, h2 {
  font-size: 1.5625rem;
  line-height: 1.2;
  font-weight: 900; }

.accordion__label, .h3, h3 {
  line-height: 1.2; }

.accordion__label, .h3, .h4, h3, h4 {
  font-size: 1.25rem;
  font-weight: 900; }

.h4, h4 {
  line-height: 1;
  font-family: 'Montserrat'; }

.h5, h5 {
  font-size: 0.75rem;
  line-height: 1.25;
  font-weight: 900; }

.p, .p a, .p p, body, p {
  font-size: 0.9375rem;
  line-height: 1.73333;
  font-weight: 400; }

.link, .p, .p a, .p p, .wysiwyg a, body, p, p a {
  font-family: 'Montserrat'; }

.link, .wysiwyg a, p a {
  font-size: 0.875rem;
  line-height: 1.42857;
  transition-property: background-size;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out;
  background-repeat: no-repeat;
  text-decoration: underline;
  background-image: linear-gradient(90deg, var(--c-gray-light-95) 0, var(--c-gray-light-95));
  background-size: 0 100%; }

.link:hover, .wysiwyg a:hover, p a:hover {
  background-size: 100% 100%; }

.bold {
  font-weight: 700; }

.semibold {
  font-weight: 600; }

.medium {
  font-weight: 500; }

.button {
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  text-decoration: none;
  font-family: 'Montserrat'; }

.headline {
  font-family: 'Montserrat'; }

.container {
  padding-left: 12px;
  padding-right: 12px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  max-width: 100%; }

.container--full {
  max-width: 100%;
  padding: 0;
  margin: 0 auto; }

[type=button], [type=reset], [type=submit], button {
  margin: 0;
  padding: 0;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  cursor: pointer; }

[type=button]:focus, [type=reset]:focus, [type=submit]:focus, button:focus {
  outline: none;
  box-shadow: none; }

[type=button]:hover, [type=reset]:hover, [type=submit]:hover, button:hover {
  box-shadow: none; }

.button {
  transition-property: all;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out;
  display: inline-block;
  min-width: 200px;
  padding: 16px 29px 13px;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 5px;
  color: #fff;
  background: #003c9d;
  border: 1px solid #003c9d; }

.button:hover {
  background: #fff;
  color: #003c9d;
  border-color: #003c9d;
  box-shadow: none;
  text-decoration: none; }

.button:disabled {
  background: #00adb5;
  color: #000;
  border-color: #00adb5; }

.button--secondary {
  padding: 16px 29px 15px;
  background: #003c9d;
  color: #fff;
  border: 1px solid #003c9d; }

.button--secondary:hover {
  background: #fff;
  color: #003c9d;
  border-color: #003c9d; }

* {
  box-sizing: border-box; }

figure {
  margin: 0;
  padding: 0; }

img {
  max-width: 100%;
  height: auto; }

figure, h1, h2, h3, h4, h5, h6, ol, p, ul {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style-type: none; }

hr {
  margin: 0;
  padding: 0;
  border: none;
  height: 1px;
  background-color: var(--c-border); }

.hide {
  display: none; }

a, input[type=submit] {
  cursor: pointer; }

.grid {
  flex-direction: row;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap; }

@media all {
  .grid {
    margin-left: -6px;
    margin-right: -6px; } }

@media (min-width: 600px) {
  .grid {
    margin-left: -6px;
    margin-right: -6px; } }

@media (min-width: 768px) {
  .grid {
    margin-left: -9px;
    margin-right: -9px; } }

@media (min-width: 1024px) {
  .grid {
    margin-left: -12px;
    margin-right: -12px; } }

.grid {
  display: flex; }

@media all {
  .grid__item {
    padding-left: 6px;
    padding-right: 6px; } }

@media (min-width: 600px) {
  .grid__item {
    padding-left: 6px;
    padding-right: 6px; } }

@media (min-width: 768px) {
  .grid__item {
    padding-left: 9px;
    padding-right: 9px; } }

@media (min-width: 1024px) {
  .grid__item {
    padding-left: 12px;
    padding-right: 12px; } }

.grid__item {
  width: 100%; }

.grid__item--order-1 {
  order: 1; }

.grid__item--order-2 {
  order: 2; }

.grid__item--order-3 {
  order: 3; }

@media all {
  .grid--no-gutter {
    margin-left: 0;
    margin-right: 0; } }

@media all {
  .grid--no-gutter > .grid__item {
    padding-left: 0;
    padding-right: 0; } }

@media (min-width: 1024px) {
  .grid--2 > .grid__item {
    width: 50%; } }

@media (min-width: 1024px) {
  .grid--3 > .grid__item {
    width: 33.333333%; } }

.grid--4 > .grid__item {
  width: 50%; }

@media (min-width: 1024px) {
  .grid--4 > .grid__item {
    width: 25%; } }

@media (max-width: 1023px) {
  .grid--2-mobile > .grid__item {
    width: 50%; } }

@media (min-width: 1024px) {
  .grid--recrute > .grid__item:first-child {
    width: 40%;
    max-width: 498px; } }

@media (min-width: 1024px) {
  .grid--recrute > .grid__item:last-child {
    width: 60%; } }

@media (min-width: 1367px) {
  .grid--recrute > .grid__item:last-child {
    width: calc(100% - 498px);
    padding-left: 64px;
    padding-right: 183px; } }

.fade-enter-active, .fade-leave-active {
  transition-property: opacity;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out; }

.fade-enter, .fade-leave-to {
  opacity: 0; }

.slide-right-enter-active, .slide-right-leave-active {
  transition-property: transform;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out; }

.slide-right-enter, .slide-right-leave-to {
  transform: translateX(-100%); }

.slide-left-enter-active, .slide-left-leave-active {
  transition-property: left;
  transition-duration: 0.3s;
  transition-timing-function: ease-in-out; }

.slide-left-enter, .slide-left-leave-to {
  left: 100% !important; }

.slide-left-enter-to, .slide-left-leave {
  left: 0 !important; }

.header {
  padding: 50px 0;
  text-align: center; }

.hero {
  position: relative;
  margin: 0 0 60px;
  color: #003c9d;
  overflow: hidden; }

.hero:after, .hero:before {
  content: "";
  position: absolute;
  /* z-index: -1; */
  top: 0;
  bottom: 0;
  /* left: 0; */
  display: block;
  pointer-events: none; }

.hero:before {
  left: auto;
  border-bottom: 17vw solid transparent;
  border-right: 100vw solid rgba(75, 63, 180, 0.05);
  right: 70%; }

.hero:after {
  left: 30%;
  border-bottom: 8vw solid transparent;
  border-left: 100vw solid rgba(75, 63, 180, 0.05); }

.hero--container {
  padding: 0 12px 30px; }

@media (min-width: 1024px) {
  .hero--container {
    padding: 0 30px; } }

@media (min-width: 1367px) {
  .hero--container {
    padding: 0 98px; } }

.hero__title {
  font-size: 1.875rem;
  line-height: 0.66667;
  letter-spacing: 0; }

@media (min-width: 1440px) {
  .hero__title {
    font-size: 3.4375rem;
    line-height: 1.21818; } }

.hero__title {
  font-weight: 900;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  color: #003c9d;
  text-transform: none; }

@media (min-width: 768px) {
  .hero__title {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap; } }

@media (min-width: 1024px) {
  .hero__title {
    justify-content: flex-start; } }

.hero__title svg {
  flex-direction: row;
  width: 88px;
  height: 90px;
  margin-top: 20px; }

@media (min-width: 768px) {
  .hero__title svg {
    margin: 0 0 0 12px; } }

.hero__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  padding: 36px 0; }

@media (min-width: 1024px) {
  .hero__wrapper {
    flex-direction: row;
    align-items: flex-start;
    padding: 60px 0 90px; } }

@media (min-width: 1367px) {
  .hero__wrapper {
    flex-direction: row;
    align-items: flex-start;
    padding: 105px 0 133px; } }

@media (min-width: 1024px) {
  .hero__content {
    max-width: 962px; } }

.hero__ctas {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  flex: 1 0 auto;
  margin-top: 30px; }

@media (min-width: 1024px) {
  .hero__ctas {
    padding-left: 50px;
    margin-top: 0;
    align-items: flex-start; } }

@media (min-width: 1440px) {
  .hero__ctas {
    padding-left: 256px; } }

.hero__ctas .button {
  margin-top: 20px; }

@media (min-width: 1024px) {
  .hero__ctas .button {
    margin-top: 40px; } }

.hero__ctas .button:first-child {
  margin-top: 0; }

.hero__description {
  margin-top: 30px; }

@media (min-width: 1024px) {
  .hero__description {
    margin-top: 42px; } }

.hero__description-label {
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 900; }

.hero__description-detail {
  font-size: 15px;
  line-height: 1.73333;
  font-family: 'Montserrat';
  color: #000;
  font-weight: 600;
  margin-top: 12px; }

@media (min-width: 1024px) {
  .hero__description-detail {
    margin-top: 23px; } }

@media (min-width: 1367px) {
  .hero__description-detail {
    margin-top: 29px; } }

.hero__description-detail, .hero__description-label {
  color: #003c9d; }

@media (max-width: 1023px) {
  .hero__description-detail, .hero__description-label {
    text-align: center; } }

.recrute-sidebar {
  padding: 58px 12px;
  background: rgba(75, 63, 180, 0.05); }

@media (min-width: 1024px) {
  .recrute-sidebar {
    margin-bottom: 60px; } }

@media (min-width: 1367px) {
  .recrute-sidebar {
    padding: 58px 45px 54px 91px; } }

.recrute-sidebar__content {
  margin: 27px 0 0 26px;
  list-style: none; }

.recrute-sidebar__item {
  font-size: 15px;
  line-height: 1.73333;
  font-family: 'Montserrat';
  font-weight: 300;
  position: relative;
  margin-top: 26px;
  color: #000; }

.recrute-sidebar__item:before {
  content: "";
  position: absolute;
  top: 8px;
  left: -26px;
  border: 5px solid #003c9d;
  border-radius: 50%; }

.recrute-sidebar__item:first-child {
  margin-top: 0; }

.recrute-sidebar__item:first-child:before, .recrute-sidebar__item:nth-child(3n+4):before {
  border-color: #f8b500; }

.recrute-sidebar__item:nth-child(2):before, .recrute-sidebar__item:nth-child(3n+5):before {
  border-color: #f0134d; }

.recrute-sidebar__item:nth-child(3n):before {
  border-color: #00adb5; }

.recrute-sidebar__title {
  font-size: 1.5625rem;
  line-height: 1.2;
  font-weight: 900;
  color: #003c9d;
  text-transform: none; }

.recrute-sidebar__description {
  margin-top: 20px;
  font-size: 15px;
  font-weight: 300; }

.recrute-sidebar__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 67px; }

.recrute-sidebar__footer-title {
  font-size: 1.5625rem;
  line-height: 1.2;
  font-weight: 900;
  color: #003c9d; }

.recrute-sidebar__footer-content {
  margin-top: 17px; }

.recrute-sidebar__footer-content, .recrute-sidebar__footer-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap; }

.recrute-sidebar__footer-item {
  width: 63px;
  height: 61px;
  background: #003c9d;
  border-radius: 50%; }
  .recrute-sidebar__footer-item:hover {
    box-shadow: 0 3px 6px rgba(0, 60, 157, 0.45); }

.recrute-sidebar__footer-item:nth-child(2) {
  transform: translateX(-7px); }

.recrute-sidebar__footer-item:last-child {
  transform: translateX(-14px); }

.recrute {
  margin: 0 0 60px;
  overflow: hidden; }

.recrute-nav {
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 900;
  font-weight: 400;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin: 30px 0;
  color: #003c9d; }

@media (min-width: 1024px) {
  .recrute-nav {
    margin: 0 0 30px; } }

.recrute-nav__item {
  padding: 10px 20px;
  cursor: pointer; }

.recrute-nav__item.is-active, .recrute-nav__item:hover {
  color: #003c9d; }

.recrute-nav__item.is-active .recrute-nav__button, .recrute-nav__item:hover .recrute-nav__button {
  border-color: #003c9d;
  line-height: 21px; }

.recrute-nav__button {
  border-bottom: 5px solid transparent;
  color: #003c9d;
  text-decoration: none;
  font-size: 20px;
  font-family: 'Montserrat'; }

.recrute-info {
  display: none;
  margin-top: 41px;
  padding: 61px 20px 30px;
  background: rgba(75, 63, 180, 0.05);
  border-radius: 15px;
  margin: 20px;
  cursor: pointer; }
  .recrute-info:hover {
    box-shadow: 0px 6px 48px 0 rgba(75, 63, 180, 0.4); }

.recrute-info.is-active {
  display: block; }

h2 {
  font-style: normal !important; }

@media (min-width: 1024px) {
  .recrute-info {
    padding: 61px 45px 30px; } }

.recrute-info__details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  padding: 25px 0 18px; }

@media (min-width: 1440px) {
  .recrute-info__details {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap; } }

.recrute-info__ctas {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 13px; }

.recrute-info__title {
  font-size: 1.5625rem;
  line-height: 1.2;
  font-weight: 900;
  color: #003c9d;
  text-transform: none; }

.recrute-info__cta {
  /* font-size: .75rem;
   line-height: 1.25; */
  font-weight: 900;
  color: #003c9d;
  text-decoration: none;
  font-size: 15px; }

.recrute-info__cta:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #003c9d;
  border-radius: 3px;
  transform: rotate(89.72deg); }

.recrute-info__cta svg {
  position: relative;
  top: 3px;
  width: 18px;
  height: 18px;
  color: #003c9d; }

.recrute-info__item {
  margin-top: 20px;
  text-decoration: none;
  color: #000;
  font-size: 15px; }

@media (min-width: 1440px) {
  .recrute-info__item {
    margin-top: 0;
    margin-right: 40px; } }

.recrute-info__item:first-child {
  margin-top: 0;
  margin-left: 0; }

.recrute-info__item:last-child {
  margin-right: 0; }

.recrute-info__item img {
  position: relative;
  top: 7px;
  padding-right: 16px; }

.recrute-info__heading {
  font-size: 1.125rem;
  line-height: 1.22222;
  font-family: 'Montserrat';
  font-weight: 900;
  display: inline-block;
  padding: 5px 26px;
  margin-top: 50px;
  color: #fff;
  background: #f0134d;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  border-radius: 10px;
  transform: matrix(1, -0.07, 0.07, 1, 0, 0); }

.recrute-info__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 26px; }

@media (min-width: 768px) {
  .recrute-info__link {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap; } }

.recrute-info__description {
  margin: 39px 0 0 18px;
  font-size: 15px; }

@media (min-width: 1024px) {
  .recrute-info__description {
    margin: 39px 0 0 37px; } }

.recrute-info__description h4 {
  margin: 20px 0 15px; }

.recrute-info__description p {
  margin: 19px 0 15px; }

.recrute-info__description li {
  position: relative;
  padding: 9px 0 10px 10px;
  list-style: none;
  font-size: 15px; }

.recrute-info__description li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  background: #000;
  transform: translateX(-50%); }

@media (min-width: 1024px) {
  .recrute--detail .recrute-info {
    padding: 61px 45px 45px; } }

.recrute__show-all.is-active .recrute-info {
  display: block;
  margin-top: 18px; }

.recrute__show-all.is-active .recrute-info:first-child {
  margin-top: 41px; }

@media (min-width: 1024px) {
  .recrute__show-all.is-active .recrute-info {
    margin-top: 24px; } }
