/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

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

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

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

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

a {
  text-decoration: none;
}

picture {
  display: block;
}

video,
iframe {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.img-fluid {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  font-style: italic;
}

/**
 * Swiper 11.1.15
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 18, 2024
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

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

.swiper-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block;
}

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

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  -ms-scroll-snap-type: none;
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
  -ms-flex-order: 9999;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

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

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear;
}

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

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

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

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.d-none {
  display: none !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-inline-flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}
.d-block {
  display: block !important;
}
.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}
@media only screen and (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
}
@media only screen and (min-width: 576px) {
  .d-sm-inline {
    display: inline !important;
  }
}
@media only screen and (min-width: 576px) {
  .d-sm-inline-block {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 576px) {
  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media only screen and (min-width: 576px) {
  .d-sm-block {
    display: block !important;
  }
}
@media only screen and (min-width: 576px) {
  .d-sm-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-inline {
    display: inline !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-inline-block {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-block {
    display: block !important;
  }
}
@media only screen and (min-width: 768px) {
  .d-md-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-inline {
    display: inline !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-inline-block {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-block {
    display: block !important;
  }
}
@media only screen and (min-width: 992px) {
  .d-lg-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-inline {
    display: inline !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-inline-block {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-block {
    display: block !important;
  }
}
@media only screen and (min-width: 1200px) {
  .d-xl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

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

html {
  font-size: 10px;
}

body {
  background-color: #F4F4F4;
  font-family: "Noto Sans JP", serif;
  color: #000000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.2;
}
body.is-overflow {
  overflow: hidden;
}

p {
  text-align: justify;
}

.container {
  display: block;
  max-width: 100%;
  padding: 0 10px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .container {
    max-width: 1127px;
  }
}
@media only screen and (min-width: 768px) {
  .container--1032 {
    max-width: 1052px;
  }
}
@media only screen and (min-width: 768px) {
  .container--984 {
    max-width: 1004px;
  }
}

.animation-ttl span {
  opacity: 0;
  -webkit-transition: opacity 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out;
}
.animation-tag span {
  display: block;
  overflow: hidden;
  clip-path: inset(0% 0% 100% 0%);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.animation-tag span.show {
  clip-path: inset(0% 0% 0% 0%);
}

.animate-text > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
}
.animate-text > span span {
  display: inline-block;
  -webkit-transform: translateY(5rem) rotate(45deg);
  -ms-transform: translateY(5rem) rotate(45deg);
  transform: translateY(5rem) rotate(45deg);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
.animate-text.animated > span span {
  -webkit-transform: translateY(0rem) rotate(0deg);
  -ms-transform: translateY(0rem) rotate(0deg);
  transform: translateY(0rem) rotate(0deg);
}

@media only screen and (min-width: 768px) {
  .animate-slow-text > span {
    clip-path: inset(0% 100% 0% 0%);
    -webkit-transition: all 0.9s ease-in-out;
    transition: all 0.9s ease-in-out;
  }
}
.animate-slow-text > span span {
  clip-path: inset(0% 100% 0% 0%);
  -webkit-transition: all 0.9s ease-in-out;
  transition: all 0.9s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .animate-slow-text > span span {
    clip-path: unset;
  }
}
.animate-slow-text > span span:last-child {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
@media only screen and (min-width: 768px) {
  .animate-slow-text.animated > span {
    clip-path: inset(0% 0% 0% 0%);
  }
}
.animate-slow-text.animated > span span {
  clip-path: inset(0% 0% 0% 0%);
}
@media only screen and (min-width: 768px) {
  .animate-slow-text.animated > span span {
    clip-path: unset;
  }
}

.fade-up {
  opacity: 0;
  -webkit-transform: translate(0px, 50px);
  -ms-transform: translate(0px, 50px);
  transform: translate(0px, 50px);
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
.fade-up.animated {
  opacity: 1;
  -webkit-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate(0px, 0px);
}

@-webkit-keyframes infiniteScroll {
  to {
    -webkit-transform: translateX(-webkit-calc(-100% - 64px));
    transform: translateX(calc(-100% - 64px));
  }
}

@keyframes infiniteScroll {
  to {
    -webkit-transform: translateX(-webkit-calc(-100% - 64px));
    transform: translateX(calc(-100% - 64px));
  }
}
@-webkit-keyframes animateExclaim {
  0% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(2deg);
    transform: scale(1.2) rotate(2deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-38deg);
    transform: scale(1.2) rotate(-38deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
}
@keyframes animateExclaim {
  0% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(2deg);
    transform: scale(1.2) rotate(2deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-38deg);
    transform: scale(1.2) rotate(-38deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(-18deg);
    transform: scale(1) rotate(-18deg);
  }
}
@-webkit-keyframes animateLines {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0deg);
  }
}
@keyframes animateLines {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0deg);
  }
}
@-webkit-keyframes animateCurve {
  0% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(179deg);
    transform: scale(1.2) rotate(179deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(155deg);
    transform: scale(1.2) rotate(155deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
}
@keyframes animateCurve {
  0% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(179deg);
    transform: scale(1.2) rotate(179deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(155deg);
    transform: scale(1.2) rotate(155deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(167deg);
    transform: scale(1) rotate(167deg);
  }
}
@-webkit-keyframes animatePow {
  0% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(-135deg);
    transform: scale(1.2) rotate(-135deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-159deg);
    transform: scale(1.2) rotate(-159deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
}
@keyframes animatePow {
  0% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(-135deg);
    transform: scale(1.2) rotate(-135deg);
  }
  50% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-159deg);
    transform: scale(1.2) rotate(-159deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(-147deg);
    transform: scale(1) rotate(-147deg);
  }
}
@-webkit-keyframes pinkIconAnimate {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(0);
    transform: scale(1.2) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.2) rotate(0deg);
    transform: scale(1.2) rotate(0deg);
  }
}
@keyframes pinkIconAnimate {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(0);
    transform: scale(1.2) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.2) rotate(0deg);
    transform: scale(1.2) rotate(0deg);
  }
}
@-webkit-keyframes zoomTwice {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
  }
}
@keyframes zoomTwice {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
  }
}
@-webkit-keyframes rotateIcon {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(0);
    transform: scale(1.2) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.2) rotate(0deg);
    transform: scale(1.2) rotate(0deg);
  }
}
@keyframes rotateIcon {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.2) rotate(0);
    transform: scale(1.2) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.2) rotate(12deg);
    transform: scale(1.2) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.2) rotate(-12deg);
    transform: scale(1.2) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.2) rotate(0deg);
    transform: scale(1.2) rotate(0deg);
  }
}
@-webkit-keyframes showText {
  to {
    width: 100%;
  }
}
@keyframes showText {
  to {
    width: 100%;
  }
}
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}
@media only screen and (min-width: 768px) {
  .header {
    position: static;
  }
}
.header__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 28px 10px 0;
}
@media only screen and (min-width: 768px) {
  .header__wrapper {
    display: block;
    padding: 0;
  }
}
.header-logo {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  color: #000000;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .header-logo {
    position: absolute;
    top: 32px;
    left: 40px;
    z-index: 99;
    margin: 0;
  }
}
@media only screen and (min-width: 768px) {
  .header-logo:hover {
    opacity: 0.6;
  }
}
.header-logo:has(~ .nav.is-open), .header-logo:has(+ .header-entry__btns .header-entry__btn--sp.is-open) {
  max-width: -webkit-calc(100% - 16px - 64px - 80px - 10px - 20px);
  max-width: calc(100% - 16px - 64px - 80px - 10px - 20px);
  position: fixed;
  top: 28px;
  left: 50%;
  z-index: 100;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (min-width: 768px) {
  .header-logo:has(~ .nav.is-open), .header-logo:has(+ .header-entry__btns .header-entry__btn--sp.is-open) {
    top: 32px;
    left: 40px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
.header-logo:has(~ .nav.is-open) img, .header-logo:has(+ .header-entry__btns .header-entry__btn--sp.is-open) img {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .header-logo:has(~ .nav.is-open) img, .header-logo:has(+ .header-entry__btns .header-entry__btn--sp.is-open) img {
    max-width: 252px;
  }
}
.header-logo__image {
  max-width: 161px;
  margin-bottom: 6px;
}
@media only screen and (min-width: 768px) {
  .header-logo__image {
    max-width: 100%;
    margin-bottom: 5px;
  }
}
.header-logo span {
  display: block;
  text-align: center;
  font-family: "Montserrat", serif;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .header-logo span {
    font-size: 1.4rem;
  }
}
.header-entry__btns {
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 99;
}
@media only screen and (min-width: 768px) {
  .header-entry__btns {
    top: 20px;
    right: 128px;
    margin-left: auto;
  }
}
.header-entry__nav {
  padding: 118px 26px 25px 25px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: transparent;
  backdrop-filter: blur(30px) brightness(1.5);
  -webkit-backdrop-filter: blur(30px) brightness(1.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 40px;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
}
@media only screen and (min-width: 768px) {
  .header-entry__nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1);
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    padding: 0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    top: unset;
    background: none;
  }
}
@media only screen and (max-width: 767px) {
  .header-entry__nav.is-open {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1);
  }
  .header-entry__nav.is-open .header-entry__btn {
    background: none;
  }
}
.header-entry__nav .header-entry__btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc((100% / 2) - (12px / 2));
  flex: 0 0 -webkit-calc((100% / 2) - (12px / 2));
  flex: 0 0 calc((100% / 2) - (12px / 2));
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  color: #000000;
  font-family: "Montserrat", serif;
  font-weight: 500;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .header-entry__nav .header-entry__btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    cursor: pointer;
    background-color: transparent;
    border: 0;
    width: 80px;
    height: 80px;
    padding: 0;
    color: #000000;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    backdrop-filter: blur(30px) brightness(2.1);
    -webkit-backdrop-filter: blur(30px) brightness(2.1);
    border-radius: 50%;
  }
}
.header-entry__nav .header-entry__btn::after {
  content: "";
  display: block;
  background-color: #000000;
  width: 160px;
  height: 1px;
  position: absolute;
  top: 40%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .header-entry__nav .header-entry__btn::after {
    content: none;
  }
}
@media only screen and (min-width: 768px) {
  .header-entry__nav:last-child .header-entry__abs {
    left: -35%;
  }
}
.header-entry__btn--sp {
  font-family: "Montserrat", serif;
  font-weight: 500;
  border-radius: 50%;
  display: block;
  width: 80px;
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  backdrop-filter: blur(30px) brightness(1.1);
  -webkit-backdrop-filter: blur(30px) brightness(1.1);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  color: #000000;
  position: relative;
  z-index: 12;
}
.header-entry__btn--sp.is-open {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.header-entry__flex {
  position: relative;
  -webkit-transition: all 0.4s ease-in;
  transition: all 0.4s ease-in;
}
@media only screen and (min-width: 768px) {
  .header-entry__flex:hover > .header-entry__abs {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: -1;
  }
  .header-entry__flex:hover::before {
    opacity: 1;
    visibility: visible;
  }
}
.header-entry__flex::before {
  content: none;
  position: absolute;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  backdrop-filter: blur(30px) brightness(2.1);
  width: 16px;
  height: 14px;
  bottom: -21px;
  z-index: 5;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s ease-in;
  transition: 0.4s ease-in;
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
}
@media only screen and (min-width: 768px) {
  .header-entry__flex::before {
    content: "";
  }
}
.header-entry__abs {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s ease-in;
  transition: 0.4s ease-in;
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  background-color: transparent;
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .header-entry__abs {
    position: absolute;
    top: 99%;
    left: 20%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: 22px;
    background: transparent;
    backdrop-filter: blur(30px) brightness(2.1);
    -webkit-backdrop-filter: blur(30px) brightness(2.1);
    pointer-events: none;
  }
  .header-entry__abs::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 50px;
    bottom: 100%;
    left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .header-entry__abs {
    max-height: 0;
    -webkit-transition-property: opacity, visibility, max-height;
    transition-property: opacity, visibility, max-height;
  }
}
@media only screen and (max-width: 767px) {
  .header-entry__abs.active {
    opacity: 1;
    max-height: 500px;
    visibility: visible;
  }
}
.header-entry__abs .-disable {
  cursor: not-allowed;
  background-color: #bfbfbf;
}
.header-entry__abs .-disable:hover {
  color: #ffffff;
  background-color: #bfbfbf;
}
.header-entry__buttons {
  position: relative;
  padding: 16px 0 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
}
@media only screen and (min-width: 768px) {
  .header-entry__buttons {
    padding: 24px;
    width: 424px;
    gap: 16px;
  }
}
.header-entry__buttons .btn-primary.header-entry__buttons-link {
  font-size: 1.6rem;
  padding: 29px 35px 29px 15px;
}
@media only screen and (min-width: 768px) {
  .header-entry__buttons .btn-primary.header-entry__buttons-link {
    font-size: 1.5rem;
    padding: 29px 38.9px 31px 13px;
  }
}
@media only screen and (min-width: 992px) {
  .header-entry__buttons .btn-primary.header-entry__buttons-link {
    font-size: 1.6rem;
    padding: 29px 49.6px 29.8px 23px;
  }
}
@media only screen and (max-width: 767px) {
  .header-entry__buttons .btn-primary.header-entry__buttons-link {
    max-width: 100%;
  }
}
.header-entry__buttons .btn-primary.header-entry__buttons-link::after {
  width: 24px;
}
@media only screen and (min-width: 768px) {
  .header-entry__buttons .btn-primary.header-entry__buttons-link::after {
    width: 32px;
  }
}
.header-entry__txt {
  color: #000000;
  font-weight: 500;
  letter-spacing: 0.04em;
  -webkit-transition: color 0.4s ease-in-out;
  transition: color 0.4s ease-in-out;
}
.header-entry__txt--jp {
  font-family: "Noto Sans JP", serif;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 4px;
}
@media only screen and (min-width: 768px) {
  .header-entry__txt--jp {
    font-size: 1.2rem;
    font-weight: 500;
  }
}
.header-entry__txt--eng {
  font-family: "Montserrat", serif;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.03em;
}
@media only screen and (min-width: 768px) {
  .header-entry__txt--eng {
    font-weight: 500;
    font-size: 1.3rem;
  }
}

.hamburger {
  position: fixed;
  top: 35px;
  left: 16px;
  mix-blend-mode: exclusion;
  text-align: center;
  cursor: pointer;
  z-index: 99;
}
@media only screen and (min-width: 768px) {
  .hamburger {
    left: unset;
    right: 40px;
    top: 48px;
  }
}
.hamburger__btn {
  display: block;
  padding-top: 8px;
}
.hamburger__btn::before, .hamburger__btn::after {
  content: "";
  background-color: #ffffff;
  display: block;
  width: 64px;
  height: 1px;
  border-radius: 40px;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
.hamburger__btn::before {
  position: absolute;
  top: 0;
}
.hamburger__text {
  display: inline-block;
  color: #ffffff;
  font-family: "Montserrat", serif;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-top: 8px;
}
@media only screen and (min-width: 768px) {
  .hamburger:hover .hamburger__btn::before {
    -webkit-transform: translateY(8px);
    -ms-transform: translateY(8px);
    transform: translateY(8px);
  }
}
.hamburger.is-open .hamburger__btn::before {
  -webkit-transform: translateY(8px);
  -ms-transform: translateY(8px);
  transform: translateY(8px);
}

.nav {
  background-color: #F4F4F4;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  z-index: 98;
  -webkit-transition: height 0.4s ease-in-out;
  transition: height 0.4s ease-in-out;
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  overflow: hidden;
}
.nav.is-open {
  max-height: 100dvh;
  height: 100vh;
}
.nav__wrapper {
  height: 100%;
  background-color: #F4F4F4;
  padding: 138px 25px 48px;
}
@media only screen and (min-width: 768px) {
  .nav__wrapper {
    padding: 100px 20px 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .nav__wrapper {
    padding: 100px 124px 20px;
  }
}
.nav__body {
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
@media only screen and (min-width: 768px) {
  .nav__body {
    padding-top: 60px;
  }
}
@media only screen and (min-width: 1200px) {
  .nav__body {
    padding-top: 80px;
  }
}
.nav__inner {
  margin-bottom: 48px;
}
@media only screen and (min-width: 768px) {
  .nav__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
  }
}
@media only screen and (min-width: 992px) {
  .nav__inner {
    gap: 72px;
    margin-bottom: 64px;
  }
}
.nav__links {
  margin-bottom: 50px;
}
@media only screen and (min-width: 768px) {
  .nav__links {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-bottom: 0;
  }
}
.nav__list {
  margin-bottom: 47px;
}
@media only screen and (min-width: 768px) {
  .nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 64px 15px;
    margin-bottom: 64px;
  }
}
@media only screen and (min-width: 992px) {
  .nav__list {
    gap: 64px 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .nav__list {
    gap: 64px 32px;
  }
}
@media only screen and (min-width: 768px) {
  .nav__item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 2) - ((15px * 1) / 2));
    flex: 0 0 -webkit-calc((100% / 2) - ((15px * 1) / 2));
    flex: 0 0 calc((100% / 2) - ((15px * 1) / 2));
  }
}
@media only screen and (min-width: 992px) {
  .nav__item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((20px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((20px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((20px * 2) / 3));
  }
}
@media only screen and (min-width: 1200px) {
  .nav__item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((32px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((32px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((32px * 2) / 3));
  }
}
.nav__item:not(:last-of-type) {
  margin-bottom: 32px;
}
@media only screen and (min-width: 768px) {
  .nav__item:not(:last-of-type) {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .nav__item--bootstrap .nav__ttl {
    min-height: 64px;
  }
}
@media only screen and (min-width: 768px) {
  .nav__item--tablet .nav__ttl {
    min-height: 64px;
  }
}
.nav__ttl {
  font-family: "Shippori Mincho", serif;
  color: #000000;
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  line-height: 1.333;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 21px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .nav__ttl {
    display: block;
    cursor: auto;
    margin-bottom: 24px;
  }
}
.nav__ttl::after {
  content: "";
  display: block;
  background-color: #000000;
  width: -webkit-calc(100% - 24px - 10px - 21px - 135px);
  width: calc(100% - 24px - 10px - 21px - 135px);
  height: 1px;
  position: absolute;
  top: 18px;
  right: 34px;
}
@media only screen and (min-width: 768px) {
  .nav__ttl::after {
    content: none;
  }
}
.nav__ttl span:first-of-type {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: inline-block;
  width: 135px;
}
@media only screen and (min-width: 768px) {
  .nav__ttl span:first-of-type {
    width: auto;
  }
}
.nav__ttl--pink span::first-letter {
  color: #FC4B86;
}
.nav__ttl--yellow span::first-letter {
  color: #FDCD00;
}
.nav__ttl--green span::first-letter {
  color: #47D68F;
}
.nav__ttl--blue span::first-letter {
  color: #5DBFF3;
}
.nav__ttl--lavendar span::first-letter {
  color: #5984F8;
}
.nav__ttl--purple span::first-letter {
  color: #AA6DEE;
}
.nav__ttl-icon {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-top: 6px;
  background-color: #000000;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .nav__ttl-icon {
    display: none;
  }
}
.nav__ttl-icon::before, .nav__ttl-icon::after {
  content: "";
  display: block;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
.nav__ttl-icon::before {
  width: 10px;
  height: 1px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.nav__ttl-icon::after {
  width: 1px;
  height: 10px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.nav__ttl.is-open .nav__ttl-icon::before {
  -webkit-transform: translate(-50%, -50%) rotate(180deg);
  -ms-transform: translate(-50%, -50%) rotate(180deg);
  transform: translate(-50%, -50%) rotate(180deg);
}
.nav__ttl.is-open .nav__ttl-icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  -ms-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
}
.nav-inner {
  height: 0;
  overflow: hidden;
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-inner {
    overflow: visible;
    height: 100% !important;
  }
}
.nav-inner__list {
  max-width: -webkit-calc(100% - (135px + 21px));
  max-width: calc(100% - (135px + 21px));
  margin-left: auto;
}
@media only screen and (min-width: 768px) {
  .nav-inner__list {
    height: 100%;
    max-width: 100%;
    margin-left: auto;
  }
}
.nav-inner__item:not(:last-of-type) {
  margin-bottom: 18px;
}
@media only screen and (min-width: 768px) {
  .nav-inner__item:not(:last-of-type) {
    margin-bottom: 13px;
  }
}
.nav__link {
  color: #000000;
  font-size: 1.3rem;
  line-height: 1.538;
  position: relative;
}
.nav__link::before {
  content: "";
  display: block;
  background-color: #000000;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -6px;
  left: 0;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav__link:hover::before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
  }
}
.nav__link.-ext {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
.nav__link.-ext::before {
  content: none;
}
.nav__link.-ext::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='15' height='15' viewBox='0 0 15 15'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Crect width='15' height='15' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)'%3E%3Cpath d='M11.777,13.609H-.25V1.584H5.237v1.5H1.25v9.025h9.027V7.6h1.5Z' transform='translate(0.289 1.351)'/%3E%3Cpath d='M.53,8.689-.53,7.628,7.628-.53,8.689.53Z' transform='translate(6.052 0.789)'/%3E%3Cpath d='M12.259,7.343h-1.5V1.25H4.667V-.25h7.592Z' transform='translate(2.702 0.289)'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media only screen and (min-width: 768px) {
  .nav__link.-ext:hover {
    opacity: 0.6;
  }
}
.nav-banner {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 369px;
  flex: 0 0 369px;
}
.nav-banner__ttl {
  font-family: "Montserrat", serif;
  color: #FC4B86;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.8181;
  margin-bottom: 16px;
}
.nav-banner__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 12px;
}
@media only screen and (min-width: 768px) {
  .nav-banner__list {
    gap: 16px;
  }
}
.nav-banner__link {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc((100% / 2) - (12px / 2));
  flex: 0 0 -webkit-calc((100% / 2) - (12px / 2));
  flex: 0 0 calc((100% / 2) - (12px / 2));
  display: block;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-banner__link {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 2) - (16px / 2));
    flex: 0 0 -webkit-calc((100% / 2) - (16px / 2));
    flex: 0 0 calc((100% / 2) - (16px / 2));
  }
}
.nav-banner__link:first-of-type, .nav-banner__link:last-of-type {
  -webkit-box-flex: 1;
  -ms-flex: auto;
  flex: auto;
}
@media only screen and (min-width: 768px) {
  .nav-banner__link:hover {
    opacity: 0.6;
  }
}
.nav-banner__link img {
  width: 100%;
}
.nav-events__ttl {
  font-family: "Shippori Mincho", serif;
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  line-height: 1.333;
  margin-bottom: 24px;
}
.nav-events__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
}
@media only screen and (min-width: 768px) {
  .nav-events__btns {
    gap: 24px;
  }
}
.nav-events__btns .btn-link {
  width: -webkit-calc((100% / 2) - (12px / 2));
  width: calc((100% / 2) - (12px / 2));
}
@media only screen and (min-width: 768px) {
  .nav-events__btns .btn-link {
    max-width: 240px;
    width: 100%;
  }
}
.nav-events > .btn-link {
  max-width: 504px;
  width: 100%;
  margin-top: 12px;
}
@media only screen and (min-width: 768px) {
  .nav-events > .btn-link {
    margin-top: 24px;
  }
}
.nav-events > .btn-link::after {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg id='Group_45456' data-name='Group 45456' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Ccircle id='Ellipse_27' data-name='Ellipse 27' cx='16' cy='16' r='16' fill='%23fff'/%3E%3Cpath id='Path_547' data-name='Path 547' d='M-12238.316-21634.146l-1.061-1.062,5.47-5.465-5.47-5.475,1.061-1.059,6.53,6.533-.53.531Z' transform='translate(12251.847 21657.078)'/%3E%3C/svg%3E%0A");
}
@media only screen and (min-width: 768px) {
  .nav-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 30px;
    margin-top: 60px;
  }
}
@media only screen and (min-width: 992px) {
  .nav-bottom {
    margin-top: 0;
    gap: 72px;
  }
}
.nav-bottom__links {
  margin-bottom: 48px;
}
@media only screen and (min-width: 768px) {
  .nav-bottom__links {
    max-width: 380px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px 24px;
    margin-bottom: 0;
  }
}
.nav-bottom__links .nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 16px;
}
@media only screen and (min-width: 768px) {
  .nav-bottom__links .nav__link {
    gap: 8px;
  }
}
.nav-bottom__links .nav__link:not(:last-of-type) {
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) {
  .nav-bottom__links .nav__link:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.nav-bottom__text {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 369px;
  flex: 0 0 369px;
}
.nav-bottom__copy {
  font-family: "Montserrat", serif;
  font-size: 1.1rem;
  letter-spacing: 0.04em;
  line-height: 2.1818;
}
@media only screen and (min-width: 768px) {
  .nav-bottom__copy {
    letter-spacing: 0.03em;
  }
}

.hero {
  position: relative;
}
.hero-heading {
  width: 100%;
  position: absolute;
  bottom: 37px;
  z-index: 3;
  padding: 0 25px;
}
.hero-heading__ttl {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  row-gap: 30px;
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl {
    max-width: 1175px;
    gap: 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl {
    gap: 0;
  }
}
.hero-heading__ttl span {
  display: block;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% / 2);
  flex: 0 0 -webkit-calc(100% / 2);
  flex: 0 0 calc(100% / 2);
  opacity: 0;
  -webkit-transition: opacity 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl span {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl span {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(100% / 4);
    flex: 0 0 -webkit-calc(100% / 4);
    flex: 0 0 calc(100% / 4);
  }
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl span img {
    width: 140px;
  }
}
@media only screen and (min-width: 992px) {
  .hero-heading__ttl span img {
    width: 170px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl span img {
    width: auto;
  }
}
.hero-heading__ttl span:nth-of-type(1) img {
  aspect-ratio: 265/237;
  padding-right: 20px;
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl span:nth-of-type(1) img {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl span:nth-of-type(1) img {
    padding-right: 0;
    margin-right: 32px;
  }
}
.hero-heading__ttl span:nth-of-type(2) img {
  aspect-ratio: 281/246;
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl span:nth-of-type(2) img {
    margin-right: 37px;
  }
}
.hero-heading__ttl span:nth-of-type(3) img {
  aspect-ratio: 285/249;
  padding-right: 10px;
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl span:nth-of-type(3) img {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-heading__ttl span:nth-of-type(3) img {
    padding-right: 0;
    margin-right: 15px;
  }
}
.hero-heading__ttl span:nth-of-type(4) img {
  aspect-ratio: 258/250;
}
.hero-heading__ttl img {
  -webkit-filter: drop-shadow(0 0 20px black);
  filter: drop-shadow(0 0 20px black);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
@media only screen and (min-width: 768px) {
  .hero-heading__ttl img {
    -webkit-filter: drop-shadow(0 0 30px rgba(0, 0, 0, 0.55));
    filter: drop-shadow(0 0 30px rgba(0, 0, 0, 0.55));
  }
}
.hero__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  position: absolute;
  top: 114px;
  right: 25px;
  z-index: 6;
}
@media only screen and (min-width: 768px) {
  .hero__tag {
    gap: 14px;
    top: 123px;
    right: 52px;
  }
}
.hero__tag span img {
  width: 30px;
}
@media only screen and (min-width: 992px) {
  .hero__tag span img {
    width: 100%;
  }
}
.hero__vid {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
.hero__vid video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}
.hero__vid video.hide {
  opacity: 0;
}
.hero-swiper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.hero-swiper .swiper-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  text-align: center;
  opacity: 0 !important;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.hero-swiper .swiper-slide-prev {
  opacity: 0 !important;
}
.hero-swiper .swiper-slide-active {
  opacity: 1 !important;
}
.hero-swiper__picture {
  display: block;
}
.hero-swiper__picture img {
  width: 100%;
}

.pagetitlebar {
  background-color: #FC4B86;
  position: relative;
  height: 667px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar {
    height: 720px;
  }
}
.pagetitlebar::after {
  content: "";
  background-color: rgba(252, 75, 134, 0.8);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.pagetitlebar.-d-pink::after {
  background-color: rgba(252, 75, 134, 0.9);
}
.pagetitlebar-block {
  position: relative;
  height: 100%;
}
.pagetitlebar-top {
  width: 100%;
  position: absolute;
  top: 33.133%;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-top {
    top: 34%;
  }
}
.pagetitlebar-slider {
  position: relative;
  z-index: 2;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 32px;
  overflow: hidden;
  margin-bottom: 2px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-slider {
    gap: 64px;
  }
}
.pagetitlebar-slider__track {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  min-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 32px;
  -webkit-animation: infiniteScroll 50s linear infinite;
  animation: infiniteScroll 50s linear infinite;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-slider__track {
    gap: 64px;
  }
}
.pagetitlebar-slider__track span {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  color: #ffffff;
  font-family: "Montserrat", serif;
  font-size: 6.4rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-slider__track span {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar-slider__track span {
    font-size: 12rem;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-slider__track span {
    font-size: 15rem;
  }
}
.pagetitlebar-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.pagetitlebar-img__bg {
  width: 100%;
  height: 100%;
}
.pagetitlebar-img__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.pagetitlebar-img__person {
  position: relative;
  z-index: 10;
  height: 510px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-img__person {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 10;
  }
}
.pagetitlebar-img__person img {
  -webkit-transform: scale(1.06);
  -ms-transform: scale(1.06);
  transform: scale(1.06);
  aspect-ratio: 375/510;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-filter: drop-shadow(10px 0 30px rgba(0, 0, 0, 0.5));
  filter: drop-shadow(10px 0 30px rgba(0, 0, 0, 0.5));
  -webkit-transition: -webkit-transform 1s ease-in-out;
  transition: -webkit-transform 1s ease-in-out;
  transition: transform 1s ease-in-out;
  transition: transform 1s ease-in-out, -webkit-transform 1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-img__person img {
    aspect-ratio: 1280/720;
    -webkit-filter: drop-shadow(10px 0 50px rgba(0, 0, 0, 0.5));
    filter: drop-shadow(10px 0 50px rgba(0, 0, 0, 0.5));
  }
}
.pagetitlebar-img__person.animated {
  opacity: 1;
}
.pagetitlebar-img__person.animated img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.pagetitlebar-title {
  position: relative;
  z-index: 5;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto 10px;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-title {
    font-size: 2.4rem;
    line-height: 1.5;
    margin-inline: auto 48px;
  }
}
.pagetitlebar-title > span {
  display: block;
  padding: 0;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-title > span {
    background-color: #ffffff;
    padding: 8px 16px 7px;
  }
}
.pagetitlebar-title > span span {
  background-color: #ffffff;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  padding-inline: 12px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-title > span span {
    background-color: transparent;
    display: inline;
    padding: 0;
  }
}
.pagetitlebar-title > span span:not(:last-of-type) {
  margin-bottom: 8px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-title > span span:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.pagetitlebar-desc {
  position: absolute;
  z-index: 3;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 24px 25px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-desc {
    width: auto;
    padding: 0;
    left: 80px;
    bottom: 49px;
  }
}
.pagetitlebar-note {
  text-align: justify;
  color: #ffffff;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.86;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-note {
    max-width: 284px;
  }
}
.pagetitlebar-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.pagetitlebar-heading__image {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
.pagetitlebar-heading__image:nth-of-type(1) {
  margin-right: 14px;
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-heading__image:nth-of-type(1) {
    margin-right: 33px;
  }
}
.pagetitlebar-heading__image:nth-of-type(2) {
  margin-right: 11px;
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-heading__image:nth-of-type(2) {
    margin-right: 38px;
  }
}
.pagetitlebar-heading__image:nth-of-type(3) {
  margin-right: 4px;
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-heading__image:nth-of-type(3) {
    margin-right: 15px;
  }
}
.pagetitlebar-heading__image.animated {
  opacity: 1;
}
.pagetitlebar-person-info {
  background-color: #47D68F;
  padding: 24px 0 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 24px;
  position: relative;
  z-index: 10;
  margin-bottom: 24px;
  clip-path: inset(0% 100% 0% 0%);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-info {
    background-color: #47D68F;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 5px 10px 32px 0;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar-person-info {
    left: 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-person-info {
    left: 88px;
  }
}
@media (min-width: 1245px) {
  .pagetitlebar-person-info {
    background-color: transparent;
  }
}
.pagetitlebar-person-info__tag {
  display: inline-block;
  background-color: #ffffff;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  padding: 8px;
  color: #000000;
  font-family: "Montserrat", serif;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.3;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-info__tag {
    font-size: 1.6rem;
    line-height: 1.2;
  }
}
.pagetitlebar-person-info__title {
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
  border-bottom: 1px solid #000000;
  margin-bottom: 12px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-info__title {
    margin-bottom: 10px;
    padding-bottom: 2px;
  }
}
.pagetitlebar-person-info__title span:last-of-type {
  margin-left: 8px;
}
.pagetitlebar-person-info__names {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 6px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-info__names {
    margin-bottom: 10px;
  }
}
.pagetitlebar-person-info__name {
  letter-spacing: 0.04em;
}
.pagetitlebar-person-info__name--jp {
  font-family: "Shippori Mincho", serif;
  font-size: 2.4rem;
}
.pagetitlebar-person-info__name--eng {
  font-family: "Montserrat", serif;
  font-size: 1.2rem;
  margin-left: 16px;
}
.pagetitlebar-person-info__desc {
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.71;
}
.pagetitlebar-person-info__desc:not(:last-of-type) {
  margin-bottom: 4px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-info__desc:not(:last-of-type) {
    margin-bottom: 8px;
  }
}
.pagetitlebar-person-info.animated {
  clip-path: inset(0% 0% 0% 0%);
}
.pagetitlebar-person-note {
  background-color: #ffffff;
  width: 216px;
  margin: 0 auto;
  padding: 4px 0 23px;
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 10;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-note {
    width: auto;
    margin: 0;
    padding: 9px 16px 38px;
    bottom: 0;
    left: unset;
    right: 20px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-person-note {
    right: 96px;
  }
}
.pagetitlebar-person-note::after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border-width: 0 108px 39px 108px;
  border-style: solid;
  border-color: transparent transparent #ffffff transparent;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: absolute;
  bottom: 100%;
  left: 0;
  z-index: 10;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-note::after {
    border-width: 0 128px 32px 128px;
  }
}
.pagetitlebar-person-note__text {
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.666;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-note__text {
    font-size: 2.4rem;
  }
}
.pagetitlebar-person-note img {
  position: absolute;
  rotate: -23deg;
  max-width: 40px;
  aspect-ratio: 40/87;
  -o-object-fit: contain;
  object-fit: contain;
  top: 100%;
  right: 50%;
  -webkit-transform: translateX(50%);
  -ms-transform: translateX(50%);
  transform: translateX(50%);
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-person-note img {
    right: 45.5%;
    top: -webkit-calc(100% - 20px);
    top: calc(100% - 20px);
    rotate: unset;
    -webkit-transform: unset;
    -ms-transform: unset;
    transform: unset;
    -o-object-fit: unset;
    object-fit: unset;
    max-width: 100%;
  }
}
.pagetitlebar-person-note.animated {
  opacity: 1;
}
.pagetitlebar--person {
  height: 812px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--person {
    height: 720px;
  }
}
.pagetitlebar--person .pagetitlebar-top {
  top: 104px;
  padding: 0 10px;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--person .pagetitlebar-top {
    top: 104px;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar--person .pagetitlebar-top {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pagetitlebar--green {
  background-color: #47D68F;
}
.pagetitlebar--green::after {
  background-color: rgba(71, 214, 143, 0.8);
}
.pagetitlebar--green .pagetitlebar-top {
  z-index: 3;
}
.pagetitlebar--green.pagetitlebar--person {
  background-color: #47D68F;
}
.pagetitlebar--green.pagetitlebar--person::after {
  background-color: #47D68F;
}
.pagetitlebar--green.-main .pagetitlebar-slider__track {
  -webkit-animation: infiniteScroll 30s linear infinite;
  animation: infiniteScroll 30s linear infinite;
}
.pagetitlebar--yellow {
  background-color: #FDCD00;
}
.pagetitlebar--yellow::after {
  background-color: rgba(253, 205, 0, 0.8);
}
.pagetitlebar--yellow.-cm .pagetitlebar-slider__track {
  -webkit-animation: infiniteScroll 90s linear infinite;
  animation: infiniteScroll 90s linear infinite;
}
.pagetitlebar--blue {
  background-color: #5DBFF3;
}
.pagetitlebar--blue::after {
  background-color: #5DBFF3;
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--blue .pagetitlebar-top {
    top: 95px;
  }
}
.pagetitlebar--blue .pagetitlebar-desc {
  background: #5dbff3;
  padding: 20.8px 25px;
  left: 0;
  bottom: 0;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--blue .pagetitlebar-desc {
    background: rgba(93, 191, 243, 0.9);
    padding: 32px 32px 41.5px 80px;
  }
}
.pagetitlebar--blue.-session01 {
  position: relative;
}
.pagetitlebar--blue.-session01::before {
  position: absolute;
  content: "";
  background: url(../img/culture/talk-session01/pagetitlebar-session-sp.png) no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  bottom: -4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--blue.-session01::before {
    background: url(../img/culture/talk-session01/pagetitlebar-session-pc.png) no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 85%;
    bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar--blue.-session01::before {
    height: 100%;
  }
}
@media (min-width: 1280px) {
  .pagetitlebar--blue.-session01::before {
    width: 1280px;
  }
}
@media (max-width: 432px) {
  .pagetitlebar--blue.-session01 .pagetitlebar-note {
    max-width: 340px;
    margin-inline: auto;
  }
}
.pagetitlebar--blue.-session02 {
  position: relative;
}
.pagetitlebar--blue.-session02::before {
  position: absolute;
  content: "";
  background: url(../img/culture/talk-session02/pagetitlebar-session-sp.png) no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  bottom: -4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--blue.-session02::before {
    background: url(../img/culture/talk-session02/pagetitlebar-session-pc.png) no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 85%;
    bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar--blue.-session02::before {
    height: 100%;
  }
}
@media (min-width: 1280px) {
  .pagetitlebar--blue.-session02::before {
    width: 1280px;
  }
}
@media (max-width: 432px) {
  .pagetitlebar--blue.-session02 .pagetitlebar-note {
    max-width: 350px;
    margin-inline: auto;
  }
}
.pagetitlebar--blue.-voice {
  position: relative;
}
.pagetitlebar--blue.-voice::before {
  position: absolute;
  content: "";
  background: url(../img/culture/voice/pagetitlebar-voice-sp.png) no-repeat;
  background-position: center;
  background-size: contain;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--blue.-voice::before {
    background: url(../img/culture/voice/pagetitlebar-01-pc.png) no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 82%;
    bottom: -20px;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar--blue.-voice::before {
    height: 100%;
  }
}
@media (min-width: 1280px) {
  .pagetitlebar--blue.-voice::before {
    width: 1280px;
    background-size: cover;
  }
}
.pagetitlebar--blue.-voice::after {
  position: absolute;
  content: none;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--blue.-voice::after {
    content: "";
    background: url(../img/culture/voice/pagetitlebar-02-pc.png) no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 85%;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar--blue.-voice::after {
    height: 100%;
  }
}
@media (min-width: 1280px) {
  .pagetitlebar--blue.-voice::after {
    width: 1280px;
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--blue.-voice .pagetitlebar-desc {
    padding-inline: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--blue.-voice .pagetitlebar-top {
    top: 33.6%;
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--blue.-voice .pagetitlebar-title {
    margin-top: -3px;
  }
}
.pagetitlebar--blue.-voice .pagetitlebar-img__bg {
  display: none;
}
.pagetitlebar--blue.-voice .pagetitlebar-slider__track {
  -webkit-animation: infiniteScroll 30s linear infinite;
  animation: infiniteScroll 30s linear infinite;
}
.pagetitlebar--purple {
  background-color: #AA6DEE;
}
.pagetitlebar--purple::after {
  background-color: rgba(170, 109, 238, 0.9);
}
.pagetitlebar--purple.-main {
  position: relative;
}
.pagetitlebar--purple.-main::before {
  position: absolute;
  content: "";
  background: url(../img/page-recruit/pagetitlebar-voice-sp.png) no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  bottom: -4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--purple.-main::before {
    background: url(../img/page-recruit/pagetitlebar-voice-pc.png) no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 85%;
    bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar--purple.-main::before {
    height: 100%;
  }
}
@media (min-width: 1280px) {
  .pagetitlebar--purple.-main::before {
    width: 1280px;
  }
}
.pagetitlebar--purple.-main .pagetitlebar-desc {
  background: #aa6dee;
  padding: 27px 25px;
  left: 0;
  bottom: 0;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--purple.-main .pagetitlebar-desc {
    background: rgba(170, 109, 238, 0.9);
    padding: 29px 32px 29px 80px;
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--purple.-main .pagetitlebar-top {
    top: 98px;
  }
}
.pagetitlebar--purple.-main .pagetitlebar-img__bg {
  display: none;
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--purple.--top .pagetitlebar-top {
    top: 42.8%;
  }
}
.pagetitlebar--lavendar {
  background-color: #5984F8;
}
.pagetitlebar--lavendar::after {
  background-color: rgba(89, 132, 248, 0.85);
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--lavendar .pagetitlebar-desc {
    padding: 24px 26px;
  }
}
.pagetitlebar--lavendar.-numbers::after {
  content: none;
}
.pagetitlebar--lavendar.-numbers .pagetitlebar-desc {
  z-index: 6;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-img__bg img {
    height: 70%;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-img__bg img {
    height: 80%;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-img__bg img {
    height: 100%;
  }
}
.pagetitlebar--lavendar.-numbers .pagetitlebar-block {
  position: relative;
}
.pagetitlebar--lavendar.-numbers .pagetitlebar-block::before {
  content: none;
  position: absolute;
  background: url(../img/page-environment/infographics/pagetitlebar-icon-01.png) no-repeat;
  background-position: center;
  background-size: cover;
  bottom: 0;
  left: 50%;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-block::before {
    content: "";
    width: 127px;
    height: 300px;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-block::before {
    width: 147px;
    height: 341px;
  }
}
.pagetitlebar--lavendar.-numbers .pagetitlebar-block::after {
  content: none;
  position: absolute;
  background: url(../img/page-environment/infographics/pagetitlebar-icon-02.png) no-repeat;
  background-position: center;
  background-size: cover;
  width: 94px;
  height: 245px;
  bottom: 95px;
  left: 30%;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-block::after {
    content: "";
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar--lavendar.-numbers .pagetitlebar-desc {
    background-color: #5984F8;
    padding-block: 21px;
  }
}
.pagetitlebar-company {
  position: relative;
}
.pagetitlebar-company::before {
  position: absolute;
  content: "";
  background: url(../img/page-company/pagetitlecar-company-sp.png) no-repeat;
  background-position: center;
  background-size: cover;
  width: 375px;
  height: 100%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .pagetitlebar-company::before {
    background: url(../img/page-company/pagetitlecar-company-pc.png) no-repeat;
    background-position: center;
    background-size: cover;
    width: 80%;
    height: 75%;
  }
}
@media only screen and (min-width: 992px) {
  .pagetitlebar-company::before {
    width: 85%;
    height: 85%;
  }
}
@media only screen and (min-width: 1200px) {
  .pagetitlebar-company::before {
    width: 1280px;
    height: 100%;
  }
}
.pagetitlebar-company::after {
  background: #FC4B86;
}
@media (min-width: 768px) and (max-width: 991px) {
  .pagetitlebar-company .pagetitlebar-note {
    max-width: 200px;
  }
  .pagetitlebar-company .pagetitlebar-desc {
    left: 30px;
  }
}
@media (min-width: 991px) and (max-width: 1199px) {
  .pagetitlebar-company .pagetitlebar-note {
    max-width: 260px;
  }
  .pagetitlebar-company .pagetitlebar-desc {
    left: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .pagetitlebar-company .pagetitlebar-top {
    top: 98px;
  }
  .pagetitlebar-company .pagetitlebar-desc {
    background-color: #FC4B86;
    z-index: 5;
    padding: 21px 25px;
  }
}

.page {
  padding: 64px 0 0;
}
@media only screen and (min-width: 768px) {
  .page {
    padding: 120px 0 70px;
  }
}
.page--p0 {
  padding: 0;
}

.section {
  padding-top: 65px;
}
@media only screen and (min-width: 768px) {
  .section {
    padding-top: 120px;
    padding-bottom: 60px;
  }
}
.section.sales {
  padding-top: 23px;
}
@media only screen and (min-width: 768px) {
  .section.sales {
    padding-top: 120px;
    padding-bottom: 60px;
  }
}

.nav-company {
  position: relative;
  z-index: 94;
  padding-block: 80px 114px;
  padding-inline: 15px;
}
@media only screen and (min-width: 768px) {
  .nav-company {
    padding-block: 90px 220px;
    padding-inline: 0;
  }
}
.nav-company__heading {
  margin-bottom: 23px;
}
.nav-company__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  font-family: "Shippori Mincho", serif;
  font-size: 2.4rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: -webkit-calc(32/24);
  line-height: calc(32/24);
  color: #000000;
}
@media only screen and (min-width: 768px) {
  .nav-company__title {
    font-size: 4rem;
    line-height: -webkit-calc(40/32);
    line-height: calc(40/32);
  }
}
.nav-company__title > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
}
.nav-company__title > span span {
  -webkit-transform: translateY(5rem) rotate(45deg);
  -ms-transform: translateY(5rem) rotate(45deg);
  transform: translateY(5rem) rotate(45deg);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
.nav-company__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (min-width: 576px) {
  .nav-company__row {
    gap: 10px;
  }
}
@media only screen and (min-width: 992px) {
  .nav-company__row {
    gap: 24px;
  }
}
.nav-company__column {
  width: 100%;
  max-width: 100%;
}
@media only screen and (min-width: 576px) {
  .nav-company__column {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 10px);
    flex: 1 1 -webkit-calc(50% - 10px);
    flex: 1 1 calc(50% - 10px);
    max-width: -webkit-calc(50% - 10px);
    max-width: calc(50% - 10px);
  }
}
@media only screen and (min-width: 992px) {
  .nav-company__column {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(33.333% - 16px);
    flex: 1 1 -webkit-calc(33.333% - 16px);
    flex: 1 1 calc(33.333% - 16px);
    max-width: -webkit-calc(33.333% - 16px);
    max-width: calc(33.333% - 16px);
  }
}
.nav-company__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  position: relative;
  overflow: hidden;
  background: #ffffff;
  -webkit-transition: background-color 0.4s ease-in-out;
  transition: background-color 0.4s ease-in-out;
  padding-right: 40px;
}
.nav-company__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  z-index: 0;
  -webkit-transition: left 0.4s ease-in-out;
  transition: left 0.4s ease-in-out;
}
.nav-company__card::after {
  content: "";
  display: inline-block;
  background-image: url("data:image/svg+xml,%3Csvg id='Group_1538' data-name='Group 1538' xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle id='Ellipse_27' data-name='Ellipse 27' cx='12' cy='12' r='12'/%3E%3Cpath id='Path_196' data-name='Path 196' d='M-12238.845-21646.678l4,4-4,4' transform='translate(12249.345 21655.178)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E%0A");
  background-size: cover;
  background-repeat: no-repeat;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: right 0.4s ease-in-out;
  transition: right 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company__card:hover::before {
    left: 0;
  }
  .nav-company__card:hover .nav-company__link {
    color: #ffffff;
  }
}
.nav-company__card.active {
  background-color: #FC4B86;
}
.nav-company__card.active::before {
  display: none;
}
.nav-company__card.active::after {
  display: none;
}
.nav-company__card.active .nav-company__link {
  color: #ffffff;
}
.nav-company--pink .nav-company__title > span::first-letter {
  color: #FC4B86;
}
.nav-company--pink .nav-company__title > span span:first-of-type {
  color: #FC4B86;
}
.nav-company--pink .nav-company__title::after {
  position: absolute;
  content: "";
  background: url(../img/common/about-icon.svg) no-repeat;
  background-position: center;
  background-size: cover;
  width: 56px;
  height: 48px;
  right: -26%;
  top: -27px;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company--pink .nav-company__title::after {
    width: 92px;
    height: 80px;
    right: -26%;
    top: -59px;
  }
}
.nav-company--pink .nav-company__title.icon-animate::after {
  opacity: 1;
  -webkit-animation: pinkIconAnimate 2.5s steps(1) infinite;
  animation: pinkIconAnimate 2.5s steps(1) infinite;
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}
@media only screen and (min-width: 768px) {
  .nav-company--pink .nav-company__card::before {
    background: -webkit-gradient(linear, left top, right top, from(#FC4B86));
    background: -webkit-linear-gradient(left, #FC4B86);
    background: linear-gradient(to right, #FC4B86);
  }
}
@media only screen and (min-width: 768px) {
  .nav-company--yellow .nav-company__card:hover .nav-company__link {
    color: #000000;
  }
}
.nav-company--yellow .nav-company__title {
  display: inline-block;
  position: relative;
}
.nav-company--yellow .nav-company__title > span::first-letter {
  color: #FDCD00;
}
.nav-company--yellow .nav-company__title > span span:first-of-type {
  color: #FDCD00;
}
.nav-company--yellow .nav-company__title::after {
  position: absolute;
  content: "";
  background: url(../img/common/yellow-pen.gif) no-repeat;
  background-position: center;
  background-size: cover;
  width: 102px;
  height: 46px;
  right: -92%;
  top: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company--yellow .nav-company__title::after {
    width: 158px;
    height: 70px;
    right: -83%;
    top: -40px;
  }
}
.nav-company--yellow .nav-company__title.icon-animate::after {
  opacity: 1;
  -webkit-animation: pinkIconAnimate 2.5s steps(1) infinite;
  animation: pinkIconAnimate 2.5s steps(1) infinite;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
.nav-company--yellow .nav-company__card.active {
  background-color: #FDCD00;
}
.nav-company--yellow .nav-company__card.active .nav-company__link {
  color: #000000;
}
.nav-company--yellow .nav-company__card::before {
  background: -webkit-gradient(linear, left top, right top, from(#FDCD00));
  background: -webkit-linear-gradient(left, #FDCD00);
  background: linear-gradient(to right, #FDCD00);
}
.nav-company--blue.nav-company {
  padding-top: 0;
}
.nav-company--blue .nav-company__title > span::first-letter {
  color: #5DBFF3;
}
.nav-company--blue .nav-company__title > span span:first-of-type {
  color: #5DBFF3;
}
.nav-company--blue .nav-company__title::after {
  position: absolute;
  content: "";
  background: url(../img/common/blue-music.gif);
  background-position: center;
  background-size: cover;
  width: 80px;
  height: 38px;
  right: -70%;
  top: -20px;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company--blue .nav-company__title::after {
    width: 125px;
    height: 58px;
    right: -65%;
    top: -44px;
  }
}
.nav-company--blue .nav-company__title.icon-animate::after {
  opacity: 1;
  -webkit-animation: pinkIconAnimate 2.5s steps(1) infinite;
  animation: pinkIconAnimate 2.5s steps(1) infinite;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
.nav-company--blue .nav-company__card.active {
  background-color: #5DBFF3;
}
.nav-company--blue .nav-company__card.active .nav-company__link {
  color: #000000;
}
.nav-company--blue .nav-company__card::before {
  background: -webkit-gradient(linear, left top, right top, from(#5DBFF3));
  background: -webkit-linear-gradient(left, #5DBFF3);
  background: linear-gradient(to right, #5DBFF3);
}
.nav-company--blue .nav-company__card:hover .nav-company__link {
  color: #000000;
}
@media only screen and (max-width: 767px) {
  .nav-company--blue .nav-company__image img {
    max-width: 118px;
  }
}
.nav-company--purple {
  padding-top: 102px;
}
@media only screen and (min-width: 768px) {
  .nav-company--purple {
    padding-top: 157px;
  }
}
.nav-company--purple .nav-company__title {
  display: inline-block;
  position: relative;
}
.nav-company--purple .nav-company__title > span::first-letter {
  color: #AA6DEE;
}
.nav-company--purple .nav-company__title > span span:first-of-type {
  color: #AA6DEE;
}
.nav-company--purple .nav-company__title::after {
  position: absolute;
  content: "";
  background: url(../img/common/recruit-icon.svg) no-repeat;
  background-position: center;
  background-size: cover;
  width: 32px;
  height: 41px;
  right: -48%;
  top: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company--purple .nav-company__title::after {
    width: 48px;
    height: 61px;
    right: -40%;
    top: -40px;
  }
}
.nav-company--purple .nav-company__title.icon-animate::after {
  opacity: 1;
  -webkit-animation: pinkIconAnimate 2.5s steps(1) infinite;
  animation: pinkIconAnimate 2.5s steps(1) infinite;
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}
.nav-company--purple .nav-company__card.active {
  background-color: #AA6DEE;
}
.nav-company--purple .nav-company__card.active .nav-company__link {
  color: #ffffff;
}
.nav-company--purple .nav-company__card::before {
  background: -webkit-gradient(linear, left top, right top, from(#AA6DEE));
  background: -webkit-linear-gradient(left, #AA6DEE);
  background: linear-gradient(to right, #AA6DEE);
}
@media only screen and (max-width: 767px) {
  .nav-company--purple .nav-company__image img {
    max-width: 118px;
  }
}
.nav-company--lavendar {
  padding-top: 79px;
}
@media only screen and (min-width: 768px) {
  .nav-company--lavendar {
    padding-top: 159px;
  }
}
.nav-company--lavendar .nav-company__heading {
  margin-bottom: 15px;
}
@media only screen and (min-width: 768px) {
  .nav-company--lavendar .nav-company__heading {
    margin-bottom: 29px;
  }
}
.nav-company--lavendar .nav-company__title {
  display: inline-block;
  position: relative;
}
.nav-company--lavendar .nav-company__title > span::first-letter {
  color: #5984F8;
}
.nav-company--lavendar .nav-company__title > span span:first-of-type {
  color: #5984F8;
}
.nav-company--lavendar .nav-company__title::after {
  position: absolute;
  content: "";
  background: url(../img/common/environment-icon.svg) no-repeat;
  background-position: center;
  background-size: cover;
  width: 42px;
  height: 42px;
  right: -33%;
  top: -6px;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .nav-company--lavendar .nav-company__title::after {
    width: 80px;
    height: 80px;
    right: -36%;
    top: -16px;
  }
}
.nav-company--lavendar .nav-company__title.icon-animate::after {
  opacity: 1;
  -webkit-animation: pinkIconAnimate 2.5s steps(1) infinite;
  animation: pinkIconAnimate 2.5s steps(1) infinite;
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}
.nav-company--lavendar .nav-company__card.active {
  background-color: #5984F8;
}
.nav-company--lavendar .nav-company__card.active .nav-company__link {
  color: #ffffff;
}
.nav-company--lavendar .nav-company__card::before {
  background: -webkit-gradient(linear, left top, right top, from(#5984F8));
  background: -webkit-linear-gradient(left, #5984F8);
  background: linear-gradient(to right, #5984F8);
}
@media only screen and (max-width: 767px) {
  .nav-company--lavendar .nav-company__image img {
    max-width: 118px;
    aspect-ratio: 118/120;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .nav-company--lavendar .nav-company__heading {
    margin-bottom: 19px;
  }
  .nav-company--lavendar .nav-company__row {
    gap: 16px;
  }
}
.nav-company__content {
  display: block;
  position: relative;
  z-index: 1;
}
.nav-company__link {
  font-size: 1.5rem;
  line-height: -webkit-calc(26 /15);
  line-height: calc(26 /15);
  font-weight: 500;
  color: #000000;
  text-align: start;
  -webkit-transition: color 0.4s ease-in-out;
  transition: color 0.4s ease-in-out;
}
.nav-company__image {
  position: relative;
  z-index: 1;
}
.nav-company__image img {
  max-width: 90px;
}
@media only screen and (min-width: 768px) {
  .nav-company__image img {
    max-width: 100%;
  }
}
.nav-company .about-us__ttl {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Shippori Mincho", serif;
  font-size: 3.2rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  margin-bottom: 13px;
}
@media only screen and (min-width: 768px) {
  .nav-company .about-us__ttl {
    font-size: 3.8rem;
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 992px) {
  .nav-company .about-us__ttl {
    font-size: 4.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .nav-company .about-us__ttl {
    font-size: 4.8rem;
  }
}

.entry-nav {
  position: relative;
  z-index: 95;
}
.entry-nav__flex {
  position: relative;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .entry-nav__flex {
    max-width: 416px;
  }
}
@media only screen and (min-width: 768px) {
  .entry-nav__flex:hover .header-entry__abs {
    opacity: 1;
    max-height: 100%;
    visibility: visible;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    pointer-events: auto;
  }
}
.entry-nav__flex .header-entry__abs {
  width: 100%;
  position: absolute;
  top: 0;
  left: unset;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  margin-top: 0;
}
.entry-nav__flex .header-entry__abs::before {
  content: none;
}
.entry-nav__flex .header-entry__abs.active {
  opacity: 1;
  max-height: 100%;
  visibility: visible;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  pointer-events: auto;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .entry-nav__flex .header-entry__abs:hover {
    opacity: 1;
    max-height: 100%;
    visibility: visible;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    pointer-events: auto;
  }
}
.entry-nav__flex .header-entry__buttons {
  width: 100%;
  backdrop-filter: blur(30px) brightness(2.1);
  -webkit-backdrop-filter: blur(30px) brightness(2.1);
  max-width: 100%;
  padding: 8.8px 9px;
  border: 1px solid #F4F4F4;
}
@media only screen and (min-width: 768px) {
  .entry-nav__flex .header-entry__buttons {
    padding: 20px 21px;
  }
}
.entry-nav__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  margin-top: -50px;
  padding: 0 5px;
}
@media only screen and (min-width: 768px) {
  .entry-nav__btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 0;
    gap: 24px;
    margin-top: -60px;
  }
}
.entry-nav__btns .btn-primary {
  display: block;
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .entry-nav__btns .btn-primary.entry-nav__flex-link:has(+ .header-entry__abs .header-entry__buttons:hover) {
    background-color: transparent;
  }
}
@media only screen and (max-width: 767px) {
  .entry-nav__btns .btn-primary.entry-nav__flex-link:has(+ .header-entry__abs.active) {
    background-color: transparent;
  }
  .entry-nav__btns .btn-primary.entry-nav__flex-link::after {
    width: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .entry-nav__btns .btn-primary {
    padding: 38px 25px 37px;
  }
}
@media only screen and (min-width: 768px) {
  .entry-nav__btns .btn-primary {
    max-width: 416px;
  }
}

.footer {
  background-color: #fff;
  padding: 114px 0 48px;
  margin-top: -50px;
  position: relative;
  z-index: 94;
}
@media only screen and (min-width: 768px) {
  .footer {
    padding: 140px 0 80px;
    margin-top: -62px;
  }
}
.footer__content {
  width: 100%;
  padding-inline: 9px;
}
@media only screen and (min-width: 768px) {
  .footer__content {
    padding-inline: 36px 22px;
  }
}
.footer__logo {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .footer__logo {
    text-align: start;
  }
}
.footer__logo-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .footer__logo-link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
@media only screen and (min-width: 768px) {
  .footer__logo-link:hover {
    opacity: 0.6;
  }
}
.footer__logo-link span {
  font-family: "Montserrat", serif;
  font-size: 1.4rem;
  font-weight: 700;
  color: #000000;
}
@media only screen and (min-width: 768px) {
  .footer__logo-link span {
    font-size: 1.6rem;
  }
}
.footer__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  gap: 36px;
  margin-top: 50px;
}
@media only screen and (min-width: 768px) {
  .footer__links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 32px;
    margin-top: 100px;
  }
}
.footer__links-list {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0 5px;
}
@media only screen and (min-width: 768px) {
  .footer__links-list {
    padding: 0;
  }
}
.footer__links-item:not(:last-of-type) {
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) {
  .footer__links-item:not(:last-of-type) {
    margin-bottom: 17px;
  }
}
.footer__links-link {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.2;
  text-decoration: none;
  color: #000000;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
}
.footer__links-link::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='15' height='15' viewBox='0 0 15 15'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rectangle_198' data-name='Rectangle 198' width='15' height='15' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Group_566' data-name='Group 566' clip-path='url(%23clip-path)'%3E%3Cpath id='Path_250' data-name='Path 250' d='M5.237,2.334H.5V12.859H11.027V7.6' transform='translate(0.289 1.351)' fill='none' stroke='%23000' stroke-miterlimit='10' stroke-width='1.5'/%3E%3Cline id='Line_1' data-name='Line 1' y1='8.158' x2='8.158' transform='translate(6.052 0.789)' fill='none' stroke='%23000' stroke-miterlimit='10' stroke-width='1.5'/%3E%3Cpath id='Path_251' data-name='Path 251' d='M11.509,7.343V.5H4.667' transform='translate(2.702 0.289)' fill='none' stroke='%23000' stroke-miterlimit='10' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
}
@media only screen and (min-width: 768px) {
  .footer__links-link:hover {
    opacity: 0.6;
  }
}
.footer__copyright {
  font-family: "Montserrat", serif;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .footer__copyright {
    font-size: 1.1rem;
  }
}

.footer-entry {
  padding: 63px 0 48px;
}
@media only screen and (min-width: 768px) {
  .footer-entry {
    padding: 80px 0 77px;
  }
}

div#chatbot-toggle_button {
  -webkit-box-shadow: none;
  box-shadow: none;
  opacity: 0;
  right: 10px;
  bottom: 0;
  z-index: 90;
  visibility: hidden;
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
}
@media only screen and (min-width: 768px) {
  div#chatbot-toggle_button {
    right: 12px;
  }
}
div#chatbot-toggle_button.show {
  visibility: visible;
  opacity: 1;
}
div#chatbot-toggle_button img {
  display: block;
  aspect-ratio: 105/192;
  width: 75px;
  height: auto;
}
@media only screen and (min-width: 768px) {
  div#chatbot-toggle_button img {
    width: 96px;
  }
}
div#chatbot-toggle_button #chat-button {
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  div#chatbot-toggle_button #chat-button:hover {
    opacity: 0.6;
  }
}

#chatbot-body #inline-frame {
  height: 100%;
}

.btn-primary {
  max-width: 156px;
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #ffffff;
  padding: 27px 25px 27px;
  background-color: black;
  backdrop-filter: blur(30px) brightness(1.1);
  -webkit-backdrop-filter: blur(30px) brightness(1.1);
  border: 1px solid #F4F4F4;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .btn-primary {
    max-width: 416px;
    width: 100%;
    font-size: 2rem;
    padding: 46px 32px 45px;
  }
}
.btn-primary::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 32px;
  height: 1px;
  background-color: #ffffff;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .btn-primary::after {
    width: 80px;
  }
}
.btn-primary span {
  font-family: "Montserrat", serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-left: 4px;
}
@media only screen and (min-width: 768px) {
  .btn-primary span {
    font-size: 2.2rem;
    font-weight: 600;
  }
}
@media only screen and (min-width: 768px) {
  .btn-primary:hover {
    background-color: rgba(0, 0, 0, 0);
    backdrop-filter: blur(30px) brightness(1.8);
    -webkit-backdrop-filter: blur(30px) brightness(1.8);
    color: #000000;
  }
}
.btn-secondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 16px;
  color: #000000;
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  line-height: 1.333;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .btn-secondary {
    padding-right: 8px;
    line-height: 1.6;
  }
}
.btn-secondary::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
.btn-secondary span {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: inline-block;
  position: relative;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #000000;
  -webkit-transition: background-color 0.4s ease-in-out;
  transition: background-color 0.4s ease-in-out;
}
.btn-secondary span::before {
  content: "";
  display: block;
  width: 4px;
  height: 8px;
  background-color: #ffffff;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5.061' height='8.707' viewBox='0 0 5.061 8.707'%3E%3Cpath d='M-12238.491-21638.324l-.707-.707,3.646-3.645-3.646-3.648.707-.707,4.354,4.355Z' transform='translate(12239.198 21647.031)' fill='%23fff'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5.061' height='8.707' viewBox='0 0 5.061 8.707'%3E%3Cpath d='M-12238.491-21638.324l-.707-.707,3.646-3.645-3.646-3.648.707-.707,4.354,4.355Z' transform='translate(12239.198 21647.031)' fill='%23fff'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  position: absolute;
  top: 50%;
  left: 53%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .btn-secondary:hover::after {
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--pink:hover span {
    background-color: #FC4B86;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--yellow:hover span {
    background-color: #FDCD00;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--yellow:hover span::before {
    background-color: #000000;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--green:hover span {
    background-color: #47D68F;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--blue:hover span {
    background-color: #5DBFF3;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--lavendar:hover span {
    background-color: #5984F8;
  }
}
@media only screen and (min-width: 768px) {
  .btn-secondary--purple:hover span {
    background-color: #AA6DEE;
  }
}
.btn-secondary.-down span::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='4.907' viewBox='0 0 8.707 4.907'%3E%3Cpath id='Path_196' data-name='Path 196' d='M-12238.845-21646.678l2.778,2.779,1.222,1.223-.666.666-3.334,3.332' transform='translate(-21638.324 12239.198) rotate(90)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='4.907' viewBox='0 0 8.707 4.907'%3E%3Cpath id='Path_196' data-name='Path 196' d='M-12238.845-21646.678l2.778,2.779,1.222,1.223-.666.666-3.334,3.332' transform='translate(-21638.324 12239.198) rotate(90)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E%0A");
  width: 8px;
  height: 4px;
}
.btn-link {
  background-color: #000000;
  padding: 14px 10px 14px 20px;
  color: #ffffff;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.73333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .btn-link {
    padding: 16px 16px 16px 24px;
  }
}
.btn-link::after {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Crect width='12' height='12' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/clipPath%3E%3C/defs%3E%3Ccircle cx='16' cy='16' r='16' fill='%23fff'/%3E%3Cg transform='translate(10.4 10.4)'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath d='M9.671,11.5H-.25V1.584H4.289v1.5H1.25V10H8.171V6.544h1.5Z' transform='translate(0.132 0.614)'/%3E%3Cpath d='M.53,7.057-.53,6,6-.53,7.057.53Z' transform='translate(4.842 0.632)'/%3E%3Cpath d='M10.89,5.975H9.39V1.25H4.667V-.25H10.89Z' transform='translate(1.228 0.132)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (min-width: 768px) {
  .btn-link:hover {
    opacity: 0.6;
  }
}

@-webkit-keyframes checkAnimation {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.08) rotate(0);
    transform: scale(1.08) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.08) rotate(12deg);
    transform: scale(1.08) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.08) rotate(-12deg);
    transform: scale(1.08) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.08) rotate(0deg);
    transform: scale(1.08) rotate(0deg);
  }
}

@keyframes checkAnimation {
  0% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
  25% {
    -webkit-transform: scale(1.08) rotate(0);
    transform: scale(1.08) rotate(0);
  }
  50% {
    -webkit-transform: scale(1.08) rotate(12deg);
    transform: scale(1.08) rotate(12deg);
  }
  75% {
    -webkit-transform: scale(1.08) rotate(-12deg);
    transform: scale(1.08) rotate(-12deg);
  }
  100% {
    -webkit-transform: scale(1.08) rotate(0deg);
    transform: scale(1.08) rotate(0deg);
  }
}
.heading-oval {
  position: relative;
  min-width: 262px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 13px 24px;
  color: #FFFFFF;
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin: 0 auto 36px;
  border-radius: 34px;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .heading-oval {
    padding: 15px 24px;
    min-width: 328px;
    font-size: 2.4rem;
    margin: 0 auto 48px;
  }
}
.heading-oval::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 10px 0 10px;
  border-color: transparent transparent transparent transparent;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.heading-oval--blue {
  background-color: #5DBFF3;
}
.heading-oval--blue::after {
  border-color: #5DBFF3 transparent transparent transparent;
}
.heading-oval--green {
  background-color: #47D68F;
}
.heading-oval--green::after {
  border-color: #47D68F transparent transparent transparent;
}
.heading-oval--yellow {
  background-color: #FDCD00;
  color: #000000;
}
.heading-oval--yellow::after {
  border-color: #FDCD00 transparent transparent transparent;
}
.heading-oval.animated {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.btn-entry {
  position: relative;
  max-width: 856px;
  width: 100%;
  margin: 0 auto;
  height: 120px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media only screen and (min-width: 768px) {
  .btn-entry {
    height: 160px;
  }
}
.btn-entry::before {
  content: "";
  display: block;
  width: 48px;
  height: 2px;
  background-color: #FFFFFF;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%) scaleX(1);
  -ms-transform: translateY(-50%) scaleX(1);
  transform: translateY(-50%) scaleX(1);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
}
@media only screen and (min-width: 768px) {
  .btn-entry::before {
    width: 152px;
  }
}
.btn-entry__eng {
  font-family: "Montserrat", serif;
  color: #FFFFFF;
  font-size: 3.2rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1;
  -webkit-transition: font-size 0.3s ease;
  transition: font-size 0.3s ease;
}
@media only screen and (min-width: 768px) {
  .btn-entry__eng {
    font-size: 4rem;
  }
}
.btn-entry__jp {
  color: #FFFFFF;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5555555556;
}
@media only screen and (min-width: 768px) {
  .btn-entry__jp {
    font-size: 1.8rem;
  }
}
.btn-entry--pink {
  background-color: #FC4B86;
}
.btn-entry--purple {
  background-color: #AA6DEE;
}
@media only screen and (min-width: 768px) {
  .btn-entry:hover {
    background-color: #000000;
  }
}
@media only screen and (min-width: 768px) {
  .btn-entry:hover::before {
    -webkit-transform: translateY(-50%) scaleX(0);
    -ms-transform: translateY(-50%) scaleX(0);
    transform: translateY(-50%) scaleX(0);
  }
}
@media only screen and (min-width: 768px) {
  .btn-entry:hover .btn-entry__eng {
    font-size: 5.6rem;
  }
}

.header-event .header__wrapper {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.header-event .header-logo {
  margin: 0;
}
.header-event__btn {
  width: 80px;
  height: 80px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50%;
  border: 1px solid #000000;
  font-family: "Montserrat", serif;
  color: #000000;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: 99;
  backdrop-filter: blur(30px) brightness(1.1);
  -webkit-backdrop-filter: blur(30px) brightness(1.1);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 768px) {
  .header-event__btn {
    width: 100px;
    height: 100px;
    font-size: 1.8rem;
    top: 24px;
    right: 24px;
  }
}
@media only screen and (min-width: 768px) {
  .header-event__btn:hover {
    color: #FFFFFF;
    backdrop-filter: blur(0) brightness(0);
  }
}

.footer-event {
  padding-top: 48px;
}
@media only screen and (min-width: 768px) {
  .footer-event {
    padding-top: 80px;
  }
}

.event {
  background-image: url(../img/event-bg.svg);
  background-repeat: repeat;
  background-position: center;
}
@media only screen and (min-width: 768px) {
  .event {
    background-size: contain;
  }
}
.event-mv {
  position: relative;
  isolation: isolate;
}
.event-mv__img img {
  width: 100%;
  height: 667px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .event-mv__img img {
    height: auto;
  }
}
.event-mv__vid {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.event-mv__vid video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
}
.event-mv__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  position: absolute;
  bottom: 22px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (min-width: 768px) {
  .event-mv__tags {
    bottom: unset;
    top: 110px;
    left: 20px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
@media only screen and (min-width: 992px) {
  .event-mv__tags {
    left: 20px;
    top: 120px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-mv__tags {
    top: 186px;
    left: 88px;
  }
}
.event-mv__tags div {
  white-space: nowrap;
  width: 100%;
}
.event-mv__tags div:not(:first-of-type) {
  margin-bottom: 6px;
}
@media only screen and (min-width: 768px) {
  .event-mv__tags div:not(:first-of-type) {
    margin-bottom: 10px;
  }
}
.event-mv__tags div > span {
  background-color: #FFFFFF;
  padding: 8px 8px 8px 16px;
}
.event-mv__tags.animation-tag div span {
  background-color: transparent;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6px;
  clip-path: inset(0% 100% 0% 0%);
}
@media only screen and (min-width: 768px) {
  .event-mv__tags.animation-tag div span {
    gap: 10px;
  }
}
.event-mv__tags.animation-tag div span p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
  padding: 8px 8px 8px 16px;
  background-color: #ffffff;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
.event-mv__tags.animation-tag div span.show {
  clip-path: inset(0% 0% 0% 0%);
}
.event-mv__heading {
  width: 100%;
  position: absolute;
  top: 72px;
  z-index: 3;
  padding: 0 25px;
}
@media only screen and (min-width: 768px) {
  .event-mv__heading {
    top: unset;
    bottom: 37px;
  }
}
@media only screen and (max-width: 767px) {
  .event-mv__heading .hero-heading__ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .event-mv__heading .hero-heading__ttl span {
    width: 120px;
  }
}
@media only screen and (max-width: 767px) {
  .event-mv__heading .hero-heading__ttl span img {
    padding-right: 0;
  }
}
.event-mv__heading .hero-heading__ttl span:nth-of-type(1) {
  max-width: 111px;
}
@media only screen and (min-width: 768px) {
  .event-mv__heading .hero-heading__ttl span:nth-of-type(1) {
    max-width: 100%;
  }
}
.event-mv__heading .hero-heading__ttl span:nth-of-type(2) {
  max-width: 111px;
}
@media only screen and (min-width: 768px) {
  .event-mv__heading .hero-heading__ttl span:nth-of-type(2) {
    max-width: 100%;
  }
}
.event-mv__heading .hero-heading__ttl span:nth-of-type(3) {
  max-width: 120px;
}
@media only screen and (min-width: 768px) {
  .event-mv__heading .hero-heading__ttl span:nth-of-type(3) {
    max-width: 100%;
  }
}
.event-mv__heading .hero-heading__ttl span:nth-of-type(1) {
  max-width: 108px;
}
@media only screen and (min-width: 768px) {
  .event-mv__heading .hero-heading__ttl span:nth-of-type(1) {
    max-width: 100%;
  }
}
.event-section--blueprint {
  overflow: hidden;
  padding: 100px 0 100px;
}
@media only screen and (min-width: 768px) {
  .event-section--blueprint {
    padding: 120px 0 80px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-section--blueprint {
    overflow: visible;
  }
}
.event-section--seminar {
  padding: 100px 0 80px;
}
@media only screen and (min-width: 768px) {
  .event-section--seminar {
    padding: 80px 0 160px;
  }
}
.event-section__wrapper {
  position: relative;
}
.event-section__wrapper .pen-pink {
  max-width: 120px;
  position: absolute;
  bottom: 100%;
  left: 0;
}
@media only screen and (min-width: 768px) {
  .event-section__wrapper .pen-pink {
    max-width: 100%;
    margin-bottom: 0;
    top: -70px;
    bottom: unset;
  }
}
@media only screen and (min-width: 992px) {
  .event-section__wrapper .pen-pink {
    top: -30px;
  }
}
.event-section__wrapper .pen-pink.animated {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-section__wrapper .event-seminar__person-1 {
  position: absolute;
  max-width: 167px;
  top: -152px;
  left: 8px;
}
@media only screen and (min-width: 768px) {
  .event-section__wrapper .event-seminar__person-1 {
    max-width: 180px;
    top: 0px;
    left: 0;
  }
}
@media only screen and (min-width: 992px) {
  .event-section__wrapper .event-seminar__person-1 {
    max-width: 220px;
    top: -86px;
    left: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .event-section__wrapper .event-seminar__person-1 {
    max-width: 100%;
  }
}
.event-section__wrapper .event-seminar__person-1 svg {
  position: absolute;
  max-width: 33px;
  top: 13px;
  right: -12px;
}
@media only screen and (min-width: 768px) {
  .event-section__wrapper .event-seminar__person-1 svg {
    top: 12px;
    right: -11px;
  }
}
@media only screen and (min-width: 992px) {
  .event-section__wrapper .event-seminar__person-1 svg {
    max-width: 58px;
    top: 22px;
    right: -21px;
  }
}
.event-section__wrapper .event-seminar__person-1 img {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.event-section__wrapper .event-seminar__person-2 {
  position: absolute;
  max-width: 108px;
  top: -96px;
  right: -10px;
}
@media only screen and (min-width: 768px) {
  .event-section__wrapper .event-seminar__person-2 {
    max-width: 100px;
    top: 0px;
    right: 0;
  }
}
@media only screen and (min-width: 992px) {
  .event-section__wrapper .event-seminar__person-2 {
    max-width: 160px;
    top: 74px;
    right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .event-section__wrapper .event-seminar__person-2 {
    max-width: 100%;
  }
}
.event-section__wrapper .event-seminar__person-2 svg {
  position: absolute;
  max-width: 25px;
  top: 29px;
  left: -4px;
}
@media only screen and (min-width: 768px) {
  .event-section__wrapper .event-seminar__person-2 svg {
    max-width: 28px;
    top: 12px;
    left: -11px;
  }
}
@media only screen and (min-width: 992px) {
  .event-section__wrapper .event-seminar__person-2 svg {
    max-width: 48px;
    top: 35px;
    left: -10px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-section__wrapper .event-seminar__person-2 svg {
    top: 55px;
    left: -8px;
  }
}
.event-section__wrapper .event-seminar__person-2 img {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.event-section__desc {
  max-width: 504px;
  margin: 0 auto 87px;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  line-height: 2.1333333333;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-section__desc {
    margin: 0 auto 80px;
    padding: 0;
  }
}
.event-section__info {
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-section__info {
    padding: 0;
  }
}
.event-heading {
  position: relative;
  margin-bottom: 30px;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-heading {
    margin-bottom: 48px;
  }
}
.event-heading::before {
  content: "";
  display: block;
  width: 48px;
  height: 26px;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='18' viewBox='0 0 48 18'%3E%3Cg id='Group_45371' data-name='Group 45371' transform='translate(-610 -826.001)'%3E%3Cg id='Group_717' data-name='Group 717' transform='translate(-6.105 -28.58)'%3E%3Cg id='Group_716' data-name='Group 716' transform='translate(616.106 854.581)'%3E%3Cpath id='Path_305' data-name='Path 305' d='M.1,38.325a1.889,1.889,0,0,1,.2-.331c.909-1.2,2.359.155,3.017.987,1.587,2.005,3.21,3.98,4.809,5.975.968,1.207,3.257,3.226,3.119,4.936a.914.914,0,0,1-.255.629c-.309.269-.782.1-1.132-.107-1.795-1.075-2.374-2.963-3.738-4.433Q3.641,43.3,1.2,40.572c-.3-.332-1.188-1.331-1.2-1.8a.977.977,0,0,1,.1-.446' transform='translate(0 -32.662)' fill='%23fc4b86'/%3E%3Cpath id='Path_306' data-name='Path 306' d='M195.095,13.258a8.126,8.126,0,0,0,.1-1.051q-.034-1.812-.066-3.623c-.04-2.344-.071-4.688-.045-7.033A2.013,2.013,0,0,1,196.239.009c.939-.119.8.845.812,1.528q.04,3.609.082,7.217c.02,1.73.6,4.511-.283,6.065a.9.9,0,0,1-1.682-.1,2.911,2.911,0,0,1-.074-1.461' transform='translate(-170.496 0.001)' fill='%23fc4b86'/%3E%3Cpath id='Path_307' data-name='Path 307' d='M307.9,55.254a.683.683,0,0,1-.352-.241.943.943,0,0,1-.07-.891c1.15-2.97,3.812-5.574,5.5-8.249.594-.941,1.86-1.449,2.862-2.086.145-.092.655.121.748.317a1.258,1.258,0,0,1,.033,1.023,60.224,60.224,0,0,1-4.057,5.253c-.717.876-1.436,1.751-2.125,2.65a7.854,7.854,0,0,1-1.822,2.143.953.953,0,0,1-.716.08' transform='translate(-268.717 -38.099)' fill='%23fc4b86'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='18' viewBox='0 0 48 18'%3E%3Cg id='Group_45371' data-name='Group 45371' transform='translate(-610 -826.001)'%3E%3Cg id='Group_717' data-name='Group 717' transform='translate(-6.105 -28.58)'%3E%3Cg id='Group_716' data-name='Group 716' transform='translate(616.106 854.581)'%3E%3Cpath id='Path_305' data-name='Path 305' d='M.1,38.325a1.889,1.889,0,0,1,.2-.331c.909-1.2,2.359.155,3.017.987,1.587,2.005,3.21,3.98,4.809,5.975.968,1.207,3.257,3.226,3.119,4.936a.914.914,0,0,1-.255.629c-.309.269-.782.1-1.132-.107-1.795-1.075-2.374-2.963-3.738-4.433Q3.641,43.3,1.2,40.572c-.3-.332-1.188-1.331-1.2-1.8a.977.977,0,0,1,.1-.446' transform='translate(0 -32.662)' fill='%23fc4b86'/%3E%3Cpath id='Path_306' data-name='Path 306' d='M195.095,13.258a8.126,8.126,0,0,0,.1-1.051q-.034-1.812-.066-3.623c-.04-2.344-.071-4.688-.045-7.033A2.013,2.013,0,0,1,196.239.009c.939-.119.8.845.812,1.528q.04,3.609.082,7.217c.02,1.73.6,4.511-.283,6.065a.9.9,0,0,1-1.682-.1,2.911,2.911,0,0,1-.074-1.461' transform='translate(-170.496 0.001)' fill='%23fc4b86'/%3E%3Cpath id='Path_307' data-name='Path 307' d='M307.9,55.254a.683.683,0,0,1-.352-.241.943.943,0,0,1-.07-.891c1.15-2.97,3.812-5.574,5.5-8.249.594-.941,1.86-1.449,2.862-2.086.145-.092.655.121.748.317a1.258,1.258,0,0,1,.033,1.023,60.224,60.224,0,0,1-4.057,5.253c-.717.876-1.436,1.751-2.125,2.65a7.854,7.854,0,0,1-1.822,2.143.953.953,0,0,1-.716.08' transform='translate(-268.717 -38.099)' fill='%23fc4b86'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  margin: 0 auto;
}
.event-heading--pink::before {
  background-color: #FC4B86;
}
.event-heading--pink .event-ttl span {
  color: #FC4B86;
}
.event-heading--purple::before {
  background-color: #AA6DEE;
}
.event-heading--purple .event-ttl span {
  color: #AA6DEE;
}
.event-heading.animated::before {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-heading.animated .event-seminar__person-1 img,
.event-heading.animated .event-seminar__person-2 img {
  opacity: 1;
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
.event-heading.animated .event-seminar__person-1 svg,
.event-heading.animated .event-seminar__person-2 svg {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-ttl {
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-size: 3.2rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .event-ttl {
    font-size: 4.8rem;
    letter-spacing: 0.12em;
    line-height: 1.3333333333;
  }
}
.event-ttl__sub {
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 2;
}
@media only screen and (min-width: 768px) {
  .event-ttl__sub {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.5;
  }
}
.event-ttl__line {
  pointer-events: none;
  text-align: center;
  margin-top: -18px;
}
@media only screen and (min-width: 768px) {
  .event-ttl__line {
    margin-top: -50px;
  }
}
.event-ttl__line svg {
  max-width: 680px;
  width: 100%;
}
.event-about {
  margin-bottom: 64px;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-about {
    margin-bottom: 35px;
    padding: 0;
  }
}
.event-about.animated {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.event-about.animated .event-about__img svg {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-about.animated .event-about__info svg {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-about.animated .event-about__info svg path {
  clip-path: inset(0% 0% 0% 0%);
}
.event-about__row {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .event-about__row {
    max-width: 980px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px;
  }
}
.event-about__col:first-of-type {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}
@media only screen and (min-width: 768px) {
  .event-about__col:first-of-type {
    display: block;
    margin-bottom: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28.5714285714%;
    flex: 0 0 28.5714285714%;
  }
}
.event-about__col:first-of-type svg {
  position: absolute;
  top: -13px;
  left: 3px;
  max-width: 28px;
}
@media only screen and (min-width: 768px) {
  .event-about__col:first-of-type svg {
    max-width: 50px;
    top: -20px;
    left: 41px;
  }
}
.event-about__img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 28.4023668639%;
  flex: 0 0 28.4023668639%;
}
.event-about__img img {
  width: 100%;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .event-about__img img {
    width: auto;
    max-width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .event-about__info {
    position: relative;
  }
}
.event-about__info svg {
  max-width: 40px;
  position: absolute;
  top: 8px;
  right: -10px;
}
@media only screen and (min-width: 576px) {
  .event-about__info svg {
    right: 0;
  }
}
@media only screen and (min-width: 768px) {
  .event-about__info svg {
    max-width: 60px;
    top: -296px;
    right: 15px;
  }
}
@media only screen and (min-width: 992px) {
  .event-about__info svg {
    max-width: 72px;
    top: -16px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-about__info svg {
    right: -29px;
  }
}
.event-about__info svg path {
  clip-path: inset(100% 0% 0% 0%);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.event-about__info svg path:nth-child(2) {
  -webkit-transition-delay: 0.65s;
  transition-delay: 0.65s;
}
.event-about__ttl {
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 2;
}
@media only screen and (min-width: 576px) {
  .event-about__ttl {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .event-about__ttl {
    font-size: 2.4rem;
    margin-bottom: 32px;
    line-height: 1.6666666667;
  }
}
.event-about__ttl span {
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#FDCD00), to(#FDCD00));
  background: -webkit-linear-gradient(left, #FDCD00, #FDCD00);
  background: linear-gradient(to right, #FDCD00, #FDCD00);
  background-size: 0% 8px, 0 8px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  -webkit-transition: all 0.4s ease-in-out 0.2s;
  transition: all 0.4s ease-in-out 0.2s;
}
@media only screen and (min-width: 768px) {
  .event-about__ttl span {
    background-size: 0% 12px, 0 12px;
  }
}
.event-about__ttl span.animated {
  background-size: 100% 8px, 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-about__ttl span.animated {
    background-size: 100% 12px, 0 12px;
  }
}
.event-about__desc {
  max-width: 592px;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 2.1333333333;
  margin-bottom: 24px;
}
@media only screen and (min-width: 768px) {
  .event-about__desc {
    margin-bottom: 22px;
  }
}
.event-about__desc span {
  color: #FC4B86;
  font-weight: 700;
}
.event-about__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 16px;
}
.event-about__tag {
  background-color: #FFFFFF;
  padding: 8px 21px 8px 13px;
  border: 2px solid #FDCD00;
  border-radius: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 12px;
}
.event-about__tag::before {
  content: "";
  display: block;
  width: 24px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='16' viewBox='0 0 24 16'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rectangle_987' data-name='Rectangle 987' width='24' height='16' fill='%23fdcd00' stroke='%23fdcd00' stroke-width='1'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Group_45396' data-name='Group 45396' clip-path='url(%23clip-path)'%3E%3Cpath id='Path_1859' data-name='Path 1859' d='M2.825,7.6c-.432-.861-.432-.861-1.471-1.409,1.529-.5,3.77.192,7.358,2.288C9.8,7.556,10.9,6.6,12.037,5.684a38.573,38.573,0,0,1,6.279-4.172A21.108,21.108,0,0,1,23.6,0c.092-.02.21.068.4.133-.06.179-.066.383-.177.492-1.787,1.732-3.64,3.409-5.372,5.191-1.842,1.892-3.6,3.855-5.34,5.833-1.081,1.231-2.051,2.549-3.085,3.818A4.528,4.528,0,0,1,9.382,16C6.919,12.518,4.45,9.12,0,7.347c.837-.427,1.209-.049,1.632.041.377.081.7.6,1.162.167.437.365.507,1.106,1.394,1.126l.468-1.516L3.074,6.743c-.106.363-.177.608-.249.853m6.739,7.327a3.48,3.48,0,0,0,1.312-2.157,7.81,7.81,0,0,1,.447-1.734c.52-1.7,1.052-3.4,1.58-5.094a20.865,20.865,0,0,0-3.232,2.4,1.818,1.818,0,0,0-.386,1.021C9.1,10.47,9.025,11.6,8.772,12.687a2.139,2.139,0,0,0,.792,2.236m1.744-2.511.256.094a.954.954,0,0,0,.286-.158q1.394-1.663,2.769-3.343a1.237,1.237,0,0,0,.226-.5c.108-.493.169-1,.284-1.488A20.6,20.6,0,0,0,16.043,3.7a4.386,4.386,0,0,0-3.107,3.473c-.021.109-.094.207-.126.314q-.752,2.461-1.5,4.923m7.6-10.427c-.812.305-1.685.495-1.98,1.2C16.3,4.7,15.846,6.27,15.26,7.993c1.031-.467,1.41-1.3,2.079-1.836a2.7,2.7,0,0,0,.883-1.523c.218-.826.429-1.654.686-2.65M8.26,13.058c.217-1.227.415-2.345.6-3.388-.347-.305-.588-.548-.863-.752s-.563-.352-.852-.528c-1.1,1.931-.862,2.936,1.116,4.668M18.418,4.616l.324.176A33.288,33.288,0,0,0,22.226,1.06a7.016,7.016,0,0,0-2.057.4,1.736,1.736,0,0,0-.907.767,24.073,24.073,0,0,0-.844,2.393M6.049,10.485c.186-.814.362-1.585.544-2.377l-1.45-.59c-.887,1.389-.745,1.832.907,2.967' transform='translate(0 0)' fill='%23fdcd00' stroke='%23fdcd00' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.event-about__tag span {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.6;
}
.event-flow {
  margin-bottom: 64px;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-flow {
    margin-bottom: 80px;
    padding: 0;
  }
}
.event-flow__heading {
  position: relative;
}
.event-flow__heading svg {
  max-width: 87px;
  position: absolute;
  bottom: -webkit-calc(100% + 2px);
  bottom: calc(100% + 2px);
  left: 0px;
  -webkit-transform: rotate(-11deg);
  -ms-transform: rotate(-11deg);
  transform: rotate(-11deg);
  clip-path: inset(0% 100% 0% 0%);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-flow__heading svg {
    max-width: 120px;
    bottom: unset;
    left: unset;
    top: -10px;
    right: 20px;
  }
}
@media only screen and (min-width: 992px) {
  .event-flow__heading svg {
    max-width: 160px;
    right: 74px;
  }
}
.event-flow__heading svg.animated {
  clip-path: inset(0% 0% 0% 0%);
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-flow__block {
  max-width: 1032px;
  margin: 0 auto;
}
.event-flow__row {
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-flow__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px;
  }
}
@media only screen and (min-width: 992px) {
  .event-flow__row {
    gap: 38px;
  }
}
.event-flow__row.animated {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.event-flow__row.animated .event-flow__col {
  opacity: 1;
}
.event-flow__row.animated + .event-flow__note {
  opacity: 1;
}
.event-flow__col {
  position: relative;
  background-color: #FFFFFF;
  padding: 14px 24px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 16px;
  text-align: center;
  border-right: 4px solid #5DBFF3;
  border-bottom: 4px solid #5DBFF3;
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-flow__col {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 24px 12px 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 5) - ((20px * 4) / 5));
    flex: 0 0 -webkit-calc((100% / 5) - ((20px * 4) / 5));
    flex: 0 0 calc((100% / 5) - ((20px * 4) / 5));
    width: -webkit-calc((100% / 5) - ((20px * 4) / 5));
    width: calc((100% / 5) - ((20px * 4) / 5));
  }
}
@media only screen and (min-width: 992px) {
  .event-flow__col {
    padding: 24px 24px 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 5) - ((38px * 4) / 5));
    flex: 0 0 -webkit-calc((100% / 5) - ((38px * 4) / 5));
    flex: 0 0 calc((100% / 5) - ((38px * 4) / 5));
    width: -webkit-calc((100% / 5) - ((38px * 4) / 5));
    width: calc((100% / 5) - ((38px * 4) / 5));
  }
}
.event-flow__col:not(:last-of-type) {
  margin-bottom: 24px;
}
@media only screen and (min-width: 768px) {
  .event-flow__col:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.event-flow__col:not(:last-of-type)::after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 16px 10px 0 10px;
  border-color: #5DBFF3 transparent transparent transparent;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (min-width: 768px) {
  .event-flow__col:not(:last-of-type)::after {
    border-width: 10px 0 10px 17px;
    border-color: transparent transparent transparent #5DBFF3;
    top: 38.0281690141%;
    left: 100%;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
@media only screen and (min-width: 992px) {
  .event-flow__col:not(:last-of-type)::after {
    border-width: 12px 0 12px 21px;
  }
}
.event-flow__col span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  color: #000000;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5555555556;
  margin-bottom: 14px;
}
@media only screen and (min-width: 768px) {
  .event-flow__col span {
    margin-bottom: 0;
  }
}
.event-flow__col img {
  max-width: 80px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) {
  .event-flow__col img {
    max-width: 100%;
  }
}
.event-flow__col:nth-of-type(1) {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.event-flow__col:nth-of-type(2) {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
.event-flow__col:nth-of-type(3) {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
.event-flow__col:nth-of-type(4) {
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
.event-flow__col:nth-of-type(5) {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.event-flow__note {
  text-align: end;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  line-height: 2.1333333333;
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out 1.4s;
  transition: all 0.4s ease-in-out 1.4s;
  margin-top: 10px;
}
@media only screen and (min-width: 768px) {
  .event-flow__note {
    margin-top: 10px;
  }
}
.event-point {
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-point {
    padding: 0;
  }
}
.event-point--green .event-point-card {
  border-right: 4px solid #47D68F;
  border-bottom: 4px solid #47D68F;
}
.event-point--green .event-point-card__ttl {
  background-color: #47D68F;
}
.event-point--green .event-point-card__desc span {
  color: #47D68F;
}
.event-point--yellow .event-point-card {
  border-right: 4px solid #FDCD00;
  border-bottom: 4px solid #FDCD00;
}
.event-point--yellow .event-point-card__ttl {
  background-color: #FDCD00;
}
.event-point--yellow .event-point-card__desc span {
  color: #FDCD00;
}
.event-point__heading {
  position: relative;
}
.event-point__heading svg {
  position: absolute;
}
.event-point__heading svg.star-green {
  max-width: 64px;
  bottom: -webkit-calc(100% + 8px);
  bottom: calc(100% + 8px);
  left: 0;
}
@media only screen and (min-width: 768px) {
  .event-point__heading svg.star-green {
    max-width: 100px;
    bottom: unset;
    left: unset;
    top: -44px;
    left: -webkit-calc(50% - 340px);
    left: calc(50% - 340px);
  }
}
.event-point__heading svg.star-green.animated {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-point__heading svg.check {
  bottom: -webkit-calc(100% + 24px);
  bottom: calc(100% + 24px);
  right: 0;
}
@media only screen and (min-width: 768px) {
  .event-point__heading svg.check {
    aspect-ratio: 294/86;
    max-width: 180px;
    top: -76px;
    left: 30px;
  }
}
@media only screen and (min-width: 992px) {
  .event-point__heading svg.check {
    max-width: 294px;
    top: -32px;
    left: 10px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-point__heading svg.check {
    top: -6px;
    left: 0;
  }
}
.event-point__heading svg.check.animated {
  -webkit-animation: checkAnimation 2.5s steps(1) 0.8s infinite;
  animation: checkAnimation 2.5s steps(1) 0.8s infinite;
}
.event-point__block {
  max-width: 1032px;
  margin: 0 auto;
}
.event-point__row {
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-point__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
  }
}
@media only screen and (min-width: 992px) {
  .event-point__row {
    gap: 24px;
  }
}
.event-point__row.animated {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.event-point__row.animated .event-point-card {
  opacity: 1;
}
.event-point-card {
  background-color: #FFFFFF;
  padding: 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 16px;
  margin-right: -4px;
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-point-card {
    margin-right: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((16px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((16px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((16px * 2) / 3));
    width: -webkit-calc((100% / 3) - ((16px * 2) / 3));
    width: calc((100% / 3) - ((16px * 2) / 3));
    gap: 24px;
  }
}
@media only screen and (min-width: 992px) {
  .event-point-card {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((24px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((24px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((24px * 2) / 3));
    width: -webkit-calc((100% / 3) - ((24px * 2) / 3));
    width: calc((100% / 3) - ((24px * 2) / 3));
  }
}
.event-point-card:not(:last-of-type) {
  margin-bottom: 24px;
}
@media only screen and (min-width: 768px) {
  .event-point-card:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.event-point-card__top {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.event-point-card__ttl {
  color: #FFFFFF;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto 16px;
  padding: 8px 22px;
  font-family: "Montserrat", serif;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3333333333;
}
@media only screen and (min-width: 768px) {
  .event-point-card__ttl {
    margin: 0 auto 24px;
    padding: 10px 30px;
    font-size: 1.8rem;
  }
}
.event-point-card__ttl span {
  margin-left: 8px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}
@media only screen and (min-width: 768px) {
  .event-point-card__ttl span {
    font-size: 2.4rem;
  }
}
.event-point-card__desc {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5555555556;
}
.event-point-card__desc span {
  font-weight: 700;
}
.event-point-card img {
  width: 100%;
}
.event-point-card:nth-of-type(1) {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.event-point-card:nth-of-type(2) {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
.event-point-card:nth-of-type(3) {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
.event-button {
  margin-top: 40px;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
}
@media only screen and (min-width: 768px) {
  .event-button {
    margin-top: 80px;
  }
}
.event-button.animated {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.event .pickup {
  padding: 118px 0 64px;
}
@media only screen and (min-width: 768px) {
  .event .pickup {
    padding: 135px 0 80px;
  }
}
.event .pickup-slider {
  gap: 40px;
}
.event .pickup-slider__list {
  gap: 40px;
}
.event .pickup-slider__text {
  font-size: 6.4rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
  .event .pickup-slider__text {
    font-size: 8rem;
  }
}
.event .pickup__links {
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event .pickup__links {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
  }
}
.event .pickup-link {
  display: block;
  color: #000000;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 2) - (24px / 2));
    flex: 0 0 -webkit-calc((100% / 2) - (24px / 2));
    flex: 0 0 calc((100% / 2) - (24px / 2));
  }
}
.event .pickup-link:not(:last-of-type) {
  margin-bottom: 48px;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.event .pickup-link__img {
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link__img {
    margin-bottom: 24px;
  }
}
.event .pickup-link__img img {
  aspect-ratio: 504/282;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.event .pickup-link__ttl {
  font-family: "Shippori Mincho", serif;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.6666666667;
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link__ttl {
    margin-bottom: 24px;
    font-size: 2.4rem;
  }
}
.event .pickup-link__ttl span {
  position: relative;
  display: inline;
  overflow: hidden;
}
.event .pickup-link__ttl span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 4px;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
}
.event .pickup-link__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 18px;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link__info {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
  }
}
.event .pickup-link__desc {
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  line-height: 2.1333333333;
}
.event .pickup-link__arrow {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  background-color: #000000;
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link__arrow {
    width: 48px;
    height: 48px;
  }
}
.event .pickup-link__arrow::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  border-radius: 50%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
}
.event .pickup-link__arrow::after {
  content: "";
  position: relative;
  z-index: 2;
  display: block;
  width: 8px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.121' height='17.414' viewBox='0 0 10.121 17.414'%3E%3Cpath id='Path_196' data-name='Path 196' d='M-12238.139-21629.973l-1.414-1.414,7.293-7.285-7.293-7.3,1.414-1.414,8.707,8.715-.707.707Z' transform='translate(12239.553 21647.387)' fill='%23fff'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.event .pickup-link--blue .pickup-link__img {
  background-color: #5DBFF3;
}
.event .pickup-link--blue .pickup-link__arrow::before {
  background-color: #5DBFF3;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link--blue:hover .pickup-link__arrow {
    background-color: #5DBFF3;
    -webkit-transition: background-color 0.1s ease 0.25s;
    transition: background-color 0.1s ease 0.25s;
  }
}
.event .pickup-link--yellow .pickup-link__img {
  background-color: #FDCD00;
}
.event .pickup-link--yellow .pickup-link__arrow::before {
  background-color: #FDCD00;
}
@media only screen and (min-width: 768px) {
  .event .pickup-link--yellow:hover .pickup-link__arrow {
    background-color: #FDCD00;
    -webkit-transition: background-color 0.1s ease 0.25s;
    transition: background-color 0.1s ease 0.25s;
  }
}
.event .pickup-link:hover .pickup-link__ttl span::after {
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}
@media only screen and (min-width: 768px) {
  .event .pickup-link:hover .pickup-link__arrow::before {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}
.event-participate {
  padding: 40px 0 130px;
}
@media only screen and (min-width: 768px) {
  .event-participate {
    padding: 160px 0 182px;
  }
}
.event-participate__wrapper {
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .event-participate__wrapper {
    padding: 0;
  }
}
.event-participate__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .event-participate__top {
    padding-left: 88px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 28px;
  }
}
.event-participate__top.animated .event-participate__img svg {
  -webkit-animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
  animation: pinkIconAnimate 2.5s steps(1) 0.8s infinite;
}
.event-participate__img {
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .event-participate__img {
    position: static;
    text-align: inherit;
  }
}
.event-participate__img img {
  max-width: 222px;
}
@media only screen and (min-width: 768px) {
  .event-participate__img img {
    max-width: 100%;
  }
}
.event-participate__img .line {
  max-width: 65px;
  position: absolute;
  top: 34px;
  left: 4px;
  -webkit-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  transform: rotate(-10deg);
}
@media only screen and (min-width: 768px) {
  .event-participate__img .line {
    max-width: 152px;
    top: -88px;
    left: 24px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
.event-participate__img .star-yellow {
  max-width: 58px;
  position: absolute;
  top: 8px;
  right: 15px;
}
@media only screen and (min-width: 768px) {
  .event-participate__img .star-yellow {
    max-width: 90px;
    top: -52px;
    right: 30px;
  }
}
@media only screen and (min-width: 992px) {
  .event-participate__img .star-yellow {
    top: -13px;
    right: 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .event-participate__img .star-yellow {
    right: 0;
  }
}
.event-participate__info {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) {
  .event-participate__info {
    display: block;
    margin-bottom: 0;
  }
}
.event-participate__info::before, .event-participate__info::after {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  content: "";
  display: block;
  width: 68px;
  height: 103px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 768px) {
  .event-participate__info::before, .event-participate__info::after {
    width: 104px;
    height: 54px;
  }
}
.event-participate__info::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='67.923' height='103.015' viewBox='0 0 67.923 103.015'%3E%3Cg id='Group_45481' data-name='Group 45481' transform='translate(-279.831 -4941.448)'%3E%3Cpath id='Path_1883' data-name='Path 1883' d='M19.5.289a6.2,6.2,0,0,1,.887,2.192,32.256,32.256,0,0,1-.636,4.786Q14.485,36.172,9.183,65.07c-1.31,7.2-2.564,14.414-3.924,21.6-.321,1.71-1.228,3.238-3.313,2.387a3.006,3.006,0,0,1-1.76-3.986A45.729,45.729,0,0,0,1.224,80.31Q7.841,43.561,14.469,6.819a22.676,22.676,0,0,1,1.838-5.768C16.833-.033,18.229-.263,19.5.289' transform='matrix(0.819, -0.574, 0.574, 0.819, 279.831, 4971.311)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3Cpath id='Path_1887' data-name='Path 1887' d='M4.446,3.573c-.874.941-1.885,1.533-3.158.821C.062,3.708-.508.554.57.17A4.783,4.783,0,0,1,3.925.512c1.219.6,1.367,1.86.521,3.062' transform='matrix(0.819, -0.574, 0.574, 0.819, 285.567, 4944.305)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media only screen and (min-width: 768px) {
  .event-participate__info::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='104.002' height='54' viewBox='0 0 104.002 54'%3E%3Cg id='Group_45444' data-name='Group 45444' transform='translate(-610.819 -5017.516)'%3E%3Cpath id='Path_1883' data-name='Path 1883' d='M19.5,89.015a6.2,6.2,0,0,0,.887-2.192,32.258,32.258,0,0,0-.636-4.786q-5.266-28.906-10.567-57.8c-1.31-7.2-2.564-14.414-3.924-21.6C4.938.92,4.032-.608,1.946.243A3.006,3.006,0,0,0,.186,4.229,45.73,45.73,0,0,1,1.224,8.994q6.617,36.75,13.245,73.492a22.677,22.677,0,0,0,1.838,5.768c.525,1.084,1.921,1.313,3.193.761' transform='translate(616.439 5071.516) rotate(-106)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3Cpath id='Path_1887' data-name='Path 1887' d='M4.446,1.136C3.572.195,2.561-.4,1.289.315.063,1-.508,4.155.57,4.539A4.783,4.783,0,0,0,3.925,4.2c1.219-.6,1.367-1.86.521-3.062' transform='translate(710.294 5023.602) rotate(-106)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E%0A");
  }
}
.event-participate__info::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='67.923' height='103.017' viewBox='0 0 67.923 103.017'%3E%3Cg id='Group_45480' data-name='Group 45480' transform='translate(-553.65 -4941.45)'%3E%3Cpath id='Path_1883' data-name='Path 1883' d='M19.5,89.014a6.2,6.2,0,0,0,.887-2.192,32.257,32.257,0,0,0-.636-4.786q-5.266-28.905-10.568-57.8c-1.31-7.2-2.564-14.414-3.924-21.6C4.937.92,4.031-.608,1.946.243A3.006,3.006,0,0,0,.185,4.229,45.729,45.729,0,0,1,1.224,8.993Q7.841,45.743,14.469,82.485a22.677,22.677,0,0,0,1.838,5.768c.526,1.084,1.921,1.313,3.193.761' transform='matrix(-0.819, -0.574, 0.574, -0.819, 570.351, 5044.467)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3Cpath id='Path_1887' data-name='Path 1887' d='M4.446,1.136C3.572.195,2.561-.4,1.289.314.062,1-.508,4.155.57,4.539A4.783,4.783,0,0,0,3.925,4.2c1.219-.6,1.367-1.86.521-3.062' transform='matrix(-0.819, -0.574, 0.574, -0.819, 613.136, 4948.164)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media only screen and (min-width: 768px) {
  .event-participate__info::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='104' height='54' viewBox='0 0 104 54'%3E%3Cg id='Group_45445' data-name='Group 45445' transform='translate(0)'%3E%3Cpath id='Path_1883' data-name='Path 1883' d='M19.5.289a6.2,6.2,0,0,1,.887,2.192,32.256,32.256,0,0,1-.636,4.786Q14.485,36.172,9.183,65.07c-1.31,7.2-2.564,14.414-3.924,21.6-.321,1.71-1.228,3.238-3.313,2.387a3.006,3.006,0,0,1-1.76-3.986A45.729,45.729,0,0,0,1.224,80.31Q7.841,43.561,14.469,6.819a22.677,22.677,0,0,1,1.838-5.768C16.833-.033,18.229-.263,19.5.289' transform='translate(91.463 24.615) rotate(106)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3Cpath id='Path_1887' data-name='Path 1887' d='M4.446,3.573c-.874.941-1.885,1.533-3.158.821C.062,3.708-.508.554.57.17A4.783,4.783,0,0,1,3.925.512c1.219.6,1.367,1.86.521,3.062' transform='translate(104 49.212) rotate(106)' fill='%23fc4b86' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E%0A");
  }
}
.event-participate__info svg {
  position: absolute;
  top: -13px;
  right: 0;
}
.event-participate__desc {
  font-family: "Shippori Mincho", serif;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5555555556;
}
@media only screen and (min-width: 768px) {
  .event-participate__desc {
    text-align: start;
    margin: 8px 0 8px 36px;
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .event-participate__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
  }
}
@media only screen and (min-width: 992px) {
  .event-participate__links {
    gap: 24px;
  }
}
.event-participate__link {
  position: relative;
  z-index: 1;
  color: #000000;
  background-color: #FFFFFF;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 32px;
}
@media only screen and (min-width: 768px) {
  .event-participate__link {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((16px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((16px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((16px * 2) / 3));
    width: -webkit-calc((100% / 3) - ((16px * 2) / 3));
    width: calc((100% / 3) - ((16px * 2) / 3));
  }
}
@media only screen and (min-width: 992px) {
  .event-participate__link {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / 3) - ((24px * 2) / 3));
    flex: 0 0 -webkit-calc((100% / 3) - ((24px * 2) / 3));
    flex: 0 0 calc((100% / 3) - ((24px * 2) / 3));
    width: -webkit-calc((100% / 3) - ((24px * 2) / 3));
    width: calc((100% / 3) - ((24px * 2) / 3));
  }
}
.event-participate__link:not(:last-of-type) {
  margin-bottom: 8px;
}
@media only screen and (min-width: 768px) {
  .event-participate__link:not(:last-of-type) {
    margin-bottom: 0;
  }
}
.event-participate__link::after {
  content: "";
  display: block;
  width: 100%;
  height: 6px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  -webkit-transition: height 0.3s ease;
  transition: height 0.3s ease;
}
.event-participate__link span {
  font-family: "Montserrat", serif;
  font-size: 4.2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  -webkit-transition: color 0.3s ease 0.18s;
  transition: color 0.3s ease 0.18s;
}
.event-participate__link[target=_blank] .event-participate__arrow::after {
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='15' height='15' viewBox='0 0 15 15'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rectangle_198' data-name='Rectangle 198' width='15' height='15' fill='none' stroke='%23fff' stroke-width='1.5'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Group_566' data-name='Group 566' clip-path='url(%23clip-path)'%3E%3Cpath id='Path_250' data-name='Path 250' d='M11.777,13.609H-.25V1.584H5.237v1.5H1.25v9.025h9.027V7.6h1.5Z' transform='translate(0.289 1.351)' fill='%23fff'/%3E%3Cpath id='Line_1' data-name='Line 1' d='M.53,8.689-.53,7.628,7.628-.53,8.689.53Z' transform='translate(6.052 0.789)' fill='%23fff'/%3E%3Cpath id='Path_251' data-name='Path 251' d='M12.259,7.343h-1.5V1.25H4.667V-.25h7.592Z' transform='translate(2.702 0.289)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.event-participate__link--pink::after {
  background-color: #FC4B86;
}
.event-participate__link--pink span {
  color: #FC4B86;
}
.event-participate__link--yellow::after {
  background-color: #FDCD00;
}
.event-participate__link--yellow span {
  color: #FDCD00;
}
.event-participate__link--blue::after {
  background-color: #5DBFF3;
}
.event-participate__link--blue span {
  color: #5DBFF3;
}
@media only screen and (min-width: 768px) {
  .event-participate__link:hover::after {
    height: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .event-participate__link:hover span {
    color: #FFFFFF;
  }
}
.event-participate__bottom {
  position: relative;
  margin-top: 24px;
}
@media only screen and (min-width: 768px) {
  .event-participate__bottom {
    display: block;
    margin-top: 35px;
  }
}
.event-participate__text {
  font-family: "Shippori Mincho", serif;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 2.2222222222;
  padding: 0 60px;
}
@media only screen and (min-width: 768px) {
  .event-participate__text {
    padding: 0;
    font-size: 2rem;
    line-height: 2;
    margin-bottom: 16px;
  }
}
.event-participate__arrow {
  background-color: #000000;
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .event-participate__arrow {
    position: static;
    margin: 0 auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
.event-participate__arrow::after {
  content: "";
  display: block;
  width: 8px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.121' height='13.414' viewBox='0 0 8.121 13.414'%3E%3Cpath id='Path_196' data-name='Path 196' d='M-12238.139-21633.973l-1.414-1.414,5.293-5.289-5.293-5.3,1.414-1.414,6.707,6.711-.707.707Z' transform='translate(12239.553 21647.387)' fill='%23fff'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
/*# sourceMappingURL=event.css.map */
