@media only screen and (max-width: 767px) {
  .grid-type-1 .row {
    margin: -7.5px; }
  .grid-type-1 .col,
  .grid-type-1 [class*=col-] {
    padding: 7.5px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-1 .row {
    margin: -10px; }
  .grid-type-1 .col,
  .grid-type-1 [class*=col-] {
    padding: 10px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-1 .row {
    margin: -4px; }
  .grid-type-1 .col,
  .grid-type-1 [class*=col-] {
    padding: 4px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-1 .row {
    margin: -3px; }
  .grid-type-1 .col,
  .grid-type-1 [class*=col-] {
    padding: 3px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-1 .row {
    margin: -4px; }
  .grid-type-1 .col,
  .grid-type-1 [class*=col-] {
    padding: 4px; } }

@media only screen and (max-width: 767px) {
  .grid-type-2 {
    padding-left: 15px;
    padding-right: 15px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-2 {
    padding-left: 34px;
    padding-right: 34px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-2 {
    padding-left: 128px;
    padding-right: 128px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-2 {
    padding-left: 257px;
    padding-right: 257px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-2 {
    padding-left: 302px;
    padding-right: 302px; } }

@media only screen and (max-width: 767px) {
  .grid-type-2 .row {
    margin: -6px; }
  .grid-type-2 .col,
  .grid-type-2 [class*=col-] {
    padding: 6px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-2 .row {
    margin: -10px; }
  .grid-type-2 .col,
  .grid-type-2 [class*=col-] {
    padding: 10px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-2 .row {
    margin: -12px; }
  .grid-type-2 .col,
  .grid-type-2 [class*=col-] {
    padding: 12px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-2 .row {
    margin: -3px; }
  .grid-type-2 .col,
  .grid-type-2 [class*=col-] {
    padding: 3px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-2 .row {
    margin: -12px; }
  .grid-type-2 .col,
  .grid-type-2 [class*=col-] {
    padding: 12px; } }

@media only screen and (max-width: 767px) {
  .grid-type-3 {
    padding-left: 35px;
    padding-right: 35px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-3 {
    padding-left: 34px;
    padding-right: 34px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-3 {
    padding-left: 102px;
    padding-right: 102px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-3 {
    padding-left: 222px;
    padding-right: 222px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-3 {
    padding-left: 302px;
    padding-right: 302px; } }

@media only screen and (max-width: 767px) {
  .grid-type-3 .row {
    margin: -20px; }
  .grid-type-3 .col,
  .grid-type-3 [class*=col-] {
    padding: 20px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-3 .row {
    margin: -10px; }
  .grid-type-3 .col,
  .grid-type-3 [class*=col-] {
    padding: 10px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-3 .row {
    margin: -6px; }
  .grid-type-3 .col,
  .grid-type-3 [class*=col-] {
    padding: 6px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-3 .row {
    margin: -8px; }
  .grid-type-3 .col,
  .grid-type-3 [class*=col-] {
    padding: 8px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-3 .row {
    margin: -8px; }
  .grid-type-3 .col,
  .grid-type-3 [class*=col-] {
    padding: 8px; } }

@media only screen and (max-width: 767px) {
  .grid-type-4 {
    padding-left: 35px;
    padding-right: 35px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-4 {
    padding-left: 74px;
    padding-right: 74px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-4 {
    padding-left: 0;
    padding-right: 0; } }

@media only screen and (min-width: 1440px) {
  .grid-type-4 {
    padding-left: 40px;
    padding-right: 40px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-4 {
    padding-left: 42px;
    padding-right: 42px; } }

@media only screen and (max-width: 767px) {
  .grid-type-4 .row {
    margin: -15px; }
  .grid-type-4 .col,
  .grid-type-4 [class*=col-] {
    padding: 15px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-4 .row {
    margin: -10px; }
  .grid-type-4 .col,
  .grid-type-4 [class*=col-] {
    padding: 10px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-4 .row {
    margin: -4px; }
  .grid-type-4 .col,
  .grid-type-4 [class*=col-] {
    padding: 4px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-4 .row {
    margin: -20px; }
  .grid-type-4 .col,
  .grid-type-4 [class*=col-] {
    padding: 20px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-4 .row {
    margin: -26px; }
  .grid-type-4 .col,
  .grid-type-4 [class*=col-] {
    padding: 26px; } }

@media only screen and (max-width: 767px) {
  .grid-type-5 {
    padding-left: 20px;
    padding-right: 20px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-5 {
    margin-left: -38px;
    margin-right: -38px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-5 {
    margin-left: -51px;
    margin-right: -51px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-5 {
    margin-left: -51.5px;
    margin-right: -51.5px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-5 {
    margin-left: -54.5px;
    margin-right: -54.5px; } }

@media only screen and (max-width: 767px) {
  .grid-type-5 .row {
    margin: -10px; }
  .grid-type-5 .col,
  .grid-type-5 [class*=col-] {
    padding: 10px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-5 .row {
    margin: -19px; }
  .grid-type-5 .col,
  .grid-type-5 [class*=col-] {
    padding: 19px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-5 .row {
    margin: -29px; }
  .grid-type-5 .col,
  .grid-type-5 [class*=col-] {
    padding: 29px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-5 .row {
    margin: -32.5px; }
  .grid-type-5 .col,
  .grid-type-5 [class*=col-] {
    padding: 32.5px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-5 .row {
    margin: -35px; }
  .grid-type-5 .col,
  .grid-type-5 [class*=col-] {
    padding: 35px; } }

@media only screen and (max-width: 767px) {
  .grid-type-6 {
    padding-left: 20px;
    padding-right: 20px; } }

@media only screen and (max-width: 767px) {
  .grid-type-6 .row {
    margin: -20px; }
  .grid-type-6 .col,
  .grid-type-6 [class*=col-] {
    padding: 20px; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .grid-type-6 .row {
    margin: -1.5px; }
  .grid-type-6 .col,
  .grid-type-6 [class*=col-] {
    padding: 1.5px; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .grid-type-6 .row {
    margin: -3px; }
  .grid-type-6 .col,
  .grid-type-6 [class*=col-] {
    padding: 3px; } }

@media only screen and (min-width: 1440px) {
  .grid-type-6 .row {
    margin: -3.5px; }
  .grid-type-6 .col,
  .grid-type-6 [class*=col-] {
    padding: 3.5px; } }

@media only screen and (min-width: 1800px) {
  .grid-type-6 .row {
    margin: -3.5px; }
  .grid-type-6 .col,
  .grid-type-6 [class*=col-] {
    padding: 3.5px; } }

.bg-none {
  background-color: transparent !important; }

.bg-white {
  background-color: #fff !important; }

.bg-pink {
  background-color: #fce5eb !important; }

@media (--xs-up) {
  .bg-xs-none {
    background-color: transparent !important; } }

@media (--xs-up) {
  .bg-xs-white {
    background-color: #fff !important; } }

@media (--xs-up) {
  .bg-xs-pink {
    background-color: #fce5eb !important; } }

@media (--sm-up) {
  .bg-sm-none {
    background-color: transparent !important; } }

@media (--sm-up) {
  .bg-sm-white {
    background-color: #fff !important; } }

@media (--sm-up) {
  .bg-sm-pink {
    background-color: #fce5eb !important; } }

@media only screen and (min-width: 768px) {
  .bg-md-none {
    background-color: transparent !important; } }

@media only screen and (min-width: 768px) {
  .bg-md-white {
    background-color: #fff !important; } }

@media only screen and (min-width: 768px) {
  .bg-md-pink {
    background-color: #fce5eb !important; } }

@media only screen and (min-width: 1200px) {
  .bg-lg-none {
    background-color: transparent !important; } }

@media only screen and (min-width: 1200px) {
  .bg-lg-white {
    background-color: #fff !important; } }

@media only screen and (min-width: 1200px) {
  .bg-lg-pink {
    background-color: #fce5eb !important; } }

@media only screen and (min-width: 1440px) {
  .bg-xl-none {
    background-color: transparent !important; } }

@media only screen and (min-width: 1440px) {
  .bg-xl-white {
    background-color: #fff !important; } }

@media only screen and (min-width: 1440px) {
  .bg-xl-pink {
    background-color: #fce5eb !important; } }

@media only screen and (min-width: 1800px) {
  .bg-xxl-none {
    background-color: transparent !important; } }

@media only screen and (min-width: 1800px) {
  .bg-xxl-white {
    background-color: #fff !important; } }

@media only screen and (min-width: 1800px) {
  .bg-xxl-pink {
    background-color: #fce5eb !important; } }

[class*="m-ratio--"] {
  display: block;
  overflow: hidden; }
  [class*="m-ratio--"]::before {
    content: "";
    float: left; }

@media only screen and (min-width: 1440px) {
  .m-ratio--hero::before {
    padding-bottom: 48.75%; } }

@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .m-ratio--hero::before {
    padding-bottom: 56.33333%; } }

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .m-ratio--hero::before {
    padding-bottom: 69.01042%; } }

@media only screen and (max-width: 767px) {
  .m-ratio--hero::before {
    padding-bottom: 162.5%; } }

.height-100 {
  max-height: 100px !important; }

.height-200 {
  max-height: 200px !important; }

.height-300 {
  max-height: 300px !important; }

.height-400 {
  max-height: 400px !important; }

.height-500 {
  max-height: 500px !important; }

.height-600 {
  max-height: 600px !important; }

.height-700 {
  max-height: 700px !important; }

.height-800 {
  max-height: 800px !important; }

@media (--xs-up) {
  .height-xs-100 {
    max-height: 100px !important; } }

@media (--xs-up) {
  .height-xs-200 {
    max-height: 200px !important; } }

@media (--xs-up) {
  .height-xs-300 {
    max-height: 300px !important; } }

@media (--xs-up) {
  .height-xs-400 {
    max-height: 400px !important; } }

@media (--xs-up) {
  .height-xs-500 {
    max-height: 500px !important; } }

@media (--xs-up) {
  .height-xs-600 {
    max-height: 600px !important; } }

@media (--xs-up) {
  .height-xs-700 {
    max-height: 700px !important; } }

@media (--xs-up) {
  .height-xs-800 {
    max-height: 800px !important; } }

@media (--sm-up) {
  .height-sm-100 {
    max-height: 100px !important; } }

@media (--sm-up) {
  .height-sm-200 {
    max-height: 200px !important; } }

@media (--sm-up) {
  .height-sm-300 {
    max-height: 300px !important; } }

@media (--sm-up) {
  .height-sm-400 {
    max-height: 400px !important; } }

@media (--sm-up) {
  .height-sm-500 {
    max-height: 500px !important; } }

@media (--sm-up) {
  .height-sm-600 {
    max-height: 600px !important; } }

@media (--sm-up) {
  .height-sm-700 {
    max-height: 700px !important; } }

@media (--sm-up) {
  .height-sm-800 {
    max-height: 800px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-100 {
    max-height: 100px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-200 {
    max-height: 200px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-300 {
    max-height: 300px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-400 {
    max-height: 400px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-500 {
    max-height: 500px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-600 {
    max-height: 600px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-700 {
    max-height: 700px !important; } }

@media only screen and (min-width: 768px) {
  .height-md-800 {
    max-height: 800px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-100 {
    max-height: 100px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-200 {
    max-height: 200px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-300 {
    max-height: 300px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-400 {
    max-height: 400px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-500 {
    max-height: 500px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-600 {
    max-height: 600px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-700 {
    max-height: 700px !important; } }

@media only screen and (min-width: 1200px) {
  .height-lg-800 {
    max-height: 800px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-100 {
    max-height: 100px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-200 {
    max-height: 200px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-300 {
    max-height: 300px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-400 {
    max-height: 400px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-500 {
    max-height: 500px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-600 {
    max-height: 600px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-700 {
    max-height: 700px !important; } }

@media only screen and (min-width: 1440px) {
  .height-xl-800 {
    max-height: 800px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-100 {
    max-height: 100px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-200 {
    max-height: 200px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-300 {
    max-height: 300px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-400 {
    max-height: 400px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-500 {
    max-height: 500px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-600 {
    max-height: 600px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-700 {
    max-height: 700px !important; } }

@media only screen and (min-width: 1800px) {
  .height-xxl-800 {
    max-height: 800px !important; } }

[class*='height-'] {
  overflow: hidden; }

.a-opacity-hover {
  opacity: 1;
  transition: opacity ease-out 0.4s; }
  .non-touch .a-opacity-hover:hover {
    opacity: 0.5; }
  .a-opacity-hover:hover {
    text-decoration: none; }

.a-opacity-scroll {
  opacity: 1;
  transition: opacity ease-out 0.4s; }
  .a-opacity-scroll:not(.m-animate) {
    opacity: 0; }

[class*='a-move-'],
[class*='a-move-'] .a-element {
  transition: ease-out 1.2s;
  transition-property: transform, opacity;
  transition-duration: 1s, 2s; }

[class*='a-move-'] .a-element:nth-child(1n) {
  transition-delay: 0.4s; }

[class*='a-move-'] .a-element:nth-child(2n) {
  transition-delay: 0.8s; }

[class*='a-move-'] .a-element:nth-child(3n) {
  transition-delay: 1.2s; }

[class*='a-move-'] .a-element:nth-child(4n) {
  transition-delay: 1.6s; }

[class*='a-move-'] .a-element:nth-child(5n) {
  transition-delay: 2s; }

[class*='a-move-'] .a-element:nth-child(6n) {
  transition-delay: 2.4s; }

[class*='a-move-'] .a-element:nth-child(7n) {
  transition-delay: 2.8s; }

[class*='a-move-'] .a-element:nth-child(8n) {
  transition-delay: 3.2s; }

[class*='a-move-'] .a-element:nth-child(9n) {
  transition-delay: 3.6s; }

[class*='a-move-'] .a-element:nth-child(10n) {
  transition-delay: 4s; }

[class*='a-move-']:not(.m-animate) {
  opacity: 0; }
  [class*='a-move-']:not(.m-animate) .a-element {
    opacity: 0; }

.a-move-top:not(.m-animate) {
  transform: translate3d(0, 20px, 0); }
  .a-move-top:not(.m-animate) .a-element {
    transform: translate3d(0, 20px, 0); }

@media (--xs-up) {
  .a-move-xs-top:not(.m-animate) {
    transform: translate3d(0, 20px, 0); }
    .a-move-xs-top:not(.m-animate) .a-element {
      transform: translate3d(0, 20px, 0); } }

@media (--sm-up) {
  .a-move-sm-top:not(.m-animate) {
    transform: translate3d(0, 20px, 0); }
    .a-move-sm-top:not(.m-animate) .a-element {
      transform: translate3d(0, 20px, 0); } }

@media only screen and (min-width: 768px) {
  .a-move-md-top:not(.m-animate) {
    transform: translate3d(0, 20px, 0); }
    .a-move-md-top:not(.m-animate) .a-element {
      transform: translate3d(0, 20px, 0); } }

@media only screen and (min-width: 1200px) {
  .a-move-lg-top:not(.m-animate) {
    transform: translate3d(0, 20px, 0); }
    .a-move-lg-top:not(.m-animate) .a-element {
      transform: translate3d(0, 20px, 0); } }

@media only screen and (min-width: 1440px) {
  .a-move-xl-top:not(.m-animate) {
    transform: translate3d(0, 20px, 0); }
    .a-move-xl-top:not(.m-animate) .a-element {
      transform: translate3d(0, 20px, 0); } }

.a-move-elements:not(.m-animate) {
  opacity: 1;
  transform: none; }

.a-greyscale-hover {
  transition: filter ease-out 0.4s; }
  .a-greyscale-hover:not(:hover) {
    filter: grayscale(100); }
    .a-greyscale-hover:not(:hover) image {
      filter: url(#grayscale); }

.a-greyscale-scroll {
  transition: filter ease-out 1.2s; }
  .a-greyscale-scroll:not(.m-animate) {
    filter: grayscale(100); }
    .a-greyscale-scroll:not(.m-animate) image {
      filter: url(#grayscale); }

.a-bg-color {
  transition: background-color ease-out 0.4s; }
  .a-bg-color:not(.m-animate) {
    background-color: transparent !important; }

.b-banner {
  color: #fff;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%; }
  .b-banner img {
    width: 100%; }
  .b-banner__image {
    display: block;
    position: relative;
    text-align: center; }
    .touch .b-banner__image[data-ref="paralax"] {
      top: 0;
      transition: ease-out 0.4s; }
  .b-banner__content {
    align-items: center;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    left: 0;
    padding: 90px 20px;
    position: absolute;
    right: 0;
    top: 0; }
  .b-banner__description {
    line-height: 1.42;
    max-width: 230px;
    text-align: left; }
  .b-banner__subtitle {
    font-weight: 400;
    margin-bottom: 10px;
    text-transform: none; }
  .b-banner__bottom {
    bottom: 0;
    left: 0;
    margin-bottom: 30px;
    position: absolute;
    right: 0; }
    @media only screen and (min-width: 1800px) {
      .b-banner__bottom {
        margin-bottom: 40px; } }
  .b-banner__footer {
    margin-top: 25px;
    text-align: center; }
  .b-banner__link {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    font-size: 16px;
    letter-spacing: 0.0625em;
    line-height: 1.625; }
  .b-banner__sub-link {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.0625em;
    line-height: 1.5; }
  .b-banner__button {
    min-width: 205px; }
    @media only screen and (min-width: 1200px) {
      .b-banner__button {
        min-width: 192px; } }
    @media only screen and (min-width: 1800px) {
      .b-banner__button {
        min-width: 250px; } }
  .b-banner--main {
    max-height: 100vh;
    overflow: hidden; }
    .b-banner--main .b-banner__content {
      padding-left: 74px;
      padding-right: 74px; }
      @media only screen and (min-width: 1440px) {
        .b-banner--main .b-banner__content {
          padding-left: 150px;
          padding-right: 150px; } }
      @media only screen and (min-width: 1800px) {
        .b-banner--main .b-banner__content {
          margin-left: auto;
          margin-right: auto;
          max-width: 1920px;
          padding-left: 208px;
          padding-right: 208px; } }
      @media only screen and (min-width: 768px) and (max-width: 1199px) {
        .b-banner--main .b-banner__content {
          padding-left: 35px;
          padding-right: 35px; } }
      @media only screen and (max-width: 767px) {
        .b-banner--main .b-banner__content {
          padding-left: 20px;
          padding-right: 20px; } }
    @media only screen and (max-width: 767px) {
      .b-banner--main .b-banner__video {
        margin-left: calc(-82vh + 50%);
        width: 164vh; } }
    .b-banner--main .b-banner__title {
      margin-bottom: 40px; }
      @media only screen and (min-width: 1800px) {
        .b-banner--main .b-banner__title {
          font-size: 47px;
          margin-bottom: 55px; } }
    .b-banner--main .b-banner__subtitle {
      margin-bottom: 16px; }
      @media only screen and (min-width: 1800px) {
        .b-banner--main .b-banner__subtitle {
          font-size: 21px;
          margin-bottom: 21px;
          margin-top: 60px; } }
    .b-banner--main .btn {
      min-width: 192px; }
      @media only screen and (min-width: 1800px) {
        .b-banner--main .btn {
          font-size: 15px;
          padding: 20px 50px; } }
  .b-banner--search {
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      .b-banner--search {
        max-height: 145px; } }
    @media only screen and (min-width: 768px) {
      .b-banner--search {
        max-height: 220px; } }
  @media only screen and (max-width: 767px) {
    .grid-alternative-view .b-banner--inline .b-banner__title {
      font-size: 18px; } }
  .b-banner--inline .b-banner__link {
    bottom: 30px;
    line-height: normal; }
    @media only screen and (max-width: 767px) {
      .grid-alternative-view .b-banner--inline .b-banner__link {
        bottom: 25px; } }
  .b-banner--error {
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.21; }
    @media only screen and (max-width: 767px) {
      .b-banner--error .b-banner__content {
        padding-left: 15px;
        padding-right: 15px; } }
    @media only screen and (min-width: 768px) and (max-width: 1199px) {
      .b-banner--error .b-banner__content {
        max-width: 658px;
        padding-left: 95px;
        padding-right: 95px; } }
    @media only screen and (min-width: 1200px) {
      .b-banner--error .b-banner__content {
        padding-left: 152px;
        padding-right: 152px; } }
    @media only screen and (min-width: 1800px) {
      .b-banner--error .b-banner__content {
        margin-left: auto;
        margin-right: auto;
        max-width: 1920px;
        padding-left: 300px;
        padding-right: 300px; } }
    .b-banner--error .btn {
      letter-spacing: 0.1em;
      min-width: 224px;
      padding-bottom: 16px;
      padding-top: 16px; }
      @media only screen and (max-width: 767px) {
        .b-banner--error .btn {
          min-width: 260px; } }
  .b-banner + .b-article {
    padding-top: 100px; }
    @media only screen and (max-width: 767px) {
      .b-banner + .b-article {
        padding-top: 50px; } }
  .b-banner .t-link::before,
  .b-banner .t-link--white::before,
  .b-banner .t-link--gray::before {
    content: "";
    transition: width 0.5s ease-in-out; }
  .b-banner .t-link, .b-banner .t-link:hover,
  .b-banner .t-link--white,
  .b-banner .t-link--white:hover,
  .b-banner .t-link--gray,
  .b-banner .t-link--gray:hover {
    text-decoration: none; }
  .non-touch .b-banner .t-link:hover, .non-touch
  .b-banner .t-link--white:hover, .non-touch
  .b-banner .t-link--gray:hover {
    opacity: 1; }
    .non-touch .b-banner .t-link:hover::before, .non-touch
    .b-banner .t-link--white:hover::before, .non-touch
    .b-banner .t-link--gray:hover::before {
      width: 100%; }
  .b-banner .t-link--invert::before,
  .b-banner .t-link--white-invert::before,
  .b-banner .t-link--gray-invert::before {
    content: "";
    transition: width 0.5s ease-in-out; }
  .b-banner .t-link--invert, .b-banner .t-link--invert:hover,
  .b-banner .t-link--white-invert,
  .b-banner .t-link--white-invert:hover,
  .b-banner .t-link--gray-invert,
  .b-banner .t-link--gray-invert:hover {
    text-decoration: none; }
  .non-touch .b-banner .t-link--invert:hover, .non-touch
  .b-banner .t-link--white-invert:hover, .non-touch
  .b-banner .t-link--gray-invert:hover {
    opacity: 1; }
    .non-touch .b-banner .t-link--invert:hover::before, .non-touch
    .b-banner .t-link--white-invert:hover::before, .non-touch
    .b-banner .t-link--gray-invert:hover::before {
      width: 0; }

.b-banner-background {
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1; }

.b-svg-image {
  display: inline-block;
  overflow: hidden;
  padding-bottom: 100%;
  position: relative;
  vertical-align: middle;
  width: 100%; }
  .b-svg-image image,
  .b-svg-image svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }


/*# sourceMappingURL=banners.css.map*/