[data-simplebar] {
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start; }

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit; }

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0; }

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch; }

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%;
  /* Not required for horizontal scroll to trigger */
  max-height: 100%;
  /* Needed for vertical scroll to trigger */
  scrollbar-width: none;
  -ms-overflow-style: none; }

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0; }

.simplebar-content:before,
.simplebar-content:after {
  content: ' ';
  display: table; }

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none; }

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  -ms-flex-positive: inherit;
      flex-grow: inherit;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 0;
      flex-basis: 0; }

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1; }

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden; }

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-user-select: none; }

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all; }

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px; }

.simplebar-scrollbar:before {
  position: absolute;
  content: '';
  background: black;
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity 0.2s linear; }

.simplebar-scrollbar.simplebar-visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 0.5;
  transition: opacity 0s linear; }

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px; }

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px; }

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px; }

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px; }

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto; }

/* Rtl support */
[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0; }

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll; }

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none; }

/* ==========================================================================
slick.js
========================================================================== */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: '';
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir='rtl'] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* default
-------------------------------------------------------------------------- */
/* in
-------------------------------------------------------------------------- */
/* out
-------------------------------------------------------------------------- */
/* in out
-------------------------------------------------------------------------- */
/* min-width
-------------------------------------------------------------------------- */
/* max-width
-------------------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
input,
textarea,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box; }

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

img,
svg,
iframe {
  vertical-align: top; }

button {
  font-family: inherit; }

html {
  font-size: 10px; }
  @media screen and (max-width: 1600px) {
    html {
      font-size: 0.625vw; } }
  @media screen and (max-width: 768px) {
    html {
      font-size: 2.66667vw; } }
  @supports (-webkit-touch-callout: none) {
    html {
      height: -webkit-fill-available; } }

body {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all;
  color: #000;
  background: #fff;
  font-family: Yakuhanjp, "Noto Sans JP", sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: calc(21 / 12);
  -webkit-font-smoothing: antialiased; }
  @supports (-webkit-touch-callout: none) {
    body {
      height: -webkit-fill-available; } }

a {
  outline: none;
  color: #000;
  text-decoration: underline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  @media screen and (min-width: 769px) {
    a:hover, a:active {
      text-decoration: none; } }

img {
  width: 100%;
  height: auto; }

button {
  cursor: pointer; }

.layout-content {
  background-color: #fff; }
  @media screen and (min-width: 769px) {
    .layout-content {
      width: 100%;
      max-width: 37.5rem;
      margin-left: auto;
      margin-right: auto;
      transform-origin: top center;
      scale: 1.32;
      border-right: 0.8rem solid #000;
      border-left: 0.8rem solid #000;
      box-sizing: content-box; } }

.layout-footer {
  margin-top: 12rem;
  padding-bottom: 1.6rem; }
  .layout-footer .footer-logo {
    width: 100%;
    max-width: 13rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    height: 13rem; }
    .layout-footer .footer-logo a {
      display: block;
      background-size: contain !important; }
      .layout-footer .footer-logo a:nth-of-type(1) {
        width: 100%;
        height: 100%;
        animation: rotate 6s linear infinite; }
      .layout-footer .footer-logo a:nth-of-type(2) {
        width: 9.6rem;
        height: 9.6rem;
        position: absolute;
        top: calc(50% - 4.8rem);
        left: calc(50% - 4.8rem); }
  .layout-footer .copy-light {
    margin-top: 5rem;
    font-size: 1.2rem;
    text-align: center; }

.layout-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%; }
  @media screen and (min-width: 769px) {
    .layout-header {
      z-index: 0;
      height: 0; } }
  @media screen and (min-width: 769px) {
    .layout-header::before {
      display: block;
      width: 100%;
      height: 100vh;
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: -1;
      background: url(../img/common/bg_grid.svg) top left/6.3rem 6.3rem #fff; } }
  .layout-header__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between;
    position: relative;
    z-index: 99;
    padding: 1rem 2rem;
    transition: background 0.3s cubic-bezier(0.23, 1, 0.32, 1); }
    @media screen and (min-width: 769px) {
      .layout-header__inner {
        width: 100%;
        max-width: 150rem;
        margin-left: auto;
        margin-right: auto;
        padding: 4rem 0 0; } }
  .layout-header .header-logo {
    width: 9.6rem;
    height: 4rem; }
    @media screen and (min-width: 769px) {
      .layout-header .header-logo {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        width: 33.8rem;
        height: 17rem;
        transform-origin: top left;
        scale: .8;
        background-image: linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem);
        background-position: top left, bottom left, top right, top left;
        background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
        background-size: 0.6rem 0.15rem, 0.6rem 0.15rem, 0.15rem 0.6rem, 0.15rem 0.6rem;
        background-color: #fff; }
        .layout-header .header-logo img {
          width: 27.8rem; } }
  .layout-header .header-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 6rem;
    height: 100%; }
    .layout-header .header-button button {
      width: 100%;
      height: 100%;
      display: block;
      position: relative;
      border: none;
      background: none;
      transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
      will-change: opacity; }
      @media (hover: hover) {
        .layout-header .header-button button:hover {
          opacity: .5; } }
      @media (hover: none) {
        .layout-header .header-button button:active {
          opacity: .5; } }
    .layout-header .header-button span {
      width: 2.3rem;
      height: 1px;
      position: absolute;
      left: calc(50% - 1.15rem);
      display: block;
      background-color: #000;
      transition: translate 0.3s cubic-bezier(0.23, 1, 0.32, 1), scale 0.3s cubic-bezier(0.23, 1, 0.32, 1), rotate 0.3s cubic-bezier(0.23, 1, 0.32, 1);
      will-change: translate, scale, rotate; }
      .layout-header .header-button span:nth-of-type(1) {
        top: 2.2rem; }
      .layout-header .header-button span:nth-of-type(2) {
        top: calc(50% - 0.5px); }
      .layout-header .header-button span:nth-of-type(3) {
        top: 3.8rem; }
  .layout-header .header-nav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: calc(100dvh - 6rem);
    margin-top: 6rem;
    background: url(../img/common/bg_grid.svg) top left/6.3rem 6.3rem #fff;
    transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1), visibility 0.3s cubic-bezier(0.23, 1, 0.32, 1);
    will-change: opacity; }
    @media screen and (min-width: 769px) {
      .layout-header .header-nav {
        opacity: 1;
        visibility: visible;
        height: 100vh;
        margin-top: 0;
        background: none; } }
  .layout-header .list-header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 1rem;
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 769px) {
      .layout-header .list-header {
        position: absolute;
        top: calc(50% - 25rem);
        left: calc(50% + 48rem); } }
  @media screen and (min-width: 769px) and (min-aspect-ratio: 16 / 9) {
    .layout-header .list-header {
      top: 14.81481vh;
      transform-origin: top left;
      scale: 1.3; } }
    .layout-header .list-header__item a {
      display: block;
      padding: 0 1rem;
      font-size: 3.4rem;
      line-height: 1.4;
      font-family: Yakuhanjp, "din-condensed", sans-serif;
      text-decoration: none; }

@media screen and (min-width: 769px) and (min-aspect-ratio: 16 / 9) {
  .layout-header .list-header__item a {
    font-size: 3.14815vh; } }
    .layout-header .list-header::after {
      display: block;
      width: 40.2rem;
      height: 50.6rem;
      content: "";
      position: absolute;
      top: calc(50% - 25.3rem);
      left: calc(50% - 20.1rem);
      z-index: -1;
      background: url(../img/common/bg_nav.svg) no-repeat center center/contain; }

@media screen and (min-width: 769px) and (min-aspect-ratio: 16 / 9) {
  .layout-header .list-header::after {
    width: 37.22222vh;
    height: 46.85185vh;
    top: calc(50% - 23.42593vh);
    left: calc(50% - 18.61111vh); } }
  .layout-header .header-icon {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    position: fixed;
    right: 5rem;
    bottom: 5rem;
    width: 23.4rem;
    height: 23.4rem;
    transform-origin: right bottom;
    scale: .8;
    background-image: linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem);
    background-position: top left, bottom left, top right, top left;
    background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
    background-size: 0.6rem 0.15rem, 0.6rem 0.15rem, 0.15rem 0.6rem, 0.15rem 0.6rem;
    background-color: #fff; }

@media screen and (min-width: 769px) and (min-aspect-ratio: 16 / 9) {
  .layout-header .header-icon {
    width: 21.66667vh;
    height: 21.66667vh;
    scale: 1; } }
    .layout-header .header-icon::before {
      display: block;
      content: "";
      position: absolute;
      inset: 0;
      background: url(../img/home/ring_text.svg) no-repeat center center/contain;
      animation: rotate 6s linear infinite; }
    .layout-header .header-icon img {
      width: 13.2rem;
      height: 13.2rem; }

@media screen and (min-width: 769px) and (min-aspect-ratio: 16 / 9) {
  .layout-header .header-icon img {
    width: 12.22222vh;
    height: 12.22222vh; } }
  .layout-header .header-ticker {
    position: fixed;
    top: 0;
    left: calc(50% - 25rem);
    width: 100%;
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
    height: 100vh; }
    .layout-header .header-ticker__content {
      position: absolute;
      bottom: 0;
      overflow: hidden;
      width: 100vh;
      background-image: linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to right, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem), linear-gradient(to bottom, #C3C3C3, #C3C3C3 0.15rem, transparent 0.15rem, transparent 0.3rem);
      background-position: top left, bottom left, top right, top left;
      background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
      background-size: 0.6rem 0.15rem, 0.6rem 0.15rem, 0.15rem 0.6rem, 0.15rem 0.6rem;
      background-color: #fff;
      padding: 1.6rem; }
      .layout-header .header-ticker__content-inner {
        display: -ms-flexbox;
        display: flex;
        width: 100vh;
        animation: text-ticker 30s linear infinite;
        will-change: translate; }

@keyframes text-ticker {
  0% {
    translate: 0% 0; }
  100% {
    translate: -82.8rem 0; } }
        .layout-header .header-ticker__content-inner span {
          margin-top: -0.6rem; }
      .layout-header .header-ticker__content:nth-of-type(1) {
        left: -3rem;
        transform-origin: bottom left;
        rotate: -90deg; }
      .layout-header .header-ticker__content:nth-of-type(2) {
        right: -3rem;
        transform-origin: right bottom;
        rotate: 90deg; }
    .layout-header .header-ticker__text {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      font-size: 4rem;
      line-height: 1;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      .layout-header .header-ticker__text::after {
        display: block;
        width: 5.5rem;
        height: 5.5rem;
        content: "";
        -ms-flex-negative: 0;
            flex-shrink: 0;
        margin: 0 2rem;
        background: url(../img/common/logo_innovations.svg) no-repeat center center/contain; }

@media screen and (max-width: 768px) {
  body.is-scrolled .layout-header__inner {
    background-color: #fff; } }

@media screen and (max-width: 768px) {
  body.on-hamburger {
    position: fixed;
    right: 0;
    left: 0; } }

@media screen and (max-width: 768px) {
  body.on-hamburger .layout-header__inner {
    background-color: #fff; } }

body.on-hamburger .header-button span:nth-of-type(1) {
  translate: 0 0.8rem;
  rotate: 45deg; }

body.on-hamburger .header-button span:nth-of-type(2) {
  top: calc(50% - 0.5px);
  scale: 0 1; }

body.on-hamburger .header-button span:nth-of-type(3) {
  translate: 0 -0.8rem;
  rotate: -45deg; }

body.on-hamburger .header-nav {
  opacity: 1;
  visibility: visible; }

@keyframes order-random-1 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 0;
        order: 0; }
  50% {
    -ms-flex-order: 8;
        order: 8; }
  75% {
    -ms-flex-order: 28;
        order: 28; }
  100% {
    -ms-flex-order: 28;
        order: 28; } }

@keyframes order-random-2 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 6;
        order: 6; }
  50% {
    -ms-flex-order: 22;
        order: 22; }
  75% {
    -ms-flex-order: 22;
        order: 22; }
  100% {
    -ms-flex-order: 14;
        order: 14; } }

@keyframes order-random-3 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 28;
        order: 28; }
  50% {
    -ms-flex-order: 28;
        order: 28; }
  75% {
    -ms-flex-order: 8;
        order: 8; }
  100% {
    -ms-flex-order: 27;
        order: 27; } }

@keyframes order-random-4 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 11;
        order: 11; }
  50% {
    -ms-flex-order: 15;
        order: 15; }
  75% {
    -ms-flex-order: 10;
        order: 10; }
  100% {
    -ms-flex-order: 22;
        order: 22; } }

@keyframes order-random-5 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 27;
        order: 27; }
  50% {
    -ms-flex-order: 5;
        order: 5; }
  75% {
    -ms-flex-order: 2;
        order: 2; }
  100% {
    -ms-flex-order: 26;
        order: 26; } }

@keyframes order-random-6 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 14;
        order: 14; }
  50% {
    -ms-flex-order: 9;
        order: 9; }
  75% {
    -ms-flex-order: 18;
        order: 18; }
  100% {
    -ms-flex-order: 10;
        order: 10; } }

@keyframes order-random-7 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 19;
        order: 19; }
  50% {
    -ms-flex-order: 27;
        order: 27; }
  75% {
    -ms-flex-order: 21;
        order: 21; }
  100% {
    -ms-flex-order: 16;
        order: 16; } }

@keyframes order-random-8 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 20;
        order: 20; }
  50% {
    -ms-flex-order: 2;
        order: 2; }
  75% {
    -ms-flex-order: 26;
        order: 26; }
  100% {
    -ms-flex-order: 9;
        order: 9; } }

@keyframes order-random-9 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 26;
        order: 26; }
  50% {
    -ms-flex-order: 2;
        order: 2; }
  75% {
    -ms-flex-order: 9;
        order: 9; }
  100% {
    -ms-flex-order: 6;
        order: 6; } }

@keyframes order-random-10 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 23;
        order: 23; }
  50% {
    -ms-flex-order: 25;
        order: 25; }
  75% {
    -ms-flex-order: 25;
        order: 25; }
  100% {
    -ms-flex-order: 28;
        order: 28; } }

@keyframes order-random-11 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 26;
        order: 26; }
  50% {
    -ms-flex-order: 13;
        order: 13; }
  75% {
    -ms-flex-order: 14;
        order: 14; }
  100% {
    -ms-flex-order: 25;
        order: 25; } }

@keyframes order-random-12 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 0;
        order: 0; }
  50% {
    -ms-flex-order: 12;
        order: 12; }
  75% {
    -ms-flex-order: 27;
        order: 27; }
  100% {
    -ms-flex-order: 10;
        order: 10; } }

@keyframes order-random-13 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 15;
        order: 15; }
  50% {
    -ms-flex-order: 23;
        order: 23; }
  75% {
    -ms-flex-order: 19;
        order: 19; }
  100% {
    -ms-flex-order: 1;
        order: 1; } }

@keyframes order-random-14 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 15;
        order: 15; }
  50% {
    -ms-flex-order: 0;
        order: 0; }
  75% {
    -ms-flex-order: 18;
        order: 18; }
  100% {
    -ms-flex-order: 24;
        order: 24; } }

@keyframes order-random-15 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 5;
        order: 5; }
  50% {
    -ms-flex-order: 18;
        order: 18; }
  75% {
    -ms-flex-order: 7;
        order: 7; }
  100% {
    -ms-flex-order: 2;
        order: 2; } }

@keyframes order-random-16 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 8;
        order: 8; }
  50% {
    -ms-flex-order: 1;
        order: 1; }
  75% {
    -ms-flex-order: 10;
        order: 10; }
  100% {
    -ms-flex-order: 3;
        order: 3; } }

@keyframes order-random-17 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 9;
        order: 9; }
  50% {
    -ms-flex-order: 17;
        order: 17; }
  75% {
    -ms-flex-order: 12;
        order: 12; }
  100% {
    -ms-flex-order: 27;
        order: 27; } }

@keyframes order-random-18 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 19;
        order: 19; }
  50% {
    -ms-flex-order: 9;
        order: 9; }
  75% {
    -ms-flex-order: 0;
        order: 0; }
  100% {
    -ms-flex-order: 7;
        order: 7; } }

@keyframes order-random-19 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 21;
        order: 21; }
  50% {
    -ms-flex-order: 23;
        order: 23; }
  75% {
    -ms-flex-order: 22;
        order: 22; }
  100% {
    -ms-flex-order: 16;
        order: 16; } }

@keyframes order-random-20 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 6;
        order: 6; }
  50% {
    -ms-flex-order: 13;
        order: 13; }
  75% {
    -ms-flex-order: 29;
        order: 29; }
  100% {
    -ms-flex-order: 28;
        order: 28; } }

@keyframes order-random-21 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 28;
        order: 28; }
  50% {
    -ms-flex-order: 11;
        order: 11; }
  75% {
    -ms-flex-order: 15;
        order: 15; }
  100% {
    -ms-flex-order: 25;
        order: 25; } }

@keyframes order-random-22 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 15;
        order: 15; }
  50% {
    -ms-flex-order: 3;
        order: 3; }
  75% {
    -ms-flex-order: 29;
        order: 29; }
  100% {
    -ms-flex-order: 3;
        order: 3; } }

@keyframes order-random-23 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 24;
        order: 24; }
  50% {
    -ms-flex-order: 16;
        order: 16; }
  75% {
    -ms-flex-order: 13;
        order: 13; }
  100% {
    -ms-flex-order: 12;
        order: 12; } }

@keyframes order-random-24 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 9;
        order: 9; }
  50% {
    -ms-flex-order: 11;
        order: 11; }
  75% {
    -ms-flex-order: 8;
        order: 8; }
  100% {
    -ms-flex-order: 7;
        order: 7; } }

@keyframes order-random-25 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 7;
        order: 7; }
  50% {
    -ms-flex-order: 26;
        order: 26; }
  75% {
    -ms-flex-order: 17;
        order: 17; }
  100% {
    -ms-flex-order: 18;
        order: 18; } }

@keyframes order-random-26 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 12;
        order: 12; }
  50% {
    -ms-flex-order: 9;
        order: 9; }
  75% {
    -ms-flex-order: 25;
        order: 25; }
  100% {
    -ms-flex-order: 8;
        order: 8; } }

@keyframes order-random-27 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 16;
        order: 16; }
  50% {
    -ms-flex-order: 13;
        order: 13; }
  75% {
    -ms-flex-order: 6;
        order: 6; }
  100% {
    -ms-flex-order: 27;
        order: 27; } }

@keyframes order-random-28 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 8;
        order: 8; }
  50% {
    -ms-flex-order: 27;
        order: 27; }
  75% {
    -ms-flex-order: 20;
        order: 20; }
  100% {
    -ms-flex-order: 2;
        order: 2; } }

@keyframes order-random-29 {
  0% {
    -ms-flex-order: 0;
        order: 0; }
  25% {
    -ms-flex-order: 13;
        order: 13; }
  50% {
    -ms-flex-order: 19;
        order: 19; }
  75% {
    -ms-flex-order: 18;
        order: 18; }
  100% {
    -ms-flex-order: 2;
        order: 2; } }

.matrix-text {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: fit-content;
  margin-right: auto;
  margin-left: auto; }
  .matrix-text > h2, .matrix-text p {
    opacity: 0;
    display: inline-block; }
  .matrix-text > span:nth-of-type(1) {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    overflow: hidden;
    width: 0;
    text-align: left;
    white-space: nowrap; }
  .matrix-text > span:nth-of-type(2) {
    position: absolute;
    bottom: 0;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    z-index: -1;
    overflow: hidden;
    width: 0;
    white-space: nowrap; }

#home .hero__heading .matrix-text{
    font-family: Yakuhanjp, "din-condensed", sans-serif;
    font-weight: 700;
}

.glitch-image,
.glitch-slick {
  position: relative;
  overflow: hidden;
  background: no-repeat center center / 0; }

.glitch-image::before, .glitch-image::after,
.glitch-image div,
.slick-current .glitch-slick::before,
.slick-current .glitch-slick::after,
.slick-current .glitch-slick div {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: inherit;
  background-size: contain; }

.glitch-image::before,
.slick-current .glitch-slick::before {
  animation: glitch-before 3s linear infinite alternate both;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  content: ""; }

@keyframes glitch-before {
  2% {
    -webkit-clip-path: polygon(0% 32.9722%, 100% 32.9722%, 100% 42.11464%, 0% 42.11464%);
            clip-path: polygon(0% 32.9722%, 100% 32.9722%, 100% 42.11464%, 0% 42.11464%);
    transform: translate(-5.46315%, 0.04391%); }
  4% {
    -webkit-clip-path: polygon(0% 73.00788%, 100% 73.00788%, 100% 79.5881%, 0% 79.5881%);
            clip-path: polygon(0% 73.00788%, 100% 73.00788%, 100% 79.5881%, 0% 79.5881%);
    transform: translate(-3.58199%, 0.32952%); }
  6% {
    -webkit-clip-path: polygon(0% 70.80887%, 100% 70.80887%, 100% 79.83389%, 0% 79.83389%);
            clip-path: polygon(0% 70.80887%, 100% 70.80887%, 100% 79.83389%, 0% 79.83389%);
    transform: translate(-2.99324%, -0.18318%); }
  8% {
    -webkit-clip-path: polygon(0% 68.22343%, 100% 68.22343%, 100% 75.57383%, 0% 75.57383%);
            clip-path: polygon(0% 68.22343%, 100% 68.22343%, 100% 75.57383%, 0% 75.57383%);
    transform: translate(2.33895%, -0.43768%); }
  10% {
    -webkit-clip-path: polygon(0% 16.11996%, 100% 16.11996%, 100% 21.69828%, 0% 21.69828%);
            clip-path: polygon(0% 16.11996%, 100% 16.11996%, 100% 21.69828%, 0% 21.69828%);
    transform: translate(2.74787%, -0.42102%); }
  12% {
    -webkit-clip-path: polygon(0% 68.96907%, 100% 68.96907%, 100% 74.65495%, 0% 74.65495%);
            clip-path: polygon(0% 68.96907%, 100% 68.96907%, 100% 74.65495%, 0% 74.65495%);
    transform: translate(-5.12223%, 0.31534%); }
  14% {
    -webkit-clip-path: polygon(0% 27.5697%, 100% 27.5697%, 100% 31.90946%, 0% 31.90946%);
            clip-path: polygon(0% 27.5697%, 100% 27.5697%, 100% 31.90946%, 0% 31.90946%);
    transform: translate(1.8008%, 0.41319%); }
  16% {
    -webkit-clip-path: polygon(0% 58.0786%, 100% 58.0786%, 100% 67.80597%, 0% 67.80597%);
            clip-path: polygon(0% 58.0786%, 100% 58.0786%, 100% 67.80597%, 0% 67.80597%);
    transform: translate(0.66845%, -0.24943%); }
  18% {
    -webkit-clip-path: polygon(0% 57.24442%, 100% 57.24442%, 100% 66.50747%, 0% 66.50747%);
            clip-path: polygon(0% 57.24442%, 100% 57.24442%, 100% 66.50747%, 0% 66.50747%);
    transform: translate(2.66461%, -0.42268%); }
  20%, 100% {
    -webkit-clip-path: none;
            clip-path: none;
    transform: none; } }

.glitch-image::after,
.slick-current .glitch-slick::after {
  animation: glitch-after 3s linear infinite alternate both;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  content: ""; }

@keyframes glitch-after {
  2% {
    -webkit-clip-path: polygon(0% 58.55671%, 100% 58.55671%, 100% 61.91755%, 0% 61.91755%);
            clip-path: polygon(0% 58.55671%, 100% 58.55671%, 100% 61.91755%, 0% 61.91755%);
    transform: translate(-6.82793%, 0.35518%); }
  4% {
    -webkit-clip-path: polygon(0% 54.1672%, 100% 54.1672%, 100% 58.01549%, 0% 58.01549%);
            clip-path: polygon(0% 54.1672%, 100% 54.1672%, 100% 58.01549%, 0% 58.01549%);
    transform: translate(-5.63328%, -0.28361%); }
  6% {
    -webkit-clip-path: polygon(0% 26.76778%, 100% 26.76778%, 100% 32.99961%, 0% 32.99961%);
            clip-path: polygon(0% 26.76778%, 100% 26.76778%, 100% 32.99961%, 0% 32.99961%);
    transform: translate(-4.88376%, -0.47321%); }
  8% {
    -webkit-clip-path: polygon(0% 53.50925%, 100% 53.50925%, 100% 56.02637%, 0% 56.02637%);
            clip-path: polygon(0% 53.50925%, 100% 53.50925%, 100% 56.02637%, 0% 56.02637%);
    transform: translate(-1.7264%, 0.25849%); }
  10% {
    -webkit-clip-path: polygon(0% 5.7846%, 100% 5.7846%, 100% 11.04383%, 0% 11.04383%);
            clip-path: polygon(0% 5.7846%, 100% 5.7846%, 100% 11.04383%, 0% 11.04383%);
    transform: translate(-2.46666%, 0.0326%); }
  12% {
    -webkit-clip-path: polygon(0% 10.31803%, 100% 10.31803%, 100% 14.57787%, 0% 14.57787%);
            clip-path: polygon(0% 10.31803%, 100% 10.31803%, 100% 14.57787%, 0% 14.57787%);
    transform: translate(2.90127%, -0.43391%); }
  14% {
    -webkit-clip-path: polygon(0% 12.94379%, 100% 12.94379%, 100% 16.08824%, 0% 16.08824%);
            clip-path: polygon(0% 12.94379%, 100% 12.94379%, 100% 16.08824%, 0% 16.08824%);
    transform: translate(-3.17813%, 0.47982%); }
  16% {
    -webkit-clip-path: polygon(0% 54.17974%, 100% 54.17974%, 100% 58.1364%, 0% 58.1364%);
            clip-path: polygon(0% 54.17974%, 100% 54.17974%, 100% 58.1364%, 0% 58.1364%);
    transform: translate(-0.24549%, 0.3428%); }
  18% {
    -webkit-clip-path: polygon(0% 24.58216%, 100% 24.58216%, 100% 31.36949%, 0% 31.36949%);
            clip-path: polygon(0% 24.58216%, 100% 24.58216%, 100% 31.36949%, 0% 31.36949%);
    transform: translate(-2.18318%, -0.22363%); }
  20%, 100% {
    -webkit-clip-path: none;
            clip-path: none;
    transform: none; } }

.glitch-image div,
.slick-current .glitch-slick div {
  mix-blend-mode: screen; }
  .glitch-image div span,
  .slick-current .glitch-slick div span {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    mix-blend-mode: multiply;
    -webkit-mask: no-repeat center center / contain;
            mask: no-repeat center center / contain; }
  .glitch-image div:nth-of-type(1),
  .slick-current .glitch-slick div:nth-of-type(1) {
    animation: rgb-shift-r 3s steps(1, jump-end) infinite alternate both; }

@keyframes rgb-shift-r {
  0.002% {
    transform: translate(1.25573%, -0.06945%); }
  2.002% {
    transform: translate(-0.37238%, -0.03666%); }
  4.002% {
    transform: translate(-1.87417%, -0.4819%); }
  6.002% {
    transform: translate(-1.43856%, 0.45901%); }
  8.002% {
    transform: translate(-0.90311%, 0.12283%); }
  10.002% {
    transform: translate(1.58624%, -0.24124%); }
  12.002% {
    transform: translate(0.27507%, -0.44021%); }
  14.002% {
    transform: translate(1.97307%, 0.40201%); }
  16.002% {
    transform: translate(-1.38583%, 0.40276%); }
  18.002% {
    transform: translate(-1.47193%, 0.23902%); }
  20%, 100% {
    transform: none; } }
    .glitch-image div:nth-of-type(1) span,
    .slick-current .glitch-slick div:nth-of-type(1) span {
      background-color: #f00; }
  .glitch-image div:nth-of-type(2),
  .slick-current .glitch-slick div:nth-of-type(2) {
    animation: rgb-shift-g 3s steps(1, jump-end) infinite alternate both; }

@keyframes rgb-shift-g {
  0.002% {
    transform: translate(-0.98759%, -0.14546%); }
  2.002% {
    transform: translate(-1.06588%, -0.31443%); }
  4.002% {
    transform: translate(-0.74322%, 0.27983%); }
  6.002% {
    transform: translate(1.22999%, -0.399%); }
  8.002% {
    transform: translate(1.74811%, -0.03005%); }
  10.002% {
    transform: translate(0.3479%, -0.47185%); }
  12.002% {
    transform: translate(-1.82374%, 0.09621%); }
  14.002% {
    transform: translate(-1.01911%, 0.3119%); }
  16.002% {
    transform: translate(1.58557%, 0.31979%); }
  18.002% {
    transform: translate(1.01906%, 0.44584%); }
  20%, 100% {
    transform: none; } }
    .glitch-image div:nth-of-type(2) span,
    .slick-current .glitch-slick div:nth-of-type(2) span {
      background-color: #0f0; }
  .glitch-image div:nth-of-type(3),
  .slick-current .glitch-slick div:nth-of-type(3) {
    animation: rgb-shift-b 3s steps(1, jump-end) infinite alternate both; }

@keyframes rgb-shift-b {
  0.002% {
    transform: translate(-0.6933%, 0.04837%); }
  2.002% {
    transform: translate(-0.64184%, 0.31356%); }
  4.002% {
    transform: translate(1.55929%, -0.27051%); }
  6.002% {
    transform: translate(1.74103%, 0.30856%); }
  8.002% {
    transform: translate(0.87689%, 0.39728%); }
  10.002% {
    transform: translate(-0.91781%, -0.1866%); }
  12.002% {
    transform: translate(1.86364%, -0.30626%); }
  14.002% {
    transform: translate(1.53795%, 0.0329%); }
  16.002% {
    transform: translate(-1.96301%, 0.43209%); }
  18.002% {
    transform: translate(-0.95219%, 0.21487%); }
  20%, 100% {
    transform: none; } }
    .glitch-image div:nth-of-type(3) span,
    .slick-current .glitch-slick div:nth-of-type(3) span {
      background-color: #00f; }

@keyframes jitter-20-20-8 {
  100% {
    transform: translate(0px, 0px); }
  95% {
    transform: translate(-0.25px, 0.15px); }
  90% {
    transform: translate(1px, 0.4px); }
  85% {
    transform: translate(-0.45px, 0.15px); }
  80% {
    transform: translate(0.8px, -0.6px); }
  75% {
    transform: translate(2px, 1px); }
  70% {
    transform: translate(-0.9px, 0.6px); }
  65% {
    transform: translate(2.8px, -0.7px); }
  60% {
    transform: translate(0.4px, 1.6px); }
  55% {
    transform: translate(3.6px, -1.35px); }
  50% {
    transform: translate(-3.5px, -1.5px); }
  45% {
    transform: translate(0px, -1.65px); }
  40% {
    transform: translate(1.2px, 2.4px); }
  35% {
    transform: translate(-1.95px, 2.6px); }
  30% {
    transform: translate(5.6px, 1.4px); }
  25% {
    transform: translate(6.75px, -1.5px); }
  20% {
    transform: translate(8px, -1.6px); }
  15% {
    transform: translate(0px, 3.4px); }
  10% {
    transform: translate(8.1px, -2.7px); }
  5% {
    transform: translate(0.95px, -1.9px); } }

@keyframes jitter-20-21-8 {
  100% {
    transform: translate(0px, 0px); }
  95% {
    transform: translate(-0.475px, 0.15px); }
  90% {
    transform: translate(-0.95px, 0.3px); }
  85% {
    transform: translate(-0.075px, -0.15px); }
  80% {
    transform: translate(1.9px, -0.6px); }
  75% {
    transform: translate(1.125px, 0.25px); }
  70% {
    transform: translate(2.85px, 0.9px); }
  65% {
    transform: translate(2.625px, -1.05px); }
  60% {
    transform: translate(2.2px, 1.2px); }
  55% {
    transform: translate(-0.225px, 1.35px); }
  50% {
    transform: translate(0.25px, -0.5px); }
  45% {
    transform: translate(3.025px, -0.55px); }
  40% {
    transform: translate(-2.1px, 0px); }
  35% {
    transform: translate(-4.225px, -1.3px); }
  30% {
    transform: translate(-0.35px, 1.4px); }
  25% {
    transform: translate(-1.875px, -0.75px); }
  20% {
    transform: translate(4.4px, 0px); }
  15% {
    transform: translate(-7.225px, 2.55px); }
  10% {
    transform: translate(-2.25px, 2.7px); }
  5% {
    transform: translate(9.975px, -1.9px); } }

@keyframes jitter-20-22-8 {
  100% {
    transform: translate(0px, 0px); }
  95% {
    transform: translate(0.45px, 0.15px); }
  90% {
    transform: translate(0.7px, 0px); }
  85% {
    transform: translate(0.75px, 0.45px); }
  80% {
    transform: translate(-1px, 0px); }
  75% {
    transform: translate(-1px, 0.75px); }
  70% {
    transform: translate(2.7px, 1.2px); }
  65% {
    transform: translate(-1.75px, 1.05px); }
  60% {
    transform: translate(-2.4px, -0.8px); }
  55% {
    transform: translate(4.5px, 0px); }
  50% {
    transform: translate(-1px, 0px); }
  45% {
    transform: translate(-2.2px, 0px); }
  40% {
    transform: translate(3px, 1.8px); }
  35% {
    transform: translate(-1.3px, 1.3px); }
  30% {
    transform: translate(5.6px, -1.4px); }
  25% {
    transform: translate(0px, -0.75px); }
  20% {
    transform: translate(-1.6px, 2.4px); }
  15% {
    transform: translate(7.65px, 1.7px); }
  10% {
    transform: translate(-0.9px, 0.9px); }
  5% {
    transform: translate(-5.7px, -2.85px); } }

@keyframes jitter-20-23-8 {
  100% {
    transform: translate(0px, 0px); }
  95% {
    transform: translate(0.425px, 0.1px); }
  90% {
    transform: translate(0.65px, 0.2px); }
  85% {
    transform: translate(-0.825px, -0.45px); }
  80% {
    transform: translate(-0.9px, 0.8px); }
  75% {
    transform: translate(-1.375px, -0.25px); }
  70% {
    transform: translate(1.95px, -0.3px); }
  65% {
    transform: translate(3.325px, 1.4px); }
  60% {
    transform: translate(0.2px, -0.4px); }
  55% {
    transform: translate(5.175px, 0px); }
  50% {
    transform: translate(0.25px, -0.5px); }
  45% {
    transform: translate(-0.825px, -1.1px); }
  40% {
    transform: translate(-0.3px, 0.6px); }
  35% {
    transform: translate(0.325px, 1.95px); }
  30% {
    transform: translate(1.05px, -2.1px); }
  25% {
    transform: translate(-1.125px, 1.5px); }
  20% {
    transform: translate(-8.4px, 3.2px); }
  15% {
    transform: translate(8.075px, 3.4px); }
  10% {
    transform: translate(4.05px, 0.9px); }
  5% {
    transform: translate(5.225px, 0.95px); } }

@keyframes jitter-20-24-8 {
  100% {
    transform: translate(0px, 0px); }
  95% {
    transform: translate(-0.15px, 0px); }
  90% {
    transform: translate(0.8px, 0.3px); }
  85% {
    transform: translate(-1.35px, -0.15px); }
  80% {
    transform: translate(0.4px, 0px); }
  75% {
    transform: translate(1.75px, 0.25px); }
  70% {
    transform: translate(-2.7px, 0.9px); }
  65% {
    transform: translate(2.8px, 1.4px); }
  60% {
    transform: translate(-0.8px, 1.6px); }
  55% {
    transform: translate(-2.25px, -1.35px); }
  50% {
    transform: translate(-4.5px, -0.5px); }
  45% {
    transform: translate(-0.55px, -1.1px); }
  40% {
    transform: translate(-6px, 1.2px); }
  35% {
    transform: translate(3.25px, 1.95px); }
  30% {
    transform: translate(8.4px, 0px); }
  25% {
    transform: translate(5.25px, 1.5px); }
  20% {
    transform: translate(3.2px, 1.6px); }
  15% {
    transform: translate(-5.1px, -0.85px); }
  10% {
    transform: translate(-5.4px, -2.7px); }
  5% {
    transform: translate(1.9px, -1.9px); } }

@keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.glitch-text {
  position: relative;
  overflow: hidden;
  z-index: 1; }
  .glitch-text:before {
    display: block;
    width: 105%;
    height: 55%;
    content: "";
    position: absolute;
    bottom: -0.1rem;
    left: 50%;
    translate: -50%;
    z-index: -1;
    opacity: 0;
    background: #000;
    transition: translate 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.6s, scale 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.6s, opacity 0.6s cubic-bezier(0.23, 1, 0.32, 1);
    will-change: translate, scale, opacity; }
  .glitch-text__inner {
    position: relative;
    color: #000;
    transition: color 0.6s cubic-bezier(0.23, 1, 0.32, 1); }
    .glitch-text__inner div:has(span) {
      width: 100%;
      height: 20%;
      display: none;
      position: absolute;
      overflow: hidden;
      -webkit-backface-visibility: hidden; }
      .glitch-text__inner div:has(span) span {
        position: absolute;
        left: 50%;
        translate: -50% 0;
        width: 100%; }
    .glitch-text__inner div:has(span):nth-child(6) {
      top: 100%; }
      .glitch-text__inner div:has(span):nth-child(6) span {
        top: -500%; }
    .glitch-text__inner div:has(span):nth-child(5) {
      top: 80%; }
      .glitch-text__inner div:has(span):nth-child(5) span {
        top: -400%; }
    .glitch-text__inner div:has(span):nth-child(4) {
      top: 60%; }
      .glitch-text__inner div:has(span):nth-child(4) span {
        top: -300%; }
    .glitch-text__inner div:has(span):nth-child(3) {
      top: 40%; }
      .glitch-text__inner div:has(span):nth-child(3) span {
        top: -200%; }
    .glitch-text__inner div:has(span):nth-child(2) {
      top: 20%; }
      .glitch-text__inner div:has(span):nth-child(2) span {
        top: -100%; }
  .glitch-text--bg-black .glitch-text__inner {
    color: #fff; }
  @media (hover: hover) {
    .glitch-text:hover {
      color: #fff; }
      .glitch-text:hover::before {
        translate: -50% -50%;
        scale: 1 2;
        opacity: 1;
        transition: translate 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0s, scale 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0s, opacity 0.6s cubic-bezier(0.23, 1, 0.32, 1); }
      .glitch-text:hover .glitch-text__inner {
        color: #fff; }
        .glitch-text:hover .glitch-text__inner div:not(:has(span)) {
          animation: fade-in .8s both; }
        .glitch-text:hover .glitch-text__inner div:has(span) {
          display: block; }
        .glitch-text:hover .glitch-text__inner div:has(span):nth-child(6) {
          animation: jitter-20-25-8 0.3s both; }
        .glitch-text:hover .glitch-text__inner div:has(span):nth-child(5) {
          animation: jitter-20-24-8 0.3s both; }
        .glitch-text:hover .glitch-text__inner div:has(span):nth-child(4) {
          animation: jitter-20-23-8 0.3s both; }
        .glitch-text:hover .glitch-text__inner div:has(span):nth-child(3) {
          animation: jitter-20-22-8 0.3s both; }
        .glitch-text:hover .glitch-text__inner div:has(span):nth-child(2) {
          animation: jitter-20-21-8 0.3s both; }
      .glitch-text:hover.glitch-text--bg-black {
        color: #000; }
        .glitch-text:hover.glitch-text--bg-black::before {
          background-color: #fff; }
        .glitch-text:hover.glitch-text--bg-black .glitch-text__inner {
          color: #000; } }
  @media (hover: none) {
    .glitch-text:active {
      color: #fff; }
      .glitch-text:active::before {
        translate: -50% -50%;
        scale: 1 2;
        opacity: 1;
        transition: translate 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0s, scale 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0s, opacity 0.6s cubic-bezier(0.23, 1, 0.32, 1); }
      .glitch-text:active .glitch-text__inner {
        color: #fff; }
        .glitch-text:active .glitch-text__inner div:not(:has(span)) {
          animation: fade-in .8s both; }
        .glitch-text:active .glitch-text__inner div:has(span) {
          display: block; }
        .glitch-text:active .glitch-text__inner div:has(span):nth-child(6) {
          animation: jitter-20-25-8 0.3s both; }
        .glitch-text:active .glitch-text__inner div:has(span):nth-child(5) {
          animation: jitter-20-24-8 0.3s both; }
        .glitch-text:active .glitch-text__inner div:has(span):nth-child(4) {
          animation: jitter-20-23-8 0.3s both; }
        .glitch-text:active .glitch-text__inner div:has(span):nth-child(3) {
          animation: jitter-20-22-8 0.3s both; }
        .glitch-text:active .glitch-text__inner div:has(span):nth-child(2) {
          animation: jitter-20-21-8 0.3s both; }
      .glitch-text:active.glitch-text--bg-black {
        color: #000; }
        .glitch-text:active.glitch-text--bg-black::before {
          background-color: #fff; }
        .glitch-text:active.glitch-text--bg-black .glitch-text__inner {
          color: #000; } }

.campaign__heading.is-inview .matrix-text > span:nth-of-type(1) {
  animation: typing-source16 0.4s steps(16) forwards;
  animation-delay: 0.4s; }

.campaign__heading.is-inview .matrix-text > span:nth-of-type(2) {
  animation: typing-matrix16 0.8s steps(16) forwards;
  animation-delay: 0s; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(12) {
    animation: order-random-12 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(13) {
    animation: order-random-13 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(14) {
    animation: order-random-14 0.2s infinite; }
  .campaign__heading.is-inview .matrix-text > span:nth-of-type(2) span:nth-of-type(15) {
    animation: order-random-15 0.2s infinite; }

@keyframes typing-source16 {
  0% {
    width: 0; }
  100% {
    width: 16ch; } }

@keyframes typing-matrix16 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 16ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

.section__heading.is-inview > span:nth-of-type(1) {
  animation: typing-source11 0.4s steps(11) forwards;
  animation-delay: 0.4s; }

.section__heading.is-inview > span:nth-of-type(2) {
  animation: typing-matrix11 0.8s steps(11) forwards;
  animation-delay: 0s; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  .section__heading.is-inview > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }

@keyframes typing-source11 {
  0% {
    width: 0; }
  100% {
    width: 11ch; } }

@keyframes typing-matrix11 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 11ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

.fade-in {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity; }
  .fade-in.is-inview {
    opacity: 1;
    visibility: visible; }

.hero__date-text::after {
  translate: -100% 0;
  opacity: 0;
  transition: translate 0.2s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.2s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: .7s;
  will-change: translate, opacity; }

.hero__heading::before {
  opacity: 0;
  transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: .7s;
  will-change: opacity; }

.hero__inner::before, .hero__inner::after {
  scale: 1 0;
  transition: scale 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: .7s;
  will-change: scale; }

.hero__inner::before {
  transform-origin: bottom center; }

.hero__inner::after {
  transform-origin: top center; }

.hero__visual svg {
  stroke-dasharray: 999;
  stroke-dashoffset: 999; }

.hero__visual-logo {
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-delay: 1.2s;
  will-change: opacity; }

.hero__visual-inner {
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-delay: 1.2s;
  animation: floating 3s cubic-bezier(0.445, 0.05, 0.55, 0.95) infinite alternate-reverse;
  will-change: translate, opacity; }

.hero__visual-belt span {
  transition: scale 0.6s cubic-bezier(0.86, 0, 0.07, 1);
  will-change: scale; }
  .hero__visual-belt span.is-active {
    scale: 1;
    transition-delay: .5s; }

.hero__visual-belt--top span {
  transform-origin: left center; }
  .hero__visual-belt--top span.is-active {
    transform-origin: right center; }

.hero__visual-belt--bottom span {
  transform-origin: right center; }
  .hero__visual-belt--bottom span.is-active {
    transform-origin: left center; }

.hero__visual-square svg {
  animation: line-animation 3s cubic-bezier(0.23, 1, 0.32, 1) forwards;
  animation-delay: 2.2s; }

.hero__visual-ring::before, .hero__visual-ring::after {
  scale: 0;
  transition: scale 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  will-change: scale; }

.hero__visual-ring::before {
  transition-delay: 2.4s;
  animation: rotate 6s linear infinite; }

.hero__visual-ring::after {
  transition-delay: 2.8s; }

.hero__visual-arrow::before, .hero__visual-arrow::after {
  opacity: 0;
  transition: translate 0.6s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.2s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: 3s;
  will-change: translate, opacity; }

.hero__visual-arrow::before {
  translate: -100% 0; }

.hero__visual-arrow::after {
  translate: 100% 0; }

.hero__visual-flex svg {
  animation: line-animation 4s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  animation-delay: 3s; }

.hero__visual-stretch {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-delay: 3s;
  will-change: opacity; }
  .hero__visual-stretch span {
    animation: stretch 3s infinite cubic-bezier(0.445, 0.05, 0.55, 0.95); }
  .hero__visual-stretch--top span:nth-of-type(2) {
    animation-delay: .1s; }
  .hero__visual-stretch--top span:nth-of-type(3) {
    animation-delay: .2s; }
  .hero__visual-stretch--top span:nth-of-type(4) {
    animation-delay: .3s; }
  .hero__visual-stretch--bottom span:nth-of-type(1) {
    animation-delay: .3s; }
  .hero__visual-stretch--bottom span:nth-of-type(2) {
    animation-delay: .2s; }
  .hero__visual-stretch--bottom span:nth-of-type(3) {
    animation-delay: .1s; }

@keyframes line-animation {
  0% {
    stroke-dashoffset: 999; }
  100% {
    stroke-dashoffset: 0; } }

@keyframes stretch {
  0%, 100% {
    width: 1.4rem; }
  20%, 80% {
    width: 3.4rem; } }

@keyframes floating {
  0% {
    translate: 0 -0.6rem; }
  100% {
    translate: 0 0.6rem; } }

body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(1) {
  animation: typing-source9 0.4s steps(9) forwards;
  animation-delay: 0.4s; }

body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) {
  animation: typing-matrix9 0.8s steps(9) forwards;
  animation-delay: 0s; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(1) > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }

@keyframes typing-source9 {
  0% {
    width: 0; }
  100% {
    width: 9ch; } }

@keyframes typing-matrix9 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 9ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(1) {
  animation: typing-source26 0.4s steps(26) forwards;
  animation-delay: 0.45s; }

body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) {
  animation: typing-matrix26 0.8s steps(26) forwards;
  animation-delay: 0.05s; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(12) {
    animation: order-random-12 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(13) {
    animation: order-random-13 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(14) {
    animation: order-random-14 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(15) {
    animation: order-random-15 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(16) {
    animation: order-random-16 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(17) {
    animation: order-random-17 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(18) {
    animation: order-random-18 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(19) {
    animation: order-random-19 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(20) {
    animation: order-random-20 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(21) {
    animation: order-random-21 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(22) {
    animation: order-random-22 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(23) {
    animation: order-random-23 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(24) {
    animation: order-random-24 0.2s infinite; }
  body.is-loaded .hero__heading .matrix-text:nth-of-type(2) > span:nth-of-type(2) span:nth-of-type(25) {
    animation: order-random-25 0.2s infinite; }


@keyframes typing-source26 {
  0% {
    width: 0; }
  100% {
    width: 17ch; } }

@keyframes typing-matrix26 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 26ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__text.matrix-text > span:nth-of-type(1) {
  animation: typing-source26 0.4s steps(26) forwards;
  animation-delay: 0.55s; }

body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) {
  animation: typing-matrix26 0.8s steps(26) forwards;
  animation-delay: 0.15s; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(12) {
    animation: order-random-12 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(13) {
    animation: order-random-13 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(14) {
    animation: order-random-14 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(15) {
    animation: order-random-15 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(16) {
    animation: order-random-16 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(17) {
    animation: order-random-17 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(18) {
    animation: order-random-18 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(19) {
    animation: order-random-19 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(20) {
    animation: order-random-20 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(21) {
    animation: order-random-21 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(22) {
    animation: order-random-22 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(23) {
    animation: order-random-23 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(24) {
    animation: order-random-24 0.2s infinite; }
  body.is-loaded .hero__text.matrix-text > span:nth-of-type(2) span:nth-of-type(25) {
    animation: order-random-25 0.2s infinite; }

@keyframes typing-source26 {
  0% {
    width: 0; }
  100% {
    width: 26ch; } }

@keyframes typing-matrix26 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 26ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__date-text:nth-of-type(1)::after {
  opacity: 1;
  translate: 0; }

body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(1) {
  animation: typing-source12 0.4s steps(12) forwards;
  animation-delay: 0.55s; }

body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) {
  animation: typing-matrix12 0.8s steps(12) forwards;
  animation-delay: 0.15s; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(1) .matrix-text > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }

@keyframes typing-source12 {
  0% {
    width: 0; }
  100% {
    width: 12ch; } }

@keyframes typing-matrix12 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 12ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(1) {
  animation: typing-source10 0.4s steps(10) forwards;
  animation-delay: 0.6s; }

body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) {
  animation: typing-matrix10 0.8s steps(10) forwards;
  animation-delay: 0.2s; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__date-text:nth-of-type(2) .matrix-text > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }

@keyframes typing-source10 {
  0% {
    width: 0; }
  100% {
    width: 10ch; } }

@keyframes typing-matrix10 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 10ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__heading::before {
  opacity: 1; }

body.is-loaded .hero__inner::before, body.is-loaded .hero__inner::after {
  scale: 1; }

body.is-loaded .hero__visual-logo, body.is-loaded .hero__visual-inner {
  opacity: 1; }

body.is-loaded .hero__visual-yonex > span:nth-of-type(1) {
  animation: typing-source33 0.4s steps(33) forwards;
  animation-delay: 1.6s; }

body.is-loaded .hero__visual-yonex > span:nth-of-type(2) {
  animation: typing-matrix33 0.8s steps(33) forwards;
  animation-delay: 1.2s; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(12) {
    animation: order-random-12 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(13) {
    animation: order-random-13 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(14) {
    animation: order-random-14 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(15) {
    animation: order-random-15 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(16) {
    animation: order-random-16 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(17) {
    animation: order-random-17 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(18) {
    animation: order-random-18 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(19) {
    animation: order-random-19 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(20) {
    animation: order-random-20 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(21) {
    animation: order-random-21 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(22) {
    animation: order-random-22 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(23) {
    animation: order-random-23 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(24) {
    animation: order-random-24 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(25) {
    animation: order-random-25 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(26) {
    animation: order-random-26 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(27) {
    animation: order-random-27 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(28) {
    animation: order-random-28 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(29) {
    animation: order-random-29 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(30) {
    animation: order-random-30 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(31) {
    animation: order-random-31 0.2s infinite; }
  body.is-loaded .hero__visual-yonex > span:nth-of-type(2) span:nth-of-type(32) {
    animation: order-random-32 0.2s infinite; }

@keyframes typing-source33 {
  0% {
    width: 0; }
  100% {
    width: 33ch; } }

@keyframes typing-matrix33 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 33ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__visual-ring::before {
  scale: 1; }

body.is-loaded .hero__visual-ring::after {
  scale: 1; }

body.is-loaded .hero__visual-right > span:nth-of-type(1), body.is-loaded .hero__visual-left > span:nth-of-type(1) {
  animation: typing-source37 0.4s steps(37) forwards;
  animation-delay: 3.2s; }

body.is-loaded .hero__visual-right > span:nth-of-type(2), body.is-loaded .hero__visual-left > span:nth-of-type(2) {
  animation: typing-matrix37 0.8s steps(37) forwards;
  animation-delay: 2.8s; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(1), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(1) {
    animation: order-random-1 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(2), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(2) {
    animation: order-random-2 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(3), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(3) {
    animation: order-random-3 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(4), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(4) {
    animation: order-random-4 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(5), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(5) {
    animation: order-random-5 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(6), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(6) {
    animation: order-random-6 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(7), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(7) {
    animation: order-random-7 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(8), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(8) {
    animation: order-random-8 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(9), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(9) {
    animation: order-random-9 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(10), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(10) {
    animation: order-random-10 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(11), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(11) {
    animation: order-random-11 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(12), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(12) {
    animation: order-random-12 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(13), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(13) {
    animation: order-random-13 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(14), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(14) {
    animation: order-random-14 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(15), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(15) {
    animation: order-random-15 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(16), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(16) {
    animation: order-random-16 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(17), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(17) {
    animation: order-random-17 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(18), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(18) {
    animation: order-random-18 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(19), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(19) {
    animation: order-random-19 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(20), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(20) {
    animation: order-random-20 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(21), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(21) {
    animation: order-random-21 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(22), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(22) {
    animation: order-random-22 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(23), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(23) {
    animation: order-random-23 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(24), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(24) {
    animation: order-random-24 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(25), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(25) {
    animation: order-random-25 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(26), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(26) {
    animation: order-random-26 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(27), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(27) {
    animation: order-random-27 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(28), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(28) {
    animation: order-random-28 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(29), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(29) {
    animation: order-random-29 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(30), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(30) {
    animation: order-random-30 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(31), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(31) {
    animation: order-random-31 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(32), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(32) {
    animation: order-random-32 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(33), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(33) {
    animation: order-random-33 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(34), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(34) {
    animation: order-random-34 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(35), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(35) {
    animation: order-random-35 0.2s infinite; }
  body.is-loaded .hero__visual-right > span:nth-of-type(2) span:nth-of-type(36), body.is-loaded .hero__visual-left > span:nth-of-type(2) span:nth-of-type(36) {
    animation: order-random-36 0.2s infinite; }

@keyframes typing-source37 {
  0% {
    width: 0; }
  100% {
    width: 37ch; } }

@keyframes typing-matrix37 {
  0% {
    width: 0; }
  49.999% {
    left: 0; }
  50% {
    width: 37ch;
    left: auto;
    right: 0; }
  99.999% {
    display: -ms-flexbox;
    display: flex; }
  100% {
    width: 0;
    display: none;
    left: auto;
    right: 0; } }

body.is-loaded .hero__visual-arrow::before, body.is-loaded .hero__visual-arrow::after {
  translate: 0;
  opacity: 1; }

body.is-loaded .hero__visual-stretch {
  opacity: 1; }

.section__inner {
  padding: 0 2rem; }

.section__heading {
  font-size: 4.8rem;
  line-height: 1;
  letter-spacing: -0.02em;
  font-family: Yakuhanjp, "din-condensed", sans-serif;
  text-align: center; }
  .section__heading--belt {
    padding: 0.6rem 0 0.4rem;
    background-color: #000;
    color: #fff; }

.section__subheading {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: calc(25 / 18);
  text-align: center; }

.section__lead {
  font-weight: 700;
  font-size: 1.3rem;
  line-height: calc(25 / 13); }

.section__supplement {
  font-size: 1.1rem;
  line-height: calc(20 / 11); }

#home .hero {
  padding-top: 2rem; }
  #home .hero__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
    font-family: Yakuhanjp, "din-condensed", sans-serif; }
    #home .hero__inner::before, #home .hero__inner::after {
      display: block;
      width: 1px;
      content: "";
      background-color: #000; }
    #home .hero__inner::before {
      height: 3rem; }
    #home .hero__inner::after {
      height: 5rem;
      margin-top: 0.6rem; }
  #home .hero__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
    margin: 0.8rem 0;
    font-size: 3rem;
    line-height: 1.2;
    letter-spacing: -0.02em;
    text-align: center; }
    #home .hero__heading::before {
      display: block;
      width: 2.8rem;
      height: 3.2rem;
      content: "";
      margin-bottom: 0.8rem;
      background: url(../img/home/icn_crystal.svg) no-repeat center center/contain; }
    #home .hero__heading:nth-of-type(n + 2) {
      margin-top: 0; }
  #home .hero__text {
    margin-top: 0.2rem;
    font-size: 2.5rem;
    line-height: calc(28 / 25);
    letter-spacing: -0.02em;
    text-align: center; }
  #home .hero__date {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    gap: 6rem;
    margin-top: 0.4rem; }
    #home .hero__date-text {
      font-size: 3rem;
      line-height: calc(48 / 30);
      letter-spacing: -0.02em; }
      #home .hero__date-text strong {
        font-size: 4.8rem;
        line-height: calc(48 / 48); }
      #home .hero__date-text:first-of-type {
        position: relative; }
        #home .hero__date-text:first-of-type::after {
          display: block;
          width: 3.8rem;
          height: 1.4rem;
          content: "";
          position: absolute;
          top: 1.8rem;
          right: -4.6rem;
          background: url(../img/home/arw_hero.svg) no-repeat center center/contain; }
        #home .hero__date-text:first-of-type strong {
          margin-left: 0.8rem; }
  #home .hero__visual {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    width: 100%;
    height: 44rem;
    position: relative;
    margin-top: 3rem;
    background: url(../img/home/bg_hero.svg) no-repeat center center/contain; }
    #home .hero__visual-background {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
    #home .hero__visual-logo {
      position: absolute;
      top: 6.2rem;
      left: 7.2rem;
      width: 2rem;
      height: 1rem;
      background: url(../img/home/logo_visual.svg) no-repeat center center/contain; }
    #home .hero__visual-yonex {
      position: absolute;
      top: 8.2rem;
      left: 7.2rem;
      font-size: 0.8rem;
      line-height: 1; }
    #home .hero__visual-ring {
      position: absolute;
      right: 13rem;
      bottom: 1rem;
      width: 4.4rem;
      height: 4.4rem; }
      #home .hero__visual-ring::before {
        display: block;
        width: 4.4rem;
        height: 4.4rem;
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: url(../img/home/ring_text.svg) no-repeat center center/contain; }
      #home .hero__visual-ring::after {
        display: block;
        width: 4.4rem;
        height: 4.4rem;
        content: "";
        background: url(../img/home/ring_logo.svg) no-repeat center center/3.3rem; }
    #home .hero__visual-right {
      position: absolute;
      right: 6rem;
      bottom: 22rem;
      font-size: 1.4rem;
      transform-origin: right bottom;
      rotate: 90deg; }
    #home .hero__visual-left {
      position: absolute;
      left: 6rem;
      bottom: 2rem;
      font-size: 1.4rem;
      transform-origin: bottom left;
      rotate: -90deg; }
    #home .hero__visual-arrow::before, #home .hero__visual-arrow::after {
      display: block;
      width: 1.4rem;
      height: 0.6rem;
      content: "";
      position: absolute;
      top: 22.4rem;
      background: url(../img/home/arw_visual.svg) no-repeat center center/contain; }
    #home .hero__visual-arrow::before {
      rotate: 180deg;
      left: 8.8rem; }
    #home .hero__visual-arrow::after {
      right: 8.8rem; }
    #home .hero__visual-flex {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
    #home .hero__visual-belt {
      width: 30.4rem;
      height: 6.8rem; }
      #home .hero__visual-belt span {
        position: absolute;
        inset: 0;
        display: block;
        scale: 0 1; }
        #home .hero__visual-belt span.is-active {
          scale: 1; }
      #home .hero__visual-belt--top {
        position: absolute;
        top: 0;
        right: 0; }
      #home .hero__visual-belt--bottom {
        position: absolute;
        bottom: 0;
        left: 0; }
    #home .hero__visual-stretch {
      width: 2.6rem;
      height: 4.8rem; }
      #home .hero__visual-stretch--top {
        position: absolute;
        top: 1.2rem;
        right: 14.5rem; }
      #home .hero__visual-stretch--bottom {
        position: absolute;
        bottom: 1.2rem;
        left: 9.5rem; }
      #home .hero__visual-stretch div {
        width: 100%;
        height: 100%;
        position: relative; }
      #home .hero__visual-stretch span {
        position: absolute;
        left: 50%;
        width: 1.4rem;
        height: 0.15rem;
        display: block;
        translate: -50% 0;
        background-color: #000; }
        #home .hero__visual-stretch span:nth-of-type(1) {
          top: 0.3rem; }
        #home .hero__visual-stretch span:nth-of-type(2) {
          top: 1.7rem; }
        #home .hero__visual-stretch span:nth-of-type(3) {
          bottom: 1.7rem; }
        #home .hero__visual-stretch span:nth-of-type(4) {
          bottom: 0.3rem; }
        #home .hero__visual-stretch span::before, #home .hero__visual-stretch span::after {
          position: absolute;
          top: calc(50% - 0.35rem);
          display: block;
          width: 0.7rem;
          height: 0.7rem;
          content: "";
          background: url(../img/home/arw_stretch.svg) no-repeat center center/contain; }
        #home .hero__visual-stretch span::before {
          left: -0.6rem;
          rotate: 180deg; }
        #home .hero__visual-stretch span::after {
          right: -0.6rem; }
    #home .hero__visual-inner {
      width: 26rem;
      height: 26rem; }
      #home .hero__visual-inner .slick-slide {
        width: 26rem;
        height: 26rem; }
    #home .hero__visual-image {
      width: 26rem;
      height: 26rem; }

#home .campaign {
  margin-top: 10rem; }
  #home .campaign .section__lead {
    margin-top: 3rem; }
  #home .campaign .section__text {
    margin-top: 0.6rem; }
  #home .campaign__heading {
    position: relative;
    z-index: 1;
    margin-right: auto;
    margin-left: auto;
    color: #fff;
    font-weight: 700;
    font-size: 3rem;
    text-align: center; }
    #home .campaign__heading::before {
      display: block;
      width: 33.5rem;
      height: 6rem;
      content: "";
      position: absolute;
      top: calc(50% - 3rem);
      left: calc(50% - 16.6rem);
      z-index: -1;
      background-color: #000; }
    #home .campaign__heading span {
      background-color: #000; }
  #home .campaign .list-campaign {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    position: relative;
    gap: 3rem;
    -ms-flex-direction: column;
        flex-direction: column;
    margin-top: 3.6rem; }
    /*#home .campaign .list-campaign::before {
      display: block;
      width: 4rem;
      height: 36.2rem;
      content: "";
      position: absolute;
      top: 0;
      left: -2rem;
      background: url(../img/home/deco_campaign.png) no-repeat center center/contain;
	  top: 10rem;}*/
    #home .campaign .list-campaign__item {
      width: 26.2rem;
      background: url(../img/home/bg_campaign.svg) no-repeat center center/contain; }
    #home .campaign .list-campaign__image {
      text-align: center; }
      #home .campaign .list-campaign__image--03{
        display: flex;
        justify-content: center;}
      #home .campaign .list-campaign__image figcaption {
        margin-top: 1.8rem;
        font-weight: 700; }
      #home .campaign .list-campaign__image img {
        display: inline-block; }
	  #home .campaign .list-campaign__image--01 img{
        width: 100%; }
      #home .campaign .list-campaign__image--03 img {
        width: 34.5rem; }

      #home .campaign .list-campaign .title-section {
		  display: flex;
		  align-items: center;
		  gap: 12px;
		  padding: 10px 0; }

      #home .campaign .list-campaign .tokuten-circle-simple {
		  width: 6rem;
		  height: 6rem;
		  background-color: #000;
		  border-radius: 50%;
		  flex-shrink: 0;
		  color: #fff;
		  font-weight: bold;
		  text-align: center;
		  font-size: 1.8rem;
		  padding-top: 0.3rem;
		  box-sizing: border-box;
		}

      #home .campaign .list-campaign .tokuten-circle-simple .number {
		  font-size: 2.5rem;
		  display: block;
		  margin-top: -1.5rem;
		}


      #home .campaign .list-campaign .main-title {
		  font-size: 1.73rem;
		  font-weight: bold;
		  margin: 0;
		  padding: 0;
		  color: #000;
		  border-bottom: solid;
		  z-index: 5;
		}

      #home .campaign .list-campaign .sub-title {
		  font-size: 1.4rem;
		  font-weight: bold;
		  padding: 0;
		  color: #000;
		  margin-top: 0.8rem;
		}


      #home .campaign .list-campaign .title-section-overlap {
		  list-style: none;
		  display: flex;
		  align-items: center;
		  margin-top: 3rem;
		}

      #home .campaign .list-campaign .title-section-overlap .tokuten-circle-simple {
		  position: relative;
		  z-index: 10;
		}

      #home .campaign .list-campaign .text-content-bar {
		  background-color: #e0e0e0;
		  flex-grow: 1; 
		  padding: 1rem 1rem;
		  margin-left: -3rem;
		  padding-left: 5rem;
		}

      #home .campaign .list-campaign .text-content-bar .main-title {
		  font-size: 2rem;
		  border-bottom: none;
		}

#home .ticker {
  position: relative;
  height: 13rem;
  margin-top: 12rem; }
  #home .ticker.bg-show {
    height: 28.6rem;
    background: url(../img/home/bg_ticker.svg) no-repeat center center/31.4rem 11.6rem; }
  #home .ticker__content {
    position: absolute;
    overflow: hidden;
    width: 100%;
    height: 5.5rem; }
    #home .ticker__content-inner {
      display: -ms-flexbox;
      display: flex;
      width: 100vw;
      animation: text-ticker 30s linear infinite;
      will-change: translate; }

@keyframes text-ticker {
  0% {
    translate: 0% 0; }
  100% {
    translate: -82.8rem 0; } }
      #home .ticker__content-inner span {
        margin-top: -0.6rem; }
    #home .ticker__content:nth-of-type(1) {
      top: 0;
      left: 0; }
    #home .ticker__content:nth-of-type(2) {
      right: 0;
      bottom: 0; }
      #home .ticker__content:nth-of-type(2) .ticker__content-inner {
        animation-direction: reverse; }
  #home .ticker__text {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    font-size: 4rem;
    line-height: 1;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
    #home .ticker__text::after {
      display: block;
      width: 5.5rem;
      height: 5.5rem;
      content: "";
      -ms-flex-negative: 0;
          flex-shrink: 0;
      margin: 0 2rem;
      background: url(../img/common/logo_innovations.svg) no-repeat center center/contain; }

#home .technology {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: column;
      flex-direction: column;
  gap: 12rem;
  margin-top: 12rem; }
  #home .technology::after {
    display: block;
    width: 31.4rem;
    height: 11.6rem;
    content: "";
    background: url(../img/home/bg_ticker.svg) no-repeat center center/contain; }
  #home .technology__content {
    position: relative;
    width: 100%;
    margin-top: 2.6rem; }
    #home .technology__content::after {
      display: block;
      content: "";
      position: absolute;
      top: 0;
      right: 0; }
    #home .technology__content--cool::after {
      width: 5.3rem;
      height: 6rem;
      background: url(../img/home/icn_crystal.svg) no-repeat center center/contain; }
    #home .technology__content--uv::after {
      width: 5.4rem;
      height: 6rem;
      background: url(../img/home/icn_uv.svg) no-repeat center center/contain; }
    #home .technology__content:nth-of-type(n + 3) {
      margin-top: 7rem; }
  #home .technology__head {
    font-family: Yakuhanjp, "din-condensed", sans-serif; }
  #home .technology__subheading {
    display: inline-block;
    border-bottom: 0.2rem solid #000;
    font-weight: 700;
    font-size: 1.3rem;
    line-height: 1; }
  #home .technology__heading {
    margin-top: 0.8rem;
    font-size: 2rem;
    letter-spacing: -0.02em;
    line-height: 1; }
    #home .technology__heading strong {
      margin-right: 0.8rem;
      font-size: 4rem; }
  #home .technology .section__lead {
    margin-top: 1rem; }
  #home .technology .section__text {
    margin-top: 0.2rem; }
  #home .technology .section__supplement {
    margin-top: 0.8rem; }
  #home .technology .list-technology {
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    margin-top: 1.6rem; }
    #home .technology .list-technology figcaption {
      margin-top: 1rem;
      font-weight: 700;
      font-size: 1.2rem;
      line-height: calc(19 / 12);
      text-align: center; }

#home .coordinate {
  margin-top: 12rem; }
  #home .coordinate .section__inner {
    padding: 0; }
  #home .coordinate .list-tab {
    display: -ms-flexbox;
    display: flex;
    margin-top: 3rem;
    padding: 0 2rem; }
    #home .coordinate .list-tab__item {
      width: 50%; }
      #home .coordinate .list-tab__item:nth-of-type(n + 2) {
        position: relative; }
        #home .coordinate .list-tab__item:nth-of-type(n + 2)::before {
          display: block;
          width: 0.2rem;
          height: 2.5rem;
          content: "";
          position: absolute;
          top: calc(50% - 1.25rem);
          left: 1px;
          background-color: #000; }
      #home .coordinate .list-tab__item button {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        width: 100%;
        height: 100%;
        border: none;
        background: none;
        color: #C3C3C3;
        font-weight: 700;
        font-size: 1.8rem;
        line-height: calc(25 / 18);
        transition: color 0.3s cubic-bezier(0.23, 1, 0.32, 1); }
        @media (hover: hover) {
          #home .coordinate .list-tab__item button:hover {
            color: #000; } }
        @media (hover: none) {
          #home .coordinate .list-tab__item button:active {
            color: #000; } }
        #home .coordinate .list-tab__item button.is-active {
          color: #000;
          pointer-events: none; }
  #home .coordinate__content {
    height: 61rem;
    margin-top: 3rem; }
  #home .coordinate__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 1rem;
    padding: 0 2rem; }
    #home .coordinate__item img {
      display: none; }
      #home .coordinate__item img.is-active {
        display: block; }
  #home .coordinate__simulate, #home .coordinate__carousel {
    background-color: #E5E5E5; }
    #home .coordinate__simulate .slick-slide, #home .coordinate__carousel .slick-slide {
      cursor: grab; }
  #home .coordinate__simulate {
    width: 33.5rem;
    height: 37.4rem;
    position: relative;
    padding-top: 1rem; }
    #home .coordinate__simulate .slick-slide {
      width: 33.5rem;
      transition: filter 0.3s cubic-bezier(0.23, 1, 0.32, 1); }
      @media (hover: hover) {
        #home .coordinate__simulate .slick-slide:hover {
          filter: brightness(1.2); } }
      @media (hover: none) {
        #home .coordinate__simulate .slick-slide:active {
          filter: brightness(1.2); } }
    #home .coordinate__simulate .slick-track {
      height: 19rem; }
    #home .coordinate__simulate-text {
      font-weight: 700;
      font-size: 1.3rem;
      text-align: center; }
    #home .coordinate__simulate-item {
      position: absolute;
      right: 0;
      left: 0; }
      #home .coordinate__simulate-item:nth-of-type(1) {
        top: 5rem;
        z-index: 1; }
        #home .coordinate__simulate-item:nth-of-type(1) .slick-track {
          height: 19rem; }
        #home .coordinate__simulate-item:nth-of-type(1) img {
          width: 100%;
          max-width: 19rem;
          margin-left: auto;
          margin-right: auto; }
      #home .coordinate__simulate-item:nth-of-type(2) {
        top: 19rem;
        translate: -0.2rem 0; }
        #home .coordinate__simulate-item:nth-of-type(2) .slick-track {
          height: 15rem; }
        #home .coordinate__simulate-item:nth-of-type(2) img {
          width: 100%;
          max-width: 15rem;
          margin-left: auto;
          margin-right: auto; }
      #home .coordinate__simulate-item#simulate-pants-women {
        top: 18rem; }
        #home .coordinate__simulate-item#simulate-pants-women .slick-track {
          height: 16rem; }
        #home .coordinate__simulate-item#simulate-pants-women img {
          width: 100%;
          max-width: 16rem;
          margin-left: auto;
          margin-right: auto; }
  #home .coordinate__carousel::before {
    display: block;
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border: 1px solid #000;
    pointer-events: none; }
  #home .coordinate__carousel .slick-slide {
    width: 33.5rem;
    height: 12.6rem;
    position: relative; }
    #home .coordinate__carousel .slick-slide > div {
      height: 100%; }
  #home .coordinate__carousel h3 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    height: 3rem;
    padding: 0 1rem;
    font-weight: 700;
    font-size: 1.3rem; }
  #home .coordinate__carousel figure {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    position: absolute;
    bottom: 0rem;
    left: 0rem;
    width: 9.5rem;
    height: 9.5rem; }
  #home .coordinate__carousel--shirts img {
    width: 9rem; }
  #home .coordinate__carousel-item {
    position: relative;
    z-index: 1;
    height: 100%; }
  #home .coordinate__carousel .detail-coordinate {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 24rem;
    height: 9.4rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 1rem;
    padding: 1.4rem 0.6rem;
    background-color: #fff; }
    #home .coordinate__carousel .detail-coordinate__inner {
      position: relative; }
    #home .coordinate__carousel .detail-coordinate__item {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      gap: 2rem;
      padding-left: 0.6rem; }
    #home .coordinate__carousel .detail-coordinate__text {
      font-weight: 700;
      font-size: 1.3rem; }
    #home .coordinate__carousel .detail-coordinate__link a {
      display: inline-block;
      padding: 0 0.6rem;
      font-weight: 700;
      font-size: 1.3rem;
      text-decoration: none; }
      #home .coordinate__carousel .detail-coordinate__link a div:not(:has(span)) {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center;
        gap: 0.8rem; }
        #home .coordinate__carousel .detail-coordinate__link a div:not(:has(span))::after {
          display: block;
          width: 1rem;
          height: 0.8rem;
          content: "";
          background-color: #000;
          -webkit-mask: url(../img/home/arw_link.svg) no-repeat center center/contain;
                  mask: url(../img/home/arw_link.svg) no-repeat center center/contain; }
      @media (hover: hover) {
        #home .coordinate__carousel .detail-coordinate__link a:hover div:not(:has(span))::after {
          background-color: #fff; } }
      @media (hover: none) {
        #home .coordinate__carousel .detail-coordinate__link a:active div:not(:has(span))::after {
          background-color: #fff; } }
    #home .coordinate__carousel .detail-coordinate .list-color {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      gap: 0.8rem;
      margin-top: 0.4rem; }
      #home .coordinate__carousel .detail-coordinate .list-color__item {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        width: 2.4rem;
        height: 2.4rem;
        border-radius: 100%;
        position: relative;
        border: 1px solid #C3C3C3;
        cursor: pointer; }
        #home .coordinate__carousel .detail-coordinate .list-color__item span {
          width: 1.8rem;
          height: 1.8rem;
          border-radius: 100%;
          display: block;
          transition: scale 0.3s cubic-bezier(0.23, 1, 0.32, 1);
          will-change: scale; }
        @media (hover: hover) {
          #home .coordinate__carousel .detail-coordinate .list-color__item:hover span {
            scale: 1.4; } }
        @media (hover: none) {
          #home .coordinate__carousel .detail-coordinate .list-color__item:active span {
            scale: 1.4; } }
        #home .coordinate__carousel .detail-coordinate .list-color__item.is-active {
          pointer-events: none;
          border-color: #000; }
  #home .coordinate__subject {
    margin-top: 7rem; }
    #home .coordinate__subject-image {
      width: 100%;
      margin-top: 3rem;
      border: 0.05rem solid #C3C3C3; }
    #home .coordinate__subject-button {
      width: 100%;
      max-width: 31.5rem;
      margin-left: auto;
      margin-right: auto;
      margin-top: 3rem; }
      #home .coordinate__subject-button a {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        height: 3rem;
        border: 1px solid #000;
        background-color: #fff;
        font-weight: 700;
        font-size: 1.3rem;
        text-decoration: none; }

#home .shop {
  margin-top: 12rem; }
  #home .shop .section__lead {
    margin-top: 3rem; }
  #home .shop .list-area {
    margin-top: 3rem; }
    #home .shop .list-area__head {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      position: relative;
      height: 5.4rem;
      padding: 0 2rem;
      background-color: #E5E5E5;
      font-weight: 700;
      font-size: 1.3rem;
      line-height: calc(25 / 13);
      transition: background 0.3s cubic-bezier(0.23, 1, 0.32, 1);
      cursor: pointer; }
      @media (hover: hover) {
        #home .shop .list-area__head:hover {
          background-color: #C3C3C3; } }
      @media (hover: none) {
        #home .shop .list-area__head:active {
          background-color: #C3C3C3; } }
      #home .shop .list-area__head::before, #home .shop .list-area__head::after {
        display: block;
        width: 2rem;
        height: 1px;
        content: "";
        position: absolute;
        top: calc(50% - 0.05rem);
        right: 2rem;
        background-color: #000;
        transition: rotate 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        will-change: rotate; }
      #home .shop .list-area__head::after {
        rotate: -90deg; }
      #home .shop .list-area__head.is-active::after {
        rotate: 0deg; }
    #home .shop .list-area__body {
      display: none; }
    #home .shop .list-area .list-anchor {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      gap: 1rem 2rem;
      padding: 2rem 0; }
      #home .shop .list-area .list-anchor a {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center;
        gap: 0.2rem;
        font-weight: 700;
        font-size: 1.3rem;
        text-decoration: none; }
        #home .shop .list-area .list-anchor a::after {
          display: block;
          width: 1.2rem;
          height: 0.6rem;
          content: "";
          margin-top: 0.2rem;
          background: url(../img/home/arw_anchor.svg) no-repeat center center/contain;
          transition: translate 0.3s cubic-bezier(0.23, 1, 0.32, 1);
          will-change: translate; }
        @media (hover: hover) {
          #home .shop .list-area .list-anchor a:hover::after {
            translate: 0 50%; } }
        @media (hover: none) {
          #home .shop .list-area .list-anchor a:active::after {
            translate: 0 50%; } }
    #home .shop .list-area__subheading {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      height: 3rem;
      padding: 0 2rem;
      background-color: #C3C3C3;
      font-weight: 700;
      font-size: 1.1rem; }
    #home .shop .list-area .list-shop {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      padding: 2rem; }
      #home .shop .list-area .list-shop__item {
        font-size: 1.2rem;
        line-height: calc(20 / 12); }
        #home .shop .list-area .list-shop__item strong {
          font-weight: 700; }
        #home .shop .list-area .list-shop__item:nth-of-type(n + 2) {
          margin-top: 2rem;
          padding-top: 2rem;
          border-top: 1px solid #C3C3C3; }

@media screen and (max-width: 768px) {
  .only-pc {
    display: none !important; } }

@media screen and (min-width: 769px) {
  .only-sp {
    display: none !important; } }

@keyframes rotate {
  0% {
    rotate: 0deg; }
  100% {
    rotate: 180deg; } }
