@charset "UTF-8";
/* Vendors - include bootrap
========================================================================== */
/* Helpers - helpers Variable file along with starting point Mixins and Placeholders.
========================================================================== */
/*
* Variables
*/
:root {
  /* family: */
  --font-family-text: "Noto Sans JP", sans-serif;
  --font-family-title: "Noto Sans JP", sans-serif;
  --font-family-en: "Noto Sans JP", sans-serif;
  /* Colors: */
  --text-color: #333333;
  --text-dark-color: #CECECE;
  --loud-color: #f7931e;
  --title-color: #333333;
  --menu-color: #333333;
  --primary-btn-color: #FFFFFF;
  /* background: */
  --background-primary-btn: #f7931e;
  --background-loud: #e8e7e3;
  --background-footer: #FFFFFF;
  /* size */
  --base-font-size: 2rem;
  --h1-font-size: 3.5rem;
  --h2-font-size: 11rem;
  --h3-font-size: 5.6rem; }

/*
 * Function
 */
/*
* mixins
*/
@media (min-width: 768px) and (max-width: 991px) {
  .class {
    width: 60%; } }

/*
 * Placeholders
 */
/* Base - reset and typography.
========================================================================== */
/*
 * reset
 */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }
  blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none; }

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

/*
 * reset
 */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }
  blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none; }

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

button {
  background-color: transparent;
  outline: none;
  border: 0;
  cursor: pointer;
  padding: 0;
  font-family: var(--font-family-text);
  margin: 0; }

input {
  padding: 0;
  font-family: var(--font-family-text); }

/*
 * Typography
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family-title);
  font-weight: 700;
  color: var(--title-color);
  line-height: 1.4; }

h1 {
  font-size: var(--h1-font-size); }

h2 {
  font-size: var(--h2-font-size); }

h3 {
  font-size: var(--h3-font-size); }

/* Components - Re-usable site elements.
========================================================================== */
a {
  color: var(--text-color);
  text-decoration: none; }
  a:visited {
    color: var(--text-color);
    text-decoration: none; }
  a:hover, a:visited:hover {
    color: var(--loud-color);
    text-decoration: none; }
  a:focus {
    outline: none;
    text-decoration: none; }

.more {
  transition: all 300ms ease-in-out;
  -webkit-transition: all 300ms ease-in-out;
  -moz-transition: all 300ms ease-in-out;
  -o-transition: all 300ms ease-in-out; }

/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */
:root {
  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1; }

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

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

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

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

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

.animate__animated.animate__delay-05s {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s; }

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

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

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

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

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

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

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

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

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

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

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

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

/* Attention seekers  */
@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05); }
  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02); } }

@keyframes bounce {
  from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05); }
  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02); } }

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

@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1; }
  25%,
  75% {
    opacity: 0; } }

@keyframes flash {
  from,
  50%,
  to {
    opacity: 1; }
  25%,
  75% {
    opacity: 0; } }

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes shakeX {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes shakeX {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

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

@-webkit-keyframes shakeY {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); } }

@keyframes shakeY {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); } }

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

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }

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

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

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

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

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

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1); } }

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

/* Back entrances */
@-webkit-keyframes backInDown {
  0% {
    -webkit-transform: translateY(-1200px) scale(0.7);
    transform: translateY(-1200px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

@keyframes backInDown {
  0% {
    -webkit-transform: translateY(-1200px) scale(0.7);
    transform: translateY(-1200px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

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

@-webkit-keyframes backInLeft {
  0% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

@keyframes backInLeft {
  0% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

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

@-webkit-keyframes backInRight {
  0% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

@keyframes backInRight {
  0% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

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

@-webkit-keyframes backInUp {
  0% {
    -webkit-transform: translateY(1200px) scale(0.7);
    transform: translateY(1200px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

@keyframes backInUp {
  0% {
    -webkit-transform: translateY(1200px) scale(0.7);
    transform: translateY(1200px) scale(0.7);
    opacity: 0.7; }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; } }

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

/* Back exits */
@-webkit-keyframes backOutDown {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateY(700px) scale(0.7);
    transform: translateY(700px) scale(0.7);
    opacity: 0.7; } }

@keyframes backOutDown {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateY(700px) scale(0.7);
    transform: translateY(700px) scale(0.7);
    opacity: 0.7; } }

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

@-webkit-keyframes backOutLeft {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7; } }

@keyframes backOutLeft {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7; } }

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

@-webkit-keyframes backOutRight {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7; } }

@keyframes backOutRight {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7; } }

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

@-webkit-keyframes backOutUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateY(-700px) scale(0.7);
    transform: translateY(-700px) scale(0.7);
    opacity: 0.7; } }

@keyframes backOutUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7; }
  100% {
    -webkit-transform: translateY(-700px) scale(0.7);
    transform: translateY(-700px) scale(0.7);
    opacity: 0.7; } }

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

/* Bouncing entrances  */
@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
    transform: translate3d(0, -3000px, 0) scaleY(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
    transform: translate3d(0, 25px, 0) scaleY(0.9); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
    transform: translate3d(0, -10px, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
    transform: translate3d(0, 5px, 0) scaleY(0.985); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
    transform: translate3d(0, -3000px, 0) scaleY(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
    transform: translate3d(0, 25px, 0) scaleY(0.9); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
    transform: translate3d(0, -10px, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
    transform: translate3d(0, 5px, 0) scaleY(0.985); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
    transform: translate3d(-3000px, 0, 0) scaleX(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
    transform: translate3d(25px, 0, 0) scaleX(1); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
    transform: translate3d(-10px, 0, 0) scaleX(0.98); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
    transform: translate3d(5px, 0, 0) scaleX(0.995); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
    transform: translate3d(-3000px, 0, 0) scaleX(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
    transform: translate3d(25px, 0, 0) scaleX(1); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
    transform: translate3d(-10px, 0, 0) scaleX(0.98); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
    transform: translate3d(5px, 0, 0) scaleX(0.995); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
    transform: translate3d(3000px, 0, 0) scaleX(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
    transform: translate3d(-25px, 0, 0) scaleX(1); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
    transform: translate3d(10px, 0, 0) scaleX(0.98); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
    transform: translate3d(-5px, 0, 0) scaleX(0.995); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
    transform: translate3d(3000px, 0, 0) scaleX(3); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
    transform: translate3d(-25px, 0, 0) scaleX(1); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
    transform: translate3d(10px, 0, 0) scaleX(0.98); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
    transform: translate3d(-5px, 0, 0) scaleX(0.995); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
    transform: translate3d(0, 3000px, 0) scaleY(5); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
    transform: translate3d(0, 10px, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
    transform: translate3d(0, -5px, 0) scaleY(0.985); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
    transform: translate3d(0, 3000px, 0) scaleY(5); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
    transform: translate3d(0, 10px, 0) scaleY(0.95); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
    transform: translate3d(0, -5px, 0) scaleY(0.985); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

/* Bouncing exits  */
@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

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

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
    transform: translate3d(0, 10px, 0) scaleY(0.985); }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
    transform: translate3d(0, 2000px, 0) scaleY(3); } }

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
    transform: translate3d(0, 10px, 0) scaleY(0.985); }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
    transform: translate3d(0, 2000px, 0) scaleY(3); } }

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

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
    transform: translate3d(20px, 0, 0) scaleX(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
    transform: translate3d(-2000px, 0, 0) scaleX(2); } }

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
    transform: translate3d(20px, 0, 0) scaleX(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
    transform: translate3d(-2000px, 0, 0) scaleX(2); } }

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

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
    transform: translate3d(-20px, 0, 0) scaleX(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
    transform: translate3d(2000px, 0, 0) scaleX(2); } }

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
    transform: translate3d(-20px, 0, 0) scaleX(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
    transform: translate3d(2000px, 0, 0) scaleX(2); } }

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

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
    transform: translate3d(0, -10px, 0) scaleY(0.985); }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
    transform: translate3d(0, 20px, 0) scaleY(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
    transform: translate3d(0, -2000px, 0) scaleY(3); } }

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
    transform: translate3d(0, -10px, 0) scaleY(0.985); }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
    transform: translate3d(0, 20px, 0) scaleY(0.9); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
    transform: translate3d(0, -2000px, 0) scaleY(3); } }

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

/* Fading entrances  */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

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

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -5rem, 0);
    transform: translate3d(0, -5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -5rem, 0);
    transform: translate3d(0, -5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5rem, 0, 0);
    transform: translate3d(-5rem, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5rem, 0, 0);
    transform: translate3d(-5rem, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(5rem, 0, 0);
    transform: translate3d(5rem, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(5rem, 0, 0);
    transform: translate3d(5rem, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 5rem, 0);
    transform: translate3d(0, 5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 5rem, 0);
    transform: translate3d(0, 5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Fading exits */
@-webkit-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Flippers */
@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

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

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

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

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

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

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

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

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

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

/* Lightspeed */
@-webkit-keyframes lightSpeedInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes lightSpeedInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes lightSpeedInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
    transform: translate3d(-100%, 0, 0) skewX(30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(5deg);
    transform: skewX(5deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes lightSpeedInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
    transform: translate3d(-100%, 0, 0) skewX(30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(5deg);
    transform: skewX(5deg); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

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

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

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

/* Rotating entrances */
@-webkit-keyframes rotateIn {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Rotating exits */
@-webkit-keyframes rotateOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Specials */
@-webkit-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

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

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom; }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg); }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom; }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg); }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

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

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

/* Zooming entrances */
@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

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

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

/* Zooming exits */
@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

@keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

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

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0); } }

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0); } }

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

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0); } }

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0); } }

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

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Sliding exits */
@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

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

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

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

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

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

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

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

.modal {
  max-width: 98rem !important;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  border-radius: 20px;
  overflow: visible !important; }
  .modal h3 {
    font-size: 2rem;
    margin-bottom: 1.5rem; }
  .modal .thumbnail {
    overflow: hidden;
    border-radius: 20px; }
  .modal .fancybox-button {
    display: none; }
  .modal .more {
    width: 5.5rem;
    position: absolute;
    right: 0;
    top: -8rem; }

/* Layout - Structure and layout files.
========================================================================== */
/* -------------------->>> COMMON <<<-------------------- */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 10px; }

body {
  background: #fff;
  font-family: var(--font-family-text);
  color: var(--text-color);
  font-size: var(--base-font-size);
  line-height: 1.7;
  overflow-x: hidden;
  font-weight: 500;
  letter-spacing: 0;
  width: 100%; }

hr {
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: #000 -moz-use-text-color -moz-use-text-color;
  -o-border-image: none;
     border-image: none;
  border-style: solid none none;
  border-width: 0.2em 0 0 0;
  margin: 0; }

.container {
  width: 100%;
  max-width: 123rem;
  padding: 0 1.5rem;
  margin: 0 auto; }

p {
  margin-bottom: 1.5rem; }

input:focus {
  outline: none; }

a img {
  transition: all 400ms ease-in-out;
  -webkit-transition: all 400ms ease-in-out;
  -moz-transition: all 400ms ease-in-out;
  -o-transition: all 400ms ease-in-out; }
  a img:hover {
    opacity: 0.7; }

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

.dummy {
  opacity: 0; }

.hidden {
  opacity: 0; }

.visible {
  opacity: 1; }

.full-visible {
  opacity: 1; }

.error {
  font-size: 1.6rem;
  margin-bottom: 2rem;
  color: #ff0000; }

#result input.error {
  border-color: #e41919; }

#result div.error {
  margin-top: 20px;
  padding: 13px 20px;
  text-align: center;
  background: rgba(228, 25, 25, 0.75);
  color: #fff; }

#result div.success {
  margin-top: 20px;
  padding: 13px 20px;
  text-align: center;
  background: rgba(50, 178, 95, 0.75);
  color: #fff; }

.loader_wrap {
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  background: white;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-align-items: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0; }

.loader {
  border: 5px solid #f3f3f3;
  border-top: 5px solid #555;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  -webkit-animation: spin 2s linear infinite;
  animation: spin 2s linear infinite; }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.header {
  width: 100%;
  background: #FFFFFF; }
  .header__main {
    padding-left: 5.5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .header__main .logo {
      width: 54.6rem; }
    .header__main--right {
      display: grid;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 2rem;
      grid-template-columns: auto 30.4rem 16.6rem; }
      .header__main--right h1 {
        display: grid;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 1rem;
        grid-template-columns: 5.1rem auto;
        font-size: 3.4rem;
        line-height: 1; }

@media (max-width: 768px) {
  .header__main {
    padding: 2rem 4rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .header__main .logo {
      width: 66.3rem; }
    .header__main--right {
      display: none; } }

.banner__main {
  position: relative; }
  .banner__main img {
    width: 100%; }
  .banner__main--btn {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 100%;
    max-width: 57rem;
    position: absolute;
    left: 50%;
    bottom: 4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.sos-box {
  padding: 4rem 0 11rem;
  background-image: url("../images/sos-bg.webp");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1; }
  .sos-box .head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 3rem; }
    .sos-box .head img {
      width: 100%;
      max-width: 89.2rem; }
  .sos-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    grid-template-columns: repeat(3, 1fr);
    gap: 4.5rem; }
    .sos-box__main--items figure {
      margin-bottom: 1.5rem; }
    .sos-box__main--items h3 {
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      gap: 1rem;
      grid-template-columns: 5.6rem 1fr;
      font-size: 3rem;
      line-height: 3.8rem; }
      .sos-box__main--items h3::before {
        content: '';
        width: 5.6rem;
        height: 5.6rem;
        background-image: url("../images/icon-check.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        margin-top: .5rem; }

.consult-box {
  padding: 10rem 0 8rem;
  background-image: url("../images/consult-bg.webp");
  background-position: center 10rem;
  background-repeat: no-repeat;
  margin-top: -6rem; }
  .consult-box .head {
    text-align: center;
    margin-bottom: 4.5rem; }
    .consult-box .head p {
      margin-bottom: 1.5rem;
      line-height: 1;
      font-size: 3.4rem;
      font-weight: 900; }
    .consult-box .head h2 {
      line-height: 1;
      font-size: 7.2rem;
      font-weight: 900; }
      .consult-box .head h2 span {
        color: var(--loud-color); }
  .consult-box__main {
    width: 100%;
    max-width: 70rem;
    border: 3px solid #000;
    margin: 0 auto;
    background: #FFFFFF;
    padding: 1rem 2rem 3.5rem; }
    .consult-box__main h3 {
      background: #ffff00;
      line-height: 6.2rem;
      text-align: center;
      font-size: 3.4rem;
      font-weight: 900;
      margin-bottom: 1.5rem; }
    .consult-box__main ul {
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      gap: 1rem;
      margin-bottom: 2rem; }
      .consult-box__main ul li {
        display: grid;
        -webkit-box-align: start;
        -webkit-align-items: start;
            -ms-flex-align: start;
                align-items: start;
        gap: 2.5rem;
        grid-template-columns: 2.9rem 1fr;
        font-size: 2.5rem;
        line-height: 3rem; }
        .consult-box__main ul li::before {
          content: '';
          width: 2.9rem;
          height: 2.9rem;
          background-image: url("../images/icon-check-li.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          margin-top: .3rem; }
    .consult-box__main p {
      margin-bottom: 0;
      font-size: 1.6rem;
      line-height: 3rem; }

.ignore-box {
  padding: 5rem 0;
  background: #ffff00;
  position: relative;
  z-index: 1; }
  .ignore-box::before, .ignore-box::after {
    content: '';
    width: 100%;
    height: 2.64226rem;
    position: absolute;
    left: 0;
    z-index: -1;
    background-image: url("../images/bd.webp");
    background-position: 0 0;
    background-repeat: repeat-x; }
  .ignore-box::before {
    top: 0; }
  .ignore-box::after {
    bottom: 0; }
  .ignore-box .container {
    max-width: 86.7rem; }
  .ignore-box h2 {
    margin-bottom: 4rem;
    background: #000;
    color: #FFFFFF;
    line-height: 6rem;
    font-size: 4.6rem;
    font-weight: 900;
    text-align: center; }
  .ignore-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2rem;
    grid-template-columns: repeat(3, auto); }
    .ignore-box__main--items figure {
      margin-bottom: .5rem;
      text-align: center; }
      .ignore-box__main--items figure img {
        max-width: 12rem; }
    .ignore-box__main--items h3 {
      font-size: 2.5rem;
      line-height: 3.6rem;
      font-weight: 900;
      text-align: center; }

.cta-box {
  padding: 42rem 0 8rem;
  background-image: url("../images/cta-bg.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 192rem auto; }
  .cta-box__main {
    background: #FFFFFF;
    width: 100%;
    max-width: 100rem;
    margin: 0 auto;
    padding: 4rem; }
    .cta-box__main--head {
      margin-bottom: 1.5rem;
      text-align: center; }
      .cta-box__main--head p {
        margin-bottom: 1.5rem;
        font-size: 3.4rem;
        line-height: 1.2;
        font-weight: 700; }
        .cta-box__main--head p span {
          position: relative;
          z-index: 1;
          padding: 0 2rem; }
          .cta-box__main--head p span::after {
            content: '';
            width: 100%;
            height: 2.7rem;
            background: #ffff00;
            position: absolute;
            z-index: -1;
            bottom: 0;
            left: 0;
            -webkit-clip-path: polygon(2% 0%, 100% 0, 98% 100%, 0% 100%);
                    clip-path: polygon(2% 0%, 100% 0, 98% 100%, 0% 100%); }
      .cta-box__main--head h2 {
        text-align: center;
        display: grid;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 1.2rem;
        grid-template-columns: 7.8rem auto;
        font-size: 5.3rem;
        line-height: 7.8rem; }
    .cta-box__main--btn {
      display: grid;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      gap: 3rem;
      grid-template-columns: repeat(2, 1fr); }
      .cta-box__main--btn a {
        display: block;
        -webkit-box-shadow: 0 1rem 0 black;
                box-shadow: 0 1rem 0 black;
        position: relative;
        -webkit-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
        -o-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
        transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1); }
        .cta-box__main--btn a:hover {
          -webkit-box-shadow: 0 0 0 black;
                  box-shadow: 0 0 0 black;
          -webkit-transform: translate(0, 1rem);
              -ms-transform: translate(0, 1rem);
                  transform: translate(0, 1rem); }

@media (min-width: 1921px) {
  .cta-box {
    background-size: cover; } }

.case-box {
  padding: 72rem 0 26rem;
  background-image: url("../images/case-bg.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 192rem auto;
  background-color: #f5fbfb; }
  .case-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 7.5rem;
    row-gap: 13rem;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 10rem; }
    .case-box__main--items {
      display: none;
      background: #FFFFFF;
      border: 3px solid #000;
      border-radius: 2rem;
      -webkit-box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.5);
              box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.5);
      padding: 4.5rem 2.5rem 1rem;
      position: relative; }
      .case-box__main--items:nth-child(-n+4) {
        display: block; }
      .case-box__main--items .sos {
        width: 24.976rem;
        height: 18.13869rem;
        background-image: url("../images/case-sos.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: -2.5rem;
        top: -8.5rem;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .case-box__main--items .sos span {
          font-size: 2.7rem;
          line-height: 3.2rem;
          font-weight: 900; }
      .case-box__main--items figure {
        position: relative;
        margin-bottom: 1.2rem; }
        .case-box__main--items figure::before {
          content: '';
          width: 52.7589rem;
          height: 12.81269rem;
          background-image: url("../images/case-ba.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          top: -8.3rem; }
        .case-box__main--items figure::after {
          content: '';
          width: 8.53123rem;
          height: 5.83826rem;
          background-image: url("../images/case-arows.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          bottom: -1.6rem;
          left: 32%; }
      .case-box__main--items .txt {
        padding-right: 11rem;
        position: relative; }
        .case-box__main--items .txt::after {
          content: '';
          width: 14.91284rem;
          height: 21.72088rem;
          background-image: url("../images/case-icon.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          bottom: -1rem;
          right: -2.5rem; }
        .case-box__main--items .txt__labels {
          margin-bottom: .5rem;
          display: grid;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: start;
          -webkit-justify-content: start;
              -ms-flex-pack: start;
                  justify-content: start;
          gap: 1rem;
          grid-template-columns: repeat(2, auto); }
          .case-box__main--items .txt__labels span {
            display: -webkit-inline-box;
            display: -webkit-inline-flex;
            display: -ms-inline-flexbox;
            display: inline-flex;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            text-align: center;
            width: 17.2rem;
            line-height: 3.33rem;
            background: #9cd6d6;
            font-size: 2.7rem;
            color: #FFFFFF;
            font-weight: 700; }
          .case-box__main--items .txt__labels .time {
            font-size: 1.6rem;
            line-height: 3.33rem; }
        .case-box__main--items .txt p {
          margin-bottom: 0; }
    .case-box__main.show-all .case-box__main--items {
      display: block; }
  .case-box__btn {
    text-align: center; }
    .case-box__btn .btn {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 4.5rem;
      text-align: center;
      font-size: 3.4rem;
      line-height: 8rem;
      border: 5px solid #000;
      font-weight: 900;
      color: #FFFFFF;
      background: var(--loud-color);
      -webkit-box-shadow: 0 1rem 0 black;
              box-shadow: 0 1rem 0 black;
      position: relative;
      -webkit-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
      -o-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
      transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1); }
      .case-box__btn .btn:hover {
        -webkit-box-shadow: 0 0 0 black;
                box-shadow: 0 0 0 black;
        -webkit-transform: translate(0, 1rem);
            -ms-transform: translate(0, 1rem);
                transform: translate(0, 1rem); }

@media (min-width: 1921px) {
  .case-box {
    background-size: contain; } }

.why-box {
  padding: 8rem 0 19rem;
  background-image: url("../images/why-bg.webp");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative; }
  .why-box::before {
    content: '';
    width: 65.24713rem;
    height: 26.86837rem;
    background-image: url("../images/why-bf.webp");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: -7.5rem;
    bottom: -7.5rem; }
  .why-box::after {
    content: '';
    width: 70.03539rem;
    height: 25.13447rem;
    background-image: url("../images/why-at.webp");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: -7.5rem;
    bottom: -5.5rem; }
  .why-box .head {
    text-align: center;
    margin-bottom: 4rem; }
    .why-box .head img {
      width: 100%;
      max-width: 112.4rem; }
  .why-box__main {
    width: 100%;
    max-width: 98.4rem;
    margin: 0 auto; }

.transparent-box {
  padding: 13rem 0 10rem; }
  .transparent-box .head {
    text-align: center;
    padding-bottom: 5rem;
    position: relative;
    z-index: 1; }
    .transparent-box .head::before {
      content: '';
      width: 18.99437rem;
      height: 22.66888rem;
      background-image: url("../images/transparent-icon-1.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1; }
    .transparent-box .head::after {
      content: '';
      width: 22.54669rem;
      height: 25.27692rem;
      background-image: url("../images/transparent-icon-2.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      bottom: 0;
      right: 0;
      z-index: -1; }
    .transparent-box .head p {
      font-size: 3.4rem;
      font-weight: 900;
      line-height: 1.2; }
    .transparent-box .head h2 {
      line-height: 1;
      font-size: 7.3rem;
      font-weight: 900; }
      .transparent-box .head h2 span {
        color: var(--loud-color); }
  .transparent-box__main--head {
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    grid-template-columns: repeat(3, auto);
    background-image: url("../images/transparent-bg.webp");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0 2rem;
    margin-bottom: 3rem; }
    .transparent-box__main--head span {
      line-height: 5.3rem;
      font-size: 2.8rem;
      font-weight: 700;
      color: #FFFFFF; }
  .transparent-box__main--list {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 2rem;
    grid-template-columns: repeat(5, 1fr);
    text-align: center;
    margin-bottom: 3rem; }
    .transparent-box__main--list figure {
      margin-bottom: 1.5rem; }
    .transparent-box__main--list h3 {
      font-size: 3rem;
      line-height: 1;
      margin-bottom: 1.5rem; }
    .transparent-box__main--list p {
      font-size: 3rem;
      line-height: 1;
      margin-bottom: 0;
      color: var(--loud-color);
      font-weight: 700; }
  .transparent-box__main--des {
    text-align: center;
    font-size: 2.5rem;
    line-height: 4.3rem;
    font-weight: 700; }

.quotes-box {
  padding: 5rem 0;
  background-image: url("../images/quotes-bg.webp");
  background-position: 0 0;
  background-repeat: repeat; }
  .quotes-box__main {
    width: 100%;
    max-width: 88.2rem;
    margin: 0 auto; }
    .quotes-box__main--head {
      background-image: url("../images/quotes-bg-2.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      margin-bottom: 1rem; }
      .quotes-box__main--head h2 {
        text-align: center;
        font-size: 6.5rem;
        line-height: 8.7rem;
        font-weight: 900; }
        .quotes-box__main--head h2 span {
          color: var(--loud-color);
          font-size: 8rem; }
    .quotes-box__main p {
      margin-bottom: 0;
      font-size: 1.6rem;
      line-height: 3rem; }

.damage-box {
  padding-top: 13.5rem;
  background-image: url("../images/damage-bg-2.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #f5fbfb;
  position: relative;
  z-index: 1; }
  .damage-box::after {
    content: '';
    width: 100%;
    height: 100%;
    background-image: url("../images/damage-bg.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; }
  .damage-box .head {
    text-align: center;
    margin-bottom: 13rem; }
    .damage-box .head img {
      width: 100%;
      max-width: 114.5rem; }
  .damage-box__main {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -2rem;
    row-gap: 17rem; }
    .damage-box__main--items {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      width: calc(100% / 3);
      padding: 0 2rem; }
      .damage-box__main--items main {
        background: #FFFFFF;
        -webkit-box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
                box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
        padding: 0 2rem 2rem; }
      .damage-box__main--items .icon {
        width: 20rem;
        margin: 0 auto 1.5rem; }
        .damage-box__main--items .icon img {
          margin-top: -7.5rem; }
      .damage-box__main--items h3 {
        font-size: 4rem;
        line-height: 1;
        color: var(--loud-color);
        margin-bottom: 1.5rem;
        text-align: center; }
      .damage-box__main--items .rate {
        margin-bottom: .7rem; }
      .damage-box__main--items figure {
        margin-bottom: .5rem; }
      .damage-box__main--items ul {
        background: #ffffea;
        padding: 1rem;
        display: grid;
        -webkit-box-align: start;
        -webkit-align-items: start;
            -ms-flex-align: start;
                align-items: start;
        gap: .5rem;
        margin-bottom: 1.5rem; }
        .damage-box__main--items ul li {
          display: grid;
          -webkit-box-align: start;
          -webkit-align-items: start;
              -ms-flex-align: start;
                  align-items: start;
          -webkit-box-pack: start;
          -webkit-justify-content: start;
              -ms-flex-pack: start;
                  justify-content: start;
          gap: 1rem;
          font-size: 1.6rem;
          line-height: 2.5rem;
          grid-template-columns: repeat(2, auto); }
          .damage-box__main--items ul li::before {
            content: '';
            width: 2.1rem;
            height: 2.1rem;
            background-image: url("../images/icon-check-2.webp");
            background-position: 0 0;
            background-repeat: no-repeat;
            background-size: contain;
            margin-top: .3rem; }
      .damage-box__main--items p {
        margin-bottom: 0;
        font-size: 1.55rem;
        line-height: 3rem; }
      .damage-box__main--items:nth-child(4) .icon, .damage-box__main--items:nth-child(5) .icon {
        position: relative; }
        .damage-box__main--items:nth-child(4) .icon::after, .damage-box__main--items:nth-child(5) .icon::after {
          content: '';
          width: 11.10342rem;
          height: 11.72307rem;
          background-image: url("../images/damage-icon.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          bottom: -1.5rem;
          right: -7.5rem; }

.point-box {
  padding-top: 59rem;
  padding-bottom: 5rem;
  position: relative;
  overflow: hidden; }
  .point-box::before {
    content: '';
    width: 100%;
    height: 59.6rem;
    background-image: url("../images/point-bg-1.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #f5fbfb;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; }
  .point-box::after {
    content: '';
    width: 100%;
    height: calc(100% - 56rem);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-image: url("../images/point-bg.webp");
    background-position: 0 0;
    background-repeat: repeat; }
  .point-box .head {
    text-align: center;
    margin: 0 -7rem 1rem; }
  .point-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 20rem; }
    .point-box__main--items {
      background: #FFFFFF;
      border: 5px solid #000;
      padding: 8rem 10rem;
      position: relative; }
      .point-box__main--items::before {
        content: '';
        width: 17.85146rem;
        height: 17.72308rem;
        background-image: url("../images/point-num-1.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
      .point-box__main--items .thumb-post {
        margin-bottom: 1rem;
        display: grid;
        -webkit-box-align: start;
        -webkit-align-items: start;
            -ms-flex-align: start;
                align-items: start;
        gap: 3rem;
        grid-template-columns: 1fr 45rem; }
        .point-box__main--items .thumb-post figure {
          margin-top: -8rem; }
        .point-box__main--items .thumb-post__txt h3 {
          margin-bottom: 1rem;
          font-size: 5.6rem;
          font-weight: 900;
          line-height: 9.9rem;
          border-bottom: 3px solid #9cd6d6; }
        .point-box__main--items .thumb-post__txt p {
          line-height: 3.4rem;
          margin-bottom: 0; }
          .point-box__main--items .thumb-post__txt p code {
            font-family: var(--font-family-text);
            border-bottom: 3px solid var(--loud-color); }
      .point-box__main--items .thumb-price {
        text-align: center; }
        .point-box__main--items .thumb-price picture {
          display: -webkit-inline-box;
          display: -webkit-inline-flex;
          display: -ms-inline-flexbox;
          display: inline-flex;
          width: 100%;
          max-width: 86rem;
          margin-right: -6rem; }
      .point-box__main--items .thumb-child {
        display: grid;
        -webkit-box-align: start;
        -webkit-align-items: start;
            -ms-flex-align: start;
                align-items: start;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        gap: 2rem;
        grid-template-columns: 1fr auto; }
        .point-box__main--items .thumb-child figure {
          width: 34.9rem; }
        .point-box__main--items .thumb-child__txt h3 {
          font-size: 2rem;
          line-height: 3.4rem;
          border-bottom: 3px solid #9cd6d6;
          margin-bottom: 1.5rem; }
        .point-box__main--items .thumb-child__txt .group {
          display: grid;
          -webkit-box-align: start;
          -webkit-align-items: start;
              -ms-flex-align: start;
                  align-items: start;
          -webkit-box-pack: justify;
          -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          gap: 1rem;
          grid-template-columns: repeat(4, auto);
          margin-bottom: 2rem; }
        .point-box__main--items .thumb-child__txt ul li {
          font-size: 2rem;
          line-height: 3.4rem;
          color: var(--loud-color); }
        .point-box__main--items .thumb-child__txt p {
          margin-bottom: 0; }
          .point-box__main--items .thumb-child__txt p small {
            font-size: 1.2rem;
            line-height: 3.4rem; }
      .point-box__main--items:nth-child(3)::before {
        background-image: url("../images/point-num-2.webp"); }
      .point-box__main--items:nth-child(3) .thumb-post {
        gap: 2rem; }
        .point-box__main--items:nth-child(3) .thumb-post figure {
          margin-top: 0; }
        .point-box__main--items:nth-child(3) .thumb-post__txt p code {
          letter-spacing: -.1em; }
      .point-box__main--items:nth-child(4)::before {
        background-image: url("../images/point-num-3.webp"); }
      .point-box__main--items:nth-child(4) .thumb-post {
        gap: 2rem; }
        .point-box__main--items:nth-child(4) .thumb-post figure {
          margin-top: 0; }
        .point-box__main--items:nth-child(4) .thumb-post__txt p code {
          letter-spacing: -.1em; }
      .point-box__main--items:nth-child(4) .thumb-child {
        grid-template-columns: 50.7rem 1fr;
        gap: 4rem; }
        .point-box__main--items:nth-child(4) .thumb-child figure {
          -webkit-box-ordinal-group: 2;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1;
          width: 50.7rem; }
          .point-box__main--items:nth-child(4) .thumb-child figure img {
            width: 100%; }
        .point-box__main--items:nth-child(4) .thumb-child__txt {
          -webkit-box-ordinal-group: 3;
          -webkit-order: 2;
              -ms-flex-order: 2;
                  order: 2; }
      .point-box__main--items:nth-child(5)::before {
        background-image: url("../images/point-num-4.webp"); }
      .point-box__main--items:nth-child(5) .thumb-post {
        gap: 2rem; }
        .point-box__main--items:nth-child(5) .thumb-post figure {
          margin-top: 0; }
      .point-box__main--items:nth-child(5) .thumb-child {
        grid-template-columns: 50.7rem 1fr;
        gap: 4rem; }
        .point-box__main--items:nth-child(5) .thumb-child figure {
          -webkit-box-ordinal-group: 2;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1;
          width: 50.7rem; }
          .point-box__main--items:nth-child(5) .thumb-child figure img {
            width: 100%; }
        .point-box__main--items:nth-child(5) .thumb-child__txt {
          -webkit-box-ordinal-group: 3;
          -webkit-order: 2;
              -ms-flex-order: 2;
                  order: 2; }
    .point-box__main--gallery {
      width: 100%;
      height: 64.01016rem;
      position: relative; }
      .point-box__main--gallery::before {
        content: '';
        width: 100vw;
        height: 100%;
        background-image: url("../images/wave.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        z-index: 1; }
      .point-box__main--gallery::after {
        content: '';
        width: 100vw;
        height: 100%;
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        background-image: url("../images/gallery.webp");
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 576.15728rem auto;
        -webkit-animation: slideBackground 40s linear infinite;
                animation: slideBackground 40s linear infinite; }
      .point-box__main--gallery span {
        width: 65.24713rem;
        height: 26.86837rem;
        background-image: url("../images/why-bf.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: calc((100% - 199rem) / 2);
        bottom: -7.5rem;
        z-index: 1; }
        .point-box__main--gallery span:last-child {
          width: 70.03539rem;
          height: 25.13447rem;
          background-image: url("../images/why-at.webp");
          background-position: 0 0;
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          left: auto;
          right: calc((100% - 199rem) / 2);
          bottom: -5.5rem; }

@-webkit-keyframes slideBackground {
  from {
    background-position: 0 0; }
  to {
    background-position: -576.15728rem 0; } }

@keyframes slideBackground {
  from {
    background-position: 0 0; }
  to {
    background-position: -576.15728rem 0; } }

.wildlife-box {
  padding: 36rem 0 11rem;
  background-image: url("../images/wildlife-bg.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 206.93556rem auto; }
  .wildlife-box__main h2 {
    border: .7rem solid #9cd6d6;
    border-radius: 7.5rem;
    text-align: center;
    margin-bottom: 3rem;
    font-size: 4.5rem;
    line-height: 5.7rem;
    font-weight: 900;
    padding: 1rem;
    background: #FFFFFF; }
  .wildlife-box__main--info {
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 5rem;
    grid-template-columns: 1fr 50.5rem;
    padding: 0 10rem; }
    .wildlife-box__main--info .text {
      font-size: 2rem;
      line-height: 3.4rem; }

@media (min-width: 1921px) {
  .wildlife-box {
    background-size: calc(100% + 32rem) auto; } }

    .wildlife-box--staff {
  background-image: url("../images/wildlife-bg2.webp");
}

.voice-box {
  padding: 11rem 0 25rem;
  background: #f5fbfb; }
  .voice-box .container {
    max-width: 103rem; }
  .voice-box .head {
    text-align: center;
    margin-bottom: 12rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .voice-box .head::after {
      content: '';
      width: 45.14912rem;
      height: 16.06553rem;
      background-image: url("../images/voice-tt.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .voice-box .head p {
      font-size: 3.4rem;
      line-height: 1.2;
      font-weight: 700;
      margin-bottom: 1rem; }
    .voice-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900; }
  .voice-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 11rem; }
    .voice-box__main--items {
      border-radius: 2.5rem;
      background: #FFFFFF;
      border: 4px solid #000;
      padding: 0 4rem 4rem;
      position: relative;
      -webkit-box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.3);
              box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.3); }
      .voice-box__main--items figure {
        width: 24rem;
        position: absolute;
        right: 7rem;
        top: -8rem; }
      .voice-box__main--items h3 {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        gap: .4rem;
        margin-bottom: 3.5rem;
        margin-top: -3rem; }
        .voice-box__main--items h3 span {
          display: -webkit-inline-box;
          display: -webkit-inline-flex;
          display: -ms-inline-flexbox;
          display: inline-flex;
          padding: 0 2.5rem;
          line-height: 8rem;
          background: #9cd6d6;
          font-size: 4.3rem;
          font-weight: 700;
          color: #FFFFFF; }
      .voice-box__main--items .info {
        margin-bottom: 1rem;
        display: grid;
        margin-bottom: 1rem;
        gap: 2.4rem;
        grid-template-columns: 12.5rem 1fr; }
        .voice-box__main--items .info span {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          text-align: center;
          background: #ffff00;
          font-size: 2.2rem;
          font-weight: 700; }
        .voice-box__main--items .info p {
          margin-bottom: 0;
          font-size: 2.2rem;
          line-height: 3rem;
          font-weight: 700; }
      .voice-box__main--items p {
        margin-bottom: 0;
        font-size: 1.6rem;
        line-height: 3rem; }

.faq-box {
  padding: 12rem 0;
  background-image: url("../images/faq-bg.webp");
  background-position: 0 0;
  background-repeat: repeat;
  position: relative; }
  .faq-box::after {
    content: '';
    width: 100%;
    height: 100%;
    background-image: url("../images/faq-bg-1.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; }
  .faq-box .container {
    max-width: 103rem; }
  .faq-box .head {
    text-align: center;
    margin-bottom: 12rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .faq-box .head::after {
      content: '';
      width: 26.83613rem;
      height: 17.6083rem;
      background-image: url("../images/faq-tt.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .faq-box .head p {
      font-size: 3.4rem;
      line-height: 1.2;
      font-weight: 700;
      margin-bottom: 1rem; }
    .faq-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900; }
  .faq-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 4rem; }
    .faq-box__main--items h3 {
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      gap: 2.5rem;
      grid-template-columns: 6.7rem 1fr;
      padding: .5rem 8rem .5rem .5rem;
      background: #9cd6d6;
      font-size: 3.4rem;
      line-height: 6.7rem;
      position: relative;
      cursor: pointer; }
      .faq-box__main--items h3::before {
        content: '';
        width: 6.7rem;
        height: 6.7rem;
        background-image: url("../images/faq-q.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain; }
      .faq-box__main--items h3::after {
        content: '';
        width: 3.6rem;
        height: 3.6rem;
        background-image: url("../images/faq-arows.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 50%;
        right: 3rem;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        transition: all 300ms ease-in-out;
        -webkit-transition: all 300ms ease-in-out;
        -moz-transition: all 300ms ease-in-out;
        -o-transition: all 300ms ease-in-out; }
      .faq-box__main--items h3.is_active::after {
        -webkit-transform: rotate(180deg) translateY(50%);
            -ms-transform: rotate(180deg) translateY(50%);
                transform: rotate(180deg) translateY(50%); }
    .faq-box__main--items .txt {
      padding-top: 2rem;
      padding-left: 9.5rem;
      font-size: 1.6rem;
      line-height: 3rem;
      position: relative; }
      .faq-box__main--items .txt::before {
        content: '';
        width: 6.7rem;
        height: 6.7rem;
        background-image: url("../images/faq-a.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: 0;
        top: 2rem; }
    .faq-box__main--items:not(:first-child) .txt {
      display: none; }

.service-box {
  padding: 10rem 0 16rem;
  background-image: url("../images/service-bg.webp");
  background-position: 0 0;
  background-repeat: repeat;
  position: relative; }
  .service-box::after {
    content: '';
    width: 100%;
    height: 100%;
    background-image: url("../images/service-bg-1.webp");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1; }
  .service-box .container {
    max-width: 103rem;
    position: relative;
    z-index: 9; }
  .service-box .head {
    text-align: center;
    padding-bottom: 4.5rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .service-box .head::before {
      content: '';
      width: 18.99437rem;
      height: 22.66888rem;
      background-image: url("../images/transparent-icon-1.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1; }
    .service-box .head::after {
      content: '';
      width: 22.54669rem;
      height: 25.27692rem;
      background-image: url("../images/transparent-icon-2.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      bottom: 0;
      right: 0;
      z-index: -1; }
    .service-box .head p {
      font-size: 3.4rem;
      line-height: 1.2;
      font-weight: 700;
      margin-bottom: 1rem; }
    .service-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900;
      position: relative; }
      .service-box .head h2::after {
        content: '';
        width: 38.64473rem;
        height: 15.41797rem;
        background-image: url("../images/service-tt.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: -6rem;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        z-index: -1; }
  .service-box__main {
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 5rem;
    grid-template-columns: 1fr auto;
    background: #FFFFFF;
    border: 5px solid #000;
    border-radius: 2.2rem;
    padding: 4rem; }
    .service-box__main figure {
      width: 45.1rem; }
    .service-box__main--txt .group {
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      gap: 1rem;
      grid-template-columns: repeat(4, auto);
      margin-bottom: 2rem; }
    .service-box__main--txt ul li {
      font-size: 2rem;
      line-height: 3.7rem;
      color: var(--loud-color); }
    .service-box__main--txt p {
      margin-bottom: 0; }
      .service-box__main--txt p small {
        font-size: 1.2rem;
        line-height: 3.4rem; }

.flow-box {
  background: #f5f4ec;
  padding-bottom: 12rem; }
  .flow-box .head {
    text-align: center;
    margin-bottom: 4rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .flow-box .head::after {
      content: '';
      width: 40.93047rem;
      height: 16.06553rem;
      background-image: url("../images/flow-tt.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .flow-box .head p {
      font-size: 3.4rem;
      line-height: 1.2;
      font-weight: 700;
      margin-bottom: 1rem; }
    .flow-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900;
      margin-bottom: 2.5rem; }
    .flow-box .head__des {
      text-align: center;
      font-size: 1.6rem;
      line-height: 3rem; }
  .flow-box__main {
    display: grid;
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 1.5rem;
    grid-template-columns: repeat(5, 1fr); }

.inquiry-box {
  padding: 16rem 0 2rem;
  background-color: #f5fbfb; }
  .inquiry-box .container {
    max-width: 103rem; }
  .inquiry-box .head {
    text-align: center;
    margin-bottom: 7rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .inquiry-box .head::after {
      content: '';
      width: 69.89971rem;
      height: 16.0655rem;
      background-image: url("../images/contact-tt.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: -6rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .inquiry-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900;
      margin-bottom: 2.5rem; }

.contact-form {
  background: #FFFFFF;
  border-radius: 3.5rem;
  padding: 4rem 4rem 15rem; }
  .contact-form .form-group {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 1.5rem;
    margin-bottom: 4.5rem; }
    .contact-form .form-group .labels {
      font-size: 2.5rem;
      line-height: 1.2; }
    .contact-form .form-group .input {
      width: 100%;
      font-size: 2.2rem;
      line-height: 1.2; }
      .contact-form .form-group .input p {
        margin-bottom: 0; }
      .contact-form .form-group .input.group {
        display: grid;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: start;
        -webkit-justify-content: start;
            -ms-flex-pack: start;
                justify-content: start;
        gap: 7rem;
        grid-template-columns: repeat(3, auto); }
    .contact-form .form-group select,
    .contact-form .form-group textarea,
    .contact-form .form-group input[type='text'],
    .contact-form .form-group input[type='email'] {
      width: 100%;
      height: 6rem;
      border: 1px solid #333333;
      border-radius: .5rem;
      background: #fff;
      -webkit-box-shadow: none;
              box-shadow: none;
      font-size: 16px;
      padding: 0 1.5rem; }
      .contact-form .form-group select:focus,
      .contact-form .form-group textarea:focus,
      .contact-form .form-group input[type='text']:focus,
      .contact-form .form-group input[type='email']:focus {
        outline: none;
        outline: 0; }
      .contact-form .form-group select::-webkit-input-placeholder, .contact-form .form-group textarea::-webkit-input-placeholder, .contact-form .form-group input[type='text']::-webkit-input-placeholder, .contact-form .form-group input[type='email']::-webkit-input-placeholder {
        color: #A3A3A3; }
      .contact-form .form-group select::-moz-placeholder, .contact-form .form-group textarea::-moz-placeholder, .contact-form .form-group input[type='text']::-moz-placeholder, .contact-form .form-group input[type='email']::-moz-placeholder {
        color: #A3A3A3; }
      .contact-form .form-group select:-ms-input-placeholder, .contact-form .form-group textarea:-ms-input-placeholder, .contact-form .form-group input[type='text']:-ms-input-placeholder, .contact-form .form-group input[type='email']:-ms-input-placeholder {
        color: #A3A3A3; }
      .contact-form .form-group select::-ms-input-placeholder, .contact-form .form-group textarea::-ms-input-placeholder, .contact-form .form-group input[type='text']::-ms-input-placeholder, .contact-form .form-group input[type='email']::-ms-input-placeholder {
        color: #A3A3A3; }
      .contact-form .form-group select::placeholder,
      .contact-form .form-group textarea::placeholder,
      .contact-form .form-group input[type='text']::placeholder,
      .contact-form .form-group input[type='email']::placeholder {
        color: #A3A3A3; }
    .contact-form .form-group input[name='tel'],
    .contact-form .form-group input[name='name'] {
      max-width: 40rem; }
    .contact-form .form-group textarea {
      min-height: 22.7rem;
      padding: 1rem 1.5rem; }
    .contact-form .form-group.required .labels {
      display: grid;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
      -webkit-justify-content: start;
          -ms-flex-pack: start;
              justify-content: start;
      gap: 2rem;
      grid-template-columns: auto 7rem; }
      .contact-form .form-group.required .labels::after {
        content: '必須';
        width: 7rem;
        background: #ff8b9a;
        font-size: 2.5rem;
        color: #FFFFFF;
        line-height: 2.8rem;
        padding: 0;
        text-align: center; }
  .contact-form .more-box {
    text-align: center; }
    .contact-form .more-box button {
      width: 100%;
      max-width: 53.8rem;
      display: inline-grid;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center;
      line-height: 7.2rem;
      border: 5px solid #000;
      border-radius: 4rem;
      font-size: 3.4rem;
      color: #FFFFFF;
      font-weight: 900;
      -webkit-box-shadow: 0 1rem 0 black;
              box-shadow: 0 1rem 0 black;
      position: relative;
      -webkit-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
      -o-transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
      transition: 0.3s cubic-bezier(0.4, 0.4, 0, 1);
      background: var(--loud-color); }
      .contact-form .more-box button i {
        position: absolute;
        top: 50%;
        right: 1.5rem;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
      .contact-form .more-box button:hover {
        -webkit-box-shadow: 0 0 0 black;
                box-shadow: 0 0 0 black;
        -webkit-transform: translate(0, 1rem);
            -ms-transform: translate(0, 1rem);
                transform: translate(0, 1rem); }

.company-box {
  padding: 12rem 0 15rem; }
  .company-box .container {
    max-width: 103rem; }
  .company-box .head {
    text-align: center;
    margin-bottom: 12rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem; }
    .company-box .head::after {
      content: '';
      width: 74.34689rem;
      height: 16.06553rem;
      background-image: url("../images/company-tt.webp");
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .company-box .head p {
      font-size: 3.4rem;
      line-height: 1.2;
      font-weight: 700; }
    .company-box .head h2 {
      font-size: 11rem;
      line-height: 1;
      color: var(--loud-color);
      font-weight: 900;
      margin-bottom: 2.5rem; }
  .company-box__main {
    border-top: 1px solid #000;
    padding: 3.5rem 0;
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    grid-template-columns: 1fr 48.6rem;
    gap: 8.5rem;
    margin-bottom: 5rem; }
    .company-box__main--txt picture {
      display: block;
      width: 100%;
      max-width: 42.7rem;
      margin-bottom: .5rem; }
    .company-box__main--txt p {
      margin-bottom: 0;
      font-size: 2rem;
      line-height: 3.4rem; }
  .company-box__list {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 3.4rem;
    grid-template-columns: 1fr 35.6rem; }
    .company-box__list h3 {
      font-size: 3.4rem;
      line-height: 1.2;
      border-bottom: 1px solid #000;
      padding-bottom: 1rem; }
    .company-box__list ul li {
      border-bottom: 1px solid #000;
      padding: 1.5rem 0;
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      -webkit-box-pack: start;
      -webkit-justify-content: start;
          -ms-flex-pack: start;
              justify-content: start;
      gap: 5rem;
      grid-template-columns: 10rem 1fr;
      font-size: 2rem;
      line-height: 3.4rem; }
    .company-box__list p {
      font-size: 2rem;
      line-height: 3.4rem;
      margin-bottom: 0;
      padding-top: 1.5rem; }

.thanks {
  background: #f5f4ec; }

.thanks-box {
  padding: 12rem 0 15rem;
  min-height: calc(100vh - 16rem); }
  .thanks-box .container {
    max-width: 70rem; }
  .thanks-box__main h2 {
    color: var(--loud-color);
    margin-bottom: 2rem;
    font-size: 3.4rem;
    font-weight: 900;
    line-height: 1.2; }
  .thanks-box__main p {
    margin-bottom: 4rem;
    font-size: 2rem;
    line-height: 3.4rem; }
  .thanks-box__main .btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .thanks-box__main .btn a {
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -ms-inline-flexbox;
      display: inline-flex;
      width: 41.3rem; }

.btn-floating {
  position: fixed;
  z-index: 999;
  bottom: 1rem;
  right: 1rem;
  width: 17.8rem; }

.footer {
  text-align: center;
  padding: 2rem 0; }

@media (max-width: 768px) {
  .footer {
    margin-bottom: 18rem; } }

/* layout - Responsive .
========================================================================== */
.sp {
  display: none; }

@media screen and (max-width: 1200px) and (min-width: 769px) {
  html {
    font-size: 9px; } }

@media screen and (max-width: 1050px) and (min-width: 769px) {
  html {
    font-size: 8px; } }

@media screen and (max-width: 991px) and (min-width: 769px) {
  html {
    font-size: 7px; } }

@media (max-width: 768px) {
  html {
    font-size: 1.3333333vw; }
  .pc {
    display: none; }
  .sp {
    display: block; }
  .container {
    padding: 0 4rem; }
  .banner__main img {
    width: 100%; }
  .banner__main--btn {
    max-width: 69rem;
    bottom: 6rem; }
  .sos-box {
    padding: 4rem 0 17rem;
    background-image: url("../images/sos-bg_sp.webp");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover; }
    .sos-box .container {
      padding: 0; }
    .sos-box .head {
      margin-bottom: 5rem; }
    .sos-box__main {
      padding: 0 9rem;
      grid-template-columns: repeat(1, 1fr);
      gap: 4rem; }
      .sos-box__main--items h3 {
        grid-template-columns: 8.4rem 1fr;
        font-size: 4.5rem;
        line-height: 5.7rem; }
        .sos-box__main--items h3::before {
          width: 8.4rem;
          height: 8.4rem; }
  .consult-box {
    padding: 12rem 0 13rem; }
    .consult-box .container {
      padding: 0 2rem; }
    .consult-box__main {
      max-width: 100%; }
      .consult-box__main h3 {
        font-size: 4rem; }
      .consult-box__main ul {
        gap: 2rem; }
        .consult-box__main ul li {
          grid-template-columns: 4.3rem 1fr;
          font-size: 4rem;
          line-height: 5rem; }
          .consult-box__main ul li::before {
            width: 4.3rem;
            height: 4.3rem;
            margin-top: .7rem; }
      .consult-box__main p {
        font-size: 3rem;
        line-height: 5.5rem; }
  .ignore-box {
    padding: 7rem 0 10rem; }
    .ignore-box .container {
      padding: 0 2rem; }
    .ignore-box__main {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      gap: 7rem; }
      .ignore-box__main--items {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 28.5rem;
            -ms-flex: 0 0 28.5rem;
                flex: 0 0 28.5rem;
        width: 28.5rem; }
        .ignore-box__main--items figure img {
          max-width: 16rem; }
        .ignore-box__main--items h3 {
          font-size: 3.7rem;
          line-height: 5.4rem; }
        .ignore-box__main--items:first-child {
          -webkit-box-flex: 0;
          -webkit-flex: 0 0 auto;
              -ms-flex: 0 0 auto;
                  flex: 0 0 auto;
          width: 100%; }
  .cta-box {
    padding: 52rem 0 10rem;
    background-image: url("../images/cta-bg_sp.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% auto; }
    .cta-box .container {
      padding: 0 2rem; }
    .cta-box__main {
      padding: 1rem; }
      .cta-box__main--head {
        margin-bottom: 1.5rem;
        text-align: center; }
        .cta-box__main--head p {
          display: none; }
        .cta-box__main--head h2 {
          gap: .5rem;
          grid-template-columns: 6.2rem auto;
          font-size: 4.2rem;
          line-height: 7.4rem; }
      .cta-box__main--btn {
        grid-template-columns: repeat(1, 1fr); }
  .case-box {
    padding: 122.5rem 0 12.5rem;
    background-image: url("../images/case-bg_sp.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-color: #f5fbfb; }
    .case-box__main {
      gap: 0;
      row-gap: 14rem;
      grid-template-columns: repeat(1, 1fr);
      margin-bottom: 13rem; }
      .case-box__main--items .sos {
        width: 30.35155rem;
        height: 19.88934rem;
        left: -2.5rem;
        top: -10rem; }
        .case-box__main--items .sos span {
          font-size: 3.3rem;
          line-height: 3.9rem; }
      .case-box__main--items .txt {
        padding-right: 16rem; }
        .case-box__main--items .txt::after {
          width: 18.12251rem;
          height: 26.39583rem; }
        .case-box__main--items .txt__labels span {
          width: 20.7rem;
          line-height: 4rem;
          font-size: 3.3rem; }
        .case-box__main--items .txt__labels .time {
          font-size: 1.9rem;
          line-height: 4rem; }
        .case-box__main--items .txt p {
          margin-bottom: 0;
          font-size: 2.4rem;
          line-height: 4.1rem; }
    .case-box__btn .btn {
      gap: 2rem;
      font-size: 5.1rem;
      line-height: 13.2rem; }
  .why-box {
    padding: 8rem 0 14rem;
    background-image: url("../images/why-bg_sp.webp");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative; }
    .why-box::before {
      display: none; }
    .why-box::after {
      display: none; }
    .why-box .container {
      padding: 0 1rem; }
  .transparent-box {
    padding: 6rem 0 10rem; }
    .transparent-box .head {
      margin-bottom: 4rem; }
      .transparent-box .head::before {
        width: 12.37556rem;
        height: 14.76964rem; }
      .transparent-box .head::after {
        content: '';
        width: 15.254rem;
        height: 17.10114rem; }
      .transparent-box .head p {
        font-size: 3.4rem;
        line-height: 6rem; }
      .transparent-box .head h2 {
        line-height: 8.9rem;
        font-size: 7.2rem; }
    .transparent-box__main {
      position: relative;
      padding: 0; }
      .transparent-box__main--head {
        display: block;
        background-image: url("../images/transparent-bg_sp.webp");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        padding: 0;
        margin: 0;
        position: absolute;
        top: 0;
        left: 11rem;
        width: 5.3rem;
        height: 260.1351rem; }
        .transparent-box__main--head span {
          display: none; }
      .transparent-box__main--list {
        gap: 2rem;
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 9rem;
        padding: 0 11rem 0 20rem; }
        .transparent-box__main--list figure {
          margin-bottom: 2.5rem; }
        .transparent-box__main--list h3 {
          font-size: 4.5rem;
          margin-bottom: 2.5rem; }
        .transparent-box__main--list p {
          font-size: 4.5rem; }
      .transparent-box__main--des {
        font-size: 3.5rem;
        line-height: 6.1rem;
        text-align: left; }
  .quotes-box {
    padding: 0 0 5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .quotes-box__main--head {
      background-image: url("../images/quotes-bg-2_sp.webp");
      background-position: center top;
      background-repeat: no-repeat;
      background-size: 34.45902rem auto;
      margin-bottom: 2rem;
      padding-top: 17rem;
      margin-top: -7rem; }
    .quotes-box__main p {
      font-size: 3rem;
      line-height: 5.5rem; }
  .damage-box {
    padding-top: 21rem;
    padding-bottom: 15rem;
    background-image: none;
    background-color: #f5fbfb; }
    .damage-box::after {
      display: none; }
    .damage-box .container {
      padding: 0; }
    .damage-box__main {
      margin: 0; }
      .damage-box__main--items {
        width: calc(100%);
        padding: 0 9rem; }
        .damage-box__main--items main {
          padding: 0 3rem 3rem; }
        .damage-box__main--items .icon {
          width: 30rem; }
          .damage-box__main--items .icon img {
            margin-top: -11.5rem; }
        .damage-box__main--items h3 {
          font-size: 6rem;
          margin-bottom: 2rem; }
        .damage-box__main--items ul {
          gap: 1rem; }
          .damage-box__main--items ul li {
            gap: 1.5rem;
            font-size: 2.4rem;
            line-height: 3.7rem; }
            .damage-box__main--items ul li::before {
              width: 3.1rem;
              height: 3.1rem;
              margin-top: .5rem; }
        .damage-box__main--items p {
          font-size: 2.4rem;
          line-height: 4.5rem; }
        .damage-box__main--items:nth-child(4) .icon::after, .damage-box__main--items:nth-child(5) .icon::after {
          width: 16.65514rem;
          height: 17.58462rem;
          bottom: -3rem;
          right: -12rem; }
  .point-box {
    padding-top: 52rem; }
    .point-box::before {
      height: 39.48462rem;
      background-image: url("../images/point-bg-1_sp.webp");
      background-position: center top;
      background-repeat: no-repeat;
      background-size: contain;
      background-color: #f5fbfb; }
    .point-box::after {
      height: calc(100% - 39.48462rem); }
    .point-box .container {
      padding: 0; }
    .point-box .head {
      margin: 0 0 8rem; }
    .point-box__main {
      gap: 17rem;
      padding: 0 4rem; }
      .point-box__main--items {
        border: 4px solid #000;
        padding: 12rem 2rem 8rem; }
        .point-box__main--items .thumb-post {
          margin-bottom: 4rem;
          gap: 4rem;
          grid-template-columns: 1fr; }
          .point-box__main--items .thumb-post figure {
            margin-top: 0;
            -webkit-box-ordinal-group: 2;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
            .point-box__main--items .thumb-post figure img {
              width: 100%; }
          .point-box__main--items .thumb-post__txt {
            -webkit-box-ordinal-group: 3;
            -webkit-order: 2;
                -ms-flex-order: 2;
                    order: 2; }
            .point-box__main--items .thumb-post__txt h3 {
              text-align: center; }
            .point-box__main--items .thumb-post__txt p {
              font-size: 3rem;
              line-height: 5.5rem; }
        .point-box__main--items .thumb-price picture {
          margin-right: 0; }
        .point-box__main--items .thumb-child {
          gap: 4rem;
          grid-template-columns: 1fr; }
          .point-box__main--items .thumb-child figure {
            width: 34.9rem;
            margin: 0 auto;
            -webkit-box-ordinal-group: 2;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          .point-box__main--items .thumb-child__txt {
            -webkit-box-ordinal-group: 3;
            -webkit-order: 2;
                -ms-flex-order: 2;
                    order: 2; }
            .point-box__main--items .thumb-child__txt h3 {
              font-size: 4rem;
              line-height: 1.5;
              text-align: center;
              margin-bottom: 3rem; }
            .point-box__main--items .thumb-child__txt ul li {
              font-size: 3rem;
              line-height: 4.7rem; }
            .point-box__main--items .thumb-child__txt p {
              font-size: 3rem;
              line-height: 5.5rem; }
              .point-box__main--items .thumb-child__txt p small {
                font-size: 1.6rem; }
        .point-box__main--items:nth-child(3)::before {
          background-image: url("../images/point-num-2.webp"); }
        .point-box__main--items:nth-child(3) .thumb-post {
          gap: 4rem; }
          .point-box__main--items:nth-child(3) .thumb-post__txt p code {
            letter-spacing: normal; }
        .point-box__main--items:nth-child(4) .thumb-post {
          gap: 4rem; }
          .point-box__main--items:nth-child(4) .thumb-post__txt p code {
            letter-spacing: normal; }
        .point-box__main--items:nth-child(4) .thumb-child {
          grid-template-columns: 1fr;
          gap: 4rem; }
          .point-box__main--items:nth-child(4) .thumb-child figure {
            width: 100%; }
        .point-box__main--items:nth-child(5) .thumb-post {
          gap: 4rem; }
          .point-box__main--items:nth-child(5) .thumb-post figure {
            margin-top: 0; }
        .point-box__main--items:nth-child(5) .thumb-child {
          grid-template-columns: 1fr;
          gap: 4rem; }
          .point-box__main--items:nth-child(5) .thumb-child figure {
            width: 100%; }
  .wildlife-box {
    padding: 33rem 0 11rem;
    background-size: 190rem auto; }
    .wildlife-box .container {
      padding: 0 1.5rem; }
    .wildlife-box__main h2 {
      border-radius: 2.4rem;
      padding: 2rem 0; }
    .wildlife-box__main--info {
      gap: 4rem;
      grid-template-columns: 1fr;
      padding: 0 2.5rem; }
      .wildlife-box__main--info .text {
        font-size: 3rem;
        line-height: 5.5rem; }
    
  .voice-box .head {
    margin-bottom: 22rem; }
  .voice-box__main {
    gap: 22rem; }
    .voice-box__main--items {
      border-radius: 3.3rem;
      border: 5px solid #000;
      padding: 21.5rem 2.4rem 1.4rem; }
      .voice-box__main--items figure {
        right: auto;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
      .voice-box__main--items h3 {
        margin-top: 0;
        margin-left: -2.4rem; }
      .voice-box__main--items .info {
        gap: 1rem; }
        .voice-box__main--items .info p {
          font-size: 3rem;
          line-height: 4.1rem; }
      .voice-box__main--items p {
        font-size: 3rem;
        line-height: 5.5rem; }
  .faq-box .container {
    padding: 0 1rem; }
  .faq-box .head h2 {
    font-size: 10.3rem; }
  .faq-box__main {
    padding: 0 3rem; }
    .faq-box__main--items h3 {
      line-height: 5.5rem; }
    .faq-box__main--items .txt {
      font-size: 3rem;
      line-height: 5.5rem; }
  .service-box {
    padding: 10rem 0 12rem; }
    .service-box::after {
      background-image: url("../images/service-bg-1_sp.webp");
      background-position: center bottom;
      background-repeat: no-repeat;
      background-size: contain; }
    .service-box .head::before {
      display: none; }
    .service-box .head::after {
      display: none; }
    .service-box__main {
      grid-template-columns: 1fr; }
      .service-box__main figure {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1;
        margin: 0 auto; }
      .service-box__main--txt {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
            -ms-flex-order: 2;
                order: 2; }
        .service-box__main--txt .group {
          gap: 2rem;
          grid-template-columns: repeat(3, auto); }
        .service-box__main--txt ul li {
          font-size: 3rem;
          line-height: 4.7rem; }
        .service-box__main--txt p small {
          font-size: 1.6rem; }
  .flow-box .head__des {
    text-align: left;
    font-size: 3rem;
    line-height: 5.5rem; }
  .flow-box__main {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-pack: start;
    -webkit-justify-content: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 2.5rem;
    row-gap: 8rem;
    grid-template-columns: repeat(2, 1fr); }
  .inquiry-box .container {
    padding: 0 2rem; }
  .contact-form {
    padding: 4rem 4rem 15rem; }
    .contact-form .form-group .labels {
      font-size: 3.7rem; }
    .contact-form .form-group .input {
      font-size: 3rem; }
      .contact-form .form-group .input.group {
        gap: 3rem;
        grid-template-columns: repeat(1, 1fr); }
    .contact-form .form-group select,
    .contact-form .form-group textarea,
    .contact-form .form-group input[type='text'],
    .contact-form .form-group input[type='email'] {
      height: 7.5rem; }
    .contact-form .form-group input[name='tel'],
    .contact-form .form-group input[name='name'] {
      max-width: 100%; }
    .contact-form .form-group textarea {
      min-height: 26.7rem; }
    .contact-form .form-group.required .labels {
      grid-template-columns: auto 10.5rem; }
      .contact-form .form-group.required .labels::after {
        width: 10.5rem;
        font-size: 3.7rem;
        line-height: 4.2rem; }
  .company-box .container {
    padding: 0; }
  .company-box__main {
    border: none;
    padding: 0 7rem;
    grid-template-columns: 1fr;
    gap: 4rem; }
    .company-box__main figure {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1;
      width: 48.6rem;
      margin: 0 auto; }
    .company-box__main--txt {
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
      text-align: center; }
      .company-box__main--txt picture {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display: inline-flex; }
      .company-box__main--txt p {
        text-align: left;
        font-size: 3rem;
        line-height: 5.5rem; }
  .company-box__list {
    padding: 0 7rem;
    gap: 4rem;
    grid-template-columns: 1fr; }
    .company-box__list ul li {
      grid-template-columns: 13rem 1fr;
      font-size: 2.5rem;
      line-height: 6rem; }
    .company-box__list p {
      font-size: 2.5rem;
      line-height: 6rem; }
  .left-floating {
    display: block;
    padding: 2rem 0 1rem;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
    background: #FFFFFF; }
    .left-floating figure {
      padding: 0 1.8rem;
      position: relative;
      z-index: 9; }
    .left-floating__main {
      margin-top: -1rem;
      display: grid;
      -webkit-box-align: start;
      -webkit-align-items: start;
          -ms-flex-align: start;
              align-items: start;
      grid-template-columns: repeat(2, 1fr); }
  .thanks-box__main p {
    margin-bottom: 4rem;
    font-size: 2.4rem;
    line-height: 4.5rem; } }

/* ▼ 実績バナーセクション：背景黄色＋中央寄せ */
.additional-content {
  background-color: #ff0;
  padding: 60px 0;
}

.additional__visual {
  position: relative;
  max-width: 960px;
  margin: 0 auto;
}

.additional__visual picture img {
  width: 100%;
  height: auto;
  display: block;
}

/* ▼ 完成版：左余白 + 下余白入り */
.additional__cta {
  position: absolute;
  bottom: 4%;
  left: 4%; /* ← 左端に余白をしっかり確保 */
  width: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 24px;
  padding-left: 30px; /* ← ボタンの左余白 */
  z-index: 2;
}

.additional__cta a {
  flex: 0 0 auto;
}

.additional__cta img {
  width: 320px;
  height: auto;
  display: block;
  margin-bottom: 18px; /* ← ボタン下に余白 */
}

/* ▼ モバイル：中央縦並び + 下余白キープ */
@media (max-width: 768px) {
  .additional__cta {
    flex-direction: column;
    left: 7%;
    bottom: 2%;        /* ← 少し下げる指定に対応！ */
    gap: 8px;            /* ← 少しだけ間隔を戻して自然に */
    padding-left: 0;
  }

  .additional__cta img {
    width: 93%;
    max-width: 600px;
    margin-bottom: 12px;
  }
}

.cv-section {
  background-color: #2c318c; /* 青背景 */
  padding: 60px 0;
}

.cv-section__inner {
  position: relative;
  max-width: 960px;
  margin: 0 auto;
}

.cv-section__inner picture img {
  width: 100%;
  height: auto;
  display: block;
}

.cv-section__cta {
  position: absolute;
  bottom: 4%;
  left: 4%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 24px;
  padding-left: 30px;
  z-index: 2;
}

.cv-section__cta img {
  width: 320px;
  height: auto;
  display: block;
  margin-bottom: 18px;
}

/* ▼ スマホ用：縦並びにして中央配置 */
@media (max-width: 768px) {
  .cv-section__cta {
    flex-direction: column;
    align-items: center;
    bottom: 3%;
    left: 11%;
    padding-left: 0;
    gap: 8px;
  }

  .cv-section__cta img {
    width: 90%;
    max-width: 360px;
    margin-bottom: 10px;
  }
}

/* ipad Portrait */
/* ipad Landscape */
