@charset "UTF-8";
/* ==========================================================
 html5 elements
========================================================== */
article,
aside,
figure,
figcaption,
footer,
header,
nav,
section {
  display: block;
}

/* ==========================================================
 reseting
========================================================== */
html {
  font-size: 62.5%;
}

body,
div,
pre,
p,
blockquote,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
th,
td,
button,
figure,
figcaption {
  margin: 0;
  padding: 0;
}

input,
textarea {
  margin: 0;
  font-size: 100%;
}

input,
textarea,
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

textarea {
  resize: none;
}

button {
  border: none;
  overflow: visible;
  background: none;
  vertical-align: top;
  font-size: 100%;
  color: inherit;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
}

fieldset {
  border: 0;
}

img {
  max-width: 100%;
  border: 0;
  height: auto;
  vertical-align: top;
  pointer-events: none;
}

address,
caption,
code,
em,
th {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong,
em {
  font-size: 100%;
  font-weight: normal;
}

a,
input {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

sup {
  vertical-align: top;
}

sub {
  vertical-align: sub;
}

strong {
  font-weight: 700;
}

* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

/* ==========================================================
 base Link
========================================================== */
a {
  text-decoration: none;
  color: #010a23;
}
a:hover, a:active, a:focus, a:visited {
  text-decoration: none;
}

/* ==========================================================
 clearfix
========================================================== */
.clearfix::before, .clearfix::after {
  content: "";
  display: table;
}

.contents::before, .contents::after {
  content: "";
  display: table;
}

.clearfix::after,
.contents::after {
  clear: both;
}

@media print {
  body {
    display: none;
  }
}
/* calc-vw1440
---------------------------------------------------------- */
/* calc-vw1280
---------------------------------------------------------- */
/* calc-vw375
---------------------------------------------------------- */
@keyframes mainImage1 {
  0% {
    transform: scaleX(0);
  }
  100% {
    transform: scaleX(1);
  }
}
@keyframes circlemovePC {
  0% {
    bottom: 71px;
  }
  100% {
    bottom: -3px;
  }
}
@keyframes circlemoveSP {
  0% {
    bottom: 40px;
  }
  100% {
    bottom: -3px;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
@keyframes iconClose1 {
  0% {
    transform: rotate(45deg) translateX(-100%);
  }
  100% {
    transform: rotate(45deg) translateX(0);
  }
}
@keyframes iconClose1Reverse {
  0% {
    transform: rotate(45deg) translateX(0);
  }
  100% {
    transform: rotate(45deg) translateX(100%);
  }
}
@keyframes iconClose2 {
  0% {
    transform: rotate(-45deg) translateX(-100%);
  }
  100% {
    transform: rotate(-45deg) translateX(0);
  }
}
@keyframes iconClose2Reverse {
  0% {
    transform: rotate(-45deg) translateX(0);
  }
  100% {
    transform: rotate(-45deg) translateX(100%);
  }
}
@keyframes iconMenu {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes iconMenuReverse {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
/* mixin */
/* libs */
/* stylelint-disable */
/**
 * Swiper 6.8.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 22, 2021
 */
:root {
  --swiper-theme-color: #007aff;
}

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-container-pointer-events {
  touch-action: pan-y;
}
.swiper-container-pointer-events.swiper-container-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: opacity;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-container-autoheight {
  height: auto;
}
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

:root {
  --swiper-navigation-size: 44px;
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled::after,
.swiper-button-prev.swiper-button-disabled::after {
  background-color: #9ea8c8 !important;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next:after {
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after {
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-next.swiper-button-white,
.swiper-button-prev.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}

.swiper-button-next.swiper-button-black,
.swiper-button-prev.swiper-button-black {
  --swiper-navigation-color: #000000;
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active {
  pointer-events: auto;
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-next {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-container-cube .swiper-cube-shadow::before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

/* Recommended styles for Splitting */
.splitting .word,
.splitting .char {
  display: inline-block;
}

/* Psuedo-element chars */
.splitting .char {
  position: relative;
}

/**
 * Populate the psuedo elements with the character to allow for expanded effects
 * Set to `display: none` by default; just add `display: block` when you want
 * to use the psuedo elements
 */
.splitting .char::before,
.splitting .char::after {
  content: attr(data-char);
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  transition: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

/* Expanded CSS Variables */
.splitting {
  /* The center word index */
  --word-center: calc((var(--word-total) - 1) / 2);
  /* The center character index */
  --char-center: calc((var(--char-total) - 1) / 2);
  /* The center character index */
  --line-center: calc((var(--line-total) - 1) / 2);
}

.splitting .word {
  /* Pecent (0-1) of the word's position */
  --word-percent: calc(var(--word-index) / var(--word-total));
  /* Pecent (0-1) of the line's position */
  --line-percent: calc(var(--line-index) / var(--line-total));
}

.splitting .char {
  /* Percent (0-1) of the char's position */
  --char-percent: calc(var(--char-index) / var(--char-total));
  /* Offset from center, positive & negative */
  --char-offset: calc(var(--char-index) - var(--char-center));
  /* Absolute distance from center, only positive */
  --distance: calc(
     (var(--char-offset) * var(--char-offset)) / var(--char-center)
  );
  /* Distance from center where -1 is the far left, 0 is center, 1 is far right */
  --distance-sine: calc(var(--char-offset) / var(--char-center));
  /* Distance from center where 1 is far left/far right, 0 is center */
  --distance-percent: calc((var(--distance) / var(--char-center)));
}

.splitting.cells img {
  width: 100%;
  display: block;
}

@supports (display: grid) {
  .splitting.cells {
    position: relative;
    overflow: hidden;
    background-size: cover;
    visibility: hidden;
  }
  .splitting .cell-grid {
    background: inherit;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: grid;
    grid-template: repeat(var(--row-total), 1fr)/repeat(var(--col-total), 1fr);
  }
  .splitting .cell {
    background: inherit;
    position: relative;
    overflow: hidden;
  }
  .splitting .cell-inner {
    background: inherit;
    position: absolute;
    visibility: visible;
    /* Size to fit the whole container size */
    width: calc(100% * var(--col-total));
    height: calc(100% * var(--row-total));
    /* Position properly */
    left: calc(-100% * var(--col-index));
    top: calc(-100% * var(--row-index));
  }
  /* Helper variables for advanced effects */
  .splitting .cell {
    --center-x: calc((var(--col-total) - 1) / 2);
    --center-y: calc((var(--row-total) - 1) / 2);
    /* Offset from center, positive & negative */
    --offset-x: calc(var(--col-index) - var(--center-x));
    --offset-y: calc(var(--row-index) - var(--center-y));
    /* Absolute distance from center, only positive */
    --distance-x: calc( (var(--offset-x) * var(--offset-x)) / var(--center-x) );
    /* Absolute distance from center, only positive */
    --distance-y: calc( (var(--offset-y) * var(--offset-y)) / var(--center-y) );
  }
}
/* base */
/* ==========================================================
 layout
========================================================== */
html {
  font-size: 62.5%;
  opacity: 0;
}
html.is-locked {
  position: fixed;
  overflow-y: scroll;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}

body {
  background-color: #fafafa;
  font-family: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: #010a23;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}
body.is-white {
  background-color: #fff;
}

/* content
---------------------------------------------------------- */
.content {
  width: 100%;
  margin-bottom: 90px;
}
@media all and (min-width: 768px) {
  .content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 180px;
  }
}
@media all and (min-width: 768px) {
  .content__main {
    width: 800px;
  }
}
@media all and (min-width: 768px) {
  .content__side {
    width: 280px;
  }
}
@media all and (max-width: 767px) {
  .content__side {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: calc(100vh - 80px);
    overflow-y: auto;
    padding-bottom: 60px;
    background-color: #fff;
  }
}
.content--no-margin {
  margin-bottom: 0;
}

/* container
---------------------------------------------------------- */
.container {
  width: 1264px;
  padding: 0 32px;
  margin: 0 auto;
}
@media all and (max-width: 767px) {
  .container {
    width: 100%;
    padding: 0 25px;
    overflow: hidden;
  }
}

.container-wrap {
  width: 800px;
  margin: 0 auto;
}
@media all and (max-width: 767px) {
  .container-wrap {
    width: 100%;
  }
}
@media all and (max-width: 767px) {
  .container-wrap--padding-sp {
    padding: 0 25px;
  }
}

.main {
  padding-top: 96px;
}
@media all and (max-width: 767px) {
  .main {
    padding-top: 80px;
  }
}

/* components */
.header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: #fafafa;
}
.header__inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-width: 1264px;
  width: 100%;
  margin: 0 auto;
  height: 96px;
}
@media all and (max-width: 767px) {
  .header__inner {
    width: 100%;
    min-width: auto;
    height: 80px;
  }
}
.header__logo {
  flex: 160px;
  margin-left: 32px;
}
@media all and (max-width: 767px) {
  .header__logo {
    flex: 134px;
    flex-grow: 0;
    margin-left: 12px;
    width: 134px;
    height: 40px;
  }
}
.header__logo-link {
  display: block;
  transition: opacity ease-out 0.3s;
  width: -moz-fit-content;
  width: fit-content;
}
@media all and (min-width: 768px) {
  .header__logo-link:hover {
    opacity: 0.6;
  }
}
.header__logo-image {
  width: 160px;
  height: 48px;
}
@media all and (max-width: 767px) {
  .header__logo-image {
    width: 134px;
    height: 40px;
  }
}
.header__utility {
  position: relative;
}
@media all and (max-width: 767px) {
  .header__utility {
    display: none;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 100;
  }
}
.header__list {
  display: flex;
  align-items: center;
  gap: 0;
  padding-right: 120px;
}
@media all and (max-width: 767px) {
  .header__list {
    display: block;
    padding: 0 25px 64px;
  }
}
.header__list--en {
  padding-right: 20px;
}
.header__item {
  position: relative;
}
@media all and (max-width: 767px) {
  .header__item {
    display: block;
    border-bottom: 1px solid #e2e4e9;
    transition: opacity 1s, transform 1s, visibility 1s;
  }
}
@media all and (min-width: 768px) {
  .header__item:hover .header__wrap {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
}
@media all and (min-width: 768px) {
  .header__item:hover .header__link {
    opacity: 0.6 !important;
  }
}
.header__item:hover .header__link--has-sub {
  opacity: 1 !important;
}
@media all and (min-width: 768px) {
  .header__item:hover .header__icon::after {
    transform: rotate(180deg);
    z-index: 2;
  }
}
@media all and (min-width: 768px) {
  .header__item--active .header__link {
    color: #003692;
  }
}
@media all and (min-width: 768px) {
  .header__item--active .header__icon::before {
    background-color: #003692 !important;
  }
}
@media all and (min-width: 768px) {
  .header__item--active .header__icon::after {
    background-color: #003692 !important;
  }
}
.header__item--language-jp, .header__item--language-en {
  display: flex;
}
@media all and (max-width: 767px) {
  .header__item--language-jp, .header__item--language-en {
    display: none !important;
  }
}
.header__wrap {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 100%;
  width: 100%;
}
@media all and (max-width: 767px) {
  .header__wrap {
    opacity: 1;
    position: static;
    visibility: visible;
    padding-bottom: 24px;
  }
}
@media all and (min-width: 768px) {
  .header__wrap--ir {
    width: 180px;
  }
}
@media all and (min-width: 768px) {
  .header__wrap--about-en {
    width: 201px;
  }
}
@media all and (min-width: 768px) {
  .header__wrap--ir-en {
    width: 187px;
  }
}
@media all and (max-width: 767px) {
  .header__in {
    overflow-y: auto;
    height: 100%;
  }
}
.header__link {
  display: block;
  padding: 16px 20px;
  transition: opacity 0.3s ease, background-color 0.3s ease;
}
@media all and (max-width: 767px) {
  .header__link {
    position: relative;
    padding: 24px 0;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
@media all and (max-width: 767px) {
  .header__link::after {
    content: "";
    position: absolute;
    top: 47.5%;
    width: 24px;
    right: 0;
    height: 4px;
    background: url("/assets/images/common/ico_arrow_right_black.svg") 0 0 no-repeat;
    transition: transform 0.3s;
  }
}
.header__link--has-sub {
  position: relative;
  pointer-events: none;
}
@media all and (max-width: 767px) {
  .header__link--has-sub {
    padding: 24px 0;
  }
}
.header__link--has-sub .header__icon {
  margin-left: 10px;
  position: relative;
  display: inline-block;
  width: 12px;
  height: 12px;
}
@media all and (min-width: 768px) {
  .header__link--has-sub .header__icon {
    margin-left: 8px;
    margin-right: 4px;
  }
}
.header__link--has-sub .header__icon::before {
  content: "";
  position: absolute;
  top: 40%;
  width: 12px;
  left: 0;
  height: 2px;
  background-color: #010a23;
  border-radius: 2px;
  transition: transform 0.3s;
}
@media all and (max-width: 767px) {
  .header__link--has-sub .header__icon::before {
    content: none;
  }
}
.header__link--has-sub .header__icon::after {
  content: "";
  position: absolute;
  top: 40%;
  width: 12px;
  left: 0;
  height: 2px;
  background-color: #010a23;
  border-radius: 2px;
  transition: transform 0.3s;
  transform: rotate(90deg);
}
@media all and (max-width: 767px) {
  .header__link--has-sub .header__icon::after {
    content: none;
  }
}
.header__link--has-sub::after {
  content: none;
}
.header__link--language {
  padding: 0;
}
.header__link--language:first-child {
  padding-left: 20px;
}
.header__link--language:last-child {
  padding-left: 0;
}
.header__link--slash {
  padding: 0 4px;
  color: #010a23;
}
.header__sub {
  width: -moz-max-content;
  width: max-content;
  padding: 24px 20px;
  margin-top: 2.5px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .header__sub {
    display: grid;
    row-gap: 16px;
    width: 100%;
    padding: 0;
    margin: 0;
  }
  .header__sub--en {
    padding: 0;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 24px;
  }
}
.header__sub-item {
  display: flex;
}
.header__sub-item--external {
  display: flex;
  align-items: center;
  gap: 8px;
}
.header__sub-item--link {
  display: inline-block;
  padding: 6px 0;
  transition: opacity 0.3s ease;
}
@media all and (max-width: 767px) {
  .header__sub-item--link {
    line-height: 1.5;
    padding: 0;
  }
}
@media all and (min-width: 768px) {
  .header__sub-item--link:hover {
    opacity: 0.6 !important;
  }
}
.header__sub-item--icon {
  width: 16px;
  height: 16px;
}
.header__menu {
  display: none;
}
@media all and (max-width: 767px) {
  .header__menu {
    display: block;
    cursor: pointer;
    position: absolute;
    right: 12px;
    width: 48px;
    height: 48px;
    padding: 17px 14px;
  }
}
.header__menu-icon {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
@media all and (max-width: 767px) {
  .header__menu-icon--line {
    width: 100%;
    height: 2.2px;
    display: block;
    background-color: #010a23;
    animation-duration: 0.4s;
    animation-timing-function: cubic-bezier(0.8, 0, 0.2, 1);
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards;
    animation-play-state: running;
    animation-name: iconMenu;
    transform: translateX(-100%);
  }
  .header__menu-icon--line:nth-child(2) {
    margin: 3.7px 0;
    animation-delay: 0.1s;
  }
  .header__menu-icon--line:nth-child(3) {
    animation-delay: 0.2s;
  }
}
.header__button-wrap {
  display: none;
}
@media all and (max-width: 767px) {
  .header__button-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    margin: 16px 12px 0 auto;
  }
}
.header__language {
  display: none;
}
@media all and (max-width: 767px) {
  .header__language {
    display: flex;
    gap: 4px;
    margin-bottom: 2px;
  }
}
.header__language--active {
  color: #003692;
}
.header__close {
  display: none;
}
@media all and (max-width: 767px) {
  .header__close {
    display: block;
    cursor: pointer;
    width: 48px;
    height: 48px;
  }
}
@media all and (max-width: 767px) {
  .header__close-icon {
    width: 16px;
    height: 16px;
    overflow: hidden;
    display: block;
    margin: 0 auto;
    position: relative;
    border-radius: 6px;
    z-index: 20;
  }
}
@media all and (max-width: 767px) {
  .header__close-icon--line {
    position: absolute;
    height: 2px;
    left: 0;
    background: #010a23;
    width: calc(100% + 8px);
    transform-origin: 0% 0%;
    animation-duration: 0.4s;
    animation-timing-function: cubic-bezier(0.8, 0, 0.2, 1);
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards;
    animation-play-state: running;
  }
}
.header__close-icon--line:first-child {
  top: -1px;
  transform: rotate(45deg) translateX(-100%);
  animation-name: iconClose1;
}
.header__close-icon--line:last-child {
  bottom: 0;
  animation-name: iconClose2;
  animation-delay: 0.2s;
  transform: rotate(-45deg) translateX(-100%);
}
.header__search {
  cursor: pointer;
  position: absolute;
  right: 32px;
}
@media all and (max-width: 767px) {
  .header__search {
    right: 60px;
  }
}
.header__search-trigger {
  width: 48px;
  height: 48px;
  background: url("/assets/images/common/ico_search.svg") center center no-repeat;
  transition: opacity 0.3s ease;
}
@media all and (min-width: 768px) {
  .header__search-trigger:hover {
    cursor: pointer;
    opacity: 0.6 !important;
  }
}
.header__search-content {
  display: none;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  background-color: #fff;
}
.header__search-close {
  display: block;
  cursor: pointer;
  margin: 16px 12px 0 auto;
  width: 48px;
  height: 48px;
  background: url("/assets/images/common/ico_close.svg") center center no-repeat;
}
@media all and (min-width: 768px) {
  .header__search-close {
    margin: 24px 32px 0 auto;
  }
}
.header__search-inner {
  margin: 72px auto 0;
  max-width: 1240px;
  padding: 0 20px;
  width: 100%;
}
@media all and (max-width: 767px) {
  .header__search-inner {
    margin: 40px auto 0;
    padding: 0 25px;
  }
}
.header__search-wrap {
  width: 100%;
}
.header__search-form {
  display: flex;
}
.header__search-input {
  padding: 0 0 0 60px;
  border: none;
  width: 100%;
  outline: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  background: #f3f3f6 url("/assets/images/common/ico_search_small.svg") 24px 25px no-repeat;
}
@media all and (max-width: 767px) {
  .header__search-input {
    padding: 0 0 0 40px;
    background: #f3f3f6 url(/assets/images/common/ico_search_small.svg) 12px 13px no-repeat;
  }
}
.header__search-input::-moz-placeholder {
  color: #9ea8c8;
}
.header__search-input::placeholder {
  color: #9ea8c8;
}
.header__search-button {
  flex: 0 0 auto;
  background-color: #003692;
  width: 160px;
  height: 71px;
  border: none;
  color: #fafafa;
  font-weight: 700;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  transition: opacity 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .header__search-button {
    width: 68px;
    height: 47px;
  }
}
@media all and (min-width: 768px) {
  .header__search-button:hover {
    cursor: pointer;
    opacity: 0.6;
  }
}
.header__search-keyword {
  display: flex;
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .header__search-keyword {
    margin-top: 16px;
  }
}
.header__search-box {
  font-size: 1.2rem;
}
.header__search-title {
  font-weight: 700;
  margin-right: 24px;
  font-size: 1.2rem;
  width: 96px;
  flex: 0 0 auto;
}
@media all and (max-width: 767px) {
  .header__search-title {
    margin-right: 12px;
  }
}
.header__search-text {
  margin-right: 10px;
  text-decoration: underline !important;
  transition: opacity 0.3s ease-out;
  opacity: 1;
}
.header__search-text:hover {
  opacity: 0.5;
}
.header--top {
  background-color: transparent;
}

.dynamic-heading {
  margin-top: 120px;
  margin-bottom: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-heading {
    margin-top: 60px;
    margin-bottom: 32px;
  }
}
.dynamic-heading__heading {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .dynamic-heading__heading {
    font-size: 2.4rem;
  }
}
.dynamic-heading__box {
  display: flex;
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .dynamic-heading__box {
    margin-top: 12px;
  }
}
.dynamic-heading__date {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  line-height: 1.5;
}
.dynamic-heading__tag {
  margin-left: 32px;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .dynamic-heading__tag {
    margin-left: 16px;
  }
}
.dynamic-heading__tag-item {
  color: #9ea8c8;
}
.dynamic-heading__tag-item--black {
  color: #010a23;
}

.dynamic-image-content {
  overflow: hidden;
  border-radius: 4px;
}
.dynamic-image-content__image {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 4px;
}
.dynamic-image-content--topics {
  max-width: 1120px;
  width: 100%;
  margin: 0 auto;
}
@media all and (max-width: 767px) {
  .dynamic-image-content--topics {
    width: auto;
    margin: 0 -25px;
    border-radius: 0;
  }
}
@media all and (max-width: 767px) {
  .dynamic-image-content--topics .dynamic-image-content__image {
    border-radius: 0;
  }
}
.dynamic-image-content + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-image-content + * {
    margin-top: 32px;
  }
}

.dynamic-heading-content__heading {
  position: relative;
  padding-top: 34px;
}
@media all and (max-width: 767px) {
  .dynamic-heading-content__heading {
    padding-top: 18px;
  }
}
.dynamic-heading-content__heading::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 2px;
  background-color: #010a23;
}
.dynamic-heading-content__heading-main {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .dynamic-heading-content__heading-main {
    font-size: 1.8rem;
  }
}
.dynamic-heading-content__text {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .dynamic-heading-content__text {
    margin-top: 16px;
  }
}
.dynamic-heading-content__text + .dynamic-heading-content__text {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-heading-content__text + .dynamic-heading-content__text {
    margin-top: 32px;
  }
}
.dynamic-heading-content + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-heading-content + * {
    margin-top: 32px;
  }
}

.dynamic-article__title {
  font-weight: 700;
  line-height: 1.5;
}
.dynamic-article__text {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .dynamic-article__text {
    margin-top: 12px;
  }
}
.dynamic-article__caption {
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .dynamic-article__caption {
    margin-top: 12px;
  }
}
.dynamic-article--blue {
  color: #003692;
}
.dynamic-article + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-article + * {
    margin-top: 32px;
  }
}

.dynamic-related-link {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-related-link {
    margin-top: 32px;
  }
}
.dynamic-related-link__title {
  margin-bottom: 32px;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .dynamic-related-link__title {
    margin-bottom: 16px;
  }
}
.dynamic-related-link__box {
  padding: 48px 40px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .dynamic-related-link__box {
    padding: 24px 20px;
  }
}
.dynamic-related-link__list-item:not(:first-child) {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .dynamic-related-link__list-item:not(:first-child) {
    margin-top: 16px;
  }
}
.dynamic-related-link__list-link {
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .dynamic-related-link__list-link:hover {
    text-decoration: underline;
    opacity: 0.6;
  }
}
.dynamic-related-link--external-icon {
  position: relative;
}
.dynamic-related-link--external-icon::after {
  content: "";
  display: inline;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("/assets/images/common/ico_external_link_gray.svg");
  margin-left: 8px;
}

.dynamic-button {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .dynamic-button {
    margin-top: 60px;
  }
}

.dynamic-cast {
  display: flex;
  align-items: center;
  padding: 12px;
  border: 1px solid #e2e4e9;
  border-radius: 2px;
}
@media all and (max-width: 767px) {
  .dynamic-cast {
    padding: 4px;
  }
}
.dynamic-cast__image {
  overflow: hidden;
  width: 192px;
  flex: 1 0 auto;
  margin-right: 32px;
  border-radius: 2px;
}
@media all and (max-width: 767px) {
  .dynamic-cast__image {
    width: 96px;
    margin-right: 16px;
  }
}
.dynamic-cast__box {
  width: 100%;
}
.dynamic-cast__name {
  font-weight: 700;
}
.dynamic-cast__info {
  margin-top: 4px;
}
.dynamic-cast + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-cast + * {
    margin-top: 32px;
  }
}

.dynamic-poster {
  text-align: center;
}
.dynamic-poster__image {
  border-radius: 4px;
}
.dynamic-poster__caption {
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .dynamic-poster__caption {
    margin-top: 12px;
  }
}
.dynamic-poster + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .dynamic-poster + * {
    margin-top: 32px;
  }
}

.dynamic-release-date__text {
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .dynamic-release-date__text {
    margin-top: 12px;
  }
}

.heading-topic {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .heading-topic {
    font-size: 1.8rem;
  }
}
.heading-topic--black {
  color: #010a23;
}
.heading-topic + * {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .heading-topic + * {
    margin-top: 24px;
  }
}
.heading-topic + .supplemental-text {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .heading-topic + .supplemental-text {
    margin-top: 8px;
  }
}
@media all and (max-width: 767px) {
  .heading-topic--highlight-title {
    font-size: 2.4rem;
  }
}

.heading-category {
  padding-top: 64px;
}
@media all and (max-width: 767px) {
  .heading-category {
    padding-top: 32px;
  }
}
.heading-category__sub {
  display: block;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .heading-category__sub {
    padding: 4px 0;
  }
}
.heading-category__box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.heading-category__box + .heading-category__box {
  margin-top: 34px;
}
@media all and (max-width: 767px) {
  .heading-category__box + .heading-category__box {
    margin-top: 18px;
  }
}
.heading-category__additional {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .heading-category__additional {
    margin-top: 8px;
  }
}
.heading-category__additional-text {
  font-size: 1.5rem;
}
.heading-category__main {
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .heading-category__main {
    font-size: 2.8rem;
  }
}
.heading-category__link {
  position: relative;
  display: block;
  padding-right: 32px;
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
.heading-category__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 24px;
  height: 4px;
  background: url("/assets/images/common/ico_arrow_right_black.svg") right center no-repeat;
}
.heading-category__link:hover {
  text-decoration: underline;
  opacity: 0.6;
}
@media all and (max-width: 767px) {
  .heading-category--row {
    display: block;
  }
}
@media all and (max-width: 767px) {
  .heading-category--row .heading-category__link {
    display: inline-block;
    margin-top: 24px;
  }
}
.heading-category__more {
  display: inline-block;
  margin-top: 16px;
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .heading-category__more {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .heading-category__more:hover {
    text-decoration: underline;
    opacity: 0.6 !important;
  }
}
.heading-category + * {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .heading-category + * {
    margin-top: 60px;
  }
}
.heading-category__navbar {
  position: relative;
  display: flex;
  align-items: center;
  width: 84px;
  height: 30px;
  padding: 4px 8px;
  background-color: #f3f3f6;
  border-radius: 4px;
  font-size: 1.2rem;
}
.heading-category__navbar::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transform: rotate(90deg);
  width: 9.6px;
  height: 1.2px;
  right: 10px;
  background-color: #010a23;
  border-radius: 2px;
  margin-top: -0.6px;
  transition: transform 0.3s;
}
.heading-category__navbar::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 9.6px;
  height: 1.2px;
  transform: translateY(-50%);
  background-color: #010a23;
  border-radius: 2px;
}
.heading-category__navbar--menu-en {
  padding: 4px 16px;
}
.heading-category__navbar--close {
  padding-left: 14px;
}
.heading-category__navbar--close::before {
  transform: rotate(0);
}
.heading-category__navbar--close-en {
  padding-left: 18px;
}
.heading-category__navbar--close-en::before {
  transform: rotate(0);
}
@media all and (min-width: 768px) {
  .heading-category__navbar {
    display: none;
  }
}
.heading-category__policy {
  display: inline-block;
  text-decoration: underline;
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .heading-category__policy {
    margin-top: 16px;
  }
}
@media all and (max-width: 767px) {
  .heading-category__policy {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .heading-category__policy:hover {
    text-decoration: underline;
    opacity: 0.6;
  }
}

.heading-content__main {
  font-size: 6.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.02em;
}
@media all and (max-width: 767px) {
  .heading-content__main {
    font-size: 3.2rem;
  }
}
.heading-content__medium {
  font-weight: 700;
  font-size: 5.6rem;
  line-height: 1.5;
  letter-spacing: -0.02em;
  margin-bottom: 8px;
}
@media all and (max-width: 767px) {
  .heading-content__medium {
    font-size: 2.8rem;
    margin-bottom: 4px;
  }
}
.heading-content__small {
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.5;
  letter-spacing: -0.02em;
}
@media all and (max-width: 767px) {
  .heading-content__small {
    font-size: 1.8rem;
  }
}
.heading-content__sub {
  margin-top: 24px;
  font-size: 1.5rem;
  line-height: 1.8;
}
@media all and (max-width: 767px) {
  .heading-content__sub {
    margin-top: 12px;
  }
}
.heading-content + .box-important-notices {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .heading-content + .box-important-notices {
    margin-top: 60px;
  }
}

.heading-article {
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .heading-article--side {
    display: flex;
    justify-content: space-between;
  }
}
.heading-article__main {
  font-size: 3.6rem;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .heading-article__main {
    font-size: 2.4rem;
  }
}
.heading-article__sub {
  display: none;
  margin-top: 16px;
  font-size: 1.2rem;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  color: #9ea8c8;
}
@media all and (max-width: 767px) {
  .heading-article__sub {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .heading-article__link {
    margin-top: 32px;
  }
}
@media all and (max-width: 767px) {
  .heading-article__link {
    padding-top: 0.4em;
  }
}
.heading-article + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .heading-article + * {
    margin-top: 32px;
  }
}

.heading-twitter {
  position: relative;
  padding-left: 28px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
.heading-twitter::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 25%;
  left: 0;
  background: url("/assets/images/common/ico_twitter.svg") 0 0 no-repeat;
}

.heading-not-found {
  font-weight: 700;
  line-height: 1.5;
  font-size: 4.2rem;
}
@media all and (max-width: 767px) {
  .heading-not-found {
    font-size: 2.8rem;
  }
}

.heading-sns {
  position: relative;
  padding-left: 28px;
  margin-bottom: 32px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
.heading-sns::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 25%;
  left: 0;
}
.heading-sns:not(:first-of-type) {
  margin-top: 80px;
}
@media all and (max-width: 767px) {
  .heading-sns:not(:first-of-type) {
    margin-top: 60px;
  }
}
.heading-sns--x-twitter::before {
  width: 21px;
  background: url("/assets/images/common/ico_x-twitter.svg") 0 0 no-repeat;
}
.heading-sns--facebook::before {
  width: 21px;
  background: url("/assets/images/common/ico_facebook.svg") 0 0 no-repeat;
}
.heading-sns--instagram::before {
  width: 21px;
  background: url("/assets/images/common/ico_instagram.svg") 0 0 no-repeat;
}
.heading-sns--tiktok::before {
  width: 21px;
  background: url("/assets/images/common/ico_tiktok.svg") 0 0 no-repeat;
}
.heading-sns--line::before {
  width: 21px;
  background: url("/assets/images/common/ico_line.svg") 0 0 no-repeat;
}

.box-border {
  background-color: #fff;
  border-radius: 4px;
}
.box-border__inner {
  padding: 48px 40px;
}
@media all and (max-width: 767px) {
  .box-border__inner {
    padding: 24px 20px;
  }
}
.box-border__inner--vertical {
  display: grid;
}
.box-border__title {
  margin-bottom: 24px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}
.box-border--radius {
  border-radius: 4px;
}
.box-border--padding-small .box-border__inner {
  padding: 48px 32px;
}
@media all and (max-width: 767px) {
  .box-border--padding-small .box-border__inner {
    padding: 24px 20px;
  }
}
.box-border--padding-large .box-border__inner {
  padding: 64px 40px;
}
@media all and (max-width: 767px) {
  .box-border--padding-large .box-border__inner {
    padding: 32px 20px;
  }
}
.box-border--no-data {
  height: 320px;
}
@media all and (max-width: 767px) {
  .box-border--no-data {
    height: 240px;
  }
}

.box-sort__inner {
  display: flex;
}
.box-sort__all {
  width: 220px;
  margin-right: 8px;
}
@media all and (max-width: 767px) {
  .box-sort__all {
    width: 185px;
  }
}
.box-sort__pulldown {
  width: 220px;
  margin-right: 8px;
}
@media all and (max-width: 767px) {
  .box-sort__pulldown {
    width: 185px;
  }
}
.box-sort__year {
  width: 180px;
}
@media all and (max-width: 767px) {
  .box-sort__year {
    width: 132px;
  }
}
.box-sort + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .box-sort + * {
    margin-top: 32px;
  }
}

.box-info {
  padding: 32px 0;
}
@media all and (min-width: 768px) {
  .box-info {
    display: flex;
  }
}
@media all and (max-width: 767px) {
  .box-info {
    padding: 16px 0;
  }
}
.box-info__col {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-info__col:not(:first-child) {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .box-info__col--width-120 {
    width: 120px;
    flex: 1 0 auto;
  }
}
@media all and (min-width: 768px) {
  .box-info__col--width-160px {
    width: 160px;
    flex: 1 0 auto;
  }
}
@media all and (min-width: 768px) {
  .box-info__col--width-240 {
    width: 240px;
    flex: 1 0 auto;
  }
}
@media all and (min-width: 768px) {
  .box-info__col--width-260 {
    width: 260px;
    flex: 1 0 auto;
  }
}
.box-info__title {
  font-weight: 700;
}
.box-info__text-small {
  font-size: 1.2rem;
}
.box-info__date {
  font-family: "Open Sans", sans-serif;
  font-weight: 700;
  font-size: 1.2rem;
}
.box-info__day {
  font-family: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
}
@media all and (min-width: 768px) {
  .box-info--center {
    align-items: center;
  }
}

.box-content {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .box-content {
    margin-top: 60px;
  }
}
.box-content:first-of-type {
  margin-top: 0;
}
@media all and (min-width: 768px) {
  .box-content__inner {
    display: flex;
  }
}
@media all and (min-width: 768px) {
  .box-content__inner--vertical {
    flex-direction: column;
    gap: 64px;
  }
}
@media all and (min-width: 768px) {
  .box-content__inner--side {
    justify-content: flex-end;
    margin-top: 120px;
  }
}
@media all and (max-width: 767px) {
  .box-content__inner--side {
    margin-top: 60px;
  }
}
@media all and (min-width: 768px) {
  .box-content__heading {
    width: 320px;
    margin-right: 80px;
    flex: 1 0 auto;
  }
}
@media all and (min-width: 768px) {
  .box-content__heading--small {
    width: 264px;
    margin-right: 48px;
    flex: 1 0 auto;
  }
}
@media all and (min-width: 768px) {
  .box-content__heading--smallest {
    width: 160px;
    margin-right: 40px;
    flex: 1 0 auto;
  }
}
.box-content__content {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-content__content {
    margin-top: 32px;
  }
}
@media all and (min-width: 768px) {
  .box-content__sub-content {
    align-self: flex-end;
    width: calc(100% - 400px);
  }
}
.box-content--bg-white {
  min-width: 1264px;
  padding: 180px 0;
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .box-content--bg-white {
    min-width: 100%;
    padding: 90px 0;
  }
}

@media all and (min-width: 768px) {
  .box-news {
    display: flex;
    align-items: flex-start;
    transition: opacity 0.3s ease-out;
  }
}
.box-news__group {
  display: flex;
  align-items: baseline;
  flex: 1 0 auto;
  width: 200px;
  font-size: 1.2rem;
}
@media all and (min-width: 768px) {
  .box-news__group {
    padding: 2.5px 0;
  }
}
@media all and (min-width: 768px) {
  .box-news__group--width100px {
    width: 100px;
  }
}
@media all and (min-width: 768px) {
  .box-news__group--width120px {
    width: 120px;
  }
}
.box-news__date {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
}
@media all and (min-width: 768px) {
  .box-news__date {
    width: 100px;
  }
}
@media all and (min-width: 768px) {
  .box-news__date--public-notice {
    width: 120px;
  }
}
.box-news__category {
  color: #9ea8c8;
}
@media all and (min-width: 768px) {
  .box-news__category {
    width: 100px;
  }
}
@media all and (max-width: 767px) {
  .box-news__category {
    margin-left: 12px;
  }
}
.box-news__detail {
  width: 100%;
}
@media all and (min-width: 768px) {
  .box-news__detail {
    display: flex;
    align-items: flex-start;
  }
}
@media all and (max-width: 767px) {
  .box-news__detail {
    margin-top: 8px;
  }
}
.box-news__text {
  width: 100%;
  line-height: 1.8;
  font-size: 1.5rem;
}
.box-news__pdf {
  flex: 1 0 auto;
  width: 82px;
  margin-left: 20px;
  padding: 2.5px 0px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .box-news__pdf {
    width: auto;
    margin: 8px 0 0 0;
    padding: 0;
  }
}
.box-news__pdf-text {
  display: inline-block;
  position: relative;
  padding-right: 20px;
  color: #9ea8c8;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
}
@media all and (max-width: 767px) {
  .box-news__pdf-text {
    width: auto;
    margin-left: 0;
  }
}
.box-news__pdf-text::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_pdf_gray.svg") right center no-repeat;
  background-size: contain;
}
@media all and (max-width: 767px) {
  .box-news--notices {
    display: flex;
    align-items: flex-start;
    gap: 16px;
  }
}
.box-news--notices .box-news__group {
  width: 80px;
}
@media all and (max-width: 767px) {
  .box-news--notices .box-news__group {
    width: 62px;
    padding: 2.5px 0;
  }
}
.box-news--notices .box-news__group .box-news__date {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-news--notices .box-news__detail {
    margin-top: 0;
  }
}
.box-news--recruit .box-news__group {
  width: 120px;
}
@media all and (max-width: 767px) {
  .box-news--recruit .box-news__group {
    width: 100%;
  }
}
.box-news--recruit .box-news__group .box-news__date {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-news--recruit .box-news__detail {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .box-news:hover {
    opacity: 0.6;
  }
}
.box-news--no-hover-action {
  pointer-events: none;
}
.box-news--external-icon {
  position: relative;
}
.box-news--external-icon::after {
  content: "";
  display: inline;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("/assets/images/common/ico_external_link_gray.svg");
  margin-left: 8px;
}

.box-important-notices {
  background-color: #fff;
}
@media all and (min-width: 768px) {
  .box-important-notices {
    border-radius: 4px;
  }
}
@media all and (max-width: 767px) {
  .box-important-notices {
    margin: 0 -25px;
  }
}
.box-important-notices__inner {
  padding: 48px 40px;
}
@media all and (min-width: 768px) {
  .box-important-notices__inner {
    display: flex;
  }
}
@media all and (max-width: 767px) {
  .box-important-notices__inner {
    padding: 24px 25px;
  }
}
.box-important-notices__title {
  color: #c52e20;
}
@media all and (min-width: 768px) {
  .box-important-notices__title {
    width: 130px;
    margin-right: 40px;
    flex: 1 0 auto;
  }
}
.box-important-notices__box {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-important-notices__box {
    margin-top: 12px;
  }
}

.box-facebook {
  height: 710px;
  overflow-y: auto;
}
@media all and (max-width: 767px) {
  .box-facebook {
    height: 400px;
  }
}
@media all and (min-width: 768px) {
  .box-facebook__item {
    height: 100%;
  }
}
@media all and (min-width: 768px) {
  .box-facebook--small {
    height: 670px;
  }
}

.box-other-sns {
  padding: 49px 40px 42px;
  margin-top: 32px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .box-other-sns {
    padding: 24px 20px 18px;
  }
}
.box-other-sns__head {
  margin-bottom: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.box-map__text {
  margin-bottom: 32px;
}
@media all and (max-width: 767px) {
  .box-map__text {
    margin-bottom: 16px;
  }
}
.box-map__content {
  position: relative;
}
.box-map__content:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 60%;
}
@media all and (max-width: 767px) {
  .box-map__content:before {
    padding-top: 123.08%;
  }
}
.box-map__iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.box-map__image {
  padding: 24px 20px;
  background-color: #fff;
  border-radius: 4px;
}
.box-map__image--large {
  padding: 48px 40px;
}
@media all and (max-width: 767px) {
  .box-map__image--large {
    padding: 24px 20px;
  }
}
.box-map__image img {
  width: 100%;
  height: auto;
}

.box-archive {
  padding: 80px 60px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .box-archive {
    padding: 24px 20px;
  }
}
@media all and (min-width: 768px) {
  .box-archive__inner {
    display: flex;
  }
}
.box-archive__figure {
  position: relative;
  overflow: hidden;
  flex: 1 0 auto;
  width: 360px;
  height: 240px;
  border-radius: 4px;
  border: 1px solid #e2e4e9;
}
@media all and (max-width: 767px) {
  .box-archive__figure {
    width: 100%;
    height: calc(100vw * 190 / 375);
  }
}
.box-archive__image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  max-width: inherit;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
}
.box-archive__content {
  width: 100%;
}
@media all and (min-width: 768px) {
  .box-archive__content {
    padding-left: 48px;
  }
}
@media all and (max-width: 767px) {
  .box-archive__content {
    margin-top: 24px;
  }
}
.box-archive__text {
  margin-top: 20px;
}
.box-archive + .box-archive {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .box-archive + .box-archive {
    margin-top: 24px;
  }
}

.box-estate {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .box-estate {
    margin-top: 32px;
  }
}

.box-goods-store {
  padding-bottom: 32px;
  border-bottom: 1px solid #e2e4e9;
}
@media all and (max-width: 767px) {
  .box-goods-store {
    padding-bottom: 16px;
  }
}
.box-goods-store__link {
  position: relative;
  display: block;
  transition: opacity 0.3s ease-out;
}
.box-goods-store__link::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_external_link_gray.svg") right center no-repeat;
}
.box-goods-store__link--oneline {
  position: static;
  display: grid;
  grid-template-columns: auto 20px;
  align-items: center;
  gap: 12px;
}
.box-goods-store__link--oneline::after {
  position: static;
}
@media all and (min-width: 768px) {
  .box-goods-store__link:hover {
    opacity: 0.6;
  }
}
@media all and (min-width: 768px) {
  .box-goods-store__link:hover + .box-goods-store__telephone {
    opacity: 0.6;
  }
}
.box-goods-store__title {
  margin-bottom: 16px;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .box-goods-store__title {
    margin-bottom: 8px;
  }
}
.box-goods-store__text {
  font-size: 1.2rem;
}
.box-goods-store__telephone {
  font-size: 1.2rem;
}
@media all and (min-width: 768px) {
  .box-goods-store__telephone {
    transition: opacity 0.3s ease-out;
  }
}
@media all and (max-width: 767px) {
  .box-goods-store__telephone {
    text-decoration: underline;
  }
}
.box-goods-store__telephone-link {
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .box-goods-store__telephone-link {
    pointer-events: none;
  }
}
@media all and (min-width: 768px) {
  .box-goods-store__telephone-link:hover {
    opacity: 0.6;
  }
}

@media all and (min-width: 768px) {
  .box-calendar {
    display: flex;
  }
}
.box-calendar__figure {
  overflow: hidden;
  border-radius: 4px;
}
@media all and (min-width: 768px) {
  .box-calendar__figure {
    width: 320px;
    flex: 1 0 auto;
    margin-right: 48px;
  }
}
@media all and (max-width: 767px) {
  .box-calendar__figure {
    height: calc(100vw * 305 / 375);
    margin: 0 auto;
    text-align: center;
  }
}
.box-calendar__image {
  width: 100%;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .box-calendar__image {
    width: auto;
    max-height: 100%;
    max-width: 100%;
  }
}
.box-calendar__box {
  width: 100%;
}
@media all and (max-width: 767px) {
  .box-calendar__box {
    margin-top: 24px;
  }
}
.box-calendar__text {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .box-calendar__text {
    margin-top: 12px;
  }
}
.box-calendar__period {
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .box-calendar__period {
    margin-top: 12px;
  }
}

.anchor-section {
  padding-top: 96px;
  margin-top: -96px;
}

.breadcrumb {
  width: 100%;
  margin: 180px auto 0;
  padding: 0 40px 32px;
}
@media all and (max-width: 767px) {
  .breadcrumb {
    margin-top: 90px;
    padding: 0 25px 16px;
  }
}
.breadcrumb__list {
  display: block;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .breadcrumb__list {
    max-width: 100%;
  }
}
.breadcrumb__list-item {
  display: inline;
  position: relative;
  font-size: 1.2rem;
}
.breadcrumb__list-item:not(:last-child) {
  padding-right: 24px;
}
.breadcrumb__list-item:not(:last-child)::after {
  content: "／";
  position: absolute;
  top: -2px;
  right: 4px;
  color: #9ea8c8;
}
.breadcrumb__list-link {
  text-decoration: underline;
  transition: opacity ease-out 0.3s, -webkit-text-decoration ease-out 0.3s;
  transition: opacity ease-out 0.3s, text-decoration ease-out 0.3s;
  transition: opacity ease-out 0.3s, text-decoration ease-out 0.3s, -webkit-text-decoration ease-out 0.3s;
}
@media all and (min-width: 768px) {
  .breadcrumb__list-link:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}
.breadcrumb--bg-white {
  margin-top: 0;
  background-color: #fff;
}
.breadcrumb--bg-ghost-white {
  margin-top: 0;
  background-color: #f3f3f6;
}

.button {
  position: relative;
  display: block;
  width: 320px;
  margin: 64px auto 0;
  border: 1px solid #003692;
  border-radius: 2px;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .button {
    width: 100%;
    margin-top: 32px;
  }
}
.button::before, .button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 16px;
  width: 24px;
  height: 4px;
  background: url("/assets/images/common/ico_arrow_right_white.svg") right center no-repeat;
  transform: translate(0, -50%);
  opacity: 1;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform, opacity;
  z-index: 2;
}
.button::after {
  transform: translate(-100%, -50%);
  opacity: 0;
}
.button__link {
  position: relative;
  display: block;
  padding: 13px 40px 13.5px;
  color: #fafafa;
}
@media all and (max-width: 767px) {
  .button__link {
    padding: 14.5px 40px 14px;
  }
}
.button__link::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #003692;
}
.button__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #002a71;
  transform: scaleX(0);
  transform-origin: left;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
@media all and (min-width: 768px) {
  .button--hover::before {
    transform: translate(100%, -50%);
    opacity: 0;
  }
}
@media all and (min-width: 768px) {
  .button--hover::after {
    transform: translate(0, -50%);
    opacity: 1;
  }
}
@media all and (min-width: 768px) {
  .button--hover .button__link::after {
    transform: scaleX(1);
    transform-origin: left;
  }
}
.button__text {
  display: block;
  position: relative;
  z-index: 4;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: color;
  white-space: nowrap;
}
.button--blank::before, .button--blank::after {
  width: 20px;
  height: 20px;
  right: 15px;
  background: url("/assets/images/common/ico_external_link_white.svg") right center no-repeat;
  transform: translateY(-50%);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: right;
}
@media all and (min-width: 768px) {
  .button--blank.button--hover::before, .button--blank.button--hover::after {
    right: 9px;
  }
}
.button--white {
  border: 1px solid #003692;
}
.button--white .button__link {
  color: #003692;
}
.button--white .button__link::before {
  background-color: #fafafa;
}
.button--white .button__link::after {
  background-color: #f3f3f6;
}
.button--white::before {
  background-image: url("/assets/images/common/ico_arrow_right_blue.svg");
}
.button--white::after {
  background-image: url("/assets/images/common/ico_arrow_right_blue.svg");
}
.button--white.button--blank::before {
  background-image: url("/assets/images/common/ico_external_link_blue.svg");
}
.button--white.button--blank::after {
  background-image: url("/assets/images/common/ico_external_link_blue.svg");
}
.button--youtube::before, .button--youtube::after, .button--facebook::before, .button--facebook::after, .button--instagram::before, .button--instagram::after, .button--tiktok::before, .button--tiktok::after, .button--x-twitter::before, .button--x-twitter::after, .button--line::before, .button--line::after {
  display: none;
}
.button--youtube .button__link, .button--facebook .button__link, .button--instagram .button__link, .button--tiktok .button__link, .button--x-twitter .button__link, .button--line .button__link {
  padding-left: 20px;
  padding-right: 20px;
}
.button--youtube .button__text, .button--facebook .button__text, .button--instagram .button__text, .button--tiktok .button__text, .button--x-twitter .button__text, .button--line .button__text {
  display: inline-block;
  position: relative;
  padding-left: 32px;
}
.button--youtube .button__text::before, .button--facebook .button__text::before, .button--instagram .button__text::before, .button--tiktok .button__text::before, .button--x-twitter .button__text::before, .button--line .button__text::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 2;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: left;
}
@media all and (min-width: 768px) {
  .button--youtube.button--hover .button__text::before, .button--facebook.button--hover .button__text::before, .button--instagram.button--hover .button__text::before, .button--tiktok.button--hover .button__text::before, .button--x-twitter.button--hover .button__text::before, .button--line.button--hover .button__text::before {
    left: -9px;
  }
}
.button--youtube .button__text::before {
  width: 20px;
  height: 14px;
  background: url("/assets/images/common/ico_youtube.svg") left center no-repeat;
}
.button--x-twitter {
  margin-top: 32px;
}
.button--x-twitter .button__text::before {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_x-twitter.svg") right center no-repeat;
  background-size: contain;
}
.button--facebook {
  margin-top: 32px;
}
.button--facebook .button__text::before {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_facebook.svg") right center no-repeat;
  background-size: contain;
}
.button--instagram {
  margin-top: 32px;
}
.button--instagram .button__text::before {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_instagram.svg") right center no-repeat;
  background-size: contain;
}
.button--tiktok {
  margin-top: 32px;
}
.button--tiktok .button__text::before {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_tiktok.svg") right center no-repeat;
  background-size: contain;
}
.button--line {
  margin-top: 32px;
}
.button--line .button__text::before {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_line.svg") right center no-repeat;
  background-size: contain;
}
.button--left {
  margin-left: 0;
}
.button--full {
  width: 100%;
}
.button--full .button__link {
  padding: 24px 30px 24px 24px;
}
@media all and (max-width: 767px) {
  .button--full .button__link {
    padding: 24px 40px 24px 24px;
  }
}
.button--full-mini {
  width: 100%;
}

.button-more {
  position: relative;
  display: block;
  width: 155px;
  margin: 32px auto 0;
  padding: 13.5px 56px 13px 5px;
  border: 1px solid #003692;
  font-weight: 700;
  color: #003692;
  text-align: right;
  line-height: 1.5;
  border-radius: 2px;
}
@media all and (max-width: 767px) {
  .button-more {
    margin-top: 16px;
  }
}
.button-more::before {
  content: "";
  position: absolute;
  top: 50%;
  width: 12px;
  right: 28px;
  height: 2px;
  background-color: #003692;
  border-radius: 2px;
  transition: transform 0.3s;
}
.button-more::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 12px;
  right: 28px;
  height: 2px;
  background-color: #003692;
  border-radius: 2px;
  transition: transform 0.3s;
  transform: rotate(90deg);
}
.button-more--less::after {
  transform: rotate(180deg);
  z-index: 2;
}
@media all and (min-width: 768px) {
  .button-more:hover {
    opacity: 0.6 !important;
    transition: opacity 0.3s ease !important;
  }
}

.button-plain {
  position: relative;
  display: block;
  padding: 8px 0;
  color: #003692;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
  border: 1px solid #003692;
  border-radius: 2px;
  transition: opacity ease-out 0.3s;
}
@media all and (max-width: 767px) {
  .button-plain {
    width: 100%;
  }
}
@media all and (min-width: 768px) {
  .button-plain:hover {
    opacity: 0.6;
  }
}
.button-plain--blank::after {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  top: 50%;
  right: 16px;
  background: url("/assets/images/common/ico_external_link_blue.svg") right center no-repeat;
  transform: translateY(-50%);
}
@media all and (max-width: 767px) {
  .button-plain--blank::after {
    right: 6px;
  }
}

.link {
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .link:hover {
    text-decoration: underline;
    opacity: 0.6;
  }
}
.link--blank {
  position: relative;
  padding-right: 24px;
}
.link--blank::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  right: 0;
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_blank_grey.svg") 0 0 no-repeat;
  background-size: contain;
}
@media all and (min-width: 768px) {
  .link--blank {
    opacity: 1;
    transition: opacity 0.3s ease-out;
  }
  .link--blank:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}
.link--blank-black {
  position: relative;
  padding-right: 24px;
  text-decoration: underline;
}
.link--blank-black::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  right: 0;
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_external_link_black.svg") right center no-repeat;
  background-size: contain;
}
@media all and (min-width: 768px) {
  .link--blank-black {
    opacity: 1;
    transition: opacity 0.3s ease-out;
  }
  .link--blank-black:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}
.link--blank-red {
  position: relative;
  padding-right: 24px;
  color: #c52e20;
}
.link--blank-red::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  right: 0;
  width: 17px;
  height: 17px;
  background: url("/assets/images/common/ico_external_link_red.svg") right center no-repeat;
  background-size: contain;
}
@media all and (min-width: 768px) {
  .link--blank-red {
    opacity: 1;
    transition: opacity 0.3s ease-out;
  }
  .link--blank-red:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}
.link--hover-underline {
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .link--hover-underline:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}
.link--hover-opacity {
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .link--hover-opacity:hover {
    text-decoration: underline;
    opacity: 0.6;
  }
}

.link-pdf {
  display: inline-block;
}
.link-pdf:not(:first-child) {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .link-pdf:not(:first-child) {
    margin-top: 12px;
  }
}
.link-pdf__text {
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
.link-pdf__size {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  font-size: 1.2rem;
  color: #9ea8c8;
  line-height: 1.8;
}
@media all and (max-width: 767px) {
  .link-pdf__size {
    width: auto;
    margin-left: 0;
  }
}
.link-pdf__size::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_pdf_gray.svg") right center no-repeat;
  background-size: contain;
}
@media all and (min-width: 768px) {
  .link-pdf:hover .link-pdf__text {
    opacity: 0.6;
    text-decoration: underline;
  }
}

.link-twitter {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
  transition: opacity 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out;
  transition: opacity 0.3s ease-out, text-decoration 0.3s ease-out, -webkit-text-decoration 0.3s ease-out;
}
.link-twitter::before {
  content: "";
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: url("/assets/images/common/ico_twitter.svg") 0 0 no-repeat;
}
@media all and (min-width: 768px) {
  .link-twitter:hover {
    opacity: 0.6;
    text-decoration: underline;
  }
}

.card-category {
  position: relative;
  display: block;
}
.card-category::before, .card-category::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 48px;
  left: 40px;
  width: 24px;
  height: 4px;
  background: url("/assets/images/common/ico_arrow_right_black.svg") right center no-repeat;
  z-index: 2;
  opacity: 1;
  transform: translateX(0);
}
@media all and (min-width: 768px) {
  .card-category::before, .card-category::after {
    transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
    transition-property: transform, opacity;
  }
}
@media all and (max-width: 767px) {
  .card-category::before, .card-category::after {
    bottom: 24px;
    left: 20px;
  }
}
.card-category::after {
  transform: translateX(-100%);
  opacity: 0;
}
.card-category__inner {
  position: relative;
  display: block;
  min-height: 284px;
  padding: 48px 40px;
}
@media all and (max-width: 767px) {
  .card-category__inner {
    min-height: 182px;
    padding: 24px 20px;
  }
}
.card-category__inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
}
.card-category__inner::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left;
  background-color: #f3f3f6;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
@media all and (min-width: 768px) {
  .card-category--hover::before {
    transform: translateX(100%);
    opacity: 0;
  }
}
@media all and (min-width: 768px) {
  .card-category--hover::after {
    transform: translateX(0);
    opacity: 1;
  }
}
@media all and (min-width: 768px) {
  .card-category--hover .card-category__inner::after {
    transform: scaleX(1);
    transform-origin: left;
  }
}
.card-category__icon {
  position: relative;
  display: block;
  width: 48px;
  min-height: 48px;
  margin-bottom: 24px;
  z-index: 2;
}
@media all and (max-width: 767px) {
  .card-category__icon {
    width: 36px;
    min-height: 36px;
    margin-bottom: 12px;
  }
}
.card-category__heading {
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  z-index: 2;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: color;
}
@media all and (max-width: 767px) {
  .card-category__heading {
    font-size: 1.8rem;
  }
}
.card-category__heading--white {
  color: #fafafa;
}
.card-category__heading--black {
  color: #010a23;
}
.card-category__heading + * {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .card-category__heading + * {
    margin-top: 24px;
  }
}
.card-category__text {
  position: relative;
  margin-top: 16px;
  margin-bottom: 24px;
  z-index: 2;
}

.card-banner {
  display: block;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 332px;
  border-radius: 4px;
  will-change: transform;
}
@media all and (max-width: 767px) {
  .card-banner {
    height: calc(100vw * 182 / 375);
  }
}
.card-banner::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 48px;
  right: 40px;
  transform: translateY(-50%);
  width: 24px;
  height: 4px;
  background: url("/assets/images/common/ico_arrow_right_white.svg") right center no-repeat;
  z-index: 3;
}
@media all and (max-width: 767px) {
  .card-banner::before {
    bottom: 34px;
    right: 20px;
  }
}
@media all and (min-width: 768px) {
  .card-banner::before {
    transition: opacity 0.3s ease-out;
  }
}
.card-banner__image {
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 4px;
  will-change: transform;
}
.card-banner__image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  max-width: inherit;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
.card-banner__box {
  position: absolute;
  left: 40px;
  bottom: 48px;
  padding-right: 80px;
  color: #fafafa;
  z-index: 2;
  transition: opacity 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .card-banner__box {
    bottom: 24px;
    left: 20px;
    padding-right: 50px;
  }
}
.card-banner__desc {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .card-banner__desc {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .card-banner:hover::before {
    opacity: 0.6 !important;
  }
}
@media all and (min-width: 768px) {
  .card-banner:hover .card-banner__image img {
    transform: translate(-50%, -50%) scale(1.1) !important;
  }
}
@media all and (min-width: 768px) {
  .card-banner:hover .card-banner__box {
    opacity: 0.6 !important;
  }
}
.card-banner--bg-overlay::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: rgba(25, 30, 58, 0.5);
  border-radius: 4px;
}
.card-banner--arrow-black::before {
  background: url("/assets/images/common/ico_arrow_right_black.svg") right center no-repeat;
  z-index: 3;
}
.card-banner--blank-black::before {
  width: 20px;
  height: 20px;
  bottom: 46px;
  background: url("/assets/images/common/ico_external_link_black.svg") right center no-repeat;
  z-index: 3;
}
@media all and (max-width: 767px) {
  .card-banner--blank-black::before {
    bottom: 17px;
  }
}
.card-banner--blank-black .card-banner__box {
  color: #010a23;
}
.card-banner--blank-white::before {
  width: 20px;
  height: 20px;
  bottom: 46px;
  background: url("/assets/images/common/ico_external_link_white.svg") right center no-repeat;
  z-index: 3;
}
@media all and (max-width: 767px) {
  .card-banner--blank-white::before {
    bottom: 17px;
  }
}

.card-lineup {
  display: block;
}
.card-lineup__figure {
  display: block;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  background-color: #fff;
}
.card-lineup__image {
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 650/920;
  border-radius: 4px;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
.card-lineup__title {
  margin-top: 16px;
  font-weight: 700;
  line-height: 1.5;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
.card-lineup__text {
  margin-top: 8px;
  font-size: 1.2rem;
  line-height: 1.8;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
.card-lineup__text--gray {
  color: #9ea8c8;
}
.card-lineup__text--copy {
  font-size: 1rem;
}
.card-lineup__text + .card-lineup__text {
  margin-top: 2px;
}
.card-lineup__at {
  margin-top: 2px;
  color: #9ea8c8;
  font-size: 1.2rem;
  line-height: 1.8;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
@media all and (max-width: 767px) {
  .card-lineup__at {
    overflow: hidden;
    width: 150.5px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
.card-lineup__at-item {
  position: relative;
}
.card-lineup__at-item:not(:last-child)::after {
  content: ", ";
}
.card-lineup__label {
  margin-top: 8px;
  color: #9ea8c8;
  font-size: 1.2rem;
  line-height: 1.8;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
.card-lineup__label-item {
  position: relative;
}
.card-lineup__label-item:not(:last-child)::after {
  content: ", ";
}
.card-lineup__logo {
  width: 82px;
  margin-top: 8px;
  line-height: 1;
  transition: opacity 0.6s cubic-bezier(0, 0, 0.2, 1);
}
@media all and (min-width: 768px) {
  .card-lineup:hover .card-lineup__image {
    transform: scale(1.1) !important;
  }
}
@media all and (min-width: 768px) {
  .card-lineup:hover .card-lineup__title {
    opacity: 0.6 !important;
  }
}
@media all and (min-width: 768px) {
  .card-lineup:hover .card-lineup__text {
    opacity: 0.6 !important;
  }
}
@media all and (min-width: 768px) {
  .card-lineup:hover .card-lineup__at {
    opacity: 0.6 !important;
  }
}
@media all and (min-width: 768px) {
  .card-lineup:hover .card-lineup__logo {
    opacity: 0.6 !important;
  }
}
.card-lineup--image-small .card-lineup__figure {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 148px;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .card-lineup--image-small .card-lineup__figure {
    height: calc(100vw * 85 / 375);
  }
}
.card-lineup--image-small .card-lineup__image {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 148px;
  border-radius: 4px;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
@media all and (max-width: 767px) {
  .card-lineup--image-small .card-lineup__image {
    height: calc(100vw * 85 / 375);
  }
}
.card-lineup--no-hover {
  pointer-events: none;
}

.card-trailer__video {
  position: relative;
}
.card-trailer__video::before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}
.card-trailer__iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 4px;
}
.card-trailer__caption {
  margin-top: 16px;
}

.card-topic {
  display: block;
}
.card-topic__figure {
  overflow: hidden;
  border-radius: 4px;
  will-change: transform;
}
.card-topic__image {
  width: 100%;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
.card-topic__box {
  display: flex;
  margin-top: 16px;
  font-size: 1.2rem;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
.card-topic__date {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
}
.card-topic__tag {
  margin-left: 12px;
  color: #9ea8c8;
}
.card-topic__text {
  margin-top: 8px;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
}
@media all and (min-width: 768px) {
  .card-topic:hover .card-topic__image {
    transform: scale(1.1) !important;
  }
  .card-topic:hover .card-topic__box {
    opacity: 0.6 !important;
  }
  .card-topic:hover .card-topic__text {
    opacity: 0.6 !important;
  }
}
.card-topic--external-icon {
  position: relative;
}
.card-topic--external-icon::after {
  content: "";
  display: inline;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("/assets/images/common/ico_external_link_gray.svg");
  margin-left: 8px;
}

.card-company {
  display: flex;
}
.card-company__frame {
  width: 108px;
  height: 81px;
  border-radius: 4px;
  flex: 0 0 auto;
  overflow: hidden;
}
@media all and (max-width: 767px) {
  .card-company__frame {
    width: 80px;
    height: 60px;
  }
}
.card-company__image {
  width: 100%;
  height: auto;
  border-radius: 4px;
  transition: transform 0.3s ease-out;
}
.card-company__detail {
  position: relative;
  width: 100%;
  margin-left: 16px;
  padding-right: 18px;
}
.card-company__detail--blank::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 1.5px;
  right: 0;
  background: url("/assets/images/common/ico_blank_grey.svg") 0 0 no-repeat;
  background-size: contain;
  transition: opacity 0.3s ease-out;
}
.card-company__title {
  font-weight: 700;
  line-height: 1.5;
  padding-right: 10px;
  transition: opacity 0.3s ease-out;
}
.card-company__text {
  margin-top: 8px;
  line-height: 1.5;
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .card-company:hover .card-company__image {
    transform: scale(1.1);
  }
}
@media all and (min-width: 768px) {
  .card-company:hover .card-company__detail::after,
  .card-company:hover .card-company__title,
  .card-company:hover .card-company__text {
    opacity: 0.6;
  }
}
.card-company__underline {
  display: inline-block;
  margin-top: 4px;
  text-decoration: underline;
  line-height: 1.5;
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .card-company__underline:hover {
    opacity: 0.6;
  }
}

.card-service__frame {
  width: 376px;
  height: 210px;
  border-radius: 4px;
  overflow: hidden;
}
@media all and (max-width: 767px) {
  .card-service__frame {
    width: 100%;
    height: 84px;
  }
}
.card-service__image {
  width: 376px;
  height: 210px;
  transition: transform 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .card-service__image {
    width: 100%;
    height: 84px;
  }
}
.card-service__title {
  position: relative;
  margin-top: 16px;
  padding-right: 20px;
  font-weight: 700;
  line-height: 1.5;
  transition: opacity 0.3s ease-out;
}
.card-service__title::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 2px;
  right: 0;
  background: url("/assets/images/common/ico_blank_grey.svg") 0 0 no-repeat;
  background-size: contain;
}
@media all and (min-width: 768px) {
  .card-service:hover .card-service__image {
    transform: scale(1.1);
  }
}
@media all and (min-width: 768px) {
  .card-service:hover .card-service__title {
    opacity: 0.6;
  }
}

.card-search {
  display: flex;
}
.card-search__figure {
  flex: 0 0 auto;
  width: 200px;
  height: 150px;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .card-search__figure {
    width: 80px;
    height: 60px;
  }
}
.card-search__image {
  width: 100%;
  height: 100%;
  max-width: inherit;
  -o-object-fit: contain;
  object-fit: contain;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: transform;
}
.card-search__details {
  margin-left: 32px;
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition-property: opacity;
  word-break: break-all;
}
@media all and (max-width: 767px) {
  .card-search__details {
    margin-left: 16px;
  }
}
.card-search__title {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  font-weight: 700;
  overflow: hidden;
  line-height: 1.5;
}
.card-search__text {
  margin-top: 16px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .card-search__text {
    -webkit-line-clamp: 3;
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .card-search:hover .card-search__image {
    transform: scale(1.1);
  }
  .card-search:hover .card-search__details {
    opacity: 0.6;
  }
}

.card-real-estate__figure {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}
@media all and (min-width: 768px) {
  .card-real-estate__figure {
    height: 170px;
  }
}
@media all and (max-width: 767px) {
  .card-real-estate__figure {
    width: 100%;
    aspect-ratio: 269/178;
  }
}
@media all and (min-width: 768px) {
  .card-real-estate__image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    max-width: inherit;
    border-radius: 4px;
  }
}
@media all and (max-width: 767px) {
  .card-real-estate__image {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.card-real-estate__caption {
  margin-top: 14px;
  padding-left: 8px;
}
@media all and (max-width: 767px) {
  .card-real-estate__caption {
    margin-top: 5px;
    padding-left: 0;
  }
}

.card-filter-estate {
  position: relative;
}
.card-filter-estate__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 32px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__head {
    margin-bottom: 16px;
    font-size: 1.8rem;
  }
}
.card-filter-estate__frame {
  position: absolute;
  width: 360px;
  right: 0;
  top: 0;
}
@media all and (max-width: 767px) {
  .card-filter-estate__frame {
    position: relative;
    width: 100%;
  }
}
.card-filter-estate__figure {
  position: relative;
  overflow: hidden;
  width: 100%;
  border-radius: 4px;
}
@media all and (min-width: 768px) {
  .card-filter-estate__figure {
    height: 202px;
  }
}
@media all and (max-width: 767px) {
  .card-filter-estate__figure {
    aspect-ratio: 25/14;
  }
}
@media all and (min-width: 768px) {
  .card-filter-estate__image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    max-width: inherit;
  }
}
@media all and (max-width: 767px) {
  .card-filter-estate__image {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.card-filter-estate__box {
  display: flex;
}
@media all and (max-width: 767px) {
  .card-filter-estate__box {
    display: block;
    margin-top: 12px;
  }
}
.card-filter-estate__list {
  width: 408px;
  flex: 0 0 auto;
  overflow: hidden;
  padding-right: 10px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__list {
    width: 100%;
  }
}
@media all and (max-width: 767px) {
  .card-filter-estate__list + .card-filter-estate__list {
    margin-top: 4px;
  }
}
.card-filter-estate__title {
  width: 80px;
  float: left;
  font-weight: 700;
}
.card-filter-estate__title--red {
  color: #c52e20;
}
.card-filter-estate__details {
  margin-left: 92px;
}
.card-filter-estate__details:not(:last-child) {
  padding-bottom: 8px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__details:not(:last-child) {
    padding-bottom: 4px;
  }
}
.card-filter-estate__text:not(:first-child) {
  margin-top: 8px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__text:not(:first-child) {
    margin-top: 4px;
  }
}
.card-filter-estate__button {
  width: 320px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__button {
    width: 100%;
  }
}
.card-filter-estate__button .button {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .card-filter-estate__button .button {
    margin-top: 16px;
  }
}

.image-poster {
  display: flex;
  justify-content: center;
}
.image-poster__image {
  width: 100%;
  border-radius: 4px;
}
.image-poster__caption {
  margin-top: 24px;
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .image-poster__caption {
    margin-top: 12px;
  }
}
.image-poster__chart {
  width: 325px;
  height: 235px;
}
.image-poster + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .image-poster + * {
    margin-top: 32px;
  }
}
.image-poster + .list-note {
  margin-top: 0;
}

.image__picture {
  border-radius: 4px;
  max-width: 100%;
}
.image + * {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .image + * {
    margin-top: 24px;
  }
}

.list-link__item:not(:first-child) {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .list-link__item:not(:first-child) {
    margin-top: 16px;
  }
}
.list-link__link {
  text-decoration: underline;
}
@media all and (min-width: 768px) {
  .list-link__link:hover {
    text-decoration: none;
  }
}

.list-note__item {
  margin-top: 16px;
  font-size: 1.2rem;
  color: #9ea8c8;
}
@media all and (max-width: 767px) {
  .list-note__item:not(:first-child) {
    margin-top: 8px;
  }
}
.list-note__item--right {
  text-align: right;
}
.list-note--star .list-note__item {
  position: relative;
  padding-left: 12px;
}
.list-note--star .list-note__item::before {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  color: #9ea8c8;
}
.list-note--right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.list-note--black .list-note__item {
  padding-left: 14px;
  color: #010a23;
}
.list-note--black .list-note__item:not(:first-child) {
  margin-top: 0;
}
.list-note--black .list-note__item::before {
  color: #010a23;
}
.list-note--font-base-black .list-note__item {
  color: #010a23;
  font-size: 1.5rem;
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-note--font-base-black .list-note__item {
    margin-top: 12px;
  }
}

.list-border {
  overflow: hidden;
}
.list-border--height {
  min-height: 284px;
}
.list-border__item {
  position: relative;
}
.list-border__item::after {
  content: "";
  position: absolute;
  bottom: 0;
  height: 1px;
  width: 100%;
  background-color: #e2e4e9;
}
.list-border__item > .box-news {
  padding-bottom: 32px;
}
@media all and (max-width: 767px) {
  .list-border__item > .box-news {
    display: block;
    padding-bottom: 16px;
  }
}
.list-border__item > .box-info {
  padding-bottom: 32px;
}
@media all and (max-width: 767px) {
  .list-border__item > .box-info {
    padding-bottom: 16px;
  }
}
.list-border__item:not(:first-child) > .box-news {
  padding-top: 32px;
}
@media all and (max-width: 767px) {
  .list-border__item:not(:first-child) > .box-news {
    padding-top: 16px;
  }
}
.list-border__item:not(:first-child) > .box-info {
  padding-top: 32px;
}
@media all and (max-width: 767px) {
  .list-border__item:not(:first-child) > .box-info {
    padding-top: 16px;
  }
}
.list-border__item:first-child > .box-info {
  padding-top: 0;
}

.list-category {
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.5px;
  margin-right: -1.5px;
  border-radius: 10px;
}
.list-category__item {
  width: 50%;
  padding: 1.5px;
}
.list-category__item--full {
  width: 100%;
}
.list-category__link {
  height: 100%;
}
@media all and (max-width: 767px) {
  .list-category--small-col1 .list-category__item {
    width: 100%;
  }
}
@media all and (min-width: 768px) {
  .list-category--medium-col2 .list-category__item {
    width: 50%;
  }
}
@media all and (min-width: 768px) {
  .list-category--medium-col3 .list-category__item {
    width: 33.33%;
  }
}
@media all and (min-width: 768px) {
  .list-category--medium-col4 .list-category__item {
    width: 25%;
  }
}
.list-category--margin-bottom {
  margin-bottom: 180px;
}
@media all and (max-width: 767px) {
  .list-category--margin-bottom {
    margin-bottom: 90px;
  }
}

.list-banner__item:not(:first-child) {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .list-banner__item:not(:first-child) {
    margin-top: 24px;
  }
}

.list-notices__item:not(:first-child) {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-notices__item:not(:first-child) {
    margin-top: 12px;
  }
}

.list-dott__item {
  position: relative;
  padding-left: 15px;
}
.list-dott__item::before {
  position: absolute;
  display: block;
  content: "・";
  left: 0;
}
.list-dott__link {
  text-decoration: underline;
}
@media all and (min-width: 768px) {
  .list-dott__link:hover {
    text-decoration: none;
  }
}
.list-dott--add-spacing .list-dott__item {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-dott--add-spacing .list-dott__item {
    margin-top: 8px;
  }
}
.list-dott__bold {
  font-weight: 700;
}
.list-dott + * {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-dott + * {
    margin-top: 8px;
  }
}
.list-dott--spacing-wide .list-dott__item:not(:first-child) {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-dott--spacing-wide .list-dott__item:not(:first-child) {
    margin-top: 12px;
  }
}

.list-number {
  counter-reset: number-counter;
}
.list-number__item {
  position: relative;
  padding-left: 24px;
  counter-increment: number-counter;
}
.list-number__item:not(:first-child) {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-number__item:not(:first-child) {
    margin-top: 12px;
  }
}
.list-number__item::before {
  position: absolute;
  content: counter(number-counter) ". ";
  left: 0;
  line-height: 1.8;
}
.list-number__item--roman::before {
  content: counter(number-counter, upper-roman) ".";
}
.list-number__item--bold {
  font-weight: 700;
}
.list-number__item--bold::before {
  line-height: 1.5;
}
.list-number__title {
  font-weight: 700;
  line-height: 1.5;
}
.list-number__title + * {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-number__title + * {
    margin-top: 12px;
  }
}
.list-number__text--normal {
  font-weight: normal;
}

.inner-list-number {
  font-weight: normal;
  list-style-type: decimal;
  margin-left: 22px;
}
.inner-list-number__item {
  position: relative;
  padding-left: 2px;
}
.inner-list-number__item:not(:first-child) {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .inner-list-number__item:not(:first-child) {
    margin-top: 8px;
  }
}

.list-circle {
  counter-reset: number-circle;
}
.list-circle__item {
  position: relative;
  padding-left: 16px;
  counter-increment: number-circle;
}
.list-circle__item:not(:first-child) {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-circle__item:not(:first-child) {
    margin-top: 8px;
  }
}
.list-circle__item::before {
  position: absolute;
  content: counter(number-circle);
  top: 7px;
  left: 0;
  width: 13px;
  height: 13px;
  border: 1px solid #010a23;
  border-radius: 50%;
  text-align: center;
  line-height: 1.1;
  font-size: 1.1rem;
}
.list-circle__item--normal {
  font-weight: normal;
}
.list-circle__item-en {
  position: relative;
  padding-left: 20px;
  counter-increment: number-circle;
}
.list-circle__item-en::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "(" counter(number-circle, lower-roman) ")";
}
.list-circle + * {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-circle + * {
    margin-top: 8px;
  }
}

.list-goods-store {
  display: grid;
  row-gap: 16px;
}
@media all and (min-width: 768px) {
  .list-goods-store {
    margin-top: 48px;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 24px;
  }
}

.list-accordion {
  border-top: 1px solid #e2e4e9;
}
.list-accordion__item {
  border-bottom: 1px solid #e2e4e9;
}

.list-sns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 80px 48px;
  margin-top: 32px;
}
.list-sns--grid-4 {
  grid-template-columns: repeat(4, 1fr);
}
@media all and (max-width: 767px) {
  .list-sns {
    grid-template-columns: unset;
    row-gap: 60px;
  }
}
@media all and (max-width: 767px) {
  .list-sns__item {
    width: 100%;
  }
}
.list-sns__x-twitter {
  grid-column: 1/-1;
  width: 100%;
}
.list-sns__x-twitter .x-twitter-links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
}
@media all and (max-width: 767px) {
  .list-sns__x-twitter .x-twitter-links {
    grid-template-columns: unset;
    row-gap: 60px;
  }
}

.list-other-sns__item:not(:first-child) {
  margin-top: 9px;
}

.list-sub-link__item:not(:first-child) {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-sub-link__item:not(:first-child) {
    margin-top: 12px;
  }
}

.list-real-estate {
  display: grid;
  -moz-column-gap: 16px;
       column-gap: 16px;
  grid-template-columns: repeat(4, 1fr);
}
@media all and (max-width: 767px) {
  .list-real-estate {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 16px;
  }
}

.list-result-estate__item {
  border-bottom: 1px solid #e2e4e9;
}
@media all and (min-width: 768px) {
  .list-result-estate__item {
    padding: 48px 0;
  }
}
@media all and (max-width: 767px) {
  .list-result-estate__item {
    padding: 24px 0;
  }
}

.list-order-dot {
  position: relative;
  counter-reset: order-dot;
}
.list-order-dot__item {
  position: relative;
  margin-top: 48px;
  padding-left: 24px;
}
@media all and (max-width: 767px) {
  .list-order-dot__item {
    margin-top: 24px;
  }
}
.list-order-dot__item::before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: order-dot;
  content: counter(order-dot) ".";
  font-weight: 700;
  line-height: 1.5;
}
.list-order-dot__item--normal {
  font-weight: normal;
}
.list-order-dot__item--alphabet::before {
  content: counter(order-dot, lower-alpha) ".";
  font-weight: normal;
  line-height: 1.8;
}
.list-order-dot__title {
  margin-bottom: 24px;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .list-order-dot__title {
    margin-bottom: 12px;
  }
}
.list-order-dot--font-weight-regular .list-order-dot__item {
  margin-top: 16px;
  padding-left: 16px;
}
@media all and (max-width: 767px) {
  .list-order-dot--font-weight-regular .list-order-dot__item {
    margin-top: 8px;
  }
}
.list-order-dot--font-weight-regular .list-order-dot__item::before {
  font-weight: 400;
  line-height: 1.8;
}
.list-order-dot--font-weight-regular .list-order-dot__title {
  font-weight: 400;
  line-height: 1.8;
}

.list-order-bracket {
  position: relative;
  counter-reset: order-bracket;
}
.list-order-bracket__item {
  position: relative;
  margin-top: 24px;
  padding-left: 24px;
}
@media all and (max-width: 767px) {
  .list-order-bracket__item {
    margin-top: 12px;
  }
}
.list-order-bracket__item::before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: order-bracket;
  content: counter(order-bracket) "）";
}
.list-order-bracket__item--normal {
  font-weight: normal;
}
.list-order-bracket__item--en::before {
  content: "(" counter(order-bracket) ")";
}
.list-order-bracket__item--en-alphabet::before {
  content: counter(order-bracket, lower-alpha) ")";
}
.list-order-bracket + .text {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .list-order-bracket + .text {
    margin-top: 12px;
  }
}

.list-order-circle {
  position: relative;
}
.list-order-circle__item {
  position: relative;
  margin-top: 16px;
  padding-left: 15px;
}
@media all and (max-width: 767px) {
  .list-order-circle__item {
    margin-top: 8px;
  }
}
.list-order-circle__text {
  text-indent: -15px;
}
.list-order-circle + .text {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .list-order-circle + .text {
    margin-top: 8px;
  }
}
.list-order-circle--no-indent .list-order-circle__item {
  padding-left: 0;
  text-indent: 0;
}

.list-policy__item {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .list-policy__item {
    margin-top: 24px;
  }
}
.list-policy__title {
  margin-bottom: 24px;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .list-policy__title {
    margin-bottom: 12px;
  }
}

.list-button__item:not(:first-child) {
  margin-top: 4px;
}

.list-bracket {
  position: relative;
  counter-reset: order-bracket;
}
.list-bracket__item {
  position: relative;
  margin-top: 24px;
  padding-left: 24px;
}
@media all and (max-width: 767px) {
  .list-bracket__item {
    margin-top: 12px;
  }
}
.list-bracket__item::before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: order-bracket;
  content: "(" counter(order-bracket) ")";
}
.list-bracket__item--font-weight-regular {
  font-weight: normal;
}

.text + .text {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .text + .text {
    margin-top: 12px;
  }
}
.text--bold {
  font-weight: 700;
}
.text--large {
  font-size: 1.8rem;
}
@media all and (max-width: 767px) {
  .text--large {
    font-size: 1.5rem;
  }
}
.text--head {
  font-weight: 700;
  line-height: 1.5;
}

.text-article + .text-article,
.text-article + * {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .text-article + .text-article,
  .text-article + * {
    margin-top: 24px;
  }
}
.text-article__bold {
  margin-bottom: 24px;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .text-article__bold {
    margin-bottom: 12px;
  }
}
.text-article__bold + .text-article {
  margin-top: 0;
}

.time-line {
  font-family: "Open Sans", "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
}
.time-line__start {
  margin-right: 0.5em;
}
.time-line__end {
  margin-left: 0.5em;
}

.text-intro {
  font-size: 2.7rem;
  line-height: 2.4;
}
@media all and (max-width: 767px) {
  .text-intro {
    font-size: 1.8rem;
  }
}

.text-icon-square {
  padding-left: 22px;
  text-indent: -23px;
}

.text-keyword {
  background-color: #e6eaf3;
}

.text-unit {
  font-weight: 400;
  font-size: 1rem;
  line-height: 180%;
  color: #010a23;
  margin-top: 32px;
}

@media all and (min-width: 768px) {
  .sns-description {
    height: 54px;
  }
}

.text-revised {
  padding-left: 60px;
}

.url--break-all {
  word-break: break-all;
}

.navbar {
  background-color: #fff;
  padding: 48px 40px;
  border-radius: 4px;
  line-height: 1.5;
  width: 280px;
}
@media all and (min-width: 768px) {
  .navbar {
    position: sticky;
    top: 176px;
  }
}
@media all and (max-width: 767px) {
  .navbar {
    padding: 32px 25px 96px;
    border-radius: 0;
    width: 100%;
  }
}
@media all and (max-width: 767px) {
  .navbar__topic {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1s;
    transition-property: transform, opacity;
    transition-delay: 1s;
  }
}
.navbar__inner {
  margin-top: 0;
}
@media all and (max-width: 767px) {
  .navbar__inner {
    padding-top: 32px;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__topic--topic-first {
    opacity: 1;
    transition-delay: 0.05s;
    transform: translateY(0);
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item {
    opacity: 1;
    transform: translateY(0);
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-01 {
    transition-delay: 0.1s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-02 {
    transition-delay: 0.15s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-03 {
    transition-delay: 0.2s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-04 {
    transition-delay: 0.25s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-05 {
    transition-delay: 0.3s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-06 {
    transition-delay: 0.35s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-07 {
    transition-delay: 0.4s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-08 {
    transition-delay: 0.45s;
  }
}
@media all and (max-width: 767px) {
  .navbar__inner.is-animated .navbar__item--animation-09 {
    transition-delay: 0.5s;
  }
}
@media all and (max-width: 767px) {
  .navbar__wrapper {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s, transform 0.8s;
  }
}
@media all and (max-width: 767px) {
  .navbar__wrapper.is-animated {
    opacity: 1;
    transform: translateY(0);
  }
}
.navbar__list {
  margin-top: 24px;
}
.navbar__list + * {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .navbar__item {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1s;
    transition-property: transform, opacity;
  }
}
.navbar__item:not(:first-child) {
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .navbar__item:not(:first-child) {
    margin-top: 24px;
  }
}
.navbar__link {
  transition: opacity ease-out 0.3s;
}
.navbar__link--active {
  color: #003692;
}
.navbar__link:hover {
  opacity: 0.6;
}
.navbar .heading-category {
  padding-top: 0;
}
@media all and (min-width: 768px) {
  .navbar .heading-category {
    display: none;
  }
}

.time-table {
  width: 100%;
  margin-top: 48px;
  border-collapse: collapse;
  border: 1px solid #010a23;
}
@media all and (max-width: 767px) {
  .time-table {
    margin-top: 24px;
  }
}
.time-table__heading {
  background-color: #f3f3f6;
  font-weight: 700;
  text-align: center;
  border: 1px solid #010a23;
}
.time-table__heading--vertical {
  padding: 5px 10px 6px;
}
@media all and (min-width: 768px) {
  .time-table__heading--vertical {
    display: none;
  }
}
.time-table__heading--horizontal {
  width: 33.3%;
}
@media all and (max-width: 767px) {
  .time-table__heading--horizontal {
    display: none;
  }
}
.time-table__data {
  padding: 13px 6px 14px;
  text-align: center;
  border: 1px solid #010a23;
}
@media all and (max-width: 767px) {
  .time-table__data {
    padding-top: 5px;
    padding-bottom: 6px;
  }
}
.time-table__data--title {
  white-space: nowrap;
  width: 22.3%;
}
@media all and (max-width: 767px) {
  .time-table__data--title {
    width: 28%;
  }
}
.time-table + .list-note {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .time-table + .list-note {
    margin-top: 24px;
  }
}

.table-policy {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .table-policy {
    margin-top: 12px;
    margin-right: -25px;
  }
}
.table-policy::-webkit-scrollbar {
  -webkit-appearance: none;
  height: 2px;
}
.table-policy::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #010a23;
  box-shadow: none;
}
.table-policy::-webkit-scrollbar-track {
  display: none;
}
@media all and (max-width: 767px) {
  .table-policy {
    overflow-x: auto;
    padding-bottom: 14px;
  }
}
.table-policy__table {
  width: 100%;
}
@media all and (max-width: 767px) {
  .table-policy__table {
    width: 800px;
  }
}
.table-policy th,
.table-policy td {
  padding: 12px 20px;
  border: 1px solid #e2e4e9;
  line-height: 1.5;
}
.table-policy th {
  background-color: #f3f3f6;
  text-align: center;
}
.table-policy td {
  background-color: #fafafa;
  vertical-align: top;
}
.table-policy td:last-child {
  text-align: center;
}
.table-policy--text-align-left td:last-child {
  text-align: left;
}
.table-policy__type {
  display: flex;
  align-items: baseline;
}
.table-policy__type-character {
  padding-right: 4px;
}
.table-policy__text {
  padding-left: 20px;
  text-indent: -20px;
  text-align: left;
}
.table-policy + .text {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .table-policy + .text {
    margin-top: 12px;
  }
}

.information-table {
  width: 100%;
}
.information-table__head, .information-table__detail {
  text-align: center;
}
.information-table__head {
  padding-top: 6px;
  padding-bottom: 6px;
}
.information-table--chart .information-table__head,
.information-table--chart .information-table__detail {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  font-size: 1.1rem;
  text-align: center;
}
.information-table--chart .information-table__detail {
  text-align: right;
}
.information-table--chart .information-table__thead .information-table__head {
  text-align: right;
}
.information-table__tbody {
  border-top: 1px solid #010a23;
  border-bottom: 1px solid #010a23;
}
.information-table__tbody .information-table__head {
  background-color: #f3f3f6;
  padding: 8px 4px;
}
@media all and (max-width: 767px) {
  .information-table__tbody .information-table__head {
    padding: 8px 6px;
  }
}
.information-table__tbody .information-table__detail {
  padding: 8px 0;
}
.information-table__tbody .information-table__row:not(:first-child) .information-table__head,
.information-table__tbody .information-table__row:not(:first-child) .information-table__detail {
  background-image: url("/assets/images/common/bg_table_line.svg");
  background-position: left top;
  background-repeat: repeat-x;
}

.select-sort {
  width: 100%;
  height: 51px;
  padding: 12px 48px 12px 24px;
  background-color: #fff;
  background-image: url("/assets/images/common/ico_arrow_down_black.svg");
  background-position: right 24px center;
  background-repeat: no-repeat;
  border: 1px solid #e2e4e9;
  border-radius: 4px;
  font-family: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-size: 1.5rem;
  color: #010a23;
  cursor: pointer;
}
@media all and (max-width: 767px) {
  .select-sort {
    height: 39px;
    padding: 6px 24px 6px 12px;
    background-position: right 12px center;
  }
}

.selected {
  position: relative;
}
.selected__label {
  position: relative;
  background-color: #fff;
  padding: 11px 48px 11px 24px;
  border: 1px solid #e2e4e9;
  border-radius: 4px;
  font-family: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-size: 1.5rem;
  color: #010a23;
  cursor: pointer;
}
@media all and (max-width: 767px) {
  .selected__label {
    padding: 5px 32px 5px 12px;
  }
}
.selected__label::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background-image: url("/assets/images/common/ico_arrow_down_black.svg");
  background-position: 0 0;
  background-repeat: no-repeat;
  right: 22px;
  top: 50%;
  transition: transform 0.2s;
  transform: translateY(-50%);
}
@media all and (max-width: 767px) {
  .selected__label::after {
    right: 10px;
  }
}
.selected__list {
  display: none;
  position: absolute;
  overflow-y: scroll;
  top: calc(100% + 3px);
  background-color: #fff;
  border-radius: 4px;
  width: 100%;
  max-height: 536px;
  padding: 29px 24px;
  z-index: 2;
}
@media all and (max-width: 767px) {
  .selected__list {
    padding: 16px 12px;
    max-height: 312px;
  }
}
.selected__list::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 4px;
}
.selected__list::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #010a23;
}
.selected__list::-webkit-scrollbar-track {
  background-color: #fff;
}
.selected__item {
  display: block;
  cursor: pointer;
  transition: opacity ease-out 0.3s;
}
.selected__item:not(:first-child) {
  margin-top: 8px;
}
@media all and (min-width: 768px) {
  .selected__item:hover {
    opacity: 0.6;
  }
}
.selected.selected--open .selected__list {
  display: block;
}
.selected.selected--open .selected__label::after {
  transform: rotate(180deg) translateY(50%);
}

.page-load {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  overflow: hidden;
}
.page-load__container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
}
.page-load__image {
  width: auto;
  height: 64px;
}
@media all and (max-width: 767px) {
  .page-load__image {
    height: 52px;
  }
}

.accordion__heading {
  position: relative;
  padding: 48px 0;
  font-size: 2.4rem;
  font-weight: 700;
  cursor: pointer;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .accordion__heading {
    padding: 24px 0;
    font-size: 1.8rem;
  }
}
.accordion__heading::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transform: rotate(90deg);
  width: 12px;
  height: 1.5px;
  right: 4px;
  background-color: #010a23;
  border-radius: 2px;
  margin-top: -1px;
  transition: transform 0.3s;
}
.accordion__heading::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 12px;
  height: 1.5px;
  right: 4px;
  background-color: #010a23;
  border-radius: 2px;
}
.accordion__heading--active::before {
  margin-top: 0;
  transform: rotate(180deg);
}
.accordion__panel {
  transition: height 0.3s ease-out;
  height: 0;
  overflow: hidden;
}
.accordion__inner {
  padding-bottom: 48px;
}
@media all and (max-width: 767px) {
  .accordion__inner {
    padding-bottom: 24px;
  }
}

.grid {
  display: grid;
  grid-template-columns: auto auto;
  -moz-column-gap: 48px;
       column-gap: 48px;
  row-gap: 48px;
}
@media all and (max-width: 767px) {
  .grid {
    grid-template-columns: auto;
    -moz-column-gap: 24px;
         column-gap: 24px;
    row-gap: 24px;
  }
}
@media all and (min-width: 768px) {
  .grid--medium-col2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media all and (min-width: 768px) {
  .grid--medium-col3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media all and (min-width: 768px) {
  .grid--medium-col4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media all and (max-width: 767px) {
  .grid--small-col2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.grid--col-gap-xl {
  -moz-column-gap: 64px;
       column-gap: 64px;
}
@media all and (max-width: 767px) {
  .grid--col-gap-xl {
    -moz-column-gap: 32px;
         column-gap: 32px;
  }
}
@media all and (min-width: 768px) {
  .grid--col-gap-m {
    -moz-column-gap: 32px;
         column-gap: 32px;
  }
}
@media all and (max-width: 767px) {
  .grid--row-gap-xl {
    row-gap: 32px;
  }
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .pagination {
    margin-top: 32px;
  }
}
.pagination__back, .pagination__next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
}
@media all and (min-width: 768px) {
  .pagination__back, .pagination__next {
    opacity: 1;
    transition: opacity 0.3s ease-out;
  }
  .pagination__back:hover, .pagination__next:hover {
    opacity: 0.7;
    text-decoration: none;
  }
}
@media all and (max-width: 767px) {
  .pagination__back, .pagination__next {
    width: 36px;
    height: 36px;
  }
}
.pagination__back--disabled, .pagination__next--disabled {
  opacity: 0.3;
  pointer-events: none;
}
.pagination__list {
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination__item {
  width: 48px;
  height: 48px;
}
@media all and (max-width: 767px) {
  .pagination__item {
    width: 36px;
    height: 36px;
  }
}
.pagination__number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
@media all and (min-width: 768px) {
  .pagination__number {
    opacity: 1;
    transition: opacity 0.3s ease-out;
  }
  .pagination__number:hover {
    opacity: 0.7;
    text-decoration: none;
  }
}
.pagination__number--current {
  background-color: #003692;
  color: #fafafa;
  border-radius: 2px;
}
.pagination__ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.slider-main {
  position: relative;
  overflow: hidden;
  padding-bottom: 28px;
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .slider-main {
    padding-bottom: 4px;
    margin-top: 32px;
  }
}
.slider-main__item {
  display: block;
}
.slider-main .cells {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.slider-main .swiper-container {
  position: static;
  overflow: inherit;
}
.slider-main .swiper-pagination {
  display: flex;
  position: relative;
  gap: 4px;
}
@media all and (min-width: 768px) {
  .slider-main .swiper-pagination {
    gap: 6px;
  }
}
.slider-main .swiper-pagination .swiper-pagination-bullet {
  background-color: transparent;
  border: 1px solid #010a23;
  opacity: 1;
}
.slider-main .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #010a23;
}
.slider-main .swiper-slide {
  pointer-events: none;
}
@media all and (min-width: 768px) {
  .slider-main .swiper-slide {
    width: 900px;
    height: 480px;
  }
}
.slider-main .swiper-slide-active {
  pointer-events: auto;
}
.slider-main .swiper-item {
  position: relative;
  overflow: hidden;
  background-color: #010a23;
}
.slider-main .swiper-item__image {
  -o-object-fit: contain;
     object-fit: contain;
  width: 900px;
  height: 480px;
}
@media all and (max-width: 767px) {
  .slider-main .swiper-item__image {
    width: calc(100vw * 375 / 375);
    height: calc(100vw * 200 / 375);
  }
}
.slider-main .swiper-item__copy {
  position: absolute;
  bottom: 8px;
  right: 18px;
  font-size: 1rem;
  color: #fff;
  line-height: 1.5;
  text-align: right;
  text-shadow: rgba(0, 0, 0, 0.8) 2px 0px 0px, rgba(0, 0, 0, 0.8) 1.75517px 0.958851px 0px, rgba(0, 0, 0, 0.8) 1.0806px 1.68294px 0px, rgba(0, 0, 0, 0.8) 0.141474px 1.99499px 0px, rgba(0, 0, 0, 0.8) -0.832294px 1.81859px 0px, rgba(0, 0, 0, 0.8) -1.60229px 1.19694px 0px, rgba(0, 0, 0, 0.8) -1.97998px 0.28224px 0px, rgba(0, 0, 0, 0.8) -1.87291px -0.701566px 0px, rgba(0, 0, 0, 0.8) -1.30729px -1.5136px 0px, rgba(0, 0, 0, 0.8) -0.421592px -1.95506px 0px, rgba(0, 0, 0, 0.8) 0.567324px -1.91785px 0px, rgba(0, 0, 0, 0.8) 1.41734px -1.41108px 0px, rgba(0, 0, 0, 0.8) 1.92034px -0.558831px 0px;
}
@media all and (max-width: 767px) {
  .slider-main .swiper-item__copy {
    bottom: 4px;
    right: 10px;
  }
}
@media all and (min-width: 768px) {
  .slider-main .swiper-slide-prev .swiper-item__image,
  .slider-main .swiper-slide-next .swiper-item__image {
    opacity: 0.4;
  }
}

@media all and (max-width: 767px) {
  .slider-carousel .swiper-container {
    overflow: inherit;
    padding-bottom: 27px;
  }
}
@media all and (min-width: 768px) {
  .slider-carousel .swiper-wrapper {
    margin: 0 -24px;
    width: auto;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-wrapper {
    padding-right: 25px;
  }
}
@media all and (min-width: 768px) {
  .slider-carousel .swiper-slide {
    width: 25%;
    padding: 0 24px;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-slide {
    padding-right: 25px;
  }
}
.slider-carousel__trailer .swiper-container {
  padding-bottom: 0;
}
.slider-carousel__trailer .swiper-wrapper {
  display: flex;
  flex-direction: column;
  padding-right: 0;
}
@media all and (min-width: 768px) {
  .slider-carousel__trailer .swiper-wrapper {
    flex-direction: row;
    margin: 0 -24px;
    width: auto;
  }
}
.slider-carousel__trailer .swiper-slide {
  padding-right: 0;
}
@media all and (max-width: 767px) {
  .slider-carousel__trailer .swiper-slide:not(:last-child) {
    padding-bottom: 25px;
  }
}
@media all and (min-width: 768px) {
  .slider-carousel__trailer .swiper-slide {
    width: 25%;
    padding: 0 24px;
  }
}
@media all and (min-width: 768px) {
  .slider-carousel .swiper-pagination {
    display: none;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-pagination {
    width: 100%;
    overflow: hidden;
    display: flex;
    bottom: 1px;
    left: 0;
    padding-right: 93px;
    border-radius: 4px;
    transform: none;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-pagination .swiper-pagination-bullet {
    margin: 0;
    width: 100px;
    max-width: 50%;
    height: 2px;
    background-color: #fff;
    border-radius: 0;
    opacity: 1;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #010a23;
    border-radius: 2px;
    width: 50%;
  }
}
@media all and (min-width: 768px) {
  .slider-carousel .swiper-button-prev,
  .slider-carousel .swiper-button-next {
    display: none;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-button-prev,
  .slider-carousel .swiper-button-next {
    display: block;
    position: absolute;
    top: inherit;
    bottom: -10px;
    width: 24px;
    height: 24px;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-button-prev::after,
  .slider-carousel .swiper-button-next::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 4px;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-button-prev {
    left: inherit;
    right: 35px;
  }
}
@media all and (max-width: 767px) {
  .slider-carousel .swiper-button-prev::after {
    left: 0;
    -webkit-mask-image: url("/assets/images/common/ico_arrow_left_black.svg");
            mask-image: url("/assets/images/common/ico_arrow_left_black.svg");
    background-color: #010a23;
  }
}
.slider-carousel .swiper-button-next {
  right: 0;
}
.slider-carousel .swiper-button-next::after {
  right: 0;
  -webkit-mask-image: url("/assets/images/common/ico_arrow_right_black.svg");
          mask-image: url("/assets/images/common/ico_arrow_right_black.svg");
  background-color: #010a23;
}

.swiper-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  gap: 6px;
}
@media all and (max-width: 767px) {
  .swiper-controls .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
  }
}
@media all and (min-width: 768px) {
  .swiper-controls {
    margin-top: 16px;
    gap: 12px;
  }
}

.swiper-play-button {
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #010a23;
  border-radius: 50%;
  cursor: pointer;
}
.swiper-play-button::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_carousel_pause.svg") no-repeat;
  transform: translate(-50%, -50%);
}
.swiper-play-button--pause::before, .swiper-play-button--movie-pause::before, .swiper-play-button--anime-pause::before, .swiper-play-button--stage-pause::before {
  background: url("/assets/images/common/ico_carousel_play.svg") no-repeat;
}

.read-more-hidden .pr-company-dott__item {
  display: block;
}
.read-more-hidden .pr-company-dott__item:nth-child(n+6) {
  visibility: hidden;
  transition: visibility 0.3s ease-out;
}
.read-more-hidden .list-border__item {
  display: block;
}
.read-more-hidden .list-border__item:nth-child(n+6) {
  visibility: hidden;
  transition: visibility 0.3s ease-out;
}

.hero-image {
  position: relative;
  overflow: hidden;
  min-width: 1264px;
  margin-top: 64px;
  background-color: #000;
}
@media all and (max-width: 767px) {
  .hero-image {
    min-width: 100%;
    margin-top: 32px;
  }
}
.hero-image__figure {
  position: relative;
  width: 1264px;
  height: 683px;
}
@media all and (min-width: 1280px) {
  .hero-image__figure {
    width: calc(100vw * 1280 / 1280);
    height: calc(100vw * 683 / 1280);
  }
}
@media all and (max-width: 767px) {
  .hero-image__figure {
    width: calc(100vw * 375 / 375);
    height: calc(100vw * 200 / 375);
  }
}
.hero-image__image {
  -o-object-fit: contain;
     object-fit: contain;
  width: 1264px;
  height: 683px;
}
@media all and (min-width: 1280px) {
  .hero-image__image {
    width: calc(100vw * 1280 / 1280);
    height: calc(100vw * 683 / 1280);
  }
}
@media all and (max-width: 767px) {
  .hero-image__image {
    width: calc(100vw * 375 / 375);
    height: calc(100vw * 200 / 375);
  }
}
.hero-image + * {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .hero-image + * {
    margin-top: 32px;
  }
}

.js-animate.animate-fadeup {
  opacity: 0;
}

.animate-news {
  visibility: hidden;
  opacity: 0;
  transform: translate(0, 50px);
  transition: visibility 1.2s cubic-bezier(0.2, 0.8, 0.4, 1), opacity 1.2s cubic-bezier(0.2, 0.8, 0.4, 1), transform 1.2s cubic-bezier(0.2, 0.8, 0.4, 1);
}
.animate-news::after {
  left: -100%;
  transition: left 1.2s cubic-bezier(0.2, 0.8, 0.4, 1);
}
.animate-news.is-animated {
  visibility: visible;
  opacity: 1;
  transform: translate(0, 0);
}
.animate-news.is-animated::after {
  left: 0;
  transition-delay: 0.5s;
}

.animate-image {
  overflow: hidden;
  position: relative;
}
.animate-image::before {
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  background: #fafafa;
}
.animate-image::after {
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 3;
  background: #010a23;
  transform: translateX(-100%);
}
.animate-image.is-animated::before {
  animation: shadow-wrap 1.2s cubic-bezier(0.8, 0, 0.2, 1) forwards;
}
.animate-image.is-animated::after {
  animation: img-wrap 1.2s cubic-bezier(0.8, 0, 0.2, 1) forwards;
}

.animate-split .SplitTextJS-char {
  opacity: 0;
  backface-visibility: hidden;
  transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition-property: transform, opacity, filter;
  transform: translateY(3rem);
  display: inline-block;
}
.animate-split.is-animated .SplitTextJS-char {
  transform: translateY(0);
  opacity: 1;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(1n) {
  transition-delay: 0.1s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(2n) {
  transition-delay: 0.2s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(3n) {
  transition-delay: 0.3s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(4n) {
  transition-delay: 0.4s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(5n) {
  transition-delay: 0.5s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(6n) {
  transition-delay: 0.6s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(7n) {
  transition-delay: 0.7s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(8n) {
  transition-delay: 0.8s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(9n) {
  transition-delay: 0.9s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(10n) {
  transition-delay: 1s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(11n) {
  transition-delay: 1.1s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(12n) {
  transition-delay: 1.2s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(13n) {
  transition-delay: 1.3s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(14n) {
  transition-delay: 1.4s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(15n) {
  transition-delay: 1.5s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(16n) {
  transition-delay: 1.6s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(17n) {
  transition-delay: 1.7s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(18n) {
  transition-delay: 1.8s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(19n) {
  transition-delay: 1.9s;
}
.animate-split.is-animated .SplitTextJS-char:nth-child(20n) {
  transition-delay: 2s;
}

@media all and (max-width: 767px) {
  .animate-header.header__item {
    opacity: 0;
    transform: translate(0, 50px);
  }
}
.animate-header.is-animated {
  visibility: visible;
}
@media all and (max-width: 767px) {
  .animate-header--logo.is-animated {
    opacity: 1;
    transition-delay: 0.05s;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--movie.is-animated, .animate-header--anime.is-animated, .animate-header--menu.is-animated, .animate-header--about-en.is-animated {
    transition-delay: 0.25s;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--stage.is-animated, .animate-header--ir-en.is-animated {
    transition-delay: 0.4s;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--store.is-animated {
    transition-delay: 0.55s;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--other.is-animated {
    transition-delay: 0.7s;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--about.is-animated {
    transition-delay: 0.85s;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media all and (max-width: 767px) {
  .animate-header--search.is-animated {
    transition-delay: 0.35s;
    opacity: 1;
    transform: translate(0, 0);
  }
}

@keyframes shadow-wrap {
  0% {
    transform: translateX(0%);
  }
  66% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(100%);
    visibility: hidden;
  }
}
@keyframes img-wrap {
  0% {
    transform: translateX(-100%);
  }
  33% {
    transform: translateX(0%);
  }
  66% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(100%);
  }
}
.modal {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(1, 10, 35, 0.6);
  z-index: 51;
}
@media all and (max-width: 767px) {
  .modal {
    background: none;
  }
}
.modal__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 960px;
  height: 740px;
  background-color: #fafafa;
  transform: translate(-50%, -50%);
}
@media all and (min-width: 768px) {
  .modal__inner {
    border-radius: 4px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
  }
}
@media all and (max-width: 767px) {
  .modal__inner {
    position: static;
    width: 100%;
    height: 100%;
    transform: none;
  }
}
.modal__inner::-webkit-scrollbar {
  display: none;
}
.modal__container {
  padding: 80px 80px 80px 0;
}
@media all and (max-width: 767px) {
  .modal__container {
    padding: 0;
  }
}
.modal__wrap {
  display: flex;
}
@media all and (max-width: 767px) {
  .modal__wrap {
    display: block;
  }
}
.modal__box {
  position: relative;
}
@media all and (max-width: 767px) {
  .modal__box {
    padding: 64px 25px;
    height: 100%;
    overflow-y: auto;
  }
}
.modal__close {
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: url("/assets/images/common/ico_close.svg") center center no-repeat;
  z-index: 2;
}
@media all and (max-width: 767px) {
  .modal__close {
    top: 12px;
    right: 14px;
  }
}
.modal__image {
  width: 416px;
  flex: 0 0 auto;
  margin: 80px 0 0 80px;
}
@media all and (max-width: 767px) {
  .modal__image {
    width: 100%;
    margin: 0;
  }
}
.modal__corner {
  border-radius: 4px;
}
.modal__contents {
  overflow-y: auto;
  margin-left: 64px;
  height: 740px;
}
.modal__contents::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 4px;
}
.modal__contents::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #010a23;
}
.modal__contents::-webkit-scrollbar-track {
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .modal__contents {
    margin-top: 24px;
    margin-left: 0;
    height: 100%;
  }
}
.modal__title {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
}
.modal__date {
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.8;
}
.modal__time {
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.8;
}
.modal__at {
  display: flex;
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.8;
  color: #9ea8c8;
}
.modal__at-item {
  position: relative;
}
.modal__at-item:not(:last-child)::after {
  content: ",";
  margin-right: 4px;
}
.modal__label {
  margin-top: 12px;
  color: #9ea8c8;
  font-size: 1.2rem;
  line-height: 1.8;
}
.modal__label-item {
  position: relative;
}
.modal__label-item:not(:last-child)::after {
  content: ",";
  margin-right: 4px;
}
.modal__category {
  margin-top: 8px;
  width: 81px;
  height: 24px;
}
.modal__button {
  margin-top: 32px;
}
.modal__button-item {
  margin-top: 0;
}
.modal__button-item:not(:first-child) {
  margin-top: 12px;
}
.modal__copyright {
  margin-top: 60px;
  font-size: 1.2rem;
}
.modal__viewing {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 6px;
  margin-top: 8px;
}
.modal__viewing-item {
  width: 48px;
  height: 48px;
  border: 1px solid #e2e4e9;
  border-radius: 4px;
}
.modal__viewing + .modal__text {
  margin-top: 8px;
}
.modal__detail {
  margin-top: 60px;
}
.modal__detail + .modal__copyright {
  margin-top: 16px;
}
.modal__heading {
  font-weight: 700;
}
.modal__heading + .modal__heading {
  margin-top: 16px;
}
.modal__heading + .modal__text {
  margin-top: 8px;
}
.modal__text + .modal__heading {
  margin-top: 16px;
}
.modal--show {
  transition: opacity 0.3s, visibility 0.3s;
  visibility: visible;
  opacity: 1;
}
.modal__company {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 960px;
  height: 740px;
  background-color: #fafafa;
  border-radius: 4px;
  transform: translate(-50%, -50%);
}
@media all and (max-width: 767px) {
  .modal__company {
    position: static;
    width: 100%;
    height: 100%;
    transform: none;
  }
}
.modal__company-inner {
  position: relative;
}
@media all and (max-width: 767px) {
  .modal__company-inner {
    height: 100%;
  }
}
.modal__company-wrap {
  padding: 80px;
  overflow-y: auto;
  height: 740px;
}
.modal__company-wrap::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 4px;
}
.modal__company-wrap::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #010a23;
}
.modal__company-wrap::-webkit-scrollbar-track {
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .modal__company-wrap {
    height: 100%;
    padding: 80px 25px 25px;
  }
}
@media all and (max-width: 767px) {
  .modal__company-wrap--studio {
    padding: 64px 25px;
  }
}
.modal__company-image {
  margin-bottom: 24px;
}
.modal__company-picture {
  border-radius: 4px;
}
.modal__company-title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
.modal__company-title + * {
  margin-top: 24px;
}
.modal__company-text + .modal__company-text {
  margin-top: 12px;
}

@media all and (min-width: 768px) {
  .js-btn-modal-close {
    cursor: pointer;
  }
}

.area-supplement {
  padding-top: 120px;
  padding-bottom: 120px;
  margin-top: 180px;
  background-color: #f3f3f6;
}
@media all and (max-width: 767px) {
  .area-supplement {
    padding-top: 28px;
    padding-bottom: 60px;
    margin-top: 90px;
  }
}
.area-supplement__inner {
  width: 1264px;
  padding: 0 32px;
  margin: 0 auto;
}
@media all and (max-width: 767px) {
  .area-supplement__inner {
    width: 100%;
    padding: 0 25px;
    overflow: hidden;
  }
}

@media all and (min-width: 768px) {
  .area-supplement-sub {
    display: flex;
    margin: 0 -8px;
  }
}
@media all and (min-width: 768px) {
  .area-supplement-sub__col {
    width: 50%;
    padding: 0 8px;
  }
}
@media all and (max-width: 767px) {
  .area-supplement-sub__col:not(:first-child) {
    margin-top: 16px;
  }
}

.filter__item {
  display: inline-block;
  font-size: 1.2rem;
  padding: 8px 16px;
  background-color: #f3f3f6;
  border-radius: 2px;
  cursor: pointer;
  transition: opacity 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .filter__item {
    padding: 4px 8px;
  }
}
.filter__item:not(:first-child) {
  margin-left: 16px;
}
@media all and (max-width: 767px) {
  .filter__item:not(:first-child) {
    margin-left: 8px;
  }
}
.filter__item-active {
  color: #fff;
  font-weight: 700;
  background-color: #003692;
}
@media all and (min-width: 768px) {
  .filter__item:hover.filter__item {
    opacity: 0.6;
  }
}

.filter-content {
  padding-top: 48px;
}
.filter-content--padding-small {
  padding-top: 15px;
}
@media all and (max-width: 767px) {
  .filter-content--padding-small {
    padding-top: 28px;
  }
}
@media all and (max-width: 767px) {
  .filter-content {
    padding-top: 24px;
  }
}

.filter-content__item-hide {
  display: none;
}

.filter-content__item-show {
  animation: fade-in 1s;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.search__inner {
  padding: 48px 0 0;
  display: flex;
}
@media all and (max-width: 767px) {
  .search__inner {
    padding: 24px 0 0;
  }
}
.search__input {
  padding: 0 0 0 60px;
  border: none;
  width: 100%;
  outline: none;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  background: #f3f3f6 url(/assets/images/common/ico_search_small.svg) 24px 25px no-repeat;
}
@media all and (max-width: 767px) {
  .search__input {
    padding: 0 0 0 40px;
    background: #f3f3f6 url(/assets/images/common/ico_search_small.svg) 12px 13px no-repeat;
  }
}
.search__button {
  flex: 0 0 auto;
  background-color: #003692;
  width: 160px;
  height: 71px;
  border: none;
  color: #fafafa;
  font-weight: 700;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  transition: opacity 0.3s ease-out;
}
@media all and (max-width: 767px) {
  .search__button {
    width: 68px;
    height: 47px;
  }
}
@media all and (min-width: 768px) {
  .search__button:hover {
    cursor: pointer;
    opacity: 0.6;
  }
}

.search-result {
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 767px) {
  .search-result {
    display: block;
  }
}
.search-result__number {
  margin-top: 0;
}
.search-result__quantity {
  padding-left: 8px;
}
.search-result__text {
  margin-top: 64px;
}
@media all and (max-width: 767px) {
  .search-result__text {
    margin-top: 32px;
  }
}
.search-result__figure {
  width: 480px;
}
@media all and (max-width: 767px) {
  .search-result__figure {
    width: 285px;
    margin: 24px auto 0;
  }
}
.search-result__list {
  margin-top: 64px;
  overflow: hidden;
}
@media all and (max-width: 767px) {
  .search-result__list {
    margin-top: 32px;
  }
}
.search-result__item {
  border-bottom: 1px solid #e2e4e9;
  padding-bottom: 32px;
  margin-bottom: 32px;
}
@media all and (max-width: 767px) {
  .search-result__item {
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
}
.search-result__item:last-child {
  margin-bottom: 0;
}

.footer {
  padding: 180px 0 144px;
  background-color: #003692;
  color: #fafafa;
}
@media all and (max-width: 767px) {
  .footer {
    padding: 60px 0 48px;
  }
}
@media all and (min-width: 768px) {
  .footer__box {
    display: flex;
    justify-content: space-between;
  }
}
.footer__logo {
  display: block;
  width: 160px;
  height: 48px;
}
@media all and (min-width: 768px) {
  .footer__logo {
    margin-right: 120px;
  }
}
@media all and (min-width: 768px) {
  .footer__links {
    display: flex;
    flex: 1;
  }
}
@media all and (max-width: 767px) {
  .footer__links {
    margin-top: 48px;
  }
}
.footer__copyright {
  font-family: "Open Sans", sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
}
@media all and (min-width: 768px) {
  .footer__copyright {
    display: flex;
    align-items: flex-end;
  }
}
@media all and (max-width: 767px) {
  .footer__copyright {
    margin-top: 48px;
  }
}

@media all and (min-width: 768px) {
  .footer-link__row {
    display: flex;
  }
}
.footer-link__row:not(:first-child) {
  margin-top: 96px;
}
@media all and (max-width: 767px) {
  .footer-link__row:not(:first-child) {
    margin-top: 48px;
  }
}
@media all and (min-width: 768px) {
  .footer-link__col {
    width: 233.33px;
    flex: 1 0 auto;
  }
}
.footer-link__text {
  font-size: 1.2rem;
}
@media all and (max-width: 767px) {
  .footer-link__text {
    margin-top: 16px;
  }
}
.footer-link__text:not(:first-child) {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .footer-link__text:not(:first-child) {
    margin-top: 16px;
  }
}
.footer-link__text--en:not(:first-child) {
  margin-top: 16px;
}
.footer-link__link {
  color: #fafafa;
  transition: opacity 0.3s ease-out;
}
@media all and (min-width: 768px) {
  .footer-link__link:hover {
    text-decoration: none;
    opacity: 0.6;
  }
}
.footer-link__link--large {
  font-size: 1.5rem;
  text-decoration: underline;
}
@media all and (min-width: 768px) {
  .footer-link__link--large:hover {
    text-decoration: underline;
  }
}
.footer-link__link--large-no-underline {
  font-family: "Open Sans", sans-serif;
  font-size: 1.5rem;
  text-decoration: none;
}
.footer-link__link--blank {
  position: relative;
  padding-right: 24px;
}
.footer-link__link--blank::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 16px;
  height: 16px;
  background: url("/assets/images/common/ico_external_link_white.svg") top right no-repeat;
  background-size: 16px;
  transform: translateY(-50%);
}
.footer-link__link--bold {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
}

.simple-header__logo {
  display: inline-block;
  width: 160px;
  height: 48px;
  margin: 0 0 0 32px;
  transition: ease-out 0.3s;
}
@media all and (max-width: 767px) {
  .simple-header__logo {
    width: 134px;
    height: 40px;
  }
}
@media all and (min-width: 768px) {
  .simple-header__logo:hover {
    opacity: 0.6;
    transition: ease-out 0.3s;
  }
}

.box-godzilla-walk {
  height: 520px;
  margin-top: 180px;
  overflow: hidden;
  position: relative;
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk {
    height: 248px;
    margin-top: 90px;
  }
}
.box-godzilla-walk__scrollable {
  position: relative;
  overflow: hidden;
  height: 520px;
  overflow-x: scroll;
  overflow-y: hidden;
  cursor: move;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  scrollbar-width: 0;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk__scrollable {
    height: 248px;
  }
}
.box-godzilla-walk__scrollable::-webkit-scrollbar {
  display: none;
}
.box-godzilla-walk__bg {
  position: relative;
  background: url("/assets/images/company/info/real_estate/bg_godzilla_pc.svg") right center no-repeat;
  width: 5480px;
  height: 520px;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk__bg {
    width: 1200px;
    height: 248px;
    background: url("/assets/images/company/info/real_estate/bg_godzilla_sp.svg") right center no-repeat;
  }
}
.box-godzilla-walk__box-godzilla {
  overflow: hidden;
  position: absolute;
  width: 192px;
  height: 192px;
  right: 120px;
  top: 176px;
  background: url("/assets/images/company/info/real_estate/img_godzilla_sprite_pc.png");
  background-size: 1536px 192px;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk__box-godzilla {
    width: 64px;
    height: 64px;
    top: 96px;
    right: 20px;
    background: url("/assets/images/company/info/real_estate/img_godzilla_sprite_sp.png");
    background-size: 512px 64px;
  }
}
.box-godzilla-walk__icon {
  position: absolute;
  right: 120px;
  top: 392px;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk__icon {
    top: 172px;
    right: 20px;
  }
}
.box-godzilla-walk__lottie-player {
  width: 36px;
  height: 36px;
}
@media all and (max-width: 767px) {
  .box-godzilla-walk__lottie-player {
    width: 28px;
    height: 28px;
  }
}

/* pages */
.company-introduction__text {
  font-size: 2.7rem;
  line-height: 2.4;
}
@media all and (max-width: 767px) {
  .company-introduction__text {
    font-size: 1.8rem;
  }
}

.company-summary {
  display: flex;
  margin-top: 48px;
  padding: 24px 0;
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .company-summary {
    display: block;
    margin-top: 24px;
    padding: 8px 20px;
  }
}
.company-summary__col {
  position: relative;
  width: 33.33%;
}
@media all and (max-width: 767px) {
  .company-summary__col {
    width: 100%;
    padding: 16px 0;
  }
}
.company-summary__col:not(:first-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-color: #e2e4e9;
}
@media all and (max-width: 767px) {
  .company-summary__col:not(:first-child)::after {
    width: 100%;
    height: 1px;
  }
}

.company-history-anchorlink {
  display: flex;
  margin-top: 64px;
  margin-bottom: 64px;
  padding: 0 12px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .company-history-anchorlink {
    margin-top: 32px;
    margin-bottom: 32px;
  }
}
.company-history-anchorlink__item {
  width: 20%;
  text-align: center;
}
.company-history-anchorlink__link {
  position: relative;
  display: block;
  padding: 24px 8px 48px;
  font-family: "Open Sans", sans-serif;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1;
  transition: opacity 0.3s ease;
}
@media all and (max-width: 767px) {
  .company-history-anchorlink__link {
    padding-bottom: 42px;
    font-size: 1.8rem;
  }
}
.company-history-anchorlink__link::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_arrow_down_black.svg") bottom center no-repeat;
  background-size: contain;
}
@media all and (max-width: 767px) {
  .company-history-anchorlink__link::after {
    width: 16px;
    height: 16px;
  }
}
@media all and (min-width: 768px) {
  .company-history-anchorlink__link:hover {
    opacity: 0.6;
  }
}

.company-history {
  padding-left: 65px;
}
@media all and (max-width: 767px) {
  .company-history {
    padding-left: 33px;
  }
}
.company-history__item {
  position: relative;
  padding: 48px 0 33px;
  border-bottom: 1px solid #e2e4e9;
}
@media all and (max-width: 767px) {
  .company-history__item {
    padding: 24px 0 17px;
  }
}
.company-history__item:not(:last-child)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -41px;
  width: 1px;
  height: calc(100% + 80px);
  background-color: #010a23;
}
@media all and (max-width: 767px) {
  .company-history__item:not(:last-child)::before {
    left: -21px;
    height: calc(100% + 60px);
  }
}

.company-history-detail__year {
  position: relative;
  margin-bottom: 32px;
  font-family: "Open Sans", sans-serif;
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .company-history-detail__year {
    margin-bottom: 16px;
    font-size: 2.4rem;
  }
}
.company-history-detail__year::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -45px;
  transform: translateY(-50%);
  width: 7px;
  height: 7px;
  background-color: #fff;
  border: 1px solid #010a23;
  border-radius: 50px;
}
@media all and (max-width: 767px) {
  .company-history-detail__year::before {
    left: -25px;
  }
}
.company-history-detail__year--large {
  font-size: 4.8rem;
}
@media all and (max-width: 767px) {
  .company-history-detail__year--large {
    font-size: 3.6rem;
  }
}
.company-history-detail__year--large::before {
  left: -49px;
  width: 15px;
  height: 15px;
}
@media all and (max-width: 767px) {
  .company-history-detail__year--large::before {
    left: -29px;
  }
}
.company-history-detail__story {
  display: flex;
  align-items: flex-start;
}
.company-history-detail__story-month {
  padding: 3px 0px;
  font-family: "Open Sans", sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
}
.company-history-detail__story-info {
  margin-left: 12px;
}
.company-history-detail__story--bold {
  font-weight: 700;
}
.company-history-detail__story + .company-history-detail__story,
.company-history-detail__story + .company-history-detail__image,
.company-history-detail__story + .company-history-detail__figure {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .company-history-detail__story + .company-history-detail__story,
  .company-history-detail__story + .company-history-detail__image,
  .company-history-detail__story + .company-history-detail__figure {
    margin-top: 12px;
  }
}
.company-history-detail__figure {
  margin-bottom: 24px;
}
@media all and (max-width: 767px) {
  .company-history-detail__figure {
    margin-bottom: 12px;
  }
}
@media all and (max-width: 767px) {
  .company-history-detail__image {
    width: 100%;
  }
}
.company-history-detail__caption {
  margin-top: 4px;
  font-size: 1.2rem;
}

.pr-company-dott,
.pr-company-dott2 {
  overflow: hidden;
}
.pr-company-dott__item,
.pr-company-dott2__item {
  position: relative;
  padding-left: 24px;
  counter-increment: number-circle;
}
.pr-company-dott__item:not(:first-child),
.pr-company-dott2__item:not(:first-child) {
  padding-top: 24px;
}
@media all and (max-width: 767px) {
  .pr-company-dott__item:not(:first-child),
  .pr-company-dott2__item:not(:first-child) {
    padding-top: 12px;
  }
}
.pr-company-dott__item::before,
.pr-company-dott2__item::before {
  position: absolute;
  content: "・";
  left: 0;
}

.company-corporate-governance-figure {
  background-color: #fff;
  padding: 48px 40px;
  border-radius: 4px;
}
@media all and (max-width: 767px) {
  .company-corporate-governance-figure {
    padding: 24px 20px;
  }
}
.company-corporate-governance-figure__image {
  width: 100%;
}

.company-policy {
  overflow: hidden;
}
.company-policy__title {
  margin-top: 48px;
  width: 96px;
  float: left;
  font-weight: 700;
  font-size: 2.4rem;
  clear: left;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .company-policy__title {
    margin-top: 24px;
    font-size: 1.8rem;
    float: none;
    width: 100%;
  }
}
.company-policy__title--first {
  margin-top: 0;
}
.company-policy__text {
  margin-top: 48px;
  padding: 5px 0 4px;
  margin-left: 124px;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .company-policy__text {
    margin-top: 12px;
    margin-left: 0;
    padding: 0;
    line-height: 1.8;
  }
}
.company-policy__text--first {
  margin-top: 0;
}
@media all and (max-width: 767px) {
  .company-policy__text--first {
    margin-top: 12px;
  }
}
.company-policy__text--en {
  padding: 0;
  margin-left: 0;
}
@media all and (max-width: 767px) {
  .company-policy__text--en {
    margin-top: 24px;
  }
}
.company-policy__text:first-child {
  margin-top: 0;
}

.pr-company-image {
  margin: 36px 0;
  text-align: center;
}
@media all and (max-width: 767px) {
  .pr-company-image {
    margin: 24px 0;
  }
}

.button--recruit {
  background-color: #fff;
}

.management-main-visual {
  border-radius: 4px;
}

.management-philosophy {
  margin-top: 24px;
}
@media all and (max-width: 767px) {
  .management-philosophy {
    margin-top: 12px;
  }
}
.management-philosophy__wrap {
  display: flex;
  -moz-column-gap: 24px;
       column-gap: 24px;
  margin-top: 16px;
}
@media all and (max-width: 767px) {
  .management-philosophy__wrap {
    display: block;
    margin-top: 8px;
  }
}
.management-philosophy__text {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.8;
  color: #010a23;
}
.management-philosophy__text--normal {
  font-weight: 400;
}

.highlight-list-chart {
  display: grid;
}
@media all and (min-width: 768px) {
  .highlight-list-chart {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 80px;
         column-gap: 80px;
    row-gap: 120px;
  }
}
@media all and (max-width: 767px) {
  .highlight-list-chart {
    row-gap: 90px;
  }
}

.anime-button {
  margin-top: 32px;
}
@media all and (max-width: 767px) {
  .anime-button {
    margin-top: 16px;
  }
}

.stage-list-ticket {
  margin-top: 48px;
}
@media all and (min-width: 768px) {
  .stage-list-ticket {
    display: flex;
  }
}
@media all and (max-width: 767px) {
  .stage-list-ticket {
    margin-top: 24px;
  }
}
@media all and (min-width: 768px) {
  .stage-list-ticket__item:not(:first-child) {
    margin-left: 24px;
  }
}
@media all and (max-width: 767px) {
  .stage-list-ticket__item:not(:first-child) {
    margin-top: 24px;
  }
}
.stage-list-ticket__box {
  display: flex;
  align-items: center;
}
.stage-list-ticket__icon {
  display: block;
  width: 48px;
  margin-right: 16px;
}

.top-hero {
  display: flex;
  position: relative;
  min-width: 1264px;
  height: 100vh;
  margin: 0 auto 180px;
}
@media all and (max-width: 767px) {
  .top-hero {
    min-width: 100%;
    margin-bottom: 60px;
    height: auto;
  }
}
.top-hero__video {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
}
@media all and (max-width: 767px) {
  .top-hero__video {
    height: auto;
  }
}
.top-hero__scroll {
  position: absolute;
  bottom: 0;
  left: 40px;
  width: 15px;
  height: 117px;
}
@media all and (max-width: 767px) {
  .top-hero__scroll {
    left: 20px;
    height: 85px;
  }
}
.top-hero__scroll:before {
  content: "";
  position: absolute;
  bottom: 72px;
  left: -3px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  border: 1px solid #fafafa;
  background-color: #fafafa;
  animation: circlemovePC 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
  animation-delay: 0.6s;
}
@media all and (max-width: 767px) {
  .top-hero__scroll:before {
    bottom: 40px;
    animation: circlemoveSP 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
    animation-delay: 0.6s;
  }
}
.top-hero__scroll:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 72px;
  background: #fafafa;
}
@media all and (max-width: 767px) {
  .top-hero__scroll:after {
    height: 40px;
  }
}
.top-hero__scroll-text {
  position: absolute;
  top: 0;
  left: -8px;
  font-family: "Open Sans", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #fafafa;
  writing-mode: vertical-rl;
}
.top-hero__button {
  position: absolute;
  bottom: 40px;
  right: 40px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #fff;
  cursor: pointer;
}
@media all and (max-width: 767px) {
  .top-hero__button {
    bottom: 20px;
    right: 20px;
  }
}
.top-hero__button:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/ico_video_pause.svg") no-repeat;
  transform: translate(-50%, -50%);
}
.top-hero__button--pause:before {
  background: url("/assets/images/common/ico_video_play.svg") no-repeat;
}

@media all and (min-width: 768px) {
  .top-introduction {
    padding: 0 80px;
  }
}
.top-introduction__box + .top-introduction__box {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .top-introduction__box + .top-introduction__box {
    margin-top: 24px;
  }
}
.top-introduction__text {
  font-size: 2.7rem;
  line-height: 2.4;
}
@media all and (max-width: 767px) {
  .top-introduction__text {
    font-size: 1.8rem;
  }
}

.top-service {
  margin-top: 270px;
  margin-bottom: 390px;
}
@media all and (max-width: 767px) {
  .top-service {
    margin-top: 90px;
    margin-bottom: 90px;
  }
}

.top-category {
  display: flex;
  min-width: 1264px;
  margin-top: 180px;
}
@media all and (max-width: 767px) {
  .top-category {
    display: block;
    min-width: 100%;
    margin-top: 60px;
  }
}
.top-category__box {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
@media all and (max-width: 767px) {
  .top-category__box {
    display: block;
  }
}
.top-category__content {
  width: 480px;
  padding: 0 80px;
}
@media all and (max-width: 767px) {
  .top-category__content {
    width: 100%;
    padding: 0 25px;
  }
}
.top-category__figure {
  width: calc(50% + 120px);
  flex: 1 0 auto;
  overflow: hidden;
}
@media all and (max-width: 767px) {
  .top-category__figure {
    width: calc(100% - 25px);
    margin-top: 32px;
    margin-left: auto;
  }
}
.top-category__figure--movie, .top-category__figure--stage {
  filter: drop-shadow(40px 40px 80px rgba(0, 0, 0, 0.15));
}
@media all and (max-width: 767px) {
  .top-category__figure--movie, .top-category__figure--stage {
    filter: drop-shadow(20px 20px 40px rgba(0, 0, 0, 0.15));
  }
}
.top-category__figure--anime {
  filter: drop-shadow(-40px 40px 80px rgba(0, 0, 0, 0.15));
}
@media all and (max-width: 767px) {
  .top-category__figure--anime {
    filter: drop-shadow(-20px 20px 40px rgba(0, 0, 0, 0.15));
  }
}
.top-category__image {
  width: 100%;
  border-radius: 4px 0px 0px 4px;
}
@media all and (max-width: 767px) {
  .top-category__detail {
    margin-top: 24px;
    padding: 0 25px;
  }
}
@media all and (max-width: 767px) {
  .top-category__detail--service {
    margin-top: 8px;
    padding: 0 25px;
  }
}
.top-category--reverse .top-category__box {
  justify-content: flex-start;
  order: 2;
}
.top-category--reverse .top-category__figure {
  order: 1;
}
@media all and (max-width: 767px) {
  .top-category--reverse .top-category__figure {
    margin-right: auto;
    margin-left: inherit;
  }
}
.top-category--reverse .top-category__frame {
  filter: drop-shadow(-4px 4px 0px #010a23) drop-shadow(-40px 40px 40px rgba(0, 0, 0, 0.15));
}
@media all and (max-width: 767px) {
  .top-category--reverse .top-category__frame {
    filter: drop-shadow(-2px 2px 0px #010a23) drop-shadow(-20px 20px 20px rgba(0, 0, 0, 0.15));
  }
}
.top-category--reverse .top-category__image {
  border-radius: 0px 4px 4px 0px;
}
.top-category--large .top-category__content {
  width: 400px;
  padding: 80px 80px 0 0;
}
@media all and (max-width: 767px) {
  .top-category--large .top-category__content {
    width: 100%;
    padding: 0 25px;
  }
}
.top-category--large .top-category__figure {
  width: calc(50% + 200px);
}
@media all and (max-width: 767px) {
  .top-category--large .top-category__figure {
    width: calc(100% - 25px);
  }
}
.top-category--large + .container {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .top-category--large + .container {
    margin-top: 60px;
  }
}
.top-category + .top-category {
  margin-top: 300px;
}
@media all and (max-width: 767px) {
  .top-category + .top-category {
    margin-top: 60px;
  }
}

.top-heading {
  margin-bottom: 48px;
}
@media all and (max-width: 767px) {
  .top-heading {
    margin-bottom: 32px;
  }
}
.top-heading__sub {
  margin-bottom: 16px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .top-heading__sub {
    margin-bottom: 8px;
    font-size: 1.8rem;
  }
}
.top-heading__main {
  font-family: "Open Sans", sans-serif;
  font-size: 9.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.05em;
}
@media all and (max-width: 767px) {
  .top-heading__main {
    font-size: 6.4rem;
  }
}
.top-heading__main--small {
  font-size: 8.4rem;
}
@media all and (max-width: 767px) {
  .top-heading__main--small {
    font-size: 5.6rem;
  }
}

.top-utility {
  position: relative;
  padding-bottom: 270px;
}
@media all and (max-width: 767px) {
  .top-utility {
    overflow: hidden;
    margin-top: 90px;
    padding-bottom: 90px;
  }
}
.top-utility::after {
  content: "";
  position: absolute;
  top: 112px;
  left: 0;
  width: 100%;
  height: calc(100% - 112px);
  background-color: #f3f3f6;
  z-index: -1;
}
@media all and (max-width: 767px) {
  .top-utility::after {
    height: 100%;
    top: 0;
  }
}
.top-utility__row {
  margin-top: 270px;
}
@media all and (max-width: 767px) {
  .top-utility__row {
    margin-top: 90px;
  }
}

#page-top .main {
  padding-top: 0;
}
#page-top .is-white.header {
  background-color: transparent;
}
@media all and (min-width: 768px) {
  #page-top .is-white .header__item .header__link,
  #page-top .is-white .header__item .header__link--slash {
    color: #fff;
  }
}
#page-top .is-white .header__item .header__link--has-sub .header__icon::before {
  background-color: #fff;
}
#page-top .is-white .header__item .header__link--has-sub .header__icon::after {
  background-color: #fff;
}
#page-top .is-white .header__item:hover .header__link--has-sub {
  color: #fff;
}
@media all and (min-width: 768px) {
  #page-top .is-white .header__item:hover .header__icon::before {
    background-color: #fff;
  }
}
@media all and (min-width: 768px) {
  #page-top .is-white .header__item:hover .header__icon::after {
    background-color: #fff;
  }
}
#page-top .is-white .header__search-trigger {
  background: url("/assets/images/common/ico_search_white.svg") center center no-repeat;
}
@media all and (max-width: 767px) {
  #page-top .is-white .header__menu-icon--line {
    background-color: #fff;
  }
}

.top-sub-slider .swiper-container {
  overflow: inherit;
}
.top-sub-slider .swiper-container .swiper-wrapper--movie, .top-sub-slider .swiper-container .swiper-wrapper--stage {
  filter: drop-shadow(4px 4px 0px #010a23);
}
@media all and (max-width: 767px) {
  .top-sub-slider .swiper-container .swiper-wrapper--movie, .top-sub-slider .swiper-container .swiper-wrapper--stage {
    filter: drop-shadow(2px 2px 0px #010a23);
  }
}
.top-sub-slider .swiper-container .swiper-wrapper--anime {
  filter: drop-shadow(-4px 4px 0px #010a23);
}
@media all and (max-width: 767px) {
  .top-sub-slider .swiper-container .swiper-wrapper--anime {
    filter: drop-shadow(-2px 2px 0px #010a23);
  }
}
.top-sub-slider .swiper-pagination-wrapper {
  display: block;
}
.top-sub-slider .swiper-pagination-wrapper .swiper-pagination {
  display: flex;
  position: relative;
  gap: 6px;
}
@media all and (max-width: 767px) {
  .top-sub-slider .swiper-pagination-wrapper .swiper-pagination {
    gap: 4px;
  }
}
.top-sub-slider .swiper-pagination-wrapper .swiper-pagination .swiper-pagination-bullet {
  background-color: transparent;
  border: 1px solid #010a23;
  opacity: 1;
}
.top-sub-slider .swiper-pagination-wrapper .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #010a23;
}

.animate-top-split .SplitTextJS-char {
  opacity: 0;
  backface-visibility: hidden;
  transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition-property: transform, opacity, filter;
  transform: translateY(3rem);
  display: inline-block;
}
.animate-top-split.is-animated .SplitTextJS-char {
  transform: translateY(0);
  opacity: 1;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(1n) {
  transition-delay: 0.1s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(2n) {
  transition-delay: 0.2s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(3n) {
  transition-delay: 0.3s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(4n) {
  transition-delay: 0.4s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(5n) {
  transition-delay: 0.5s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(6n) {
  transition-delay: 0.6s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(7n) {
  transition-delay: 0.7s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(8n) {
  transition-delay: 0.8s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(9n) {
  transition-delay: 0.9s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(10n) {
  transition-delay: 1s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(11n) {
  transition-delay: 1.1s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(12n) {
  transition-delay: 1.2s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(13n) {
  transition-delay: 1.3s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(14n) {
  transition-delay: 1.4s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(15n) {
  transition-delay: 1.5s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(16n) {
  transition-delay: 1.6s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(17n) {
  transition-delay: 1.7s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(18n) {
  transition-delay: 1.8s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(19n) {
  transition-delay: 1.9s;
}
.animate-top-split.is-animated .SplitTextJS-char:nth-child(20n) {
  transition-delay: 2s;
}

.trailer-popup {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s, visibility 0.3s;
}
.trailer-popup--show {
  visibility: visible;
  opacity: 1;
}
.trailer-popup__overlay {
  position: fixed;
  inset: 0;
  z-index: 60;
  background-color: rgba(1, 10, 35, 0.8);
}
.trailer-popup__button {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media all and (max-width: 767px) {
  .trailer-popup__button {
    top: 22px;
    right: 25px;
  }
}
@media all and (min-width: 768px) {
  .trailer-popup__button {
    top: 24px;
    right: 32px;
    width: 48px;
    height: 48px;
  }
}
.trailer-popup__content {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 60;
  display: flex;
  flex-direction: column;
  transform: translate(-50%, -50%);
}
@media all and (max-width: 767px) {
  .trailer-popup__content {
    row-gap: 12px;
    width: calc(100vw - 50px);
  }
}
@media all and (min-width: 768px) {
  .trailer-popup__content {
    row-gap: 24px;
    width: 66.667%;
    max-width: calc(170vh - 240px);
  }
}

.trailer-popup-video {
  width: 100%;
  aspect-ratio: 16/9;
}
.trailer-popup-video__iframe {
  width: 100%;
  height: 100%;
}

.trailer-popup-checkbox {
  display: flex;
  -moz-column-gap: 8px;
       column-gap: 8px;
  align-items: center;
  max-width: -moz-fit-content;
  max-width: fit-content;
  font-size: 15px;
  line-height: 1.8;
  color: #fff;
}
.trailer-popup-checkbox__input {
  display: none;
}
.trailer-popup-checkbox__icon {
  width: 20px;
  height: 20px;
  background-image: url("/assets/images/common/ico_status_rest.svg");
  background-repeat: no-repeat;
}
.trailer-popup-checkbox__input:checked + .trailer-popup-checkbox__icon {
  background-image: url("/assets/images/common/ico_status_checked.svg");
}

.not-found {
  position: relative;
  margin: 120px 0 180px;
}
@media all and (max-width: 767px) {
  .not-found {
    margin: 60px 0 0;
    display: block;
  }
}
.not-found__content {
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 767px) {
  .not-found__content {
    display: block;
  }
}
.not-found__text {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .not-found__text {
    margin-top: 60px;
  }
}
.not-found__button {
  margin-left: 0;
  margin-right: 0;
}
.not-found__image {
  width: 480px;
  position: relative;
}
@media all and (max-width: 767px) {
  .not-found__image {
    margin: 32px auto 0;
    position: static;
    width: 285px;
  }
}

.goods__card {
  height: 100%;
}
.goods__button {
  margin-top: 8px;
}

.recriut-new-graduates {
  padding: 24px 20px;
  background-color: #fff;
  border-radius: 4px;
}
@media all and (min-width: 768px) {
  .recriut-new-graduates {
    display: flex;
    padding: 80px 60px;
  }
}
@media all and (min-width: 768px) {
  .recriut-new-graduates__figure {
    width: 360px;
    flex: 1 0 auto;
    margin-right: 48px;
  }
}
.recriut-new-graduates__image {
  width: 100%;
}
.recriut-new-graduates__box {
  width: 100%;
}
@media all and (max-width: 767px) {
  .recriut-new-graduates__box {
    margin-top: 24px;
  }
}
.recriut-new-graduates + .recriut-new-graduates {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .recriut-new-graduates + .recriut-new-graduates {
    margin-top: 24px;
  }
}

.maintenance {
  display: flex;
  height: 100%;
  justify-content: center;
  align-items: center;
}
.maintenance__content {
  text-align: center;
}
.maintenance__logo {
  margin: 0 auto;
  width: 214px;
}
@media all and (max-width: 767px) {
  .maintenance__logo {
    width: 174px;
  }
}
.maintenance__title {
  margin-top: 72px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .maintenance__title {
    margin-top: 48px;
    font-size: 1.8rem;
  }
}
.maintenance__text {
  margin-top: 48px;
}
@media all and (max-width: 767px) {
  .maintenance__text {
    margin-top: 24px;
  }
}

.body-maintenance,
.html-maintenance {
  height: 100%;
}

.server-error {
  position: relative;
  margin: 120px 0 180px;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 767px) {
  .server-error {
    margin: 60px 0 90px;
    display: block;
  }
}
.server-error__title {
  font-weight: 700;
  line-height: 1.5;
  font-size: 4.2rem;
}
@media all and (max-width: 767px) {
  .server-error__title {
    font-size: 2.8rem;
  }
}
.server-error__text {
  margin-top: 120px;
}
@media all and (max-width: 767px) {
  .server-error__text {
    margin-top: 60px;
  }
}
.server-error__image {
  width: 480px;
}
@media all and (max-width: 767px) {
  .server-error__image {
    margin: 32px auto 0;
    position: static;
    width: 285px;
  }
}

/* helpers */
.display-none {
  display: none !important;
}

@media all and (max-width: 767px) {
  .display-sp-none {
    display: none !important;
  }
}
@media all and (min-width: 768px) {
  .display-pc-none {
    display: none !important;
  }
}
.radius-top-right-none {
  border-top-right-radius: 0;
}

.radius-bottom-right-none {
  border-bottom-right-radius: 0;
}

.radius-bottom-left-none {
  border-bottom-left-radius: 0;
}

.radius-top-left-none {
  border-top-left-radius: 0;
}

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

.margin-0px {
  margin: 0px !important;
}

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

.padding-0px {
  padding: 0px !important;
}

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

.margin-0px {
  margin: 0px !important;
}

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

.padding-0px {
  padding: 0px !important;
}

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

.margin-0px {
  margin: 0px !important;
}

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

.padding-0px {
  padding: 0px !important;
}

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

.margin-0px {
  margin: 0px !important;
}

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

.padding-0px {
  padding: 0px !important;
}

.margin-top-5px {
  margin-top: 5px !important;
}

.margin-5px {
  margin: 5px !important;
}

.padding-top-5px {
  padding-top: 5px !important;
}

.padding-5px {
  padding: 5px !important;
}

.margin-bottom-5px {
  margin-bottom: 5px !important;
}

.margin-5px {
  margin: 5px !important;
}

.padding-bottom-5px {
  padding-bottom: 5px !important;
}

.padding-5px {
  padding: 5px !important;
}

.margin-left-5px {
  margin-left: 5px !important;
}

.margin-5px {
  margin: 5px !important;
}

.padding-left-5px {
  padding-left: 5px !important;
}

.padding-5px {
  padding: 5px !important;
}

.margin-right-5px {
  margin-right: 5px !important;
}

.margin-5px {
  margin: 5px !important;
}

.padding-right-5px {
  padding-right: 5px !important;
}

.padding-5px {
  padding: 5px !important;
}

.margin-top-8px {
  margin-top: 8px !important;
}

.margin-8px {
  margin: 8px !important;
}

.padding-top-8px {
  padding-top: 8px !important;
}

.padding-8px {
  padding: 8px !important;
}

.margin-bottom-8px {
  margin-bottom: 8px !important;
}

.margin-8px {
  margin: 8px !important;
}

.padding-bottom-8px {
  padding-bottom: 8px !important;
}

.padding-8px {
  padding: 8px !important;
}

.margin-left-8px {
  margin-left: 8px !important;
}

.margin-8px {
  margin: 8px !important;
}

.padding-left-8px {
  padding-left: 8px !important;
}

.padding-8px {
  padding: 8px !important;
}

.margin-right-8px {
  margin-right: 8px !important;
}

.margin-8px {
  margin: 8px !important;
}

.padding-right-8px {
  padding-right: 8px !important;
}

.padding-8px {
  padding: 8px !important;
}

.margin-top-10px {
  margin-top: 10px !important;
}

.margin-10px {
  margin: 10px !important;
}

.padding-top-10px {
  padding-top: 10px !important;
}

.padding-10px {
  padding: 10px !important;
}

.margin-bottom-10px {
  margin-bottom: 10px !important;
}

.margin-10px {
  margin: 10px !important;
}

.padding-bottom-10px {
  padding-bottom: 10px !important;
}

.padding-10px {
  padding: 10px !important;
}

.margin-left-10px {
  margin-left: 10px !important;
}

.margin-10px {
  margin: 10px !important;
}

.padding-left-10px {
  padding-left: 10px !important;
}

.padding-10px {
  padding: 10px !important;
}

.margin-right-10px {
  margin-right: 10px !important;
}

.margin-10px {
  margin: 10px !important;
}

.padding-right-10px {
  padding-right: 10px !important;
}

.padding-10px {
  padding: 10px !important;
}

.margin-top-12px {
  margin-top: 12px !important;
}

.margin-12px {
  margin: 12px !important;
}

.padding-top-12px {
  padding-top: 12px !important;
}

.padding-12px {
  padding: 12px !important;
}

.margin-bottom-12px {
  margin-bottom: 12px !important;
}

.margin-12px {
  margin: 12px !important;
}

.padding-bottom-12px {
  padding-bottom: 12px !important;
}

.padding-12px {
  padding: 12px !important;
}

.margin-left-12px {
  margin-left: 12px !important;
}

.margin-12px {
  margin: 12px !important;
}

.padding-left-12px {
  padding-left: 12px !important;
}

.padding-12px {
  padding: 12px !important;
}

.margin-right-12px {
  margin-right: 12px !important;
}

.margin-12px {
  margin: 12px !important;
}

.padding-right-12px {
  padding-right: 12px !important;
}

.padding-12px {
  padding: 12px !important;
}

.margin-top-15px {
  margin-top: 15px !important;
}

.margin-15px {
  margin: 15px !important;
}

.padding-top-15px {
  padding-top: 15px !important;
}

.padding-15px {
  padding: 15px !important;
}

.margin-bottom-15px {
  margin-bottom: 15px !important;
}

.margin-15px {
  margin: 15px !important;
}

.padding-bottom-15px {
  padding-bottom: 15px !important;
}

.padding-15px {
  padding: 15px !important;
}

.margin-left-15px {
  margin-left: 15px !important;
}

.margin-15px {
  margin: 15px !important;
}

.padding-left-15px {
  padding-left: 15px !important;
}

.padding-15px {
  padding: 15px !important;
}

.margin-right-15px {
  margin-right: 15px !important;
}

.margin-15px {
  margin: 15px !important;
}

.padding-right-15px {
  padding-right: 15px !important;
}

.padding-15px {
  padding: 15px !important;
}

.margin-top-16px {
  margin-top: 16px !important;
}

.margin-16px {
  margin: 16px !important;
}

.padding-top-16px {
  padding-top: 16px !important;
}

.padding-16px {
  padding: 16px !important;
}

.margin-bottom-16px {
  margin-bottom: 16px !important;
}

.margin-16px {
  margin: 16px !important;
}

.padding-bottom-16px {
  padding-bottom: 16px !important;
}

.padding-16px {
  padding: 16px !important;
}

.margin-left-16px {
  margin-left: 16px !important;
}

.margin-16px {
  margin: 16px !important;
}

.padding-left-16px {
  padding-left: 16px !important;
}

.padding-16px {
  padding: 16px !important;
}

.margin-right-16px {
  margin-right: 16px !important;
}

.margin-16px {
  margin: 16px !important;
}

.padding-right-16px {
  padding-right: 16px !important;
}

.padding-16px {
  padding: 16px !important;
}

.margin-top-20px {
  margin-top: 20px !important;
}

.margin-20px {
  margin: 20px !important;
}

.padding-top-20px {
  padding-top: 20px !important;
}

.padding-20px {
  padding: 20px !important;
}

.margin-bottom-20px {
  margin-bottom: 20px !important;
}

.margin-20px {
  margin: 20px !important;
}

.padding-bottom-20px {
  padding-bottom: 20px !important;
}

.padding-20px {
  padding: 20px !important;
}

.margin-left-20px {
  margin-left: 20px !important;
}

.margin-20px {
  margin: 20px !important;
}

.padding-left-20px {
  padding-left: 20px !important;
}

.padding-20px {
  padding: 20px !important;
}

.margin-right-20px {
  margin-right: 20px !important;
}

.margin-20px {
  margin: 20px !important;
}

.padding-right-20px {
  padding-right: 20px !important;
}

.padding-20px {
  padding: 20px !important;
}

.margin-top-24px {
  margin-top: 24px !important;
}

.margin-24px {
  margin: 24px !important;
}

.padding-top-24px {
  padding-top: 24px !important;
}

.padding-24px {
  padding: 24px !important;
}

.margin-bottom-24px {
  margin-bottom: 24px !important;
}

.margin-24px {
  margin: 24px !important;
}

.padding-bottom-24px {
  padding-bottom: 24px !important;
}

.padding-24px {
  padding: 24px !important;
}

.margin-left-24px {
  margin-left: 24px !important;
}

.margin-24px {
  margin: 24px !important;
}

.padding-left-24px {
  padding-left: 24px !important;
}

.padding-24px {
  padding: 24px !important;
}

.margin-right-24px {
  margin-right: 24px !important;
}

.margin-24px {
  margin: 24px !important;
}

.padding-right-24px {
  padding-right: 24px !important;
}

.padding-24px {
  padding: 24px !important;
}

.margin-top-25px {
  margin-top: 25px !important;
}

.margin-25px {
  margin: 25px !important;
}

.padding-top-25px {
  padding-top: 25px !important;
}

.padding-25px {
  padding: 25px !important;
}

.margin-bottom-25px {
  margin-bottom: 25px !important;
}

.margin-25px {
  margin: 25px !important;
}

.padding-bottom-25px {
  padding-bottom: 25px !important;
}

.padding-25px {
  padding: 25px !important;
}

.margin-left-25px {
  margin-left: 25px !important;
}

.margin-25px {
  margin: 25px !important;
}

.padding-left-25px {
  padding-left: 25px !important;
}

.padding-25px {
  padding: 25px !important;
}

.margin-right-25px {
  margin-right: 25px !important;
}

.margin-25px {
  margin: 25px !important;
}

.padding-right-25px {
  padding-right: 25px !important;
}

.padding-25px {
  padding: 25px !important;
}

.margin-top-30px {
  margin-top: 30px !important;
}

.margin-30px {
  margin: 30px !important;
}

.padding-top-30px {
  padding-top: 30px !important;
}

.padding-30px {
  padding: 30px !important;
}

.margin-bottom-30px {
  margin-bottom: 30px !important;
}

.margin-30px {
  margin: 30px !important;
}

.padding-bottom-30px {
  padding-bottom: 30px !important;
}

.padding-30px {
  padding: 30px !important;
}

.margin-left-30px {
  margin-left: 30px !important;
}

.margin-30px {
  margin: 30px !important;
}

.padding-left-30px {
  padding-left: 30px !important;
}

.padding-30px {
  padding: 30px !important;
}

.margin-right-30px {
  margin-right: 30px !important;
}

.margin-30px {
  margin: 30px !important;
}

.padding-right-30px {
  padding-right: 30px !important;
}

.padding-30px {
  padding: 30px !important;
}

.margin-top-32px {
  margin-top: 32px !important;
}

.margin-32px {
  margin: 32px !important;
}

.padding-top-32px {
  padding-top: 32px !important;
}

.padding-32px {
  padding: 32px !important;
}

.margin-bottom-32px {
  margin-bottom: 32px !important;
}

.margin-32px {
  margin: 32px !important;
}

.padding-bottom-32px {
  padding-bottom: 32px !important;
}

.padding-32px {
  padding: 32px !important;
}

.margin-left-32px {
  margin-left: 32px !important;
}

.margin-32px {
  margin: 32px !important;
}

.padding-left-32px {
  padding-left: 32px !important;
}

.padding-32px {
  padding: 32px !important;
}

.margin-right-32px {
  margin-right: 32px !important;
}

.margin-32px {
  margin: 32px !important;
}

.padding-right-32px {
  padding-right: 32px !important;
}

.padding-32px {
  padding: 32px !important;
}

.margin-top-35px {
  margin-top: 35px !important;
}

.margin-35px {
  margin: 35px !important;
}

.padding-top-35px {
  padding-top: 35px !important;
}

.padding-35px {
  padding: 35px !important;
}

.margin-bottom-35px {
  margin-bottom: 35px !important;
}

.margin-35px {
  margin: 35px !important;
}

.padding-bottom-35px {
  padding-bottom: 35px !important;
}

.padding-35px {
  padding: 35px !important;
}

.margin-left-35px {
  margin-left: 35px !important;
}

.margin-35px {
  margin: 35px !important;
}

.padding-left-35px {
  padding-left: 35px !important;
}

.padding-35px {
  padding: 35px !important;
}

.margin-right-35px {
  margin-right: 35px !important;
}

.margin-35px {
  margin: 35px !important;
}

.padding-right-35px {
  padding-right: 35px !important;
}

.padding-35px {
  padding: 35px !important;
}

.margin-top-40px {
  margin-top: 40px !important;
}

.margin-40px {
  margin: 40px !important;
}

.padding-top-40px {
  padding-top: 40px !important;
}

.padding-40px {
  padding: 40px !important;
}

.margin-bottom-40px {
  margin-bottom: 40px !important;
}

.margin-40px {
  margin: 40px !important;
}

.padding-bottom-40px {
  padding-bottom: 40px !important;
}

.padding-40px {
  padding: 40px !important;
}

.margin-left-40px {
  margin-left: 40px !important;
}

.margin-40px {
  margin: 40px !important;
}

.padding-left-40px {
  padding-left: 40px !important;
}

.padding-40px {
  padding: 40px !important;
}

.margin-right-40px {
  margin-right: 40px !important;
}

.margin-40px {
  margin: 40px !important;
}

.padding-right-40px {
  padding-right: 40px !important;
}

.padding-40px {
  padding: 40px !important;
}

.margin-top-45px {
  margin-top: 45px !important;
}

.margin-45px {
  margin: 45px !important;
}

.padding-top-45px {
  padding-top: 45px !important;
}

.padding-45px {
  padding: 45px !important;
}

.margin-bottom-45px {
  margin-bottom: 45px !important;
}

.margin-45px {
  margin: 45px !important;
}

.padding-bottom-45px {
  padding-bottom: 45px !important;
}

.padding-45px {
  padding: 45px !important;
}

.margin-left-45px {
  margin-left: 45px !important;
}

.margin-45px {
  margin: 45px !important;
}

.padding-left-45px {
  padding-left: 45px !important;
}

.padding-45px {
  padding: 45px !important;
}

.margin-right-45px {
  margin-right: 45px !important;
}

.margin-45px {
  margin: 45px !important;
}

.padding-right-45px {
  padding-right: 45px !important;
}

.padding-45px {
  padding: 45px !important;
}

.margin-top-48px {
  margin-top: 48px !important;
}

.margin-48px {
  margin: 48px !important;
}

.padding-top-48px {
  padding-top: 48px !important;
}

.padding-48px {
  padding: 48px !important;
}

.margin-bottom-48px {
  margin-bottom: 48px !important;
}

.margin-48px {
  margin: 48px !important;
}

.padding-bottom-48px {
  padding-bottom: 48px !important;
}

.padding-48px {
  padding: 48px !important;
}

.margin-left-48px {
  margin-left: 48px !important;
}

.margin-48px {
  margin: 48px !important;
}

.padding-left-48px {
  padding-left: 48px !important;
}

.padding-48px {
  padding: 48px !important;
}

.margin-right-48px {
  margin-right: 48px !important;
}

.margin-48px {
  margin: 48px !important;
}

.padding-right-48px {
  padding-right: 48px !important;
}

.padding-48px {
  padding: 48px !important;
}

.margin-top-50px {
  margin-top: 50px !important;
}

.margin-50px {
  margin: 50px !important;
}

.padding-top-50px {
  padding-top: 50px !important;
}

.padding-50px {
  padding: 50px !important;
}

.margin-bottom-50px {
  margin-bottom: 50px !important;
}

.margin-50px {
  margin: 50px !important;
}

.padding-bottom-50px {
  padding-bottom: 50px !important;
}

.padding-50px {
  padding: 50px !important;
}

.margin-left-50px {
  margin-left: 50px !important;
}

.margin-50px {
  margin: 50px !important;
}

.padding-left-50px {
  padding-left: 50px !important;
}

.padding-50px {
  padding: 50px !important;
}

.margin-right-50px {
  margin-right: 50px !important;
}

.margin-50px {
  margin: 50px !important;
}

.padding-right-50px {
  padding-right: 50px !important;
}

.padding-50px {
  padding: 50px !important;
}

.margin-top-60px {
  margin-top: 60px !important;
}

.margin-60px {
  margin: 60px !important;
}

.padding-top-60px {
  padding-top: 60px !important;
}

.padding-60px {
  padding: 60px !important;
}

.margin-bottom-60px {
  margin-bottom: 60px !important;
}

.margin-60px {
  margin: 60px !important;
}

.padding-bottom-60px {
  padding-bottom: 60px !important;
}

.padding-60px {
  padding: 60px !important;
}

.margin-left-60px {
  margin-left: 60px !important;
}

.margin-60px {
  margin: 60px !important;
}

.padding-left-60px {
  padding-left: 60px !important;
}

.padding-60px {
  padding: 60px !important;
}

.margin-right-60px {
  margin-right: 60px !important;
}

.margin-60px {
  margin: 60px !important;
}

.padding-right-60px {
  padding-right: 60px !important;
}

.padding-60px {
  padding: 60px !important;
}

.margin-top-64px {
  margin-top: 64px !important;
}

.margin-64px {
  margin: 64px !important;
}

.padding-top-64px {
  padding-top: 64px !important;
}

.padding-64px {
  padding: 64px !important;
}

.margin-bottom-64px {
  margin-bottom: 64px !important;
}

.margin-64px {
  margin: 64px !important;
}

.padding-bottom-64px {
  padding-bottom: 64px !important;
}

.padding-64px {
  padding: 64px !important;
}

.margin-left-64px {
  margin-left: 64px !important;
}

.margin-64px {
  margin: 64px !important;
}

.padding-left-64px {
  padding-left: 64px !important;
}

.padding-64px {
  padding: 64px !important;
}

.margin-right-64px {
  margin-right: 64px !important;
}

.margin-64px {
  margin: 64px !important;
}

.padding-right-64px {
  padding-right: 64px !important;
}

.padding-64px {
  padding: 64px !important;
}

.margin-top-65px {
  margin-top: 65px !important;
}

.margin-65px {
  margin: 65px !important;
}

.padding-top-65px {
  padding-top: 65px !important;
}

.padding-65px {
  padding: 65px !important;
}

.margin-bottom-65px {
  margin-bottom: 65px !important;
}

.margin-65px {
  margin: 65px !important;
}

.padding-bottom-65px {
  padding-bottom: 65px !important;
}

.padding-65px {
  padding: 65px !important;
}

.margin-left-65px {
  margin-left: 65px !important;
}

.margin-65px {
  margin: 65px !important;
}

.padding-left-65px {
  padding-left: 65px !important;
}

.padding-65px {
  padding: 65px !important;
}

.margin-right-65px {
  margin-right: 65px !important;
}

.margin-65px {
  margin: 65px !important;
}

.padding-right-65px {
  padding-right: 65px !important;
}

.padding-65px {
  padding: 65px !important;
}

.margin-top-90px {
  margin-top: 90px !important;
}

.margin-90px {
  margin: 90px !important;
}

.padding-top-90px {
  padding-top: 90px !important;
}

.padding-90px {
  padding: 90px !important;
}

.margin-bottom-90px {
  margin-bottom: 90px !important;
}

.margin-90px {
  margin: 90px !important;
}

.padding-bottom-90px {
  padding-bottom: 90px !important;
}

.padding-90px {
  padding: 90px !important;
}

.margin-left-90px {
  margin-left: 90px !important;
}

.margin-90px {
  margin: 90px !important;
}

.padding-left-90px {
  padding-left: 90px !important;
}

.padding-90px {
  padding: 90px !important;
}

.margin-right-90px {
  margin-right: 90px !important;
}

.margin-90px {
  margin: 90px !important;
}

.padding-right-90px {
  padding-right: 90px !important;
}

.padding-90px {
  padding: 90px !important;
}

.margin-top-120px {
  margin-top: 120px !important;
}

.margin-120px {
  margin: 120px !important;
}

.padding-top-120px {
  padding-top: 120px !important;
}

.padding-120px {
  padding: 120px !important;
}

.margin-bottom-120px {
  margin-bottom: 120px !important;
}

.margin-120px {
  margin: 120px !important;
}

.padding-bottom-120px {
  padding-bottom: 120px !important;
}

.padding-120px {
  padding: 120px !important;
}

.margin-left-120px {
  margin-left: 120px !important;
}

.margin-120px {
  margin: 120px !important;
}

.padding-left-120px {
  padding-left: 120px !important;
}

.padding-120px {
  padding: 120px !important;
}

.margin-right-120px {
  margin-right: 120px !important;
}

.margin-120px {
  margin: 120px !important;
}

.padding-right-120px {
  padding-right: 120px !important;
}

.padding-120px {
  padding: 120px !important;
}

.margin-top-180px {
  margin-top: 180px !important;
}

.margin-180px {
  margin: 180px !important;
}

.padding-top-180px {
  padding-top: 180px !important;
}

.padding-180px {
  padding: 180px !important;
}

.margin-bottom-180px {
  margin-bottom: 180px !important;
}

.margin-180px {
  margin: 180px !important;
}

.padding-bottom-180px {
  padding-bottom: 180px !important;
}

.padding-180px {
  padding: 180px !important;
}

.margin-left-180px {
  margin-left: 180px !important;
}

.margin-180px {
  margin: 180px !important;
}

.padding-left-180px {
  padding-left: 180px !important;
}

.padding-180px {
  padding: 180px !important;
}

.margin-right-180px {
  margin-right: 180px !important;
}

.margin-180px {
  margin: 180px !important;
}

.padding-right-180px {
  padding-right: 180px !important;
}

.padding-180px {
  padding: 180px !important;
}

@media all and (max-width: 767px) {
  .margin-top-small-0px {
    margin-top: 0px !important;
  }
  .margin-small-0px {
    margin: 0px !important;
  }
  .padding-top-small-0px {
    padding-top: 0px !important;
  }
  .padding-small-0px {
    padding: 0px !important;
  }
  .margin-bottom-small-0px {
    margin-bottom: 0px !important;
  }
  .margin-small-0px {
    margin: 0px !important;
  }
  .padding-bottom-small-0px {
    padding-bottom: 0px !important;
  }
  .padding-small-0px {
    padding: 0px !important;
  }
  .margin-left-small-0px {
    margin-left: 0px !important;
  }
  .margin-small-0px {
    margin: 0px !important;
  }
  .padding-left-small-0px {
    padding-left: 0px !important;
  }
  .padding-small-0px {
    padding: 0px !important;
  }
  .margin-right-small-0px {
    margin-right: 0px !important;
  }
  .margin-small-0px {
    margin: 0px !important;
  }
  .padding-right-small-0px {
    padding-right: 0px !important;
  }
  .padding-small-0px {
    padding: 0px !important;
  }
  .margin-top-small-5px {
    margin-top: 5px !important;
  }
  .margin-small-5px {
    margin: 5px !important;
  }
  .padding-top-small-5px {
    padding-top: 5px !important;
  }
  .padding-small-5px {
    padding: 5px !important;
  }
  .margin-bottom-small-5px {
    margin-bottom: 5px !important;
  }
  .margin-small-5px {
    margin: 5px !important;
  }
  .padding-bottom-small-5px {
    padding-bottom: 5px !important;
  }
  .padding-small-5px {
    padding: 5px !important;
  }
  .margin-left-small-5px {
    margin-left: 5px !important;
  }
  .margin-small-5px {
    margin: 5px !important;
  }
  .padding-left-small-5px {
    padding-left: 5px !important;
  }
  .padding-small-5px {
    padding: 5px !important;
  }
  .margin-right-small-5px {
    margin-right: 5px !important;
  }
  .margin-small-5px {
    margin: 5px !important;
  }
  .padding-right-small-5px {
    padding-right: 5px !important;
  }
  .padding-small-5px {
    padding: 5px !important;
  }
  .margin-top-small-8px {
    margin-top: 8px !important;
  }
  .margin-small-8px {
    margin: 8px !important;
  }
  .padding-top-small-8px {
    padding-top: 8px !important;
  }
  .padding-small-8px {
    padding: 8px !important;
  }
  .margin-bottom-small-8px {
    margin-bottom: 8px !important;
  }
  .margin-small-8px {
    margin: 8px !important;
  }
  .padding-bottom-small-8px {
    padding-bottom: 8px !important;
  }
  .padding-small-8px {
    padding: 8px !important;
  }
  .margin-left-small-8px {
    margin-left: 8px !important;
  }
  .margin-small-8px {
    margin: 8px !important;
  }
  .padding-left-small-8px {
    padding-left: 8px !important;
  }
  .padding-small-8px {
    padding: 8px !important;
  }
  .margin-right-small-8px {
    margin-right: 8px !important;
  }
  .margin-small-8px {
    margin: 8px !important;
  }
  .padding-right-small-8px {
    padding-right: 8px !important;
  }
  .padding-small-8px {
    padding: 8px !important;
  }
  .margin-top-small-10px {
    margin-top: 10px !important;
  }
  .margin-small-10px {
    margin: 10px !important;
  }
  .padding-top-small-10px {
    padding-top: 10px !important;
  }
  .padding-small-10px {
    padding: 10px !important;
  }
  .margin-bottom-small-10px {
    margin-bottom: 10px !important;
  }
  .margin-small-10px {
    margin: 10px !important;
  }
  .padding-bottom-small-10px {
    padding-bottom: 10px !important;
  }
  .padding-small-10px {
    padding: 10px !important;
  }
  .margin-left-small-10px {
    margin-left: 10px !important;
  }
  .margin-small-10px {
    margin: 10px !important;
  }
  .padding-left-small-10px {
    padding-left: 10px !important;
  }
  .padding-small-10px {
    padding: 10px !important;
  }
  .margin-right-small-10px {
    margin-right: 10px !important;
  }
  .margin-small-10px {
    margin: 10px !important;
  }
  .padding-right-small-10px {
    padding-right: 10px !important;
  }
  .padding-small-10px {
    padding: 10px !important;
  }
  .margin-top-small-12px {
    margin-top: 12px !important;
  }
  .margin-small-12px {
    margin: 12px !important;
  }
  .padding-top-small-12px {
    padding-top: 12px !important;
  }
  .padding-small-12px {
    padding: 12px !important;
  }
  .margin-bottom-small-12px {
    margin-bottom: 12px !important;
  }
  .margin-small-12px {
    margin: 12px !important;
  }
  .padding-bottom-small-12px {
    padding-bottom: 12px !important;
  }
  .padding-small-12px {
    padding: 12px !important;
  }
  .margin-left-small-12px {
    margin-left: 12px !important;
  }
  .margin-small-12px {
    margin: 12px !important;
  }
  .padding-left-small-12px {
    padding-left: 12px !important;
  }
  .padding-small-12px {
    padding: 12px !important;
  }
  .margin-right-small-12px {
    margin-right: 12px !important;
  }
  .margin-small-12px {
    margin: 12px !important;
  }
  .padding-right-small-12px {
    padding-right: 12px !important;
  }
  .padding-small-12px {
    padding: 12px !important;
  }
  .margin-top-small-15px {
    margin-top: 15px !important;
  }
  .margin-small-15px {
    margin: 15px !important;
  }
  .padding-top-small-15px {
    padding-top: 15px !important;
  }
  .padding-small-15px {
    padding: 15px !important;
  }
  .margin-bottom-small-15px {
    margin-bottom: 15px !important;
  }
  .margin-small-15px {
    margin: 15px !important;
  }
  .padding-bottom-small-15px {
    padding-bottom: 15px !important;
  }
  .padding-small-15px {
    padding: 15px !important;
  }
  .margin-left-small-15px {
    margin-left: 15px !important;
  }
  .margin-small-15px {
    margin: 15px !important;
  }
  .padding-left-small-15px {
    padding-left: 15px !important;
  }
  .padding-small-15px {
    padding: 15px !important;
  }
  .margin-right-small-15px {
    margin-right: 15px !important;
  }
  .margin-small-15px {
    margin: 15px !important;
  }
  .padding-right-small-15px {
    padding-right: 15px !important;
  }
  .padding-small-15px {
    padding: 15px !important;
  }
  .margin-top-small-16px {
    margin-top: 16px !important;
  }
  .margin-small-16px {
    margin: 16px !important;
  }
  .padding-top-small-16px {
    padding-top: 16px !important;
  }
  .padding-small-16px {
    padding: 16px !important;
  }
  .margin-bottom-small-16px {
    margin-bottom: 16px !important;
  }
  .margin-small-16px {
    margin: 16px !important;
  }
  .padding-bottom-small-16px {
    padding-bottom: 16px !important;
  }
  .padding-small-16px {
    padding: 16px !important;
  }
  .margin-left-small-16px {
    margin-left: 16px !important;
  }
  .margin-small-16px {
    margin: 16px !important;
  }
  .padding-left-small-16px {
    padding-left: 16px !important;
  }
  .padding-small-16px {
    padding: 16px !important;
  }
  .margin-right-small-16px {
    margin-right: 16px !important;
  }
  .margin-small-16px {
    margin: 16px !important;
  }
  .padding-right-small-16px {
    padding-right: 16px !important;
  }
  .padding-small-16px {
    padding: 16px !important;
  }
  .margin-top-small-20px {
    margin-top: 20px !important;
  }
  .margin-small-20px {
    margin: 20px !important;
  }
  .padding-top-small-20px {
    padding-top: 20px !important;
  }
  .padding-small-20px {
    padding: 20px !important;
  }
  .margin-bottom-small-20px {
    margin-bottom: 20px !important;
  }
  .margin-small-20px {
    margin: 20px !important;
  }
  .padding-bottom-small-20px {
    padding-bottom: 20px !important;
  }
  .padding-small-20px {
    padding: 20px !important;
  }
  .margin-left-small-20px {
    margin-left: 20px !important;
  }
  .margin-small-20px {
    margin: 20px !important;
  }
  .padding-left-small-20px {
    padding-left: 20px !important;
  }
  .padding-small-20px {
    padding: 20px !important;
  }
  .margin-right-small-20px {
    margin-right: 20px !important;
  }
  .margin-small-20px {
    margin: 20px !important;
  }
  .padding-right-small-20px {
    padding-right: 20px !important;
  }
  .padding-small-20px {
    padding: 20px !important;
  }
  .margin-top-small-24px {
    margin-top: 24px !important;
  }
  .margin-small-24px {
    margin: 24px !important;
  }
  .padding-top-small-24px {
    padding-top: 24px !important;
  }
  .padding-small-24px {
    padding: 24px !important;
  }
  .margin-bottom-small-24px {
    margin-bottom: 24px !important;
  }
  .margin-small-24px {
    margin: 24px !important;
  }
  .padding-bottom-small-24px {
    padding-bottom: 24px !important;
  }
  .padding-small-24px {
    padding: 24px !important;
  }
  .margin-left-small-24px {
    margin-left: 24px !important;
  }
  .margin-small-24px {
    margin: 24px !important;
  }
  .padding-left-small-24px {
    padding-left: 24px !important;
  }
  .padding-small-24px {
    padding: 24px !important;
  }
  .margin-right-small-24px {
    margin-right: 24px !important;
  }
  .margin-small-24px {
    margin: 24px !important;
  }
  .padding-right-small-24px {
    padding-right: 24px !important;
  }
  .padding-small-24px {
    padding: 24px !important;
  }
  .margin-top-small-25px {
    margin-top: 25px !important;
  }
  .margin-small-25px {
    margin: 25px !important;
  }
  .padding-top-small-25px {
    padding-top: 25px !important;
  }
  .padding-small-25px {
    padding: 25px !important;
  }
  .margin-bottom-small-25px {
    margin-bottom: 25px !important;
  }
  .margin-small-25px {
    margin: 25px !important;
  }
  .padding-bottom-small-25px {
    padding-bottom: 25px !important;
  }
  .padding-small-25px {
    padding: 25px !important;
  }
  .margin-left-small-25px {
    margin-left: 25px !important;
  }
  .margin-small-25px {
    margin: 25px !important;
  }
  .padding-left-small-25px {
    padding-left: 25px !important;
  }
  .padding-small-25px {
    padding: 25px !important;
  }
  .margin-right-small-25px {
    margin-right: 25px !important;
  }
  .margin-small-25px {
    margin: 25px !important;
  }
  .padding-right-small-25px {
    padding-right: 25px !important;
  }
  .padding-small-25px {
    padding: 25px !important;
  }
  .margin-top-small-30px {
    margin-top: 30px !important;
  }
  .margin-small-30px {
    margin: 30px !important;
  }
  .padding-top-small-30px {
    padding-top: 30px !important;
  }
  .padding-small-30px {
    padding: 30px !important;
  }
  .margin-bottom-small-30px {
    margin-bottom: 30px !important;
  }
  .margin-small-30px {
    margin: 30px !important;
  }
  .padding-bottom-small-30px {
    padding-bottom: 30px !important;
  }
  .padding-small-30px {
    padding: 30px !important;
  }
  .margin-left-small-30px {
    margin-left: 30px !important;
  }
  .margin-small-30px {
    margin: 30px !important;
  }
  .padding-left-small-30px {
    padding-left: 30px !important;
  }
  .padding-small-30px {
    padding: 30px !important;
  }
  .margin-right-small-30px {
    margin-right: 30px !important;
  }
  .margin-small-30px {
    margin: 30px !important;
  }
  .padding-right-small-30px {
    padding-right: 30px !important;
  }
  .padding-small-30px {
    padding: 30px !important;
  }
  .margin-top-small-32px {
    margin-top: 32px !important;
  }
  .margin-small-32px {
    margin: 32px !important;
  }
  .padding-top-small-32px {
    padding-top: 32px !important;
  }
  .padding-small-32px {
    padding: 32px !important;
  }
  .margin-bottom-small-32px {
    margin-bottom: 32px !important;
  }
  .margin-small-32px {
    margin: 32px !important;
  }
  .padding-bottom-small-32px {
    padding-bottom: 32px !important;
  }
  .padding-small-32px {
    padding: 32px !important;
  }
  .margin-left-small-32px {
    margin-left: 32px !important;
  }
  .margin-small-32px {
    margin: 32px !important;
  }
  .padding-left-small-32px {
    padding-left: 32px !important;
  }
  .padding-small-32px {
    padding: 32px !important;
  }
  .margin-right-small-32px {
    margin-right: 32px !important;
  }
  .margin-small-32px {
    margin: 32px !important;
  }
  .padding-right-small-32px {
    padding-right: 32px !important;
  }
  .padding-small-32px {
    padding: 32px !important;
  }
  .margin-top-small-35px {
    margin-top: 35px !important;
  }
  .margin-small-35px {
    margin: 35px !important;
  }
  .padding-top-small-35px {
    padding-top: 35px !important;
  }
  .padding-small-35px {
    padding: 35px !important;
  }
  .margin-bottom-small-35px {
    margin-bottom: 35px !important;
  }
  .margin-small-35px {
    margin: 35px !important;
  }
  .padding-bottom-small-35px {
    padding-bottom: 35px !important;
  }
  .padding-small-35px {
    padding: 35px !important;
  }
  .margin-left-small-35px {
    margin-left: 35px !important;
  }
  .margin-small-35px {
    margin: 35px !important;
  }
  .padding-left-small-35px {
    padding-left: 35px !important;
  }
  .padding-small-35px {
    padding: 35px !important;
  }
  .margin-right-small-35px {
    margin-right: 35px !important;
  }
  .margin-small-35px {
    margin: 35px !important;
  }
  .padding-right-small-35px {
    padding-right: 35px !important;
  }
  .padding-small-35px {
    padding: 35px !important;
  }
  .margin-top-small-40px {
    margin-top: 40px !important;
  }
  .margin-small-40px {
    margin: 40px !important;
  }
  .padding-top-small-40px {
    padding-top: 40px !important;
  }
  .padding-small-40px {
    padding: 40px !important;
  }
  .margin-bottom-small-40px {
    margin-bottom: 40px !important;
  }
  .margin-small-40px {
    margin: 40px !important;
  }
  .padding-bottom-small-40px {
    padding-bottom: 40px !important;
  }
  .padding-small-40px {
    padding: 40px !important;
  }
  .margin-left-small-40px {
    margin-left: 40px !important;
  }
  .margin-small-40px {
    margin: 40px !important;
  }
  .padding-left-small-40px {
    padding-left: 40px !important;
  }
  .padding-small-40px {
    padding: 40px !important;
  }
  .margin-right-small-40px {
    margin-right: 40px !important;
  }
  .margin-small-40px {
    margin: 40px !important;
  }
  .padding-right-small-40px {
    padding-right: 40px !important;
  }
  .padding-small-40px {
    padding: 40px !important;
  }
  .margin-top-small-45px {
    margin-top: 45px !important;
  }
  .margin-small-45px {
    margin: 45px !important;
  }
  .padding-top-small-45px {
    padding-top: 45px !important;
  }
  .padding-small-45px {
    padding: 45px !important;
  }
  .margin-bottom-small-45px {
    margin-bottom: 45px !important;
  }
  .margin-small-45px {
    margin: 45px !important;
  }
  .padding-bottom-small-45px {
    padding-bottom: 45px !important;
  }
  .padding-small-45px {
    padding: 45px !important;
  }
  .margin-left-small-45px {
    margin-left: 45px !important;
  }
  .margin-small-45px {
    margin: 45px !important;
  }
  .padding-left-small-45px {
    padding-left: 45px !important;
  }
  .padding-small-45px {
    padding: 45px !important;
  }
  .margin-right-small-45px {
    margin-right: 45px !important;
  }
  .margin-small-45px {
    margin: 45px !important;
  }
  .padding-right-small-45px {
    padding-right: 45px !important;
  }
  .padding-small-45px {
    padding: 45px !important;
  }
  .margin-top-small-48px {
    margin-top: 48px !important;
  }
  .margin-small-48px {
    margin: 48px !important;
  }
  .padding-top-small-48px {
    padding-top: 48px !important;
  }
  .padding-small-48px {
    padding: 48px !important;
  }
  .margin-bottom-small-48px {
    margin-bottom: 48px !important;
  }
  .margin-small-48px {
    margin: 48px !important;
  }
  .padding-bottom-small-48px {
    padding-bottom: 48px !important;
  }
  .padding-small-48px {
    padding: 48px !important;
  }
  .margin-left-small-48px {
    margin-left: 48px !important;
  }
  .margin-small-48px {
    margin: 48px !important;
  }
  .padding-left-small-48px {
    padding-left: 48px !important;
  }
  .padding-small-48px {
    padding: 48px !important;
  }
  .margin-right-small-48px {
    margin-right: 48px !important;
  }
  .margin-small-48px {
    margin: 48px !important;
  }
  .padding-right-small-48px {
    padding-right: 48px !important;
  }
  .padding-small-48px {
    padding: 48px !important;
  }
  .margin-top-small-50px {
    margin-top: 50px !important;
  }
  .margin-small-50px {
    margin: 50px !important;
  }
  .padding-top-small-50px {
    padding-top: 50px !important;
  }
  .padding-small-50px {
    padding: 50px !important;
  }
  .margin-bottom-small-50px {
    margin-bottom: 50px !important;
  }
  .margin-small-50px {
    margin: 50px !important;
  }
  .padding-bottom-small-50px {
    padding-bottom: 50px !important;
  }
  .padding-small-50px {
    padding: 50px !important;
  }
  .margin-left-small-50px {
    margin-left: 50px !important;
  }
  .margin-small-50px {
    margin: 50px !important;
  }
  .padding-left-small-50px {
    padding-left: 50px !important;
  }
  .padding-small-50px {
    padding: 50px !important;
  }
  .margin-right-small-50px {
    margin-right: 50px !important;
  }
  .margin-small-50px {
    margin: 50px !important;
  }
  .padding-right-small-50px {
    padding-right: 50px !important;
  }
  .padding-small-50px {
    padding: 50px !important;
  }
  .margin-top-small-60px {
    margin-top: 60px !important;
  }
  .margin-small-60px {
    margin: 60px !important;
  }
  .padding-top-small-60px {
    padding-top: 60px !important;
  }
  .padding-small-60px {
    padding: 60px !important;
  }
  .margin-bottom-small-60px {
    margin-bottom: 60px !important;
  }
  .margin-small-60px {
    margin: 60px !important;
  }
  .padding-bottom-small-60px {
    padding-bottom: 60px !important;
  }
  .padding-small-60px {
    padding: 60px !important;
  }
  .margin-left-small-60px {
    margin-left: 60px !important;
  }
  .margin-small-60px {
    margin: 60px !important;
  }
  .padding-left-small-60px {
    padding-left: 60px !important;
  }
  .padding-small-60px {
    padding: 60px !important;
  }
  .margin-right-small-60px {
    margin-right: 60px !important;
  }
  .margin-small-60px {
    margin: 60px !important;
  }
  .padding-right-small-60px {
    padding-right: 60px !important;
  }
  .padding-small-60px {
    padding: 60px !important;
  }
  .margin-top-small-64px {
    margin-top: 64px !important;
  }
  .margin-small-64px {
    margin: 64px !important;
  }
  .padding-top-small-64px {
    padding-top: 64px !important;
  }
  .padding-small-64px {
    padding: 64px !important;
  }
  .margin-bottom-small-64px {
    margin-bottom: 64px !important;
  }
  .margin-small-64px {
    margin: 64px !important;
  }
  .padding-bottom-small-64px {
    padding-bottom: 64px !important;
  }
  .padding-small-64px {
    padding: 64px !important;
  }
  .margin-left-small-64px {
    margin-left: 64px !important;
  }
  .margin-small-64px {
    margin: 64px !important;
  }
  .padding-left-small-64px {
    padding-left: 64px !important;
  }
  .padding-small-64px {
    padding: 64px !important;
  }
  .margin-right-small-64px {
    margin-right: 64px !important;
  }
  .margin-small-64px {
    margin: 64px !important;
  }
  .padding-right-small-64px {
    padding-right: 64px !important;
  }
  .padding-small-64px {
    padding: 64px !important;
  }
  .margin-top-small-65px {
    margin-top: 65px !important;
  }
  .margin-small-65px {
    margin: 65px !important;
  }
  .padding-top-small-65px {
    padding-top: 65px !important;
  }
  .padding-small-65px {
    padding: 65px !important;
  }
  .margin-bottom-small-65px {
    margin-bottom: 65px !important;
  }
  .margin-small-65px {
    margin: 65px !important;
  }
  .padding-bottom-small-65px {
    padding-bottom: 65px !important;
  }
  .padding-small-65px {
    padding: 65px !important;
  }
  .margin-left-small-65px {
    margin-left: 65px !important;
  }
  .margin-small-65px {
    margin: 65px !important;
  }
  .padding-left-small-65px {
    padding-left: 65px !important;
  }
  .padding-small-65px {
    padding: 65px !important;
  }
  .margin-right-small-65px {
    margin-right: 65px !important;
  }
  .margin-small-65px {
    margin: 65px !important;
  }
  .padding-right-small-65px {
    padding-right: 65px !important;
  }
  .padding-small-65px {
    padding: 65px !important;
  }
  .margin-top-small-90px {
    margin-top: 90px !important;
  }
  .margin-small-90px {
    margin: 90px !important;
  }
  .padding-top-small-90px {
    padding-top: 90px !important;
  }
  .padding-small-90px {
    padding: 90px !important;
  }
  .margin-bottom-small-90px {
    margin-bottom: 90px !important;
  }
  .margin-small-90px {
    margin: 90px !important;
  }
  .padding-bottom-small-90px {
    padding-bottom: 90px !important;
  }
  .padding-small-90px {
    padding: 90px !important;
  }
  .margin-left-small-90px {
    margin-left: 90px !important;
  }
  .margin-small-90px {
    margin: 90px !important;
  }
  .padding-left-small-90px {
    padding-left: 90px !important;
  }
  .padding-small-90px {
    padding: 90px !important;
  }
  .margin-right-small-90px {
    margin-right: 90px !important;
  }
  .margin-small-90px {
    margin: 90px !important;
  }
  .padding-right-small-90px {
    padding-right: 90px !important;
  }
  .padding-small-90px {
    padding: 90px !important;
  }
  .margin-top-small-120px {
    margin-top: 120px !important;
  }
  .margin-small-120px {
    margin: 120px !important;
  }
  .padding-top-small-120px {
    padding-top: 120px !important;
  }
  .padding-small-120px {
    padding: 120px !important;
  }
  .margin-bottom-small-120px {
    margin-bottom: 120px !important;
  }
  .margin-small-120px {
    margin: 120px !important;
  }
  .padding-bottom-small-120px {
    padding-bottom: 120px !important;
  }
  .padding-small-120px {
    padding: 120px !important;
  }
  .margin-left-small-120px {
    margin-left: 120px !important;
  }
  .margin-small-120px {
    margin: 120px !important;
  }
  .padding-left-small-120px {
    padding-left: 120px !important;
  }
  .padding-small-120px {
    padding: 120px !important;
  }
  .margin-right-small-120px {
    margin-right: 120px !important;
  }
  .margin-small-120px {
    margin: 120px !important;
  }
  .padding-right-small-120px {
    padding-right: 120px !important;
  }
  .padding-small-120px {
    padding: 120px !important;
  }
  .margin-top-small-180px {
    margin-top: 180px !important;
  }
  .margin-small-180px {
    margin: 180px !important;
  }
  .padding-top-small-180px {
    padding-top: 180px !important;
  }
  .padding-small-180px {
    padding: 180px !important;
  }
  .margin-bottom-small-180px {
    margin-bottom: 180px !important;
  }
  .margin-small-180px {
    margin: 180px !important;
  }
  .padding-bottom-small-180px {
    padding-bottom: 180px !important;
  }
  .padding-small-180px {
    padding: 180px !important;
  }
  .margin-left-small-180px {
    margin-left: 180px !important;
  }
  .margin-small-180px {
    margin: 180px !important;
  }
  .padding-left-small-180px {
    padding-left: 180px !important;
  }
  .padding-small-180px {
    padding: 180px !important;
  }
  .margin-right-small-180px {
    margin-right: 180px !important;
  }
  .margin-small-180px {
    margin: 180px !important;
  }
  .padding-right-small-180px {
    padding-right: 180px !important;
  }
  .padding-small-180px {
    padding: 180px !important;
  }
}
@media all and (min-width: 768px) {
  .margin-top-medium-0px {
    margin-top: 0px !important;
  }
  .margin-medium-0px {
    margin: 0px !important;
  }
  .padding-top-medium-0px {
    padding-top: 0px !important;
  }
  .padding-medium-0px {
    padding: 0px !important;
  }
  .margin-bottom-medium-0px {
    margin-bottom: 0px !important;
  }
  .margin-medium-0px {
    margin: 0px !important;
  }
  .padding-bottom-medium-0px {
    padding-bottom: 0px !important;
  }
  .padding-medium-0px {
    padding: 0px !important;
  }
  .margin-left-medium-0px {
    margin-left: 0px !important;
  }
  .margin-medium-0px {
    margin: 0px !important;
  }
  .padding-left-medium-0px {
    padding-left: 0px !important;
  }
  .padding-medium-0px {
    padding: 0px !important;
  }
  .margin-right-medium-0px {
    margin-right: 0px !important;
  }
  .margin-medium-0px {
    margin: 0px !important;
  }
  .padding-right-medium-0px {
    padding-right: 0px !important;
  }
  .padding-medium-0px {
    padding: 0px !important;
  }
  .margin-top-medium-5px {
    margin-top: 5px !important;
  }
  .margin-medium-5px {
    margin: 5px !important;
  }
  .padding-top-medium-5px {
    padding-top: 5px !important;
  }
  .padding-medium-5px {
    padding: 5px !important;
  }
  .margin-bottom-medium-5px {
    margin-bottom: 5px !important;
  }
  .margin-medium-5px {
    margin: 5px !important;
  }
  .padding-bottom-medium-5px {
    padding-bottom: 5px !important;
  }
  .padding-medium-5px {
    padding: 5px !important;
  }
  .margin-left-medium-5px {
    margin-left: 5px !important;
  }
  .margin-medium-5px {
    margin: 5px !important;
  }
  .padding-left-medium-5px {
    padding-left: 5px !important;
  }
  .padding-medium-5px {
    padding: 5px !important;
  }
  .margin-right-medium-5px {
    margin-right: 5px !important;
  }
  .margin-medium-5px {
    margin: 5px !important;
  }
  .padding-right-medium-5px {
    padding-right: 5px !important;
  }
  .padding-medium-5px {
    padding: 5px !important;
  }
  .margin-top-medium-8px {
    margin-top: 8px !important;
  }
  .margin-medium-8px {
    margin: 8px !important;
  }
  .padding-top-medium-8px {
    padding-top: 8px !important;
  }
  .padding-medium-8px {
    padding: 8px !important;
  }
  .margin-bottom-medium-8px {
    margin-bottom: 8px !important;
  }
  .margin-medium-8px {
    margin: 8px !important;
  }
  .padding-bottom-medium-8px {
    padding-bottom: 8px !important;
  }
  .padding-medium-8px {
    padding: 8px !important;
  }
  .margin-left-medium-8px {
    margin-left: 8px !important;
  }
  .margin-medium-8px {
    margin: 8px !important;
  }
  .padding-left-medium-8px {
    padding-left: 8px !important;
  }
  .padding-medium-8px {
    padding: 8px !important;
  }
  .margin-right-medium-8px {
    margin-right: 8px !important;
  }
  .margin-medium-8px {
    margin: 8px !important;
  }
  .padding-right-medium-8px {
    padding-right: 8px !important;
  }
  .padding-medium-8px {
    padding: 8px !important;
  }
  .margin-top-medium-10px {
    margin-top: 10px !important;
  }
  .margin-medium-10px {
    margin: 10px !important;
  }
  .padding-top-medium-10px {
    padding-top: 10px !important;
  }
  .padding-medium-10px {
    padding: 10px !important;
  }
  .margin-bottom-medium-10px {
    margin-bottom: 10px !important;
  }
  .margin-medium-10px {
    margin: 10px !important;
  }
  .padding-bottom-medium-10px {
    padding-bottom: 10px !important;
  }
  .padding-medium-10px {
    padding: 10px !important;
  }
  .margin-left-medium-10px {
    margin-left: 10px !important;
  }
  .margin-medium-10px {
    margin: 10px !important;
  }
  .padding-left-medium-10px {
    padding-left: 10px !important;
  }
  .padding-medium-10px {
    padding: 10px !important;
  }
  .margin-right-medium-10px {
    margin-right: 10px !important;
  }
  .margin-medium-10px {
    margin: 10px !important;
  }
  .padding-right-medium-10px {
    padding-right: 10px !important;
  }
  .padding-medium-10px {
    padding: 10px !important;
  }
  .margin-top-medium-12px {
    margin-top: 12px !important;
  }
  .margin-medium-12px {
    margin: 12px !important;
  }
  .padding-top-medium-12px {
    padding-top: 12px !important;
  }
  .padding-medium-12px {
    padding: 12px !important;
  }
  .margin-bottom-medium-12px {
    margin-bottom: 12px !important;
  }
  .margin-medium-12px {
    margin: 12px !important;
  }
  .padding-bottom-medium-12px {
    padding-bottom: 12px !important;
  }
  .padding-medium-12px {
    padding: 12px !important;
  }
  .margin-left-medium-12px {
    margin-left: 12px !important;
  }
  .margin-medium-12px {
    margin: 12px !important;
  }
  .padding-left-medium-12px {
    padding-left: 12px !important;
  }
  .padding-medium-12px {
    padding: 12px !important;
  }
  .margin-right-medium-12px {
    margin-right: 12px !important;
  }
  .margin-medium-12px {
    margin: 12px !important;
  }
  .padding-right-medium-12px {
    padding-right: 12px !important;
  }
  .padding-medium-12px {
    padding: 12px !important;
  }
  .margin-top-medium-15px {
    margin-top: 15px !important;
  }
  .margin-medium-15px {
    margin: 15px !important;
  }
  .padding-top-medium-15px {
    padding-top: 15px !important;
  }
  .padding-medium-15px {
    padding: 15px !important;
  }
  .margin-bottom-medium-15px {
    margin-bottom: 15px !important;
  }
  .margin-medium-15px {
    margin: 15px !important;
  }
  .padding-bottom-medium-15px {
    padding-bottom: 15px !important;
  }
  .padding-medium-15px {
    padding: 15px !important;
  }
  .margin-left-medium-15px {
    margin-left: 15px !important;
  }
  .margin-medium-15px {
    margin: 15px !important;
  }
  .padding-left-medium-15px {
    padding-left: 15px !important;
  }
  .padding-medium-15px {
    padding: 15px !important;
  }
  .margin-right-medium-15px {
    margin-right: 15px !important;
  }
  .margin-medium-15px {
    margin: 15px !important;
  }
  .padding-right-medium-15px {
    padding-right: 15px !important;
  }
  .padding-medium-15px {
    padding: 15px !important;
  }
  .margin-top-medium-16px {
    margin-top: 16px !important;
  }
  .margin-medium-16px {
    margin: 16px !important;
  }
  .padding-top-medium-16px {
    padding-top: 16px !important;
  }
  .padding-medium-16px {
    padding: 16px !important;
  }
  .margin-bottom-medium-16px {
    margin-bottom: 16px !important;
  }
  .margin-medium-16px {
    margin: 16px !important;
  }
  .padding-bottom-medium-16px {
    padding-bottom: 16px !important;
  }
  .padding-medium-16px {
    padding: 16px !important;
  }
  .margin-left-medium-16px {
    margin-left: 16px !important;
  }
  .margin-medium-16px {
    margin: 16px !important;
  }
  .padding-left-medium-16px {
    padding-left: 16px !important;
  }
  .padding-medium-16px {
    padding: 16px !important;
  }
  .margin-right-medium-16px {
    margin-right: 16px !important;
  }
  .margin-medium-16px {
    margin: 16px !important;
  }
  .padding-right-medium-16px {
    padding-right: 16px !important;
  }
  .padding-medium-16px {
    padding: 16px !important;
  }
  .margin-top-medium-20px {
    margin-top: 20px !important;
  }
  .margin-medium-20px {
    margin: 20px !important;
  }
  .padding-top-medium-20px {
    padding-top: 20px !important;
  }
  .padding-medium-20px {
    padding: 20px !important;
  }
  .margin-bottom-medium-20px {
    margin-bottom: 20px !important;
  }
  .margin-medium-20px {
    margin: 20px !important;
  }
  .padding-bottom-medium-20px {
    padding-bottom: 20px !important;
  }
  .padding-medium-20px {
    padding: 20px !important;
  }
  .margin-left-medium-20px {
    margin-left: 20px !important;
  }
  .margin-medium-20px {
    margin: 20px !important;
  }
  .padding-left-medium-20px {
    padding-left: 20px !important;
  }
  .padding-medium-20px {
    padding: 20px !important;
  }
  .margin-right-medium-20px {
    margin-right: 20px !important;
  }
  .margin-medium-20px {
    margin: 20px !important;
  }
  .padding-right-medium-20px {
    padding-right: 20px !important;
  }
  .padding-medium-20px {
    padding: 20px !important;
  }
  .margin-top-medium-24px {
    margin-top: 24px !important;
  }
  .margin-medium-24px {
    margin: 24px !important;
  }
  .padding-top-medium-24px {
    padding-top: 24px !important;
  }
  .padding-medium-24px {
    padding: 24px !important;
  }
  .margin-bottom-medium-24px {
    margin-bottom: 24px !important;
  }
  .margin-medium-24px {
    margin: 24px !important;
  }
  .padding-bottom-medium-24px {
    padding-bottom: 24px !important;
  }
  .padding-medium-24px {
    padding: 24px !important;
  }
  .margin-left-medium-24px {
    margin-left: 24px !important;
  }
  .margin-medium-24px {
    margin: 24px !important;
  }
  .padding-left-medium-24px {
    padding-left: 24px !important;
  }
  .padding-medium-24px {
    padding: 24px !important;
  }
  .margin-right-medium-24px {
    margin-right: 24px !important;
  }
  .margin-medium-24px {
    margin: 24px !important;
  }
  .padding-right-medium-24px {
    padding-right: 24px !important;
  }
  .padding-medium-24px {
    padding: 24px !important;
  }
  .margin-top-medium-25px {
    margin-top: 25px !important;
  }
  .margin-medium-25px {
    margin: 25px !important;
  }
  .padding-top-medium-25px {
    padding-top: 25px !important;
  }
  .padding-medium-25px {
    padding: 25px !important;
  }
  .margin-bottom-medium-25px {
    margin-bottom: 25px !important;
  }
  .margin-medium-25px {
    margin: 25px !important;
  }
  .padding-bottom-medium-25px {
    padding-bottom: 25px !important;
  }
  .padding-medium-25px {
    padding: 25px !important;
  }
  .margin-left-medium-25px {
    margin-left: 25px !important;
  }
  .margin-medium-25px {
    margin: 25px !important;
  }
  .padding-left-medium-25px {
    padding-left: 25px !important;
  }
  .padding-medium-25px {
    padding: 25px !important;
  }
  .margin-right-medium-25px {
    margin-right: 25px !important;
  }
  .margin-medium-25px {
    margin: 25px !important;
  }
  .padding-right-medium-25px {
    padding-right: 25px !important;
  }
  .padding-medium-25px {
    padding: 25px !important;
  }
  .margin-top-medium-30px {
    margin-top: 30px !important;
  }
  .margin-medium-30px {
    margin: 30px !important;
  }
  .padding-top-medium-30px {
    padding-top: 30px !important;
  }
  .padding-medium-30px {
    padding: 30px !important;
  }
  .margin-bottom-medium-30px {
    margin-bottom: 30px !important;
  }
  .margin-medium-30px {
    margin: 30px !important;
  }
  .padding-bottom-medium-30px {
    padding-bottom: 30px !important;
  }
  .padding-medium-30px {
    padding: 30px !important;
  }
  .margin-left-medium-30px {
    margin-left: 30px !important;
  }
  .margin-medium-30px {
    margin: 30px !important;
  }
  .padding-left-medium-30px {
    padding-left: 30px !important;
  }
  .padding-medium-30px {
    padding: 30px !important;
  }
  .margin-right-medium-30px {
    margin-right: 30px !important;
  }
  .margin-medium-30px {
    margin: 30px !important;
  }
  .padding-right-medium-30px {
    padding-right: 30px !important;
  }
  .padding-medium-30px {
    padding: 30px !important;
  }
  .margin-top-medium-32px {
    margin-top: 32px !important;
  }
  .margin-medium-32px {
    margin: 32px !important;
  }
  .padding-top-medium-32px {
    padding-top: 32px !important;
  }
  .padding-medium-32px {
    padding: 32px !important;
  }
  .margin-bottom-medium-32px {
    margin-bottom: 32px !important;
  }
  .margin-medium-32px {
    margin: 32px !important;
  }
  .padding-bottom-medium-32px {
    padding-bottom: 32px !important;
  }
  .padding-medium-32px {
    padding: 32px !important;
  }
  .margin-left-medium-32px {
    margin-left: 32px !important;
  }
  .margin-medium-32px {
    margin: 32px !important;
  }
  .padding-left-medium-32px {
    padding-left: 32px !important;
  }
  .padding-medium-32px {
    padding: 32px !important;
  }
  .margin-right-medium-32px {
    margin-right: 32px !important;
  }
  .margin-medium-32px {
    margin: 32px !important;
  }
  .padding-right-medium-32px {
    padding-right: 32px !important;
  }
  .padding-medium-32px {
    padding: 32px !important;
  }
  .margin-top-medium-35px {
    margin-top: 35px !important;
  }
  .margin-medium-35px {
    margin: 35px !important;
  }
  .padding-top-medium-35px {
    padding-top: 35px !important;
  }
  .padding-medium-35px {
    padding: 35px !important;
  }
  .margin-bottom-medium-35px {
    margin-bottom: 35px !important;
  }
  .margin-medium-35px {
    margin: 35px !important;
  }
  .padding-bottom-medium-35px {
    padding-bottom: 35px !important;
  }
  .padding-medium-35px {
    padding: 35px !important;
  }
  .margin-left-medium-35px {
    margin-left: 35px !important;
  }
  .margin-medium-35px {
    margin: 35px !important;
  }
  .padding-left-medium-35px {
    padding-left: 35px !important;
  }
  .padding-medium-35px {
    padding: 35px !important;
  }
  .margin-right-medium-35px {
    margin-right: 35px !important;
  }
  .margin-medium-35px {
    margin: 35px !important;
  }
  .padding-right-medium-35px {
    padding-right: 35px !important;
  }
  .padding-medium-35px {
    padding: 35px !important;
  }
  .margin-top-medium-40px {
    margin-top: 40px !important;
  }
  .margin-medium-40px {
    margin: 40px !important;
  }
  .padding-top-medium-40px {
    padding-top: 40px !important;
  }
  .padding-medium-40px {
    padding: 40px !important;
  }
  .margin-bottom-medium-40px {
    margin-bottom: 40px !important;
  }
  .margin-medium-40px {
    margin: 40px !important;
  }
  .padding-bottom-medium-40px {
    padding-bottom: 40px !important;
  }
  .padding-medium-40px {
    padding: 40px !important;
  }
  .margin-left-medium-40px {
    margin-left: 40px !important;
  }
  .margin-medium-40px {
    margin: 40px !important;
  }
  .padding-left-medium-40px {
    padding-left: 40px !important;
  }
  .padding-medium-40px {
    padding: 40px !important;
  }
  .margin-right-medium-40px {
    margin-right: 40px !important;
  }
  .margin-medium-40px {
    margin: 40px !important;
  }
  .padding-right-medium-40px {
    padding-right: 40px !important;
  }
  .padding-medium-40px {
    padding: 40px !important;
  }
  .margin-top-medium-45px {
    margin-top: 45px !important;
  }
  .margin-medium-45px {
    margin: 45px !important;
  }
  .padding-top-medium-45px {
    padding-top: 45px !important;
  }
  .padding-medium-45px {
    padding: 45px !important;
  }
  .margin-bottom-medium-45px {
    margin-bottom: 45px !important;
  }
  .margin-medium-45px {
    margin: 45px !important;
  }
  .padding-bottom-medium-45px {
    padding-bottom: 45px !important;
  }
  .padding-medium-45px {
    padding: 45px !important;
  }
  .margin-left-medium-45px {
    margin-left: 45px !important;
  }
  .margin-medium-45px {
    margin: 45px !important;
  }
  .padding-left-medium-45px {
    padding-left: 45px !important;
  }
  .padding-medium-45px {
    padding: 45px !important;
  }
  .margin-right-medium-45px {
    margin-right: 45px !important;
  }
  .margin-medium-45px {
    margin: 45px !important;
  }
  .padding-right-medium-45px {
    padding-right: 45px !important;
  }
  .padding-medium-45px {
    padding: 45px !important;
  }
  .margin-top-medium-48px {
    margin-top: 48px !important;
  }
  .margin-medium-48px {
    margin: 48px !important;
  }
  .padding-top-medium-48px {
    padding-top: 48px !important;
  }
  .padding-medium-48px {
    padding: 48px !important;
  }
  .margin-bottom-medium-48px {
    margin-bottom: 48px !important;
  }
  .margin-medium-48px {
    margin: 48px !important;
  }
  .padding-bottom-medium-48px {
    padding-bottom: 48px !important;
  }
  .padding-medium-48px {
    padding: 48px !important;
  }
  .margin-left-medium-48px {
    margin-left: 48px !important;
  }
  .margin-medium-48px {
    margin: 48px !important;
  }
  .padding-left-medium-48px {
    padding-left: 48px !important;
  }
  .padding-medium-48px {
    padding: 48px !important;
  }
  .margin-right-medium-48px {
    margin-right: 48px !important;
  }
  .margin-medium-48px {
    margin: 48px !important;
  }
  .padding-right-medium-48px {
    padding-right: 48px !important;
  }
  .padding-medium-48px {
    padding: 48px !important;
  }
  .margin-top-medium-50px {
    margin-top: 50px !important;
  }
  .margin-medium-50px {
    margin: 50px !important;
  }
  .padding-top-medium-50px {
    padding-top: 50px !important;
  }
  .padding-medium-50px {
    padding: 50px !important;
  }
  .margin-bottom-medium-50px {
    margin-bottom: 50px !important;
  }
  .margin-medium-50px {
    margin: 50px !important;
  }
  .padding-bottom-medium-50px {
    padding-bottom: 50px !important;
  }
  .padding-medium-50px {
    padding: 50px !important;
  }
  .margin-left-medium-50px {
    margin-left: 50px !important;
  }
  .margin-medium-50px {
    margin: 50px !important;
  }
  .padding-left-medium-50px {
    padding-left: 50px !important;
  }
  .padding-medium-50px {
    padding: 50px !important;
  }
  .margin-right-medium-50px {
    margin-right: 50px !important;
  }
  .margin-medium-50px {
    margin: 50px !important;
  }
  .padding-right-medium-50px {
    padding-right: 50px !important;
  }
  .padding-medium-50px {
    padding: 50px !important;
  }
  .margin-top-medium-60px {
    margin-top: 60px !important;
  }
  .margin-medium-60px {
    margin: 60px !important;
  }
  .padding-top-medium-60px {
    padding-top: 60px !important;
  }
  .padding-medium-60px {
    padding: 60px !important;
  }
  .margin-bottom-medium-60px {
    margin-bottom: 60px !important;
  }
  .margin-medium-60px {
    margin: 60px !important;
  }
  .padding-bottom-medium-60px {
    padding-bottom: 60px !important;
  }
  .padding-medium-60px {
    padding: 60px !important;
  }
  .margin-left-medium-60px {
    margin-left: 60px !important;
  }
  .margin-medium-60px {
    margin: 60px !important;
  }
  .padding-left-medium-60px {
    padding-left: 60px !important;
  }
  .padding-medium-60px {
    padding: 60px !important;
  }
  .margin-right-medium-60px {
    margin-right: 60px !important;
  }
  .margin-medium-60px {
    margin: 60px !important;
  }
  .padding-right-medium-60px {
    padding-right: 60px !important;
  }
  .padding-medium-60px {
    padding: 60px !important;
  }
  .margin-top-medium-64px {
    margin-top: 64px !important;
  }
  .margin-medium-64px {
    margin: 64px !important;
  }
  .padding-top-medium-64px {
    padding-top: 64px !important;
  }
  .padding-medium-64px {
    padding: 64px !important;
  }
  .margin-bottom-medium-64px {
    margin-bottom: 64px !important;
  }
  .margin-medium-64px {
    margin: 64px !important;
  }
  .padding-bottom-medium-64px {
    padding-bottom: 64px !important;
  }
  .padding-medium-64px {
    padding: 64px !important;
  }
  .margin-left-medium-64px {
    margin-left: 64px !important;
  }
  .margin-medium-64px {
    margin: 64px !important;
  }
  .padding-left-medium-64px {
    padding-left: 64px !important;
  }
  .padding-medium-64px {
    padding: 64px !important;
  }
  .margin-right-medium-64px {
    margin-right: 64px !important;
  }
  .margin-medium-64px {
    margin: 64px !important;
  }
  .padding-right-medium-64px {
    padding-right: 64px !important;
  }
  .padding-medium-64px {
    padding: 64px !important;
  }
  .margin-top-medium-65px {
    margin-top: 65px !important;
  }
  .margin-medium-65px {
    margin: 65px !important;
  }
  .padding-top-medium-65px {
    padding-top: 65px !important;
  }
  .padding-medium-65px {
    padding: 65px !important;
  }
  .margin-bottom-medium-65px {
    margin-bottom: 65px !important;
  }
  .margin-medium-65px {
    margin: 65px !important;
  }
  .padding-bottom-medium-65px {
    padding-bottom: 65px !important;
  }
  .padding-medium-65px {
    padding: 65px !important;
  }
  .margin-left-medium-65px {
    margin-left: 65px !important;
  }
  .margin-medium-65px {
    margin: 65px !important;
  }
  .padding-left-medium-65px {
    padding-left: 65px !important;
  }
  .padding-medium-65px {
    padding: 65px !important;
  }
  .margin-right-medium-65px {
    margin-right: 65px !important;
  }
  .margin-medium-65px {
    margin: 65px !important;
  }
  .padding-right-medium-65px {
    padding-right: 65px !important;
  }
  .padding-medium-65px {
    padding: 65px !important;
  }
  .margin-top-medium-90px {
    margin-top: 90px !important;
  }
  .margin-medium-90px {
    margin: 90px !important;
  }
  .padding-top-medium-90px {
    padding-top: 90px !important;
  }
  .padding-medium-90px {
    padding: 90px !important;
  }
  .margin-bottom-medium-90px {
    margin-bottom: 90px !important;
  }
  .margin-medium-90px {
    margin: 90px !important;
  }
  .padding-bottom-medium-90px {
    padding-bottom: 90px !important;
  }
  .padding-medium-90px {
    padding: 90px !important;
  }
  .margin-left-medium-90px {
    margin-left: 90px !important;
  }
  .margin-medium-90px {
    margin: 90px !important;
  }
  .padding-left-medium-90px {
    padding-left: 90px !important;
  }
  .padding-medium-90px {
    padding: 90px !important;
  }
  .margin-right-medium-90px {
    margin-right: 90px !important;
  }
  .margin-medium-90px {
    margin: 90px !important;
  }
  .padding-right-medium-90px {
    padding-right: 90px !important;
  }
  .padding-medium-90px {
    padding: 90px !important;
  }
  .margin-top-medium-120px {
    margin-top: 120px !important;
  }
  .margin-medium-120px {
    margin: 120px !important;
  }
  .padding-top-medium-120px {
    padding-top: 120px !important;
  }
  .padding-medium-120px {
    padding: 120px !important;
  }
  .margin-bottom-medium-120px {
    margin-bottom: 120px !important;
  }
  .margin-medium-120px {
    margin: 120px !important;
  }
  .padding-bottom-medium-120px {
    padding-bottom: 120px !important;
  }
  .padding-medium-120px {
    padding: 120px !important;
  }
  .margin-left-medium-120px {
    margin-left: 120px !important;
  }
  .margin-medium-120px {
    margin: 120px !important;
  }
  .padding-left-medium-120px {
    padding-left: 120px !important;
  }
  .padding-medium-120px {
    padding: 120px !important;
  }
  .margin-right-medium-120px {
    margin-right: 120px !important;
  }
  .margin-medium-120px {
    margin: 120px !important;
  }
  .padding-right-medium-120px {
    padding-right: 120px !important;
  }
  .padding-medium-120px {
    padding: 120px !important;
  }
  .margin-top-medium-180px {
    margin-top: 180px !important;
  }
  .margin-medium-180px {
    margin: 180px !important;
  }
  .padding-top-medium-180px {
    padding-top: 180px !important;
  }
  .padding-medium-180px {
    padding: 180px !important;
  }
  .margin-bottom-medium-180px {
    margin-bottom: 180px !important;
  }
  .margin-medium-180px {
    margin: 180px !important;
  }
  .padding-bottom-medium-180px {
    padding-bottom: 180px !important;
  }
  .padding-medium-180px {
    padding: 180px !important;
  }
  .margin-left-medium-180px {
    margin-left: 180px !important;
  }
  .margin-medium-180px {
    margin: 180px !important;
  }
  .padding-left-medium-180px {
    padding-left: 180px !important;
  }
  .padding-medium-180px {
    padding: 180px !important;
  }
  .margin-right-medium-180px {
    margin-right: 180px !important;
  }
  .margin-medium-180px {
    margin: 180px !important;
  }
  .padding-right-medium-180px {
    padding-right: 180px !important;
  }
  .padding-medium-180px {
    padding: 180px !important;
  }
}