@charset "UTF-8";
.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
  scrollbar-gutter: stable;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

#root,
#__next {
  isolation: isolate;
}

ul,
ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

img,
picture,
video,
canvas,
svg {
  height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

sup {
  font-size: 0.5em;
}

html {
  font-size: 0.5208333333vw;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.6666666667vw;
  }
}

:root {
  --remV: 10px;
  --primary: #333;
}
@media screen and (max-width: 1920px) {
  :root {
    --remV: 0.5208333333vw;
  }
}
@media screen and (max-width: 768px) {
  :root {
    --remV: 0.5208333333vw;
  }
}

body {
  background: #fff;
  color: #333;
  font-size: 1.6rem;
  line-height: 2.25;
  letter-spacing: 0.08em;
  font-family: Yakuhanjp, "Noto Sans JP", sans-serif;
  text-align: justify;
  word-break: break-all;
  font-feature-settings: "palt" 1;
  font-optical-sizing: auto;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
    line-height: 1.875;
    letter-spacing: 0.1em;
  }
}
body.is-top {
  --primary: #4285f4;
  --secondary: #88b3f9;
  --hover: #88b3f9;
  --dark: #333;
}
body.is-new {
  --primary: #0bd7a0;
  --primary-txt: #09c895;
  --secondary: #ebf9f0;
  --hover: #84e7c7;
  --dark: #02b585;
}
body.is-career {
  --primary: #ff8549;
  --primary-txt: #ff8a50;
  --secondary: #fff2e6;
  --hover: #fff2e6;
  --dark: #ff8a50;
}
body.on-hamburger .layout-header__content {
  max-height: 100vh;
}
body.on-hamburger .layout-header .header-button span:nth-of-type(1) {
  translate: 0 1.2rem;
  rotate: -45deg;
}
body.on-hamburger .layout-header .header-button span:nth-of-type(2) {
  scale: 0 1;
}
body.on-hamburger .layout-header .header-button span:nth-of-type(3) {
  translate: 0 -1.2rem;
  rotate: 45deg;
}
body:has(.component-hero) .component-hero__image img {
  scale: 1.1;
  opacity: 0;
  transition: scale 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s, opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s;
  will-change: scale, opacity;
}
body:has(.component-hero) .component-hero__heading span {
  clip-path: inset(0 100% 0 0);
  will-change: clip-path;
}
body:has(.component-hero) .component-hero__heading span:nth-of-type(1) {
  transition: clip-path 0.7s cubic-bezier(0.23, 1, 0.32, 1) 1s;
}
body:has(.component-hero) .component-hero__heading span:nth-of-type(2) {
  transition: clip-path 0.7s cubic-bezier(0.23, 1, 0.32, 1) 1.2s;
}
@media screen and (min-width: 769px) {
  body:has(.component-hero) .layout-header,
  body:has(.component-hero) .component-hero-news {
    opacity: 0;
    transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 1.6s;
    will-change: opacity;
  }
}
body:has(.component-hero).is-loaded .component-hero__image img {
  scale: 1;
  opacity: 1;
}
body:has(.component-hero).is-loaded .component-hero__heading span {
  clip-path: inset(0 0 0 0);
}
body:has(.component-hero).is-loaded .layout-header,
body:has(.component-hero).is-loaded .component-hero-news {
  opacity: 1;
}

a {
  color: #333;
  text-decoration: none;
}

em {
  font-style: normal;
}

img,
iframe {
  display: block;
  width: 100%;
}

button {
  display: block;
  padding: 0;
  border: none;
  background-color: transparent;
  touch-action: manipulation;
  cursor: pointer;
}

svg {
  max-width: initial;
}

@media screen and (min-width: 769px) {
  .only-sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .only-pc {
    display: none !important;
  }
}

.helper-mt-0 {
  margin-top: 0rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-0 {
    margin-top: 0rem !important;
  }
}

.helper-mb-0 {
  margin-bottom: 0rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-0 {
    margin-bottom: 0rem !important;
  }
}

.helper-pt-0 {
  padding-top: 0rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-0 {
    padding-top: 0rem !important;
  }
}

.helper-pb-0 {
  padding-bottom: 0rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-0 {
    padding-bottom: 0rem !important;
  }
}

.helper-mt-5 {
  margin-top: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-5 {
    margin-top: 0.25rem !important;
  }
}

.helper-mb-5 {
  margin-bottom: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-5 {
    margin-bottom: 0.25rem !important;
  }
}

.helper-pt-5 {
  padding-top: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-5 {
    padding-top: 0.25rem !important;
  }
}

.helper-pb-5 {
  padding-bottom: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-5 {
    padding-bottom: 0.25rem !important;
  }
}

.helper-mt-10 {
  margin-top: 1rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-10 {
    margin-top: 0.5rem !important;
  }
}

.helper-mb-10 {
  margin-bottom: 1rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-10 {
    margin-bottom: 0.5rem !important;
  }
}

.helper-pt-10 {
  padding-top: 1rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-10 {
    padding-top: 0.5rem !important;
  }
}

.helper-pb-10 {
  padding-bottom: 1rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-10 {
    padding-bottom: 0.5rem !important;
  }
}

.helper-mt-15 {
  margin-top: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-15 {
    margin-top: 0.75rem !important;
  }
}

.helper-mb-15 {
  margin-bottom: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-15 {
    margin-bottom: 0.75rem !important;
  }
}

.helper-pt-15 {
  padding-top: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-15 {
    padding-top: 0.75rem !important;
  }
}

.helper-pb-15 {
  padding-bottom: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-15 {
    padding-bottom: 0.75rem !important;
  }
}

.helper-mt-20 {
  margin-top: 2rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-20 {
    margin-top: 1rem !important;
  }
}

.helper-mb-20 {
  margin-bottom: 2rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-20 {
    margin-bottom: 1rem !important;
  }
}

.helper-pt-20 {
  padding-top: 2rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-20 {
    padding-top: 1rem !important;
  }
}

.helper-pb-20 {
  padding-bottom: 2rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-20 {
    padding-bottom: 1rem !important;
  }
}

.helper-mt-25 {
  margin-top: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-25 {
    margin-top: 1.25rem !important;
  }
}

.helper-mb-25 {
  margin-bottom: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-25 {
    margin-bottom: 1.25rem !important;
  }
}

.helper-pt-25 {
  padding-top: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-25 {
    padding-top: 1.25rem !important;
  }
}

.helper-pb-25 {
  padding-bottom: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-25 {
    padding-bottom: 1.25rem !important;
  }
}

.helper-mt-30 {
  margin-top: 3rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-30 {
    margin-top: 1.5rem !important;
  }
}

.helper-mb-30 {
  margin-bottom: 3rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-30 {
    margin-bottom: 1.5rem !important;
  }
}

.helper-pt-30 {
  padding-top: 3rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-30 {
    padding-top: 1.5rem !important;
  }
}

.helper-pb-30 {
  padding-bottom: 3rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-30 {
    padding-bottom: 1.5rem !important;
  }
}

.helper-mt-35 {
  margin-top: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-35 {
    margin-top: 1.75rem !important;
  }
}

.helper-mb-35 {
  margin-bottom: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-35 {
    margin-bottom: 1.75rem !important;
  }
}

.helper-pt-35 {
  padding-top: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-35 {
    padding-top: 1.75rem !important;
  }
}

.helper-pb-35 {
  padding-bottom: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-35 {
    padding-bottom: 1.75rem !important;
  }
}

.helper-mt-40 {
  margin-top: 4rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-40 {
    margin-top: 2rem !important;
  }
}

.helper-mb-40 {
  margin-bottom: 4rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-40 {
    margin-bottom: 2rem !important;
  }
}

.helper-pt-40 {
  padding-top: 4rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-40 {
    padding-top: 2rem !important;
  }
}

.helper-pb-40 {
  padding-bottom: 4rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-40 {
    padding-bottom: 2rem !important;
  }
}

.helper-mt-45 {
  margin-top: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-45 {
    margin-top: 2.25rem !important;
  }
}

.helper-mb-45 {
  margin-bottom: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-45 {
    margin-bottom: 2.25rem !important;
  }
}

.helper-pt-45 {
  padding-top: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-45 {
    padding-top: 2.25rem !important;
  }
}

.helper-pb-45 {
  padding-bottom: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-45 {
    padding-bottom: 2.25rem !important;
  }
}

.helper-mt-50 {
  margin-top: 5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-50 {
    margin-top: 2.5rem !important;
  }
}

.helper-mb-50 {
  margin-bottom: 5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-50 {
    margin-bottom: 2.5rem !important;
  }
}

.helper-pt-50 {
  padding-top: 5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-50 {
    padding-top: 2.5rem !important;
  }
}

.helper-pb-50 {
  padding-bottom: 5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-50 {
    padding-bottom: 2.5rem !important;
  }
}

.helper-mt-55 {
  margin-top: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-55 {
    margin-top: 2.75rem !important;
  }
}

.helper-mb-55 {
  margin-bottom: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-55 {
    margin-bottom: 2.75rem !important;
  }
}

.helper-pt-55 {
  padding-top: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-55 {
    padding-top: 2.75rem !important;
  }
}

.helper-pb-55 {
  padding-bottom: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-55 {
    padding-bottom: 2.75rem !important;
  }
}

.helper-mt-60 {
  margin-top: 6rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-60 {
    margin-top: 3rem !important;
  }
}

.helper-mb-60 {
  margin-bottom: 6rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-60 {
    margin-bottom: 3rem !important;
  }
}

.helper-pt-60 {
  padding-top: 6rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-60 {
    padding-top: 3rem !important;
  }
}

.helper-pb-60 {
  padding-bottom: 6rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-60 {
    padding-bottom: 3rem !important;
  }
}

.helper-mt-65 {
  margin-top: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-65 {
    margin-top: 3.25rem !important;
  }
}

.helper-mb-65 {
  margin-bottom: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-65 {
    margin-bottom: 3.25rem !important;
  }
}

.helper-pt-65 {
  padding-top: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-65 {
    padding-top: 3.25rem !important;
  }
}

.helper-pb-65 {
  padding-bottom: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-65 {
    padding-bottom: 3.25rem !important;
  }
}

.helper-mt-70 {
  margin-top: 7rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-70 {
    margin-top: 3.5rem !important;
  }
}

.helper-mb-70 {
  margin-bottom: 7rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-70 {
    margin-bottom: 3.5rem !important;
  }
}

.helper-pt-70 {
  padding-top: 7rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-70 {
    padding-top: 3.5rem !important;
  }
}

.helper-pb-70 {
  padding-bottom: 7rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-70 {
    padding-bottom: 3.5rem !important;
  }
}

.helper-mt-75 {
  margin-top: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-75 {
    margin-top: 3.75rem !important;
  }
}

.helper-mb-75 {
  margin-bottom: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-75 {
    margin-bottom: 3.75rem !important;
  }
}

.helper-pt-75 {
  padding-top: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-75 {
    padding-top: 3.75rem !important;
  }
}

.helper-pb-75 {
  padding-bottom: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-75 {
    padding-bottom: 3.75rem !important;
  }
}

.helper-mt-80 {
  margin-top: 8rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-80 {
    margin-top: 4rem !important;
  }
}

.helper-mb-80 {
  margin-bottom: 8rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-80 {
    margin-bottom: 4rem !important;
  }
}

.helper-pt-80 {
  padding-top: 8rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-80 {
    padding-top: 4rem !important;
  }
}

.helper-pb-80 {
  padding-bottom: 8rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-80 {
    padding-bottom: 4rem !important;
  }
}

.helper-mt-85 {
  margin-top: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-85 {
    margin-top: 4.25rem !important;
  }
}

.helper-mb-85 {
  margin-bottom: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-85 {
    margin-bottom: 4.25rem !important;
  }
}

.helper-pt-85 {
  padding-top: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-85 {
    padding-top: 4.25rem !important;
  }
}

.helper-pb-85 {
  padding-bottom: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-85 {
    padding-bottom: 4.25rem !important;
  }
}

.helper-mt-90 {
  margin-top: 9rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-90 {
    margin-top: 4.5rem !important;
  }
}

.helper-mb-90 {
  margin-bottom: 9rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-90 {
    margin-bottom: 4.5rem !important;
  }
}

.helper-pt-90 {
  padding-top: 9rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-90 {
    padding-top: 4.5rem !important;
  }
}

.helper-pb-90 {
  padding-bottom: 9rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-90 {
    padding-bottom: 4.5rem !important;
  }
}

.helper-mt-95 {
  margin-top: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-95 {
    margin-top: 4.75rem !important;
  }
}

.helper-mb-95 {
  margin-bottom: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-95 {
    margin-bottom: 4.75rem !important;
  }
}

.helper-pt-95 {
  padding-top: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-95 {
    padding-top: 4.75rem !important;
  }
}

.helper-pb-95 {
  padding-bottom: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-95 {
    padding-bottom: 4.75rem !important;
  }
}

.helper-mt-100 {
  margin-top: 10rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-100 {
    margin-top: 5rem !important;
  }
}

.helper-mb-100 {
  margin-bottom: 10rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-100 {
    margin-bottom: 5rem !important;
  }
}

.helper-pt-100 {
  padding-top: 10rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-100 {
    padding-top: 5rem !important;
  }
}

.helper-pb-100 {
  padding-bottom: 10rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-100 {
    padding-bottom: 5rem !important;
  }
}

.helper-mt-105 {
  margin-top: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-105 {
    margin-top: 5.25rem !important;
  }
}

.helper-mb-105 {
  margin-bottom: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-105 {
    margin-bottom: 5.25rem !important;
  }
}

.helper-pt-105 {
  padding-top: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-105 {
    padding-top: 5.25rem !important;
  }
}

.helper-pb-105 {
  padding-bottom: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-105 {
    padding-bottom: 5.25rem !important;
  }
}

.helper-mt-110 {
  margin-top: 11rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-110 {
    margin-top: 5.5rem !important;
  }
}

.helper-mb-110 {
  margin-bottom: 11rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-110 {
    margin-bottom: 5.5rem !important;
  }
}

.helper-pt-110 {
  padding-top: 11rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-110 {
    padding-top: 5.5rem !important;
  }
}

.helper-pb-110 {
  padding-bottom: 11rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-110 {
    padding-bottom: 5.5rem !important;
  }
}

.helper-mt-115 {
  margin-top: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-115 {
    margin-top: 5.75rem !important;
  }
}

.helper-mb-115 {
  margin-bottom: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-115 {
    margin-bottom: 5.75rem !important;
  }
}

.helper-pt-115 {
  padding-top: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-115 {
    padding-top: 5.75rem !important;
  }
}

.helper-pb-115 {
  padding-bottom: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-115 {
    padding-bottom: 5.75rem !important;
  }
}

.helper-mt-120 {
  margin-top: 12rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-120 {
    margin-top: 6rem !important;
  }
}

.helper-mb-120 {
  margin-bottom: 12rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-120 {
    margin-bottom: 6rem !important;
  }
}

.helper-pt-120 {
  padding-top: 12rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-120 {
    padding-top: 6rem !important;
  }
}

.helper-pb-120 {
  padding-bottom: 12rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-120 {
    padding-bottom: 6rem !important;
  }
}

.helper-mt-125 {
  margin-top: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-125 {
    margin-top: 6.25rem !important;
  }
}

.helper-mb-125 {
  margin-bottom: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-125 {
    margin-bottom: 6.25rem !important;
  }
}

.helper-pt-125 {
  padding-top: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-125 {
    padding-top: 6.25rem !important;
  }
}

.helper-pb-125 {
  padding-bottom: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-125 {
    padding-bottom: 6.25rem !important;
  }
}

.helper-mt-130 {
  margin-top: 13rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-130 {
    margin-top: 6.5rem !important;
  }
}

.helper-mb-130 {
  margin-bottom: 13rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-130 {
    margin-bottom: 6.5rem !important;
  }
}

.helper-pt-130 {
  padding-top: 13rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-130 {
    padding-top: 6.5rem !important;
  }
}

.helper-pb-130 {
  padding-bottom: 13rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-130 {
    padding-bottom: 6.5rem !important;
  }
}

.helper-mt-135 {
  margin-top: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-135 {
    margin-top: 6.75rem !important;
  }
}

.helper-mb-135 {
  margin-bottom: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-135 {
    margin-bottom: 6.75rem !important;
  }
}

.helper-pt-135 {
  padding-top: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-135 {
    padding-top: 6.75rem !important;
  }
}

.helper-pb-135 {
  padding-bottom: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-135 {
    padding-bottom: 6.75rem !important;
  }
}

.helper-mt-140 {
  margin-top: 14rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-140 {
    margin-top: 7rem !important;
  }
}

.helper-mb-140 {
  margin-bottom: 14rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-140 {
    margin-bottom: 7rem !important;
  }
}

.helper-pt-140 {
  padding-top: 14rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-140 {
    padding-top: 7rem !important;
  }
}

.helper-pb-140 {
  padding-bottom: 14rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-140 {
    padding-bottom: 7rem !important;
  }
}

.helper-mt-145 {
  margin-top: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-145 {
    margin-top: 7.25rem !important;
  }
}

.helper-mb-145 {
  margin-bottom: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-145 {
    margin-bottom: 7.25rem !important;
  }
}

.helper-pt-145 {
  padding-top: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-145 {
    padding-top: 7.25rem !important;
  }
}

.helper-pb-145 {
  padding-bottom: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-145 {
    padding-bottom: 7.25rem !important;
  }
}

.helper-mt-150 {
  margin-top: 15rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-150 {
    margin-top: 7.5rem !important;
  }
}

.helper-mb-150 {
  margin-bottom: 15rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-150 {
    margin-bottom: 7.5rem !important;
  }
}

.helper-pt-150 {
  padding-top: 15rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-150 {
    padding-top: 7.5rem !important;
  }
}

.helper-pb-150 {
  padding-bottom: 15rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-150 {
    padding-bottom: 7.5rem !important;
  }
}

.helper-mt-155 {
  margin-top: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-155 {
    margin-top: 7.75rem !important;
  }
}

.helper-mb-155 {
  margin-bottom: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-155 {
    margin-bottom: 7.75rem !important;
  }
}

.helper-pt-155 {
  padding-top: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-155 {
    padding-top: 7.75rem !important;
  }
}

.helper-pb-155 {
  padding-bottom: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-155 {
    padding-bottom: 7.75rem !important;
  }
}

.helper-mt-160 {
  margin-top: 16rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-160 {
    margin-top: 8rem !important;
  }
}

.helper-mb-160 {
  margin-bottom: 16rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-160 {
    margin-bottom: 8rem !important;
  }
}

.helper-pt-160 {
  padding-top: 16rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-160 {
    padding-top: 8rem !important;
  }
}

.helper-pb-160 {
  padding-bottom: 16rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-160 {
    padding-bottom: 8rem !important;
  }
}

.helper-mt-165 {
  margin-top: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-165 {
    margin-top: 8.25rem !important;
  }
}

.helper-mb-165 {
  margin-bottom: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-165 {
    margin-bottom: 8.25rem !important;
  }
}

.helper-pt-165 {
  padding-top: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-165 {
    padding-top: 8.25rem !important;
  }
}

.helper-pb-165 {
  padding-bottom: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-165 {
    padding-bottom: 8.25rem !important;
  }
}

.helper-mt-170 {
  margin-top: 17rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-170 {
    margin-top: 8.5rem !important;
  }
}

.helper-mb-170 {
  margin-bottom: 17rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-170 {
    margin-bottom: 8.5rem !important;
  }
}

.helper-pt-170 {
  padding-top: 17rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-170 {
    padding-top: 8.5rem !important;
  }
}

.helper-pb-170 {
  padding-bottom: 17rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-170 {
    padding-bottom: 8.5rem !important;
  }
}

.helper-mt-175 {
  margin-top: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-175 {
    margin-top: 8.75rem !important;
  }
}

.helper-mb-175 {
  margin-bottom: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-175 {
    margin-bottom: 8.75rem !important;
  }
}

.helper-pt-175 {
  padding-top: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-175 {
    padding-top: 8.75rem !important;
  }
}

.helper-pb-175 {
  padding-bottom: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-175 {
    padding-bottom: 8.75rem !important;
  }
}

.helper-mt-180 {
  margin-top: 18rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-180 {
    margin-top: 9rem !important;
  }
}

.helper-mb-180 {
  margin-bottom: 18rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-180 {
    margin-bottom: 9rem !important;
  }
}

.helper-pt-180 {
  padding-top: 18rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-180 {
    padding-top: 9rem !important;
  }
}

.helper-pb-180 {
  padding-bottom: 18rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-180 {
    padding-bottom: 9rem !important;
  }
}

.helper-mt-185 {
  margin-top: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-185 {
    margin-top: 9.25rem !important;
  }
}

.helper-mb-185 {
  margin-bottom: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-185 {
    margin-bottom: 9.25rem !important;
  }
}

.helper-pt-185 {
  padding-top: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-185 {
    padding-top: 9.25rem !important;
  }
}

.helper-pb-185 {
  padding-bottom: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-185 {
    padding-bottom: 9.25rem !important;
  }
}

.helper-mt-190 {
  margin-top: 19rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-190 {
    margin-top: 9.5rem !important;
  }
}

.helper-mb-190 {
  margin-bottom: 19rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-190 {
    margin-bottom: 9.5rem !important;
  }
}

.helper-pt-190 {
  padding-top: 19rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-190 {
    padding-top: 9.5rem !important;
  }
}

.helper-pb-190 {
  padding-bottom: 19rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-190 {
    padding-bottom: 9.5rem !important;
  }
}

.helper-mt-195 {
  margin-top: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-195 {
    margin-top: 9.75rem !important;
  }
}

.helper-mb-195 {
  margin-bottom: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-195 {
    margin-bottom: 9.75rem !important;
  }
}

.helper-pt-195 {
  padding-top: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-195 {
    padding-top: 9.75rem !important;
  }
}

.helper-pb-195 {
  padding-bottom: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-195 {
    padding-bottom: 9.75rem !important;
  }
}

.helper-mt-200 {
  margin-top: 20rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mt-200 {
    margin-top: 10rem !important;
  }
}

.helper-mb-200 {
  margin-bottom: 20rem !important;
}
@media screen and (max-width: 768px) {
  .helper-mb-200 {
    margin-bottom: 10rem !important;
  }
}

.helper-pt-200 {
  padding-top: 20rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pt-200 {
    padding-top: 10rem !important;
  }
}

.helper-pb-200 {
  padding-bottom: 20rem !important;
}
@media screen and (max-width: 768px) {
  .helper-pb-200 {
    padding-bottom: 10rem !important;
  }
}

.bg-white {
  background: #fff;
}

.bg-black {
  background: #333;
}

.text-center {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .text-center-pc {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .text-center-sp {
    text-align: center;
  }
}

.hover-outline a,
.hover-outline button,
.hover-outline label {
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
@media (hover: hover) {
  .hover-outline a:hover,
  .hover-outline button:hover,
  .hover-outline label:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}
@media (hover: none) {
  .hover-outline a:active,
  .hover-outline button:active,
  .hover-outline label:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}

.hover-button a,
.hover-button button,
.hover-button label {
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
@media (hover: hover) {
  .hover-button a:hover,
  .hover-button button:hover,
  .hover-button label:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
    color: var(--primary);
  }
}
@media (hover: none) {
  .hover-button a:active,
  .hover-button button:active,
  .hover-button label:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
    color: var(--primary);
  }
}

.hover-color__text {
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.hover-color a:not(:has(.hover-color__text)),
.hover-color button:not(:has(.hover-color__text)),
.hover-color label:not(:has(.hover-color__text)) {
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .hover-color a:not(:has(.hover-color__text)):hover,
  .hover-color button:not(:has(.hover-color__text)):hover,
  .hover-color label:not(:has(.hover-color__text)):hover {
    color: var(--primary);
  }
}
@media (hover: none) {
  .hover-color a:not(:has(.hover-color__text)):active,
  .hover-color button:not(:has(.hover-color__text)):active,
  .hover-color label:not(:has(.hover-color__text)):active {
    color: var(--primary);
  }
}
@media (hover: hover) {
  .hover-color a:hover figure img,
  .hover-color button:hover figure img,
  .hover-color label:hover figure img {
    scale: 1.08;
  }
  .hover-color a:hover .hover-color__text,
  .hover-color button:hover .hover-color__text,
  .hover-color label:hover .hover-color__text {
    color: var(--primary);
  }
  .hover-color a:hover .component-arrow,
  .hover-color button:hover .component-arrow,
  .hover-color label:hover .component-arrow {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .hover-color a:hover .component-arrow::before,
  .hover-color button:hover .component-arrow::before,
  .hover-color label:hover .component-arrow::before {
    animation: arrow 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
}
@media (hover: none) {
  .hover-color a:active figure img,
  .hover-color button:active figure img,
  .hover-color label:active figure img {
    scale: 1.08;
  }
  .hover-color a:active .hover-color__text,
  .hover-color button:active .hover-color__text,
  .hover-color label:active .hover-color__text {
    color: var(--primary);
  }
  .hover-color a:active .component-arrow,
  .hover-color button:active .component-arrow,
  .hover-color label:active .component-arrow {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .hover-color a:active .component-arrow::before,
  .hover-color button:active .component-arrow::before,
  .hover-color label:active .component-arrow::before {
    animation: arrow 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
}
.hover-color a figure img,
.hover-color button figure img,
.hover-color label figure img {
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.hover-color a .component-arrow,
.hover-color button .component-arrow,
.hover-color label .component-arrow {
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}

@media (hover: hover) {
  .hover-float a:hover .hover-float__content,
  .hover-float button:hover .hover-float__content,
  .hover-float label:hover .hover-float__content {
    translate: 0 -2.2rem;
  }
  .hover-float a:hover .hover-float__content--high,
  .hover-float button:hover .hover-float__content--high,
  .hover-float label:hover .hover-float__content--high {
    translate: 0 -4rem;
  }
  .hover-float a:hover figure img,
  .hover-float button:hover figure img,
  .hover-float label:hover figure img {
    scale: 1.08;
  }
  .hover-float a:hover .component-arrow,
  .hover-float button:hover .component-arrow,
  .hover-float label:hover .component-arrow {
    opacity: 1;
  }
  .hover-float a:hover .component-arrow::before,
  .hover-float button:hover .component-arrow::before,
  .hover-float label:hover .component-arrow::before {
    animation: arrow 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
}
@media (hover: none) {
  .hover-float a:active .hover-float__content,
  .hover-float button:active .hover-float__content,
  .hover-float label:active .hover-float__content {
    translate: 0 -2.2rem;
  }
  .hover-float a:active .hover-float__content--high,
  .hover-float button:active .hover-float__content--high,
  .hover-float label:active .hover-float__content--high {
    translate: 0 -4rem;
  }
  .hover-float a:active figure img,
  .hover-float button:active figure img,
  .hover-float label:active figure img {
    scale: 1.08;
  }
  .hover-float a:active .component-arrow,
  .hover-float button:active .component-arrow,
  .hover-float label:active .component-arrow {
    opacity: 1;
  }
  .hover-float a:active .component-arrow::before,
  .hover-float button:active .component-arrow::before,
  .hover-float label:active .component-arrow::before {
    animation: arrow 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
}
.hover-float a figure img,
.hover-float button figure img,
.hover-float label figure img {
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.hover-float a .component-arrow,
.hover-float button .component-arrow,
.hover-float label .component-arrow {
  position: absolute;
  right: 50%;
  translate: 50% 0;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
.hover-float__content {
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate;
}

.hover-panel:not(:has(.is-show)) figure > *:first-child {
  opacity: 1;
}
.hover-panel figure {
  position: relative;
  background-color: #fff;
}
.hover-panel figure > * {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
.hover-panel figure > *.is-show {
  opacity: 1;
  z-index: 1;
}

.fadein-up {
  opacity: 0;
  translate: 0 6rem;
  transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), translate 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: opacity, translate;
}
.fadein-up.is-inview {
  opacity: 1;
  translate: 0 0;
}

.slide-up {
  overflow: hidden;
}
.slide-up:not(:has(span)) {
  opacity: 0;
}
.slide-up span {
  display: inline-block;
  translate: 0 100%;
  transition: translate 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate;
}
.slide-up span:nth-child(2) {
  transition-delay: 0.05s;
}
.slide-up span:nth-child(3) {
  transition-delay: 0.1s;
}
.slide-up span:nth-child(4) {
  transition-delay: 0.15s;
}
.slide-up span:nth-child(5) {
  transition-delay: 0.2s;
}
.slide-up span:nth-child(6) {
  transition-delay: 0.25s;
}
.slide-up span:nth-child(7) {
  transition-delay: 0.3s;
}
.slide-up span:nth-child(8) {
  transition-delay: 0.35s;
}
.slide-up span:nth-child(9) {
  transition-delay: 0.4s;
}
.slide-up span:nth-child(10) {
  transition-delay: 0.45s;
}
.slide-up span:nth-child(11) {
  transition-delay: 0.5s;
}
.slide-up span:nth-child(12) {
  transition-delay: 0.55s;
}
.slide-up span:nth-child(13) {
  transition-delay: 0.6s;
}
.slide-up span:nth-child(14) {
  transition-delay: 0.65s;
}
.slide-up span:nth-child(15) {
  transition-delay: 0.7s;
}
.slide-up span:nth-child(16) {
  transition-delay: 0.75s;
}
.slide-up span:nth-child(17) {
  transition-delay: 0.8s;
}
.slide-up span:nth-child(18) {
  transition-delay: 0.85s;
}
.slide-up span:nth-child(19) {
  transition-delay: 0.9s;
}
.slide-up span:nth-child(20) {
  transition-delay: 0.95s;
}
.slide-up.is-inview span {
  translate: 0;
}

.splide__arrows {
  position: absolute;
  left: 50%;
  translate: -50% -50%;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
.splide__arrow {
  display: block;
  transform: translateY(0);
  border: 0.2rem solid var(--primary);
  background-color: #fff;
  pointer-events: auto;
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
@media (hover: hover) {
  .splide__arrow:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}
@media (hover: none) {
  .splide__arrow:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}
.splide__arrow::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--primary);
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
}
.splide__arrow svg {
  display: none;
}
.splide__arrow--prev {
  rotate: 180deg;
}

@media screen and (min-width: 769px) {
  .js-slider-sp {
    display: contents;
  }
}
@media screen and (max-width: 768px) {
  .js-slider-sp {
    margin: 0 -2rem;
  }
}
@media screen and (min-width: 769px) {
  .js-slider-sp .splide__track {
    display: contents;
  }
}
@media screen and (max-width: 768px) {
  .js-slider-sp .splide__slide {
    padding: 0 2rem;
  }
}
.js-slider-sp .splide__arrows {
  width: 35.5rem;
}
.js-slider-sp .splide__arrow {
  width: 6rem;
  height: 6rem;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  .js-slider-sp .splide__arrow {
    width: 4rem;
    height: 4rem;
    border-radius: 100%;
  }
}

.js-slider-wide .splide__arrows {
  top: 50%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .js-slider-wide .splide__arrows {
    top: 11.8rem;
    width: calc(100% + 3rem);
  }
}
.js-slider-wide .splide__arrow {
  width: 10rem;
  height: 10rem;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  .js-slider-wide .splide__arrow {
    width: 5rem;
    height: 5rem;
    border-radius: 100%;
  }
}

@keyframes arrow {
  0% {
    translate: 0;
    opacity: 1;
  }
  50% {
    translate: 50% 0;
    opacity: 0;
  }
  51% {
    translate: -50% 0;
    opacity: 0;
  }
  100% {
    translate: 0 0;
    opacity: 1;
  }
}
@keyframes arrow-center {
  0% {
    translate: 0 -50%;
    opacity: 1;
  }
  50% {
    translate: 2rem -50%;
    opacity: 0;
  }
  51% {
    translate: -2rem -50%;
    opacity: 0;
  }
  100% {
    translate: 0 -50%;
    opacity: 1;
  }
}
@keyframes arrow-down {
  0% {
    translate: 0 -50%;
    opacity: 1;
  }
  40% {
    translate: 0 50%;
    opacity: 0;
  }
  41% {
    translate: 0 100%;
    opacity: 0;
  }
  50% {
    translate: 0 -100%;
    opacity: 0;
  }
  100% {
    translate: 0 -50%;
    opacity: 1;
  }
}
.component-arrow {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  display: block;
  flex-shrink: 0;
  position: relative;
  background-color: var(--primary);
}
.component-arrow::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  inset: 0;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.3rem 1.3rem;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.3rem 1.3rem;
}
.component-arrow--large {
  width: 10rem;
  height: 10rem;
}
@media screen and (max-width: 768px) {
  .component-arrow--large {
    width: 4rem;
    height: 4rem;
  }
}
.component-arrow--large::before {
  -webkit-mask-size: 1.6rem 1.6rem;
          mask-size: 1.6rem 1.6rem;
}
@media screen and (max-width: 768px) {
  .component-arrow--large::before {
    -webkit-mask-size: 1.2rem 1.2rem;
            mask-size: 1.2rem 1.2rem;
  }
}
.component-arrow--outline {
  border: 0.2rem solid var(--primary);
  background-color: #fff;
}
.component-arrow--outline::before {
  background-color: var(--primary);
}
.component-arrow--white {
  background-color: #fff;
}
.component-arrow--white::before {
  background-color: var(--primary);
}

.component-background {
  position: absolute;
  right: 0;
  left: 0;
  overflow: hidden;
  height: 500rem;
}
.component-background svg {
  position: absolute;
  height: auto;
  aspect-ratio: 2423/1518;
}
.component-background svg path {
  stroke-width: 9rem;
  stroke-dasharray: 8000;
  stroke-dashoffset: 8000;
  transition: stroke-dashoffset 10s cubic-bezier(0.23, 1, 0.32, 1);
  will-change: stroke-dashoffset;
}
.component-background--opacity3 {
  opacity: 0.3;
}
@media screen and (max-width: 768px) {
  .component-background--opacity3 {
    opacity: 0.2;
  }
}
.component-background--to-hide svg path {
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
  transition: none;
  animation: line 2s cubic-bezier(0.39, 0.575, 0.565, 1) 1 both;
}
.component-background--to-hide-1 svg path {
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
  transition: none;
  animation: line 3s cubic-bezier(0.39, 0.575, 0.565, 1) 1 both;
}
.component-background--to-hide-2 svg path {
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
  transition: none;
  animation: line2 3s cubic-bezier(0.39, 0.575, 0.565, 1) 1 both;
}
.component-background--to-hide-3 svg path {
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
  transition: none;
  animation: line3 3s cubic-bezier(0.39, 0.575, 0.565, 1) 1 both;
}
@keyframes line {
  0% {
    stroke-dashoffset: 4000;
  }
  50% {
    stroke-dashoffset: 0;
  }
  51% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: -4000;
  }
}
@keyframes line2 {
  0% {
    stroke-dashoffset: 4000;
    opacity: 1;
  }
  50% {
    stroke-dashoffset: 0;
    opacity: 1;
  }
  51% {
    stroke-dashoffset: 0;
    opacity: 1;
  }
  80% {
    stroke-dashoffset: 0;
    opacity: 0;
  }
  100% {
    stroke-dashoffset: 0;
    opacity: 0;
  }
}
@keyframes line3 {
  0% {
    stroke-dashoffset: 4000;
    opacity: 1;
  }
  50% {
    stroke-dashoffset: 0;
  }
  51% {
    stroke-dashoffset: 0;
  }
  65% {
    stroke-dashoffset: 0;
    opacity: 0.5;
  }
  100% {
    stroke-dashoffset: 0;
    opacity: 0.5;
  }
}

body.is-top .home-hero {
  overflow: hidden;
}
body.is-top .home-hero__heading span {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  will-change: clip-path;
}
body.is-top .home-hero__heading span:nth-of-type(1) {
  transition-delay: 0.4s;
}
body.is-top .home-hero__heading span:nth-of-type(2) {
  transition-delay: 0.6s;
}
body.is-top .home-hero .component-background {
  top: -47rem;
}
@media screen and (max-width: 768px) {
  body.is-top .home-hero .component-background {
    top: -7rem;
  }
}
body.is-top .home-hero .component-background svg {
  left: -77rem;
  width: 357.4rem;
}
@media screen and (max-width: 768px) {
  body.is-top .home-hero .component-background svg {
    left: -17.2rem;
    width: 75.4rem;
  }
}
body.is-top .home-hero .component-background svg path {
  transition-duration: 12s;
}
@media screen and (min-width: 769px) {
  body.is-top .home-hero .component-background svg path {
    stroke-width: 5rem;
  }
}
body.is-top.is-loaded .home-hero__heading span {
  clip-path: inset(0 0 0 0);
  text-shadow: 0 0.4rem 0.4rem rgba(51, 51, 51, 0.3);
}
body.is-top.is-loaded .component-background svg path {
  stroke-dashoffset: 0;
}

@media screen and (max-width: 768px) {
  body.is-new .component-hero.is-inview + .component-background {
    top: 18.5rem;
    opacity: 0.2;
  }
  body.is-new .component-hero.is-inview + .component-background svg {
    left: -17.5rem;
    width: 66rem;
  }
  body.is-new .component-hero.is-inview + .component-background path {
    stroke-dashoffset: 0;
  }
}
body.is-new .new-about {
  position: relative;
  z-index: 1;
}
body.is-new .new-about + .component-background {
  top: 94rem;
  opacity: 0.3;
}
@media screen and (max-width: 768px) {
  body.is-new .new-about + .component-background {
    top: 8.5rem;
    opacity: 0.2;
  }
}
body.is-new .new-about + .component-background svg {
  left: -8.6rem;
  width: 242.3rem;
}
@media screen and (max-width: 768px) {
  body.is-new .new-about + .component-background svg {
    left: -17.5rem;
    width: 66rem;
  }
}
body.is-new .new-about.is-inview + .component-background path {
  stroke-dashoffset: 0;
}
body.is-new .home-culture .component-background {
  top: 15.6rem;
  opacity: 0.3;
}
@media screen and (max-width: 768px) {
  body.is-new .home-culture .component-background {
    top: 3rem;
    opacity: 0.2;
  }
}
body.is-new .home-culture .component-background svg {
  right: -16rem;
  width: 78.9rem;
  aspect-ratio: 789/1980;
}
@media screen and (max-width: 768px) {
  body.is-new .home-culture .component-background svg {
    right: -17rem;
    width: 33.8rem;
  }
}
body.is-new .home-culture .component-background svg path {
  stroke-width: 7rem;
}
body.is-new .home-culture.is-inview .component-background path {
  stroke-dashoffset: 0;
  transition-duration: 20s;
}

body.is-career .career-about .component-background {
  top: -49.6rem;
  opacity: 0.8;
}
@media screen and (max-width: 768px) {
  body.is-career .career-about .component-background {
    top: -5.6rem;
  }
}
body.is-career .career-about .component-background svg {
  left: -38.2rem;
  width: 249.1rem;
}
@media screen and (max-width: 768px) {
  body.is-career .career-about .component-background svg {
    left: -22.6rem;
    width: 66rem;
  }
}
body.is-career .career-about.is-inview .component-background path {
  stroke-dashoffset: 0;
}
body.is-career .home-culture .component-background {
  top: 15.6rem;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  body.is-career .home-culture .component-background {
    top: 3rem;
    opacity: 0.75;
  }
}
body.is-career .home-culture .component-background svg {
  right: -16rem;
  width: 78.9rem;
  aspect-ratio: 789/1980;
}
@media screen and (max-width: 768px) {
  body.is-career .home-culture .component-background svg {
    right: -17rem;
    width: 33.8rem;
  }
}
body.is-career .home-culture .component-background svg path {
  stroke-width: 7rem;
}
body.is-career .home-culture.is-inview .component-background path {
  stroke-dashoffset: 0;
  transition-duration: 20s;
}

body .component-header .component-background {
  top: -39rem;
}
@media screen and (max-width: 768px) {
  body .component-header .component-background {
    top: -7rem;
  }
}
body .component-header .component-background svg {
  left: 12rem;
  width: 228.8rem;
}
@media screen and (max-width: 768px) {
  body .component-header .component-background svg {
    left: -9rem;
    width: 66rem;
  }
}
body.is-loaded .component-header .component-background path {
  stroke-dashoffset: 0;
}

.component-box {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem 4rem;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .component-box {
    gap: 2rem;
    margin-top: 2.5rem;
  }
}
.component-box:has(.component-box__item) .component-box__icon {
  width: 8.6rem;
  height: 8.6rem;
}
@media screen and (max-width: 768px) {
  .component-box:has(.component-box__item) .component-box__icon {
    width: 5.16rem;
    height: 5.16rem;
  }
}
.component-box:has(.component-box__item) .component-box__header {
  gap: 2.3rem;
}
.component-box:has(.component-box__item) .component-box__heading {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .component-box:has(.component-box__item) .component-box__heading {
    font-size: 1.92rem;
  }
}
.component-box__item {
  width: calc(50% - 2rem);
  padding: 2.6rem 4rem;
  border-radius: 1.4rem;
  background-color: var(--secondary);
}
@media screen and (max-width: 768px) {
  .component-box__item {
    width: 100%;
    padding: 1.3rem 2rem;
  }
}
.component-box__header {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.component-box__header .component-box__text {
  margin-top: 0;
}
.component-box__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 7.9rem;
  height: 7rem;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .component-box__icon {
    width: 4.74rem;
    height: 4.2rem;
  }
}
.component-box__icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.component-box__heading {
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .component-box__heading {
    font-size: 2.08rem;
  }
}
.component-box__text {
  margin-top: 2rem;
  line-height: 2.125;
}
@media screen and (max-width: 768px) {
  .component-box__text {
    margin-top: 1rem;
    font-size: 1.28rem;
  }
}
.component-box__text span {
  color: var(--primary);
}
.component-box__note {
  margin-top: 2.6rem;
  line-height: 1.2;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .component-box__note {
    margin-top: 1.3rem;
  }
}

.component-breadcrumb .component-breadcrumb-list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.component-breadcrumb .component-breadcrumb-list__item {
  color: #bebebe;
  font-size: 1.4rem;
  line-height: 1.4;
}
.component-breadcrumb .component-breadcrumb-list__item a {
  color: #333;
  font-weight: 700;
  font-size: 1.4rem;
  white-space: nowrap;
}
.component-breadcrumb .component-breadcrumb-list__item:not(:has(a)) {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.component-breadcrumb .component-breadcrumb-list__item:has(:last-child) {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.component-breadcrumb .component-breadcrumb-list__item:has(:last-child)::after {
  display: block;
  width: 0.6rem;
  height: 0.8rem;
  content: "";
  margin: 0 1rem;
  background: url("../../../saiyou/assets/img/common/arw_line.svg") no-repeat center/contain;
}

.component-button a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 35rem;
  height: 7.2rem;
  position: relative;
  border-radius: 7.2rem;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
@media screen and (max-width: 768px) {
  .component-button a {
    width: 33.5rem;
    height: 4rem;
    font-size: 1.4rem;
  }
}
@media (hover: hover) {
  .component-button a:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .component-button a:hover::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  .component-button a:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .component-button a:active::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
.component-button a::after {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 3.2rem;
  translate: 0 -50%;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-button a::after {
    width: 1.28rem;
    height: 1.28rem;
    right: 2.56rem;
  }
}
.component-button a[target=_blank]::after {
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media (hover: hover) {
  .component-button a[target=_blank]:hover::after {
    animation: none;
  }
}
@media (hover: none) {
  .component-button a[target=_blank]:active::after {
    animation: none;
  }
}
.component-button--large a {
  width: 44rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-button--large a {
    width: 32rem;
    height: 4rem;
    font-size: 1.12rem;
  }
}
.component-button--more a {
  width: 22rem;
  font-size: 2rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-button--more a {
    width: 32rem;
    height: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .component-button--more a::after {
    right: 8.6rem;
  }
}
.component-button--entry a {
  width: 80rem;
  height: 8rem;
  font-size: 3rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-button--entry a {
    width: 32rem;
    height: 5rem;
    font-size: 2.4rem;
  }
}
.component-button--entry a::after {
  right: 3rem;
}
.component-button--entry a[target=_blank]::after {
  display: block;
  width: 2.7rem;
  height: 2.7rem;
  content: "";
}
@media screen and (max-width: 768px) {
  .component-button--entry a[target=_blank]::after {
    width: 2.16rem;
    height: 2.16rem;
  }
}
.component-button--entry-detail a {
  width: 80rem;
  height: 8rem;
  font-size: 2.4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-button--entry-detail a {
    width: 32rem;
    height: 7rem;
    font-size: 1.6rem;
  }
}
.component-button--entry-detail a::after {
  display: none;
}
.component-button--entry-detail a[target=_blank]::before {
  display: block;
  width: 2.7rem;
  height: 2.7rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 4rem;
  translate: 0 -50%;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-button--entry-detail a[target=_blank]::before {
    width: 2.16rem;
    height: 2.16rem;
    right: 3.2rem;
  }
}
.component-button--arrow-left a::after {
  position: absolute;
  top: 50%;
  left: 3.2rem;
  rotate: -180deg;
}
@media screen and (max-width: 768px) {
  .component-button--arrow-left a::after {
    left: 2.56rem;
  }
}

.component-anchor {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.2rem 2.4rem;
  margin-top: 7.2rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .component-anchor {
    flex-direction: column;
    margin-top: 3.6rem;
  }
}
@media screen and (max-width: 768px) {
  .component-anchor .component-button--self a {
    width: 32rem;
    height: 4rem;
  }
}
.component-anchor .component-button--self a::after {
  transform: rotate(90deg);
}
@media (hover: hover) {
  .component-anchor .component-button--self a:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .component-anchor .component-button--self a:hover::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  .component-anchor .component-button--self a:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .component-anchor .component-button--self a:active::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
.component-anchor .component-button--disabled a {
  background-color: #ccc;
  color: #fff;
  pointer-events: none;
}
@media (hover: hover) {
  .component-anchor .component-button--disabled a:hover {
    box-shadow: none;
  }
  .component-anchor .component-button--disabled a:hover::after {
    animation: none;
  }
}
@media (hover: none) {
  .component-anchor .component-button--disabled a:active {
    box-shadow: none;
  }
  .component-anchor .component-button--disabled a:active::after {
    animation: none;
  }
}

.component-column {
  display: flex;
  flex-direction: column;
  gap: 13.2rem;
}
@media screen and (max-width: 768px) {
  .component-column {
    gap: 5rem;
  }
}
.component-column__item {
  display: flex;
  align-items: flex-start;
  gap: 2.5rem 5rem;
}
@media screen and (max-width: 768px) {
  .component-column__item {
    flex-direction: column;
  }
}
.component-column__image {
  overflow: hidden;
  flex-shrink: 0;
  width: 63rem;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .component-column__image {
    width: 100%;
  }
}
.component-column__content {
  margin-top: -1.2rem;
}
@media screen and (max-width: 768px) {
  .component-column__content {
    margin-top: 0;
  }
}
.component-column__content:has(.component-column__subheading) {
  padding-top: 1.4rem;
}
.component-column__content :first-child {
  margin-top: 0.2rem;
}
.component-column__heading {
  font-weight: 700;
  font-size: 3.4rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .component-column__heading {
    font-size: 2.04rem;
  }
}
.component-column__subheading {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.8333333333;
}
@media screen and (max-width: 768px) {
  .component-column__subheading {
    font-size: 1.44rem;
  }
}
.component-column__text {
  line-height: 2;
}
.component-column__text + .component-column__text {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .component-column__text + .component-column__text {
    margin-top: 1rem;
  }
}
.component-column__text--low {
  line-height: 1.75;
}
.component-column__text--low + .component-column__heading {
  margin-top: 0.6rem;
}
.component-column .component-button {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .component-column .component-button {
    margin-top: 2rem;
  }
}
.component-column--row {
  gap: 8rem;
}
@media screen and (max-width: 768px) {
  .component-column--row {
    gap: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .component-column--center .component-column__item {
    align-items: center;
  }
}
@media screen and (min-width: 769px) {
  .component-column--reverse .component-column__item:nth-child(2n) {
    flex-direction: row-reverse;
  }
}

.component-cta {
  width: 100%;
  height: 40rem;
  position: relative;
  z-index: 1;
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .component-cta {
    width: auto;
    height: auto;
    margin-top: 8rem;
  }
}
.component-cta .component-cta-list {
  display: flex;
  justify-content: center;
  position: absolute;
  inset: 0;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list {
    flex-direction: column;
    gap: 1rem;
    position: static;
    width: 100%;
    padding: 0 3rem;
  }
}
@media screen and (min-width: 769px) {
  .component-cta .component-cta-list:not(:has(:nth-of-type(3))) .component-cta-list__item:first-of-type {
    border-left: 1px solid #fff;
  }
}
@media screen and (min-width: 769px) {
  .component-cta .component-cta-list:not(:has(:nth-of-type(3))) .component-cta-list__item:last-of-type {
    border-right: 1px solid #fff;
  }
}
.component-cta .component-cta-list__item {
  width: 33.3333333%;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list__item {
    width: 100%;
    height: 10rem;
    position: relative;
    overflow: hidden;
    border-radius: 0.5rem;
  }
}
.component-cta .component-cta-list__item:first-of-type .component-cta-list__image {
  opacity: 1;
}
@media screen and (min-width: 769px) {
  .component-cta .component-cta-list__item:nth-of-type(n + 2) {
    border-left: 1px solid #fff;
  }
}
.component-cta .component-cta-list__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  flex-direction: column;
  gap: 1.6rem;
  position: relative;
  color: #fff;
  font-weight: 700;
  line-height: 1;
}
@media screen and (hover: hover) and (max-width: 768px) {
  .component-cta .component-cta-list__item a:hover .component-arrow {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}
@media (hover: hover) {
  .component-cta .component-cta-list__item a:hover + .component-cta-list__image {
    opacity: 1;
  }
}
@media screen and (hover: none) and (max-width: 768px) {
  .component-cta .component-cta-list__item a:active .component-arrow {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
}
@media (hover: none) {
  .component-cta .component-cta-list__item a:active + .component-cta-list__image {
    opacity: 1;
  }
}
.component-cta .component-cta-list__image {
  position: absolute;
  inset: 0;
  z-index: -1;
}
@media screen and (min-width: 769px) {
  .component-cta .component-cta-list__image {
    opacity: 0;
    transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    will-change: opacity;
  }
}
.component-cta .component-cta-list__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-cta .component-cta-list__content {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list__content {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    inset: 0;
    gap: 0.6rem;
    flex-direction: column;
    translate: 0 !important;
  }
}
.component-cta .component-cta-list__heading {
  font-size: 4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list__heading {
    font-size: 2rem;
  }
}
.component-cta .component-cta-list__text {
  margin-top: 1.2rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list__text {
    margin-top: 0;
  }
}
.component-cta .component-cta-list .component-arrow {
  bottom: 4rem;
}
@media screen and (max-width: 768px) {
  .component-cta .component-cta-list .component-arrow {
    right: 1rem;
    bottom: 50%;
    translate: 0 50%;
    opacity: 1;
    transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    will-change: box-shadow;
  }
}

.component-data {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .component-data {
    gap: 0 2rem;
  }
}
.component-data__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 38rem;
  height: 38rem;
  border-radius: 100%;
  flex-direction: column;
  background-color: #f8f8f8;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-data__item {
    width: 15.2rem;
    height: 15.2rem;
  }
}
.component-data__heading {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 6rem;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.3076923077;
}
@media screen and (max-width: 768px) {
  .component-data__heading {
    height: 2.4rem;
    font-size: 1.04rem;
  }
}
.component-data__heading span {
  font-size: 60%;
  display: inline-block;
  line-height: 1.35;
  margin: 1rem 0;
}
@media screen and (max-width: 768px) {
  .component-data__heading span {
    font-size: 70%;
  }
}
.component-data__text {
  margin-top: 2.6rem;
  color: var(--primary);
  font-weight: 700;
  font-size: 3rem;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .component-data__text {
    margin-top: 1.04rem;
    font-size: 1.2rem;
  }
}
.component-data__text strong {
  font-weight: 500;
  font-size: 10rem;
  font-family: Yakuhanjp, "Roboto", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-data__text strong {
    font-size: 4rem;
  }
}

.floating-banner {
  position: fixed;
  right: 1rem;
  bottom: 40%;
  z-index: 5;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), bottom 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity, bottom;
}
@media screen and (max-width: 768px) {
  .floating-banner {
    max-width: 20rem;
    bottom: 0.8rem;
  }
}
.floating-banner a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  width: 20rem;
  height: 20rem;
  position: relative;
  z-index: 5;
  padding: 2rem;
  border-radius: 20vh;
  background-color: white;
  box-sizing: content-box;
  border: 0.3rem solid white;
}
@media screen and (max-width: 768px) {
  .floating-banner a {
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
    padding: 2rem 4.8rem 2rem 2rem;
  }
}
.floating-banner a::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  opacity: 0.3;
  background-image: linear-gradient(to right, #10d994, #4285f4, #69d314);
  border-radius: 20vh;
}
.floating-banner__content {
  position: relative;
  z-index: 6;
  text-align: center;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .floating-banner__content {
    text-align: left;
    margin-top: 0;
  }
}
.floating-banner__heading {
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
  margin-bottom: 0.25em;
}
@media screen and (max-width: 768px) {
  .floating-banner__heading {
    font-size: 1.2rem;
  }
}
.floating-banner__subheading {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .floating-banner__subheading {
    font-size: 1.2rem;
  }
}
.floating-banner__text {
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .floating-banner__text {
    margin-top: 0.6rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.05em;
  }
}
.floating-banner__illust {
  width: 12rem;
  transform: translate(-10%, 10%);
  z-index: 4;
}
@media screen and (max-width: 768px) {
  .floating-banner__illust {
    display: none;
    position: absolute;
    right: 1.8rem;
    bottom: 0.6rem;
    width: 10.6rem;
  }
}
.floating-banner .component-arrow {
  border: 0.2rem solid var(--primary);
  position: absolute;
  right: 0;
  bottom: 0;
  translate: -50% -50%;
  z-index: 6;
}
@media screen and (max-width: 768px) {
  .floating-banner .component-arrow {
    width: 3rem;
    height: 3rem;
    border: 0.2rem solid var(--primary);
    right: 0rem;
  }
}

.is-loaded .floating-banner {
  opacity: 1;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s, bottom 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s;
  will-change: opacity, bottom;
}
.is-loaded .floating-banner.change {
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), bottom 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity, bottom;
  bottom: 2.4rem;
}
.is-loaded .floating-banner.hidden {
  pointer-events: none;
  opacity: 0;
  bottom: -rem(24);
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), bottom 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity, bottom;
}

.component-flow {
  display: flex;
  flex-direction: column;
}
.component-flow__item {
  display: flex;
  gap: 6.5rem;
  padding-bottom: 7.4rem;
}
@media screen and (max-width: 768px) {
  .component-flow__item {
    gap: 2.4rem;
    padding-bottom: 3.7rem;
  }
}
.component-flow__item:not(:last-child) {
  position: relative;
}
.component-flow__item:not(:last-child)::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 4.85rem;
  display: block;
  content: "";
  width: 0.3rem;
  background-color: var(--primary);
}
@media screen and (max-width: 768px) {
  .component-flow__item:not(:last-child)::after {
    left: 3.85rem;
  }
}
.component-flow__item.no-flowline::after {
  display: none;
}
@media screen and (max-width: 768px) {
  .component-flow__item.no-flowline .component-flow__image {
    margin-inline: auto;
  }
}
@media screen and (max-width: 768px) {
  .component-flow__item.no-flowline .component-flow__heading {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .component-flow__item.no-flowline .component-flow__inner {
    row-gap: 2rem;
  }
}
.component-flow__circle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10rem;
  height: 10rem;
  border-radius: 100%;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.2222222222;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-flow__circle {
    width: 8rem;
    height: 8rem;
    border-radius: 100%;
    font-size: 1.76rem;
  }
}
.component-flow__circle:has(br) {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-flow__circle:has(br) {
    font-size: 1.44rem;
  }
}
.component-flow__circle:has(strong) {
  line-height: 1.1;
}
.component-flow__circle strong {
  font-size: 4rem;
}
.component-flow__circle small {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .component-flow__circle small {
    font-size: 1.12rem;
  }
}
.component-flow__inner {
  display: flex;
  align-items: flex-start;
  gap: 3.3rem 6.6rem;
}
@media screen and (max-width: 768px) {
  .component-flow__inner {
    flex-direction: column;
  }
}
.component-flow__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 20rem;
  border-radius: 0.8rem;
}
.component-flow__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .component-flow__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
.component-flow__header-image {
  overflow: hidden;
  width: 40rem;
  border-radius: 0.8rem;
}
@media screen and (max-width: 768px) {
  .component-flow__header-image {
    width: 100%;
  }
}
.component-flow__heading {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.4;
  margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
  .component-flow__heading {
    font-size: 1.92rem;
  }
}
.component-flow__subheading {
  margin-top: 1.8rem;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .component-flow__subheading {
    font-size: 1.6rem;
  }
}
.component-flow__text {
  margin-top: 0.4rem;
  line-height: 2.5;
}
@media screen and (max-width: 768px) {
  .component-flow__text {
    line-height: 1.75;
  }
}

.component-header {
  padding-top: 16rem;
}
@media screen and (max-width: 768px) {
  .component-header {
    padding-top: 0;
  }
}
.component-header__heading {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-top: 3.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .component-header__heading {
    margin-top: 1.7rem;
  }
}
.component-header__heading-en {
  color: var(--primary);
  font-weight: 700;
  font-size: 3rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-header__heading-en {
    font-size: 1.5rem;
  }
}
.component-header__heading-ja {
  font-weight: 700;
  font-size: 4rem;
  font-family: Yakuhanjp, "Noto Sans JP", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .component-header__heading-ja {
    font-size: 2.4rem;
  }
}
.component-header__text {
  margin-top: 2rem;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .component-header__text {
    font-size: 1.6rem;
  }
}

.component-hero {
  position: relative;
}
.component-hero__image {
  overflow: hidden;
  width: 124.8rem;
  margin-left: auto;
  border-radius: 0 0 0 4rem;
}
@media screen and (max-width: 768px) {
  .component-hero__image {
    width: 35.5rem;
    border-radius: 0 0 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .component-hero__inner {
    position: relative;
    padding-left: 0;
  }
}
.component-hero__heading {
  position: absolute;
  bottom: calc(50% - 2.4rem);
  left: 12.2rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  translate: 0 50%;
  color: #fff;
  font-weight: 700;
  font-size: 7rem;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .component-hero__heading {
    position: absolute;
    bottom: 2rem;
    left: 0;
    gap: 0.4rem;
    translate: 0;
    font-size: 2.57rem;
  }
}
.component-hero__heading span {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  line-height: 1;
  padding: 0.8rem 1.6rem 1.6rem 1.6rem;
}
@media screen and (max-width: 768px) {
  .component-hero__heading span {
    padding: 0.4rem 0.6rem 0.6rem 0.6rem;
  }
}
.component-hero__heading span::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.component-hero__heading span:nth-of-type(2) {
  margin-left: 4rem;
}
@media screen and (max-width: 768px) {
  .component-hero__heading span:nth-of-type(2) {
    margin-left: 0;
  }
}
.component-hero__heading span:nth-of-type(2)::before {
  rotate: 180deg;
}
.component-hero .component-hero-news {
  position: absolute;
  right: 3rem;
  bottom: 3rem;
  width: 65rem;
  padding: 3.8rem 5rem 4rem;
  border-radius: 2rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .component-hero .component-hero-news {
    position: static;
    width: 100%;
    padding: 2.6rem 2rem 0;
    background-color: transparent;
  }
}
.component-hero .component-hero-news__heading {
  color: var(--primary);
  font-weight: 700;
  font-size: 2.6rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .component-hero .component-hero-news__heading {
    font-size: 2.4rem;
  }
}
.component-hero .component-hero-news .component-hero-news-list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .component-hero .component-hero-news .component-hero-news-list {
    margin-top: 1rem;
  }
}
.component-hero .component-hero-news .component-hero-news-list__item div {
  display: flex;
  gap: 2rem;
  line-height: 1.6428571429;
}
@media screen and (max-width: 768px) {
  .component-hero .component-hero-news .component-hero-news-list__item div {
    flex-direction: column;
    gap: 0;
    font-size: 1.4rem;
  }
}
.component-hero .component-hero-news .component-hero-news-list__date {
  flex-shrink: 0;
  width: 9.8rem;
  font-weight: 400;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
.component-hero .component-hero-news .component-hero-news-list__text {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 768px) {
  .component-hero .component-hero-news .component-hero-news-list__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
}
.component-hero .component-hero-news .component-hero-news-list__text a {
  color: var(--primary);
  text-decoration: underline;
  text-decoration-color: var(--primary);
  will-change: opacity;
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  .component-hero .component-hero-news .component-hero-news-list__text a:hover {
    opacity: 0.6;
    transition: opacity 0.3s ease;
  }
}
@media (hover: none) {
  .component-hero .component-hero-news .component-hero-news-list__text a:active {
    opacity: 0.6;
    transition: opacity 0.3s ease;
  }
}

body.is-new .component-hero__heading span {
  padding-right: 0;
}
body.is-new .component-hero__heading span::before {
  background-image: linear-gradient(to right, #10d994, #4285f4 150%);
}
@media screen and (max-width: 768px) {
  body.is-new .component-hero__heading span::before {
    right: 1rem;
  }
}

body.is-career .component-hero__heading span::before {
  background-image: linear-gradient(to right, #ff8549, #e53523 150%);
}

.component-home-index {
  display: flex;
  flex-wrap: wrap;
  gap: 9rem 5rem;
}
@media screen and (max-width: 768px) {
  .component-home-index {
    gap: 3rem;
  }
}
.component-home-index__item {
  width: calc(33.333333% - 3.3333333rem);
}
@media screen and (max-width: 768px) {
  .component-home-index__item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .component-home-index__item a {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
}
@media (hover: hover) {
  .component-home-index__item a:hover .component-home-index__image img {
    scale: 1.08;
  }
  .component-home-index__item a:hover .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #88b3f9;
  }
  .component-home-index__item a:hover .component-home-index__image::after {
    animation: arrow-home 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
  @keyframes arrow-home {
    0% {
      translate: 0 50%;
      opacity: 1;
    }
    50% {
      translate: 50% 50%;
      opacity: 0;
    }
    51% {
      translate: -50% 50%;
      opacity: 0;
    }
    100% {
      translate: 0 50%;
      opacity: 1;
    }
  }
}
@media (hover: none) {
  .component-home-index__item a:active .component-home-index__image img {
    scale: 1.08;
  }
  .component-home-index__item a:active .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #88b3f9;
  }
  .component-home-index__item a:active .component-home-index__image::after {
    animation: arrow-home 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
  @keyframes arrow-home {
    0% {
      translate: 0 50%;
      opacity: 1;
    }
    50% {
      translate: 50% 50%;
      opacity: 0;
    }
    51% {
      translate: -50% 50%;
      opacity: 0;
    }
    100% {
      translate: 0 50%;
      opacity: 1;
    }
  }
}
@media screen and (min-width: 769px) {
  .component-home-index__item--wide {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 768px) {
  .component-home-index__item--wide {
    padding-bottom: 1.6rem;
  }
}
.component-home-index__item--wide a {
  display: block;
}
.component-home-index__item--wide .component-home-index__image {
  width: 100%;
}
.component-home-index__item--wide .component-home-index__image::before, .component-home-index__item--wide .component-home-index__image::after {
  right: 5rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__item--wide .component-home-index__image::before, .component-home-index__item--wide .component-home-index__image::after {
    width: 5rem;
    height: 5rem;
    right: 2rem;
  }
}
.component-home-index__item--wide .component-home-index__image::after {
  -webkit-mask-size: 1.6rem 1.6rem !important;
          mask-size: 1.6rem 1.6rem !important;
}
.component-home-index__item--wide .component-home-index__heading {
  gap: 2.4rem;
  margin-top: -4.8rem;
  padding: 0 3.8rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__item--wide .component-home-index__heading {
    gap: 0.8rem;
    margin-top: -2.3rem;
    padding: 0 2rem;
  }
}
.component-home-index__item--wide .component-home-index__heading-en {
  font-size: 9rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__item--wide .component-home-index__heading-en {
    font-size: 4rem;
  }
}
.component-home-index__item--wide .component-home-index__heading-ja {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__item--wide .component-home-index__heading-ja {
    font-size: 2rem;
  }
}
@media (hover: hover) {
  .component-home-index__item:nth-of-type(1) a:hover .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
  }
}
@media (hover: none) {
  .component-home-index__item:nth-of-type(1) a:active .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
  }
}
.component-home-index__item:nth-of-type(1) .component-home-index__image::before {
  border-color: #0bd7a0;
}
.component-home-index__item:nth-of-type(1) .component-home-index__image::after {
  background-color: #0bd7a0;
}
.component-home-index__item:nth-of-type(1) .component-home-index__heading {
  color: #0bd7a0;
}
@media (hover: hover) {
  .component-home-index__item:nth-of-type(2) a:hover .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #fff2e6;
  }
}
@media (hover: none) {
  .component-home-index__item:nth-of-type(2) a:active .component-home-index__image::before {
    box-shadow: 0 0 0 0.8rem #fff2e6;
  }
}
.component-home-index__item:nth-of-type(2) .component-home-index__image::before {
  border-color: #ff8549;
}
.component-home-index__item:nth-of-type(2) .component-home-index__image::after {
  background-color: #ff8549;
}
.component-home-index__item:nth-of-type(2) .component-home-index__heading {
  color: #ff8549;
}
.component-home-index__item.is-hide {
  display: none;
}
.component-home-index__image {
  position: relative;
}
@media screen and (max-width: 768px) {
  .component-home-index__image {
    flex-shrink: 0;
    width: 14rem;
  }
}
.component-home-index__image::before, .component-home-index__image::after {
  display: block;
  width: 10rem;
  height: 10rem;
  content: "";
  position: absolute;
  right: 2rem;
  bottom: 0;
  translate: 0 50%;
  border-radius: 50%;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .component-home-index__image::before, .component-home-index__image::after {
    width: 3rem;
    height: 3rem;
    right: 1rem;
  }
}
.component-home-index__image::before {
  background-color: #fff;
  border: 0.2rem solid #4285f4;
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
.component-home-index__image::after {
  background-color: #4285f4;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__image::after {
    -webkit-mask-size: 1.2rem 1.2rem;
            mask-size: 1.2rem 1.2rem;
  }
}
.component-home-index__image span {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 1.4rem;
}
.component-home-index__image img {
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.component-home-index__heading {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.6rem;
  margin-top: -2rem;
  padding: 0 3rem;
  color: #4285f4;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .component-home-index__heading {
    gap: 1rem;
    margin-top: 0rem;
    padding: 0;
  }
}
.component-home-index__heading-en {
  font-size: 4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .component-home-index__heading-en {
    font-size: 2rem;
  }
}
.component-home-index__heading-ja {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .component-home-index__heading-ja {
    font-size: 1.6rem;
  }
}

.component-nav-top {
  margin-top: 20rem;
}
@media screen and (max-width: 768px) {
  .component-nav-top {
    margin-top: 10rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item:nth-of-type(1) {
    grid-area: 1/1/2/4;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item:nth-of-type(2) {
    grid-area: 1/4/2/7;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item.msg {
    grid-area: 2/1/3/3;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item.num {
    grid-area: 2/3/3/5;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__item.interview {
    grid-area: 2/5/3/7;
  }
}
.component-nav-top .component-home-index__item.msg .component-home-index__image, .component-nav-top .component-home-index__item.num .component-home-index__image, .component-nav-top .component-home-index__item.interview .component-home-index__image {
  aspect-ratio: 2/1;
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__image {
    border-radius: 1.2rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__image::before, .component-nav-top .component-home-index__image::after {
    width: 8.6rem;
    height: 8.6rem;
    right: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__heading {
    gap: 1rem;
    margin-top: -1.8rem;
    padding: 0 2.3rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__heading-en {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 769px) {
  .component-nav-top .component-home-index__heading-ja {
    font-size: 1.8rem;
  }
}

.hover_img-scale img {
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
@media (hover: hover) {
  .hover_img-scale:hover img {
    scale: 1.08;
  }
}
@media (hover: none) {
  .hover_img-scale:active img {
    scale: 1.08;
  }
}

.component-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8.8rem 4rem;
}
@media screen and (max-width: 768px) {
  .component-index {
    gap: 4rem;
  }
}
.component-index__item {
  width: calc(33.3333% - 2.6666666rem);
}
@media screen and (max-width: 768px) {
  .component-index__item {
    width: 100%;
  }
}
.component-index__item a[target=_blank] .component-index__image {
  position: relative;
}
.component-index__item a[target=_blank] .component-index__image::after {
  display: block;
  width: 2.7rem;
  height: 2.7rem;
  content: "";
  position: absolute;
  top: 1rem;
  right: 1rem;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-index__item a[target=_blank] .component-index__image::after {
    width: 1.9rem;
    height: 1.9rem;
  }
}
@media screen and (min-width: 769px) {
  .component-index__item--wide {
    width: calc(50% - 2rem);
  }
}
.component-index__item.is-disabled {
  pointer-events: none;
}
.component-index__item.is-disabled .component-index__image {
  position: relative;
}
.component-index__item.is-disabled .component-index__image::before {
  display: block;
  content: "COMING SOON";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #e2e2e2;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
.component-index__item.is-disabled .component-index__content {
  opacity: 0.1;
}
.component-index__item.is-disabled .component-index__content .component-arrow {
  display: none;
}
.component-index__image {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  aspect-ratio: 243/158;
}
@media screen and (max-width: 768px) {
  .component-index__image {
    width: 100%;
    max-width: 31.5rem;
    margin-left: auto;
    margin-right: auto;
    height: 18rem;
  }
}
.component-index__image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-index__image figcaption {
  position: absolute;
  bottom: 3rem;
  left: 2rem;
  color: #fff;
  font-weight: 700;
  font-size: 5rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
}
.component-index__content {
  padding: 2rem 2rem 0;
}
@media screen and (max-width: 768px) {
  .component-index__content {
    padding: 2rem 0 0;
  }
}
.component-index__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.4166666667;
}
@media screen and (max-width: 768px) {
  .component-index__heading {
    font-size: 2rem;
  }
}
.component-index__text {
  margin-top: 1rem;
  line-height: 1.75;
}
.component-index--center {
  justify-content: center;
}
.component-index--left {
  justify-content: flex-start;
}
.component-index--row {
  gap: 4.6rem 4rem;
}
.component-index--strong figcaption {
  font-size: 3rem;
}
.component-index--strong figcaption::first-letter {
  font-size: 5rem;
}

.component-interview {
  display: flex !important;
  flex-wrap: wrap;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .component-interview {
    flex-direction: column;
    gap: 4rem;
  }
}
.component-interview--sort .component-interview__item {
  display: none;
}
.component-interview--sort:not(:has(.component-interview__item.is-show))::before {
  width: 100%;
  text-align: center;
  content: "該当するインタビューはありません";
}
.component-interview__item {
  width: calc((100% - 8rem) / 3);
}
@media screen and (max-width: 768px) {
  .component-interview__item {
    width: 100%;
  }
}
.component-interview__item[data-join=new] figcaption::before {
  background-image: linear-gradient(to right, #49ffbf, #2be4c5, #36d0ff);
}
.component-interview__item[data-join=career] figcaption::before {
  opacity: 1 !important;
  background-image: linear-gradient(to right, #fde3ab, #fea174);
}
.component-interview__item.is-show {
  display: block !important;
}
.component-interview__image {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .component-interview__image {
    height: 26rem;
  }
}
.component-interview__image figcaption {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 2rem;
  left: 2rem;
  z-index: 1;
  overflow: hidden;
  min-width: 10rem;
  height: 2.4rem;
  padding: 0 2rem 0.2rem 2rem;
  border-radius: 10rem;
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .component-interview__image figcaption {
    padding: 0 1.7rem 0.2rem 1.7rem;
  }
}
.component-interview__image figcaption::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: linear-gradient(to right, #4dc6ff, #0568f0);
}
.component-interview__content {
  width: 100%;
  max-width: 34rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-top: -7.4rem;
  padding: 3rem 3rem 0;
  border-radius: 1rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .component-interview__content {
    margin-top: 0;
    padding: 0.8rem 0 0;
    border-radius: 0;
  }
}
.component-interview__heading {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.5454545455;
}
@media screen and (max-width: 768px) {
  .component-interview__heading {
    font-size: 2rem;
    line-height: 1.7;
  }
}
.component-interview__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
}

.section {
  position: relative;
}
.section__inner {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .section__inner {
    padding: 0 2rem;
  }
}
.section__heading {
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .section__heading {
    font-size: 2.52rem;
  }
}
.section__heading:has(.section__heading-en) {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
@media screen and (max-width: 768px) {
  .section__heading:has(.section__heading-en) {
    gap: 0;
  }
}
.section__heading:has(.section__heading-en) + .section__text {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .section__heading:has(.section__heading-en) + .section__text {
    margin-top: 1rem;
  }
}
.section__heading-en {
  display: block;
  color: var(--primary);
  font-weight: 700;
  font-size: 3rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .section__heading-en {
    font-size: 1.2rem;
  }
}
.section__heading-ja {
  display: block;
  font-weight: 700;
  font-size: 4.8rem;
  line-height: 1.4375;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .section__heading-ja {
    font-size: 2.8rem;
  }
}
.section__heading--small {
  font-size: 3rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .section__heading--small {
    font-size: 2.4rem;
  }
}
.section__heading--large {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .section__heading--large {
    font-size: 3.2rem;
  }
}
.section__heading--line {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.section__heading--line::before {
  display: block;
  width: 0.8rem;
  height: 3.8rem;
  content: "";
  margin-top: 0.4rem;
  background-color: var(--primary);
}
.section__heading + .section__text {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .section__heading + .section__text {
    margin-top: 1rem;
  }
}
.section__heading + .section__text--large {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .section__heading + .section__text--large {
    margin-top: 1.5rem;
  }
}
.section__heading + .section__image {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .section__heading + .section__image {
    margin-top: 2rem;
  }
}
.section__subheading {
  margin-top: 1.6rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.6666666667;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .section__subheading {
    font-size: 2rem;
  }
}
.section__subheading + .section__text {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .section__subheading + .section__text {
    margin-top: 0.8rem;
  }
}
.section__text--large {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .section__text--large {
    font-size: 1.6rem;
  }
}
.section__text + .section__image, .section__text + .section__figure, .section__text + .section__movie {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .section__text + .section__image, .section__text + .section__figure, .section__text + .section__movie {
    margin-top: 2rem;
  }
}
.section__note {
  font-size: 1.4rem;
  line-height: 1.8571428571;
}
.section__note a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding-right: 0.4rem;
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 0.4em;
}
.section__note a::after {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  background-color: var(--primary);
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
.section .section-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 4rem;
}
.section .section-list__item {
  width: 100%;
  line-height: 1.4;
}
.section .section-list__item::before {
  content: "・";
}
@media screen and (min-width: 769px) {
  .section .section-list--50 .section-list__item {
    width: calc(50% - 2rem);
  }
}
@media screen and (min-width: 769px) {
  .section .section-list--33 .section-list__item {
    width: calc(33.33% - 2.6666666rem);
  }
}
.section__image img {
  display: inline-block;
  width: 74rem;
  border-radius: 1.4rem;
}
.section__movie iframe {
  width: 100rem;
  height: auto;
  display: inline-block;
  border-radius: 1.4rem;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 768px) {
  .section__movie iframe {
    width: 100%;
  }
}

.component-tab {
  display: flex;
  justify-content: center;
  border-bottom: 0.2rem solid #bebebe;
}
@media screen and (max-width: 768px) {
  .component-tab {
    flex-wrap: wrap;
    margin: 0 -2rem;
  }
}
.component-tab:has(:nth-child(n+5)) button {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .component-tab:has(:nth-child(n+5)) button {
    width: auto;
  }
}
.component-tab__item button {
  position: relative;
  width: 23.5rem;
  font-weight: 700;
  font-size: 2rem;
  padding-bottom: 1rem;
  text-align: center;
  color: #333;
}
@media screen and (max-width: 768px) {
  .component-tab__item button {
    width: auto;
    padding: 0 0.5rem 0.5rem;
    font-size: 1.4rem;
  }
}
.component-tab__item button::after {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.2rem;
  left: 0;
  scale: 1 0;
  transform-origin: center bottom;
  height: 0.6rem;
  background-color: var(--primary);
  transition: scale 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.component-tab__item button.is-clicked {
  color: var(--primary);
  pointer-events: none;
}
.component-tab__item button.is-clicked::after {
  scale: 1;
}

.component-contents__item {
  display: none;
}
.component-contents__item.is-active {
  display: block;
}

.layout-content {
  position: relative;
  overflow: hidden;
}

.layout-footer {
  padding: 8rem 0 0;
}
@media screen and (max-width: 768px) {
  .layout-footer {
    margin-top: 4.8rem;
    padding: 4.8rem 2rem 4rem;
  }
}
.layout-footer__inner {
  width: 100%;
  max-width: 154rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: flex-start;
  gap: 0 6.3rem;
  position: relative;
  padding-bottom: 5rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .layout-footer__inner {
    flex-direction: column;
    padding: 0;
  }
}
.layout-footer__content {
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .layout-footer__content {
    width: 100%;
  }
}
.layout-footer .footer-logo {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.layout-footer .footer-logo a {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.layout-footer .footer-logo__image {
  display: block;
  width: 15rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-logo__image {
    width: 11.5rem;
  }
}
.layout-footer .footer-logo__text {
  color: #004098;
  font-weight: 700;
  font-size: 1.8rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
.layout-footer .footer-sns {
  display: flex;
  gap: 2.4rem;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-sns {
    flex-direction: column;
    width: 100%;
    margin-top: 3rem;
    gap: 0rem;
  }
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-sns__item {
    width: 100%;
  }
}
.layout-footer .footer-sns__item a {
  display: flex;
  align-items: center;
  height: 4rem;
  gap: 0.8rem;
  border-radius: 0.3rem;
  font-weight: 700;
  font-size: 1.4rem;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-sns__item a {
    justify-content: flex-start;
    width: 100%;
    padding: 0;
  }
}
.layout-footer .footer-sns__icon {
  width: 2.3rem;
}
.layout-footer .footer-links {
  width: 100%;
  margin-top: 1.6rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-links {
    flex-direction: row;
    width: 100%;
    margin-top: 2.6rem;
  }
}
.layout-footer .footer-links__text a {
  font-weight: 700;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-links__text a {
    font-size: 1.4rem;
  }
}
@media (hover: hover) {
  .layout-footer .footer-links__text a:hover {
    opacity: 0.8;
  }
}
@media (hover: none) {
  .layout-footer .footer-links__text a:active {
    opacity: 0.8;
  }
}
.layout-footer .footer-links .footer-links-sub {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-links .footer-links-sub {
    gap: 0.8rem;
    margin-top: 1rem;
  }
}
.layout-footer .footer-links .footer-links-sub__item a {
  font-size: 1.5rem;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-links .footer-links-sub__item a {
    font-size: 1.4rem;
  }
}
@media (hover: hover) {
  .layout-footer .footer-links .footer-links-sub__item a:hover {
    opacity: 0.8;
  }
}
@media (hover: none) {
  .layout-footer .footer-links .footer-links-sub__item a:active {
    opacity: 0.8;
  }
}
.layout-footer .footer-links2 {
  display: flex;
  gap: 1rem;
  margin-top: 7.2rem;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-links2 {
    flex-direction: column-reverse;
    gap: 0.8rem;
    margin-top: 1rem;
  }
}
.layout-footer .footer-secondary__inner {
  display: flex;
  justify-content: flex-start;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-secondary__inner {
    flex-direction: column;
    gap: 0rem;
  }
}
.layout-footer .footer-secondary__inner a {
  font-size: 1.5rem;
  transition: 0.3s;
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-secondary__inner a {
    font-size: 1.4rem;
  }
}
@media (hover: hover) {
  .layout-footer .footer-secondary__inner a:hover {
    opacity: 0.8;
  }
}
@media (hover: none) {
  .layout-footer .footer-secondary__inner a:active {
    opacity: 0.8;
  }
}
.layout-footer .footer-secondary__inner a[target=_blank]::after {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  margin-left: 0.4rem;
  background-color: #333;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
.layout-footer .footer-copyright {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-copyright {
    margin-top: 3.8rem;
    text-align: center;
  }
}

body.is-top .layout-footer {
  background-image: linear-gradient(to right, #d3edf8 14%, #cef4f2 46%, #ffe7db 80%);
}
@media screen and (max-width: 768px) {
  body.is-top .layout-footer {
    padding: 2.8rem 2.4rem 3rem;
    border-radius: 3rem 3rem 0 0;
  }
}
body.is-top .layout-footer__inner {
  justify-content: space-between;
}
body.is-top .footer-logo a {
  gap: 1rem;
  padding: 4rem 0rem 4rem 0rem;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-logo a {
    padding: 2.2rem 0.8rem 2.2rem 0.8rem;
  }
}
body.is-top .footer-logo__image {
  width: 17.4rem;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-logo__image {
    width: 9.4rem;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .footer-logo__text {
    font-size: 1rem;
  }
}
body.is-top .footer-sns {
  flex-direction: row;
  width: 100%;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-sns {
    flex-direction: column;
    margin-top: 1rem;
  }
}
body.is-top .footer-links {
  display: grid;
  grid-template-columns: auto auto 1fr 1fr;
  grid-template-rows: repeat(4, 3.6rem);
  gap: 0 8.5rem;
  width: auto;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(6, 2.8rem);
    gap: 0;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item a {
    color: #333;
  }
}
body.is-top .footer-links__item--recruit, body.is-top .footer-links__item--career {
  font-weight: 700;
}
body.is-top .footer-links__item--recruit a, body.is-top .footer-links__item--career a {
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--recruit a, body.is-top .footer-links__item--career a {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--career {
    grid-area: 2/1;
    margin-top: 1rem;
  }
}
body.is-top .footer-links__item--hr-message {
  grid-area: 3/3;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--hr-message {
    grid-area: 3/2;
  }
}
body.is-top .footer-links__item--sayo_message {
  grid-area: 4/3;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--sayo_message {
    grid-area: 4/2;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--numbers {
    grid-area: 1/2;
  }
}
body.is-top .footer-links__item--interview {
  grid-area: 2/3;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--interview {
    grid-area: 2/2;
  }
}
body.is-top .footer-links__item--company {
  grid-area: 1/4;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--company {
    grid-area: 5/2;
  }
}
body.is-top .footer-links__item--contact {
  grid-area: 2/4;
}
@media screen and (max-width: 768px) {
  body.is-top .footer-links__item--contact {
    grid-area: 6/2;
  }
}

body.is-new .layout-footer {
  background-color: #dffff6;
}
body.is-new .layout-footer__inner {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
}
@media screen and (min-width: 769px) {
  body.is-new .footer-sns {
    margin-top: 18rem;
  }
}
body.is-new .footer-links {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-template-rows: repeat(5, 4rem);
  gap: 0 5rem;
  width: auto;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    gap: 0;
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  body.is-new .footer-links__item--hr-message, body.is-new .footer-links__item--r-message, body.is-new .footer-links__item--numbers, body.is-new .footer-links__item--interview {
    position: absolute;
    left: 0;
  }
}
@media screen and (min-width: 769px) {
  body.is-new .footer-links__item--hr-message {
    top: 7.2rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-new .footer-links__item--r-message {
    top: 10.4rem;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--r-message {
    grid-area: 2/1/3/2;
  }
}
body.is-new .footer-links__item--numbers {
  top: 13.6rem;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--numbers {
    grid-area: 3/1/4/2;
    top: auto;
  }
}
body.is-new .footer-links__item--interview {
  top: 16.8rem;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--interview {
    grid-area: 4/1/5/2;
    top: auto;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--company {
    grid-area: 5/2/6/3;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--business {
    grid-area: 1/2/4/2;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--work {
    grid-area: 6/1/7/3;
  }
}
body.is-new .footer-links__item--recruit {
  grid-area: 1/4/2/5;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--recruit {
    grid-area: 7/1/8/3;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--open, body.is-new .footer-links__item--work, body.is-new .footer-links__item--recruit, body.is-new .footer-links__item--contact {
    margin-top: 1.4rem;
  }
}
body.is-new .footer-links__item--open {
  grid-area: 4/4/5/5;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--open {
    grid-area: 8/1/9/2;
  }
}
body.is-new .footer-links__item--contact {
  grid-area: 5/4/6/5;
}
@media screen and (max-width: 768px) {
  body.is-new .footer-links__item--contact {
    grid-area: 9/1/10/2;
  }
}
body.is-career .layout-footer {
  background-color: var(--secondary);
}
body.is-career .layout-footer__inner {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
}
@media screen and (min-width: 769px) {
  body.is-career .footer-sns {
    margin-top: 18rem;
  }
}
body.is-career .footer-links {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-template-rows: repeat(5, 4rem);
  gap: 0 7rem;
  width: auto;
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    gap: 0;
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  body.is-career .footer-links__item--hr-message, body.is-career .footer-links__item--r-message, body.is-career .footer-links__item--numbers, body.is-career .footer-links__item--interview {
    position: absolute;
    left: 0;
  }
}
@media screen and (min-width: 769px) {
  body.is-career .footer-links__item--numbers {
    top: 7.2rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-career .footer-links__item--interview {
    top: 10.4rem;
  }
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--interview {
    grid-area: 2/1/3/2;
  }
}
body.is-career .footer-links__item--hr-message {
  top: 13.6rem;
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--hr-message {
    grid-area: 3/1/4/2;
    top: auto;
  }
}
body.is-career .footer-links__item--r-message {
  top: 16.8rem;
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--r-message {
    grid-area: 4/1/5/2;
    top: auto;
  }
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--company {
    grid-area: 5/2/6/3;
  }
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--business {
    grid-area: 1/2/4/2;
  }
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--work {
    grid-area: 5/1/6/3;
  }
}
body.is-career .footer-links__item--recruit {
  grid-area: 1/4/2/5;
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--recruit {
    grid-area: 6/1/7/3;
  }
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--work, body.is-career .footer-links__item--recruit, body.is-career .footer-links__item--contact {
    margin-top: 1.4rem;
  }
}
body.is-career .footer-links__item--contact {
  grid-area: 3/4/4/5;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  body.is-career .footer-links__item--contact {
    grid-area: 7/1/8/2;
  }
}
.layout-header {
  position: fixed;
  top: 5rem;
  right: 0;
  left: 0;
  z-index: 999;
}
@media screen and (max-width: 768px) {
  .layout-header {
    position: sticky;
    top: 0;
  }
}
.layout-header__inner {
  width: 100%;
  max-width: 180rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .layout-header__inner {
    align-items: center;
    height: 7rem;
    padding: 0 2rem;
    background-color: #fff;
  }
}
.layout-header .header-logo:not(:has(a)),
.layout-header .header-logo a {
  display: flex;
  align-items: center;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo:not(:has(a)),
  .layout-header .header-logo a {
    gap: 1.5rem;
  }
}
.layout-header .header-logo__image {
  display: block;
  width: 15rem;
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo__image {
    width: 8.7rem;
  }
}
.layout-header .header-logo__text {
  font-size: 1.4rem;
  line-height: 1.5714285714;
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo__text {
    font-size: 1rem;
  }
}
.layout-header .header-logo__text:has(strong) {
  margin-top: 0.6rem;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo__text:has(strong) {
    margin-top: 0.1rem;
    font-size: 0.9rem;
  }
}
.layout-header .header-logo__text strong {
  font-size: 2.8rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo__text strong {
    font-size: 1.8rem;
  }
}
.layout-header .header-logo__text strong span {
  color: #0bd7a0;
}
.layout-header .header-button {
  width: 3.7rem;
  height: 2.8rem;
}
.layout-header .header-button button {
  width: 100%;
  height: 100%;
  position: relative;
}
.layout-header .header-button button span {
  position: absolute;
  right: 0;
  left: 0;
  width: 100%;
  height: 0.4rem;
  display: block;
  background-color: var(--primary);
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), scale 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), rotate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate, scale, rotate;
}
.layout-header .header-button button span:nth-of-type(1) {
  top: 0;
}
.layout-header .header-button button span:nth-of-type(2) {
  top: 50%;
  translate: 0 -50%;
}
.layout-header .header-button button span:nth-of-type(3) {
  bottom: 0;
}
@media screen and (max-width: 768px) {
  .layout-header__content {
    position: absolute;
    top: 7rem;
    right: 0;
    left: 0;
    overflow: hidden;
    max-height: 0; /* たたんだ状態 */
    transition: max-height 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.layout-header .header-nav {
  display: flex;
  align-items: center;
  gap: 2.8rem;
  padding: 1.4rem 1.6rem 1.4rem 4.7rem;
  border-radius: 8.4rem;
  background-color: rgba(255, 255, 255, 0.9);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav {
    overflow: hidden;
    padding: 0;
    border-radius: 0;
    background-color: #fff;
  }
}
.layout-header .header-nav__inner {
  display: contents;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav__inner {
    width: 100%;
    height: calc(100vh - 7rem);
    display: block;
    padding: 0.6rem 2rem 2rem;
    border-top: 1px solid #ddd;
  }
}
.layout-header .header-nav .header-list,
.layout-header .header-nav .header-buttons {
  display: flex;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-list,
  .layout-header .header-nav .header-buttons {
    flex-direction: column;
  }
}
.layout-header .header-nav .header-list a,
.layout-header .header-nav .header-buttons a {
  font-weight: 700;
}
.layout-header .header-nav .header-list {
  display: flex;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-list {
    height: auto;
  }
}
.layout-header .header-nav .header-list__item {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-list__item {
    border-bottom: 1px solid #ddd;
  }
}
.layout-header .header-nav .header-list__item a {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  position: relative;
  height: 100%;
  padding: 0 1.8rem;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-list__item a {
    padding: 1.2rem;
  }
}
@media (hover: hover) {
  .layout-header .header-nav .header-list__item a:hover::before, .layout-header .header-nav .header-list__item a:hover::after {
    background-color: var(--primary) !important;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-list__item a:active::before, .layout-header .header-nav .header-list__item a:active::after {
    background-color: var(--primary) !important;
  }
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-list__item a::before {
    display: block;
    width: 1.3rem;
    height: 1.3rem;
    content: "";
    position: absolute;
    top: 50%;
    right: 1.2rem;
    translate: 0 -50%;
    background-color: #333;
    -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
            mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
    transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.layout-header .header-nav .header-list__item a[target=_blank]::after {
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  content: "";
  margin-top: 0.1rem;
  background-color: #333;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.layout-header .header-nav .header-buttons {
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-buttons {
    margin-top: 2rem;
  }
}
.layout-header .header-nav .header-buttons__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15rem;
  height: 6rem;
  gap: 2.6rem;
  border-radius: 6rem;
  border: 0.2rem solid var(--primary);
  color: var(--primary);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-buttons__item a {
    width: 100%;
    height: 6rem;
  }
}
.layout-header .header-nav .header-buttons__item:nth-of-type(1) a {
  background-color: #fff;
  color: var(--primary);
}
.layout-header .header-nav .header-buttons__item:nth-of-type(2) a {
  background-color: var(--primary);
  color: #fff;
}

@media screen and (min-width: 769px) {
  body.is-top .layout-header {
    max-width: 100%;
    top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-logo:not(:has(a)),
  body.is-top .header-logo a {
    gap: 0;
    padding: 2.7rem 3rem 2.7rem 4rem;
    border-radius: 0.8rem;
    background-color: #fff;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .header-logo:not(:has(a)),
  body.is-top .header-logo a {
    gap: 1.3rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-logo__image {
    width: 16.8rem;
  }
}
body.is-top .header-logo__text {
  display: flex;
  align-items: center;
  color: #4285f4;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  body.is-top .header-logo__text::before {
    display: block;
    width: 1px;
    height: 4rem;
    content: "";
    margin: 0 4rem;
    background-color: #ddd;
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-nav {
    background-color: transparent;
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-nav a {
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-nav.white-bg {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    background-color: rgba(255, 255, 255, 0.9);
  }
}
@media screen and (min-width: 769px) {
  body.is-top .header-nav.white-bg-top {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    background-color: rgba(255, 255, 255, 0.9);
  }
  body.is-top .header-nav.white-bg-top .header-list__item a {
    color: #333;
  }
}
body.is-top .header-buttons__item a {
  position: relative;
  padding: 0 2rem 0.2rem 0;
  border-color: #fff !important;
  background-color: rgba(51, 51, 51, 0.2) !important;
  color: #fff !important;
}
@media screen and (min-width: 769px) {
  body.is-top .header-buttons__item a {
    width: 20rem !important;
    height: 6rem !important;
  }
}
body.is-top .header-buttons__item a::after {
  display: block;
  width: 1.3rem;
  height: 1.3rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 3rem;
  translate: 0 -50%;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
body.is-top .header-buttons__item a span {
  min-width: 12.2rem;
  text-align: center;
}
@media (hover: hover) {
  body.is-top .header-buttons__item a:hover::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  body.is-top .header-buttons__item a:active::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .header-buttons__item:nth-of-type(1) a {
    background-color: #0bd7a0 !important;
  }
}
@media screen and (max-width: 768px) {
  body.is-top .header-buttons__item:nth-of-type(2) a {
    background-color: #ff8549 !important;
  }
}
@media screen and (min-width: 769px) {
  body.is-top:has(.home-hero) .header-nav a {
    color: #fff;
  }
}
@media (hover: hover) {
  body.is-top:has(.home-hero) .header-nav a:hover {
    color: var(--primary);
  }
}
@media (hover: none) {
  body.is-top:has(.home-hero) .header-nav a:active {
    color: var(--primary);
  }
}

@media screen and (min-width: 769px) {
  body.is-new .layout-header,
  body.is-career .layout-header {
    top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-new .header-logo:not(:has(a)),
  body.is-new .header-logo a,
  body.is-career .header-logo:not(:has(a)),
  body.is-career .header-logo a {
    padding: 1.6rem 3rem 1.6rem 3rem;
    border-radius: 0.8rem;
    background-color: #fff;
  }
}
@media screen and (max-width: 768px) {
  body.is-new .header-logo:not(:has(a)),
  body.is-new .header-logo a,
  body.is-career .header-logo:not(:has(a)),
  body.is-career .header-logo a {
    gap: 1.3rem;
  }
}
@media screen and (min-width: 769px) {
  body.is-new .header-logo__image,
  body.is-career .header-logo__image {
    width: 16.8rem;
  }
}

.about-index {
  margin-top: 7.6rem;
}
@media screen and (max-width: 768px) {
  .about-index {
    margin-top: 3.8rem;
  }
}
.about-index .component-index__image {
  aspect-ratio: 800/520;
}

.about-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .about-introduction {
    padding-top: 5.8rem;
  }
}

.about-vision {
  padding-top: 11rem;
}
@media screen and (max-width: 768px) {
  .about-vision {
    padding-top: 5.5rem;
  }
}
.about-vision .component-index {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .about-vision .component-index {
    margin-top: 3rem;
  }
}
.about-vision .component-button {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .about-vision .component-button {
    margin-top: 3.2rem;
  }
}
.about-vision-list {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .about-vision-list {
    margin-top: 3.2rem;
  }
}
.about-vision-list__item {
  border-radius: 1.6rem;
  display: flex;
  padding: 3.2rem 4rem;
  gap: 4rem;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .about-vision-list__item {
    flex-direction: column;
    padding: 1.6rem 2rem;
    gap: 1.6rem;
  }
}
.about-vision-list__item + .about-vision-list__item {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .about-vision-list__item + .about-vision-list__item {
    margin-top: 1.6rem;
  }
}
.about-vision-list__item figure {
  border-radius: 50%;
  width: 24rem;
  height: 24rem;
  overflow: hidden;
  position: relative;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .about-vision-list__item figure {
    width: 20rem;
    height: 20rem;
    margin-inline: auto;
  }
}
.about-vision-list__item figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: brightness(0.75);
}
.about-vision-list__item figure figcaption {
  font-family: Yakuhanjp, "Jost", sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.2rem;
  font-weight: 700;
  letter-spacing: 0.15rem;
  display: block;
  width: 100%;
  text-align: center;
}
.about-vision-list__content {
  flex: 1;
}
.about-vision-list__heading {
  font-size: 3.2rem;
  color: #333;
  font-weight: 700;
  margin-bottom: 0.5em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .about-vision-list__heading {
    font-size: 1.6rem;
  }
}
.about-vision-list__text {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #333;
}
.is-career .about-vision-list__item figure figcaption {
  color: white;
}
.is-career .about-vision-list__item:nth-of-type(1) {
  background-color: #fff7e4;
}
.is-career .about-vision-list__item:nth-of-type(2) {
  background-color: #fff3e4;
}
.is-career .about-vision-list__item:nth-of-type(3) {
  background-color: #ffebe4;
}

.is-new .about-vision-list__item figure figcaption {
  color: white;
}
.is-new .about-vision-list__item:nth-of-type(1) {
  background-color: #effff5;
}
.is-new .about-vision-list__item:nth-of-type(2) {
  background-color: #ebf9f0;
}
.is-new .about-vision-list__item:nth-of-type(3) {
  background-color: #dcf7e5;
}

.about-business {
  padding-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .about-business {
    padding-top: 5.6rem;
  }
}

.about-feature {
  padding-top: 10.6rem;
}
@media screen and (max-width: 768px) {
  .about-feature {
    padding-top: 5.3rem;
  }
}
.about-feature .component-column {
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .about-feature .component-column {
    margin-top: 2.1rem;
  }
}

.business-area {
  padding-top: 6rem;
}
@media screen and (max-width: 768px) {
  .business-area {
    padding-top: 3rem;
  }
}
.business-area .business-area-table {
  display: flex;
  margin-top: 5.4rem;
}
@media screen and (max-width: 768px) {
  .business-area .business-area-table {
    flex-direction: column;
    margin-top: 2.7rem;
  }
}
.business-area .business-area-table__heading {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  padding: 0 5.3rem;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
}
.business-area .business-area-table .business-area-table-list__item {
  display: flex;
  align-items: center;
  padding: 2.4rem 6rem 2.4rem 3.8rem;
}
@media screen and (max-width: 768px) {
  .business-area .business-area-table .business-area-table-list__item {
    flex-direction: column;
    padding: 2rem;
  }
}
.business-area .business-area-table .business-area-table-list__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 8.9rem;
  height: 6.1rem;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .business-area .business-area-table .business-area-table-list__icon {
    width: 7.12rem;
    height: 4.88rem;
  }
}
.business-area .business-area-table .business-area-table-list__icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.business-area .business-area-table .business-area-table-list__heading {
  flex-shrink: 0;
  margin-left: 4rem;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .business-area .business-area-table .business-area-table-list__heading {
    margin-left: 0;
    font-size: 1.92rem;
  }
}
.business-area .business-area-table .business-area-table-list__text {
  margin-left: 10.2rem;
}
@media screen and (max-width: 768px) {
  .business-area .business-area-table .business-area-table-list__text {
    margin-left: 0;
  }
}

.is-career .business-area-table-list__item:nth-of-type(even) {
  background-color: #f6f0e9;
}
.is-career .business-area-table-list__item:nth-of-type(odd) {
  background-color: #fef9f4;
}

.is-new .business-area-table-list__item:nth-of-type(even) {
  background-color: #effff5;
}
.is-new .business-area-table-list__item:nth-of-type(odd) {
  background-color: #dcf7e5;
}

.business-feature {
  padding-top: 9.6rem;
}
@media screen and (max-width: 768px) {
  .business-feature {
    padding-top: 4.8rem;
  }
}
.business-feature__image {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .business-feature__image {
    margin-top: 4rem;
  }
}

.business-work {
  padding-top: 11.4rem;
}
@media screen and (max-width: 768px) {
  .business-work {
    padding-top: 5.7rem;
  }
}
.business-work .component-index {
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .business-work .component-index {
    margin-top: 1.8rem;
  }
}

.business-interview {
  padding-top: 10.8rem;
}
@media screen and (max-width: 768px) {
  .business-interview {
    padding-top: 5.4rem;
  }
}
.business-interview .component-interview,
.business-interview .component-column {
  margin-top: 3.4rem;
}
@media screen and (max-width: 768px) {
  .business-interview .component-interview,
  .business-interview .component-column {
    margin-top: 1.7rem;
  }
}
.business-interview .component-button {
  margin-top: 3.8rem;
}
@media screen and (max-width: 768px) {
  .business-interview .component-button {
    margin-top: 1.9rem;
  }
}

.business-header {
  padding-top: 4rem;
}
@media screen and (max-width: 768px) {
  .business-header {
    padding-top: 2rem;
  }
}
.business-header__imglist {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.4rem;
  margin-top: 4rem;
  margin-bottom: 6rem;
  flex-wrap: wrap;
}
.business-header__imglist > li {
  width: calc(33.3333333333% - 1.6rem);
}
@media screen and (max-width: 768px) {
  .business-header__imglist > li {
    width: calc(50% - 1.6rem);
  }
}
.business-header__image {
  width: 100%;
  max-width: 63rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  border-radius: 1.4rem;
}
.business-header .business-header-contents {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .business-header .business-header-contents {
    gap: 3rem;
    margin-top: 4rem;
  }
}
.business-header .business-header-contents__term {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 5rem;
  border-radius: 1rem;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .business-header .business-header-contents__term {
    height: 4rem;
    font-size: 1.76rem;
  }
}
.business-header .business-header-contents__description {
  display: flex;
  align-items: center;
  gap: 4.4rem;
  margin-top: 2.4rem;
  padding-right: 0.8rem;
  padding-left: 1.6rem;
}
@media screen and (max-width: 768px) {
  .business-header .business-header-contents__description {
    align-items: flex-start;
    gap: 2.2rem;
  }
}
.business-header .business-header-contents__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 9.2rem;
  height: 7.1rem;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .business-header .business-header-contents__icon {
    width: 7.36rem;
    height: 5.68rem;
  }
}
.business-header .business-header-contents__icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.business-header .business-header-contents__text {
  line-height: 2.125;
}

.business-example {
  padding-top: 9.6rem;
}
@media screen and (max-width: 768px) {
  .business-example {
    padding-top: 4.8rem;
  }
}
.business-example .splide {
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .business-example .splide {
    margin-top: 1.8rem;
  }
}
.business-example .business-example-list {
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list {
    margin-top: 1.8rem;
  }
}
.business-example .business-example-list__inner {
  width: 100%;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  padding: 4rem 10rem;
  border-radius: 2rem;
  background-color: var(--secondary);
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list__inner {
    padding: 2rem;
  }
}
.business-example .business-example-list__detail {
  display: flex;
  align-items: flex-start;
  gap: 3.6rem;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list__detail {
    flex-direction: column;
    gap: 1.8rem;
  }
}
.business-example .business-example-list__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 40rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list__image {
    width: 100%;
  }
}
.business-example .business-example-list__heading {
  color: var(--primary);
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list__heading {
    font-size: 1.92rem;
  }
}
.business-example .business-example-list__text {
  margin-top: 1.2rem;
  line-height: 2.125;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list__text {
    margin-top: 0.6rem;
  }
}
.business-example .business-example-list .business-example-box {
  display: flex;
  align-items: center;
  gap: 1rem 5.2rem;
  margin-top: 3.4rem;
  padding: 2rem 5rem;
  border-radius: 1rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .business-example .business-example-list .business-example-box {
    flex-direction: column;
    margin-top: 1.7rem;
    padding: 2rem;
  }
}
.business-example .business-example-list .business-example-box__heading {
  flex-shrink: 0;
  color: var(--primary);
  font-weight: 700;
  font-size: 2rem;
}
.business-example .business-example-list .business-example-box .section-list > li {
  width: -moz-fit-content;
  width: fit-content;
}

.business-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .business-introduction {
    padding-top: 5.8rem;
  }
}

.business-strength {
  padding-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .business-strength {
    padding-top: 5.6rem;
  }
}
.business-strength .component-column {
  margin-top: 3.4rem;
}
@media screen and (max-width: 768px) {
  .business-strength .component-column {
    margin-top: 1.7rem;
  }
}

.business-flow {
  padding-top: 10.2rem;
}
@media screen and (max-width: 768px) {
  .business-flow {
    padding-top: 5.1rem;
  }
}
.business-flow__inner {
  display: flex;
  gap: 10rem;
}
@media screen and (max-width: 768px) {
  .business-flow__inner {
    flex-direction: column;
    gap: 2rem;
  }
}
.business-flow .component-flow {
  margin-top: 6.2rem;
}
@media screen and (max-width: 768px) {
  .business-flow .component-flow {
    margin-top: 3.1rem;
  }
}
.business-flow .business-flow-images {
  display: flex;
  flex-direction: column;
  gap: 5.2rem;
  padding-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .business-flow .business-flow-images {
    flex-direction: row;
    gap: 2.6rem;
    padding-top: 0.6rem;
  }
}
.business-flow .business-flow-images__item {
  overflow: hidden;
  border-radius: 1.4rem;
}

.business-talk {
  padding-bottom: 26rem;
}
@media screen and (max-width: 768px) {
  .business-talk {
    padding-bottom: 7rem;
  }
}

.career-about {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .career-about {
    padding-top: 4.6rem;
  }
}
.career-about .career-about-list {
  display: flex;
  gap: 6rem 4rem;
  margin-top: 5.2rem;
}
@media screen and (max-width: 768px) {
  .career-about .career-about-list {
    flex-direction: column;
    margin-top: 4rem;
  }
}
.career-about .career-about-list__item {
  width: 100%;
}
.career-about .career-about-list__image {
  overflow: hidden;
  border-radius: 1rem;
}
.career-about .career-about-list__content {
  padding: 3rem 3rem 0;
}
@media screen and (max-width: 768px) {
  .career-about .career-about-list__content {
    padding: 1rem 1rem 0;
  }
}
.career-about .career-about-list__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .career-about .career-about-list__heading {
    font-size: 1.6rem;
  }
}
.career-about .career-about-list__text {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .career-about .career-about-list__text {
    margin-top: 0;
    font-size: 1.4rem;
  }
}
.career-about__image {
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .career-about .component-button {
    margin-top: 3.6rem;
  }
}
@media screen and (min-width: 769px) {
  .career-about .home-work-list__item .home-work-list__image {
    aspect-ratio: 370/200;
  }
}
.career-about .home-work-list__item .home-work-list__image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body.is-career .home-work {
  padding-top: 17.2rem;
}
@media screen and (max-width: 768px) {
  body.is-career .home-work {
    padding-top: 4.6rem;
  }
}
body.is-career .home-culture {
  padding-top: 12.2rem;
}
@media screen and (max-width: 768px) {
  body.is-career .home-culture {
    padding-top: 5.8rem;
  }
}

.contribution {
  padding-top: 12.4rem;
}
@media screen and (max-width: 768px) {
  .contribution {
    padding-top: 6.4rem;
  }
}
.contribution .component-index__image {
  aspect-ratio: 2/1;
}
.contribution__list > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
  line-height: 1.75;
}
.contribution__list > li::before {
  content: "・";
  margin-right: 0.25em;
}
.contribution__list > li + li {
  margin-top: 0.75em;
}

.discussion-introduction {
  padding-top: 7rem;
}
@media screen and (max-width: 768px) {
  .discussion-introduction {
    padding-top: 3.5rem;
  }
}
.discussion-introduction .discussion-introduction-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7.4rem;
  margin-top: 9.3rem;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .discussion-introduction .discussion-introduction-list {
    flex-wrap: wrap;
    gap: 2rem 0;
    margin-top: 4.65rem;
  }
}
@media screen and (max-width: 768px) {
  .discussion-introduction .discussion-introduction-list__item {
    width: 50%;
  }
}
.discussion-introduction .discussion-introduction-list__icon {
  width: 10rem;
  height: 10rem;
  border-radius: 100%;
  overflow: hidden;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .discussion-introduction .discussion-introduction-list__icon {
    width: 8rem;
    height: 8rem;
  }
}
.discussion-introduction .discussion-introduction-list__name {
  margin-top: 1rem;
  color: var(--primary);
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .discussion-introduction .discussion-introduction-list__name {
    font-size: 1.6rem;
  }
}
.discussion-introduction .discussion-introduction-list__text {
  margin-top: 0.8rem;
  font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
  .discussion-introduction .discussion-introduction-list__text {
    font-size: 1.04rem;
  }
}

.discussion-content {
  padding-top: 9.6rem;
}
@media screen and (max-width: 768px) {
  .discussion-content {
    padding-top: 4.8rem;
  }
}
.discussion-content .discussion-list {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 3rem;
}
.discussion-content .discussion-list__item {
  display: flex;
  align-items: flex-start;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__item {
    gap: 2.5rem;
  }
}
.discussion-content .discussion-list__item > * {
  min-height: 11.2rem;
}
.discussion-content .discussion-list__content {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-shrink: 0;
  width: 23rem;
  gap: 1.8rem;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__content {
    flex-direction: column;
    width: auto;
    justify-content: flex-start;
  }
}
.discussion-content .discussion-list__name {
  color: var(--primary);
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__name {
    font-size: 1.44rem;
  }
}
.discussion-content .discussion-list__icon {
  width: 8.6rem;
  height: 8.6rem;
  border-radius: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__icon {
    width: 6.45rem;
    height: 6.45rem;
  }
}
.discussion-content .discussion-list__text {
  position: relative;
  border-radius: 1rem;
  box-shadow: 0 0.2rem 2rem rgba(51, 51, 51, 0.2);
  padding: 2rem 3rem;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__text {
    padding: 1rem 1.5rem;
    letter-spacing: 0.01em;
  }
}
.discussion-content .discussion-list__text::before {
  display: block;
  width: 3.8rem;
  height: 3.8rem;
  content: "";
  position: absolute;
  top: calc(11.2rem / 2 - 3.8rem / 2);
  left: -2rem;
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  border-radius: 1rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .discussion-content .discussion-list__text::before {
    left: -2.5rem;
  }
}
.discussion-content__image {
  width: 100%;
  max-width: 86rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  margin-top: 6rem;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .discussion-content__image {
    margin-top: 3rem;
  }
}
.discussion-content--reverse .discussion-list__item {
  flex-direction: row-reverse;
}
.discussion-content--reverse .discussion-list__content {
  justify-content: flex-start;
}
.discussion-content--reverse .discussion-list__text::before {
  right: -2rem;
  left: auto;
  rotate: 180deg;
}
@media screen and (max-width: 768px) {
  .discussion-content--reverse .discussion-list__text::before {
    right: -2.5rem;
  }
}

.discussion-interview {
  padding-top: 11.2rem;
}
.discussion-interview .component-interview {
  margin-top: 3.6rem;
}
.discussion-interview .component-button {
  margin-top: 3.8rem;
}

.diversity {
  padding-top: 10.6rem;
}
@media screen and (max-width: 768px) {
  .diversity {
    padding-top: 4.8rem;
  }
}
.diversity-anchor {
  display: flex;
  justify-content: center;
  gap: 2.4rem;
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .diversity-anchor {
    flex-direction: column;
    margin-top: 3.6rem;
  }
}
.diversity-anchor-button {
  width: calc(25% - 2.4rem);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .diversity-anchor-button {
    width: 100%;
  }
}
.diversity-anchor-button a {
  font-size: 1.6rem;
  font-weight: 700;
  position: relative;
  border: 2px solid #333;
  border-radius: 0.8rem;
  padding: 1em;
  display: inline-block;
  width: 100%;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .diversity-anchor-button a {
    font-size: 1.4rem;
    width: 32rem;
    height: auto;
  }
}
.diversity-anchor-button a::after {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 1.6rem;
  translate: 0 -50%;
  transform: rotate(90deg);
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .diversity-anchor-button a::after {
    width: 1.28rem;
    height: 1.28rem;
    right: 2.56rem;
  }
}
@media (hover: hover) {
  .diversity-anchor-button a:hover::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  .diversity-anchor-button a:active::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
.diversity-anchor-button:nth-of-type(2) a {
  border-color: #fb72b6;
  color: #fb72b6;
}
.diversity-anchor-button:nth-of-type(2) a::after {
  background-color: #fb72b6;
}
@media (hover: hover) {
  .diversity-anchor-button:nth-of-type(2) a:hover {
    background-color: #fb72b6;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(2) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .diversity-anchor-button:nth-of-type(2) a:active {
    background-color: #fb72b6;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(2) a:active::after {
    background-color: #fff;
  }
}
.diversity-anchor-button:nth-of-type(3) a {
  border-color: #0b96d7;
  color: #0b96d7;
}
.diversity-anchor-button:nth-of-type(3) a::after {
  background-color: #0b96d7;
}
@media (hover: hover) {
  .diversity-anchor-button:nth-of-type(3) a:hover {
    background-color: #0b96d7;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(3) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .diversity-anchor-button:nth-of-type(3) a:active {
    background-color: #0b96d7;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(3) a:active::after {
    background-color: #fff;
  }
}
.diversity-anchor-button:nth-of-type(4) a {
  border-color: #09c895;
  color: #09c895;
}
.diversity-anchor-button:nth-of-type(4) a::after {
  background-color: #09c895;
}
@media (hover: hover) {
  .diversity-anchor-button:nth-of-type(4) a:hover {
    background-color: #09c895;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(4) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .diversity-anchor-button:nth-of-type(4) a:active {
    background-color: #09c895;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(4) a:active::after {
    background-color: #fff;
  }
}
.diversity-anchor-button:nth-of-type(5) a {
  border-color: #d19a24;
  color: #d19a24;
}
.diversity-anchor-button:nth-of-type(5) a::after {
  background-color: #d19a24;
}
@media (hover: hover) {
  .diversity-anchor-button:nth-of-type(5) a:hover {
    background-color: #d19a24;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(5) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .diversity-anchor-button:nth-of-type(5) a:active {
    background-color: #d19a24;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(5) a:active::after {
    background-color: #fff;
  }
}
.diversity-anchor-button:nth-of-type(1) a {
  border-color: #a45ec6;
  color: #a45ec6;
}
.diversity-anchor-button:nth-of-type(1) a::after {
  background-color: #a45ec6;
}
@media (hover: hover) {
  .diversity-anchor-button:nth-of-type(1) a:hover {
    background-color: #a45ec6;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(1) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .diversity-anchor-button:nth-of-type(1) a:active {
    background-color: #a45ec6;
    color: #fff;
  }
  .diversity-anchor-button:nth-of-type(1) a:active::after {
    background-color: #fff;
  }
}
.diversity .component-contents {
  margin-top: 7.8rem;
}
@media screen and (max-width: 768px) {
  .diversity .component-contents {
    margin-top: 3.2rem;
  }
}
.diversity .component-data {
  margin-top: 6.5rem;
}
@media screen and (max-width: 768px) {
  .diversity .component-data {
    margin-top: 3.2rem;
  }
}
.diversity .component-column,
.diversity .component-index {
  margin-top: 7rem;
}
@media screen and (max-width: 768px) {
  .diversity .component-column,
  .diversity .component-index {
    margin-top: 4.8rem;
  }
}
.diversity-contents__item + .diversity-contents__item {
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .diversity-contents__item + .diversity-contents__item {
    margin-top: 3.6rem;
  }
}
.diversity#diversity02 .section__heading--line::before {
  background-color: #fb72b6;
}
.diversity#diversity02 .component-data__text {
  color: #fb72b6;
}
.diversity#diversity03 .section__heading--line::before {
  background-color: #0b96d7;
}
.diversity#diversity03 .component-data__text {
  color: #0b96d7;
}
.diversity#diversity04 .section__heading--line::before {
  background-color: #09c895;
}
.diversity#diversity04 .component-data__text {
  color: #09c895;
}
.diversity#diversity05 {
  margin-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .diversity#diversity05 {
    margin-bottom: 4.8rem;
  }
}
.diversity#diversity05 .section__heading--line::before {
  background-color: #d19a24;
}
.diversity#diversity05 .component-data__text {
  color: #d19a24;
}
.diversity#diversity01 .section__heading--line::before {
  background-color: #a45ec6;
}
.diversity#diversity01 .component-data__text {
  color: #a45ec6;
}

.education-introduction {
  padding-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .education-introduction {
    padding-top: 5.6rem;
  }
}

.education-flow {
  padding-top: 10.4rem;
}
@media screen and (max-width: 768px) {
  .education-flow {
    padding-top: 5.2rem;
  }
}
.education-flow .component-flow {
  margin-top: 5.6rem;
}
@media screen and (max-width: 768px) {
  .education-flow .component-flow {
    margin-top: 2.8rem;
  }
}
.education-flow .component-flow .component-column__item .component-column__image {
  width: 48rem;
}
@media screen and (max-width: 768px) {
  .education-flow .component-flow .component-column__item .component-column__image {
    width: auto;
  }
}

.education-training {
  padding-top: 3rem;
}
.education-training__image {
  width: 100%;
  max-width: 78.3rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .education-training__image {
    margin-top: 3rem;
  }
}
.education-training .component-column {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .education-training .component-column {
    margin-top: 3rem;
  }
}
.education-training .component-column + .component-column {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .education-training .component-column + .component-column {
    margin-top: 4.5rem;
  }
}

.education-other {
  padding-top: 11rem;
}
@media screen and (max-width: 768px) {
  .education-other {
    padding-top: 5.5rem;
  }
}
.education-other .component-index {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .education-other .component-index {
    margin-top: 6rem;
  }
}

.entry-nav {
  padding-top: 13rem;
}
@media screen and (max-width: 768px) {
  .entry-nav {
    padding-top: 6.5rem;
  }
}
.entry-nav .entry-nav-list {
  display: flex;
  gap: 1rem 2rem;
}
@media screen and (max-width: 768px) {
  .entry-nav .entry-nav-list {
    flex-direction: column;
  }
}
.entry-nav .entry-nav-list__item {
  width: 100%;
}
.entry-nav .entry-nav-list__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 7rem;
  position: relative;
  border-radius: 1rem;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .entry-nav .entry-nav-list__item a {
    height: 5.6rem;
    font-size: 1.92rem;
  }
}
.entry-nav .entry-nav-list__item a::after {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  rotate: 90deg;
  translate: 0 -50%;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
.entry-nav .entry-nav-list__item:nth-of-type(2) a {
  background-color: #fff;
}

.is-career .entry-nav-list__item a {
  color: white;
  border: 0.2rem solid #ff8549;
  background-color: #ff8549;
}
.is-career .entry-nav-list__item:nth-of-type(2) a {
  color: #ff8549;
}
.is-career .entry-nav-list__item:nth-of-type(2) a::after {
  background-color: #ff8549;
}

.is-new .entry-nav-list__item a {
  color: white;
  border: 0.2rem solid #0bd7a0;
  background-color: #0bd7a0;
}
.is-new .entry-nav-list__item:nth-of-type(2) a {
  color: #0bd7a0;
}
.is-new .entry-nav-list__item:nth-of-type(2) a::after {
  background-color: #0bd7a0;
}

.entry-detail .section__text ul {
  margin-top: 0.75em;
}
.entry-detail .section__text ul > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.entry-detail .section__text ul > li::before {
  content: "・";
  margin-right: 0.25em;
}

.entry-detail .component-tab,
.entry-flow .component-tab {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .component-tab,
  .entry-flow .component-tab {
    margin-top: 2.5rem;
  }
}
.entry-detail .component-contents,
.entry-flow .component-contents {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .component-contents,
  .entry-flow .component-contents {
    margin-top: 4.5rem;
  }
}
.entry-detail .component-contents__item h4,
.entry-flow .component-contents__item h4 {
  margin-top: 1em;
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .entry-detail .component-contents__item h4,
  .entry-flow .component-contents__item h4 {
    font-size: 1.92rem;
  }
}
.entry-detail .section__heading--small,
.entry-flow .section__heading--small {
  margin-top: 7rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .section__heading--small,
  .entry-flow .section__heading--small {
    margin-top: 3.5rem;
  }
}
.entry-detail div:has(.section__heading.section__heading--line) + .entry-table,
.entry-flow div:has(.section__heading.section__heading--line) + .entry-table {
  margin-top: 2rem !important;
}
.entry-detail .entry-table,
.entry-flow .entry-table {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table,
  .entry-flow .entry-table {
    margin-top: 1.6rem;
  }
}
.entry-detail .entry-table:nth-of-type(n + 2),
.entry-flow .entry-table:nth-of-type(n + 2) {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table:nth-of-type(n + 2),
  .entry-flow .entry-table:nth-of-type(n + 2) {
    margin-top: 4rem;
  }
}
.entry-detail .entry-table__heading,
.entry-flow .entry-table__heading {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
  text-align: center;
  padding: 0.5em 0.5em;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__heading,
  .entry-flow .entry-table__heading {
    font-size: 1.76rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__largetable,
  .entry-flow .entry-table__largetable {
    overflow-y: scroll;
  }
}
.entry-detail .entry-table__largetable table,
.entry-flow .entry-table__largetable table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__largetable table,
  .entry-flow .entry-table__largetable table {
    font-size: 1.12rem;
    white-space: nowrap;
  }
}
.entry-detail .entry-table__largetable table tbody.closed,
.entry-detail .entry-table__largetable table tr.closed,
.entry-flow .entry-table__largetable table tbody.closed,
.entry-flow .entry-table__largetable table tr.closed {
  background-color: #e4e4e4;
}
.entry-detail .entry-table__largetable table th,
.entry-detail .entry-table__largetable table td,
.entry-flow .entry-table__largetable table th,
.entry-flow .entry-table__largetable table td {
  padding: 1.2rem 1.6rem;
  text-align: center;
  vertical-align: middle;
  border-bottom: 0.1rem solid lightgray;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__largetable table th,
  .entry-detail .entry-table__largetable table td,
  .entry-flow .entry-table__largetable table th,
  .entry-flow .entry-table__largetable table td {
    padding: 0.8rem 1rem;
  }
}
.entry-detail .entry-table__largetable table th,
.entry-flow .entry-table__largetable table th {
  font-weight: 700;
  background-color: var(--primary);
  color: #fff;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__largetable table th,
  .entry-flow .entry-table__largetable table th {
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table__largetable table td,
.entry-flow .entry-table__largetable table td {
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__largetable table td,
  .entry-flow .entry-table__largetable table td {
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table__largetable table td p:nth-of-type(1),
.entry-flow .entry-table__largetable table td p:nth-of-type(1) {
  margin-top: 0 !important;
}
.entry-detail .entry-table__scroll-note,
.entry-flow .entry-table__scroll-note {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__scroll-note,
  .entry-flow .entry-table__scroll-note {
    color: #02b585;
    margin-top: 0rem;
    padding: 0.8rem 1rem;
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table__note,
.entry-flow .entry-table__note {
  margin-block: 2rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table__note,
  .entry-flow .entry-table__note {
    margin-block: 1rem;
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table p,
.entry-flow .entry-table p {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table p,
  .entry-flow .entry-table p {
    margin-top: 0.8rem;
    font-size: 1.28rem;
  }
}
.entry-detail .entry-table small,
.entry-flow .entry-table small {
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.6666666667;
}
.entry-detail .entry-table strong,
.entry-flow .entry-table strong {
  display: block;
  font-weight: 700;
}
.entry-detail .entry-table strong + small,
.entry-flow .entry-table strong + small {
  font-size: 1.4rem;
}
.entry-detail .entry-table a,
.entry-flow .entry-table a {
  text-decoration: underline;
  text-underline-offset: 0.4em;
}
.entry-detail .entry-table em,
.entry-flow .entry-table em {
  font-style: italic;
}
.entry-detail .entry-table img,
.entry-flow .entry-table img {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.entry-detail .entry-table ul,
.entry-flow .entry-table ul {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table ul,
  .entry-flow .entry-table ul {
    margin-top: 0.8rem;
  }
}
.entry-detail .entry-table ul > li,
.entry-flow .entry-table ul > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.entry-detail .entry-table ul > li::before,
.entry-flow .entry-table ul > li::before {
  content: "・";
  margin-right: 0.25em;
}
.entry-detail .entry-table ol,
.entry-flow .entry-table ol {
  counter-reset: listnum 0;
  list-style: none;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table ol,
  .entry-flow .entry-table ol {
    margin-top: 0.8rem;
  }
}
.entry-detail .entry-table ol > li,
.entry-flow .entry-table ol > li {
  padding-left: 1em;
  text-indent: -1em;
}
.entry-detail .entry-table ol > li + li,
.entry-flow .entry-table ol > li + li {
  margin-top: 0.5em;
}
.entry-detail .entry-table ol > li::before,
.entry-flow .entry-table ol > li::before {
  counter-increment: listnum;
  content: counter(listnum) ".";
}
.entry-detail .entry_table_job-box,
.entry-flow .entry_table_job-box {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job-box,
  .entry-flow .entry_table_job-box {
    overflow-x: scroll;
  }
}
.entry-detail .entry_table_job,
.entry-flow .entry_table_job {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1.4rem;
  table-layout: fixed;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job,
  .entry-flow .entry_table_job {
    font-size: 1.12rem;
    white-space: nowrap;
    table-layout: auto;
  }
}
.entry-detail .entry_table_job thead th,
.entry-flow .entry_table_job thead th {
  text-align: center;
  font-weight: 700;
  font-size: 2.2rem;
  text-align: center;
  padding: 0.5em 0.5em;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job thead th,
  .entry-flow .entry_table_job thead th {
    font-size: 1.6rem;
  }
}
.entry-detail .entry_table_job thead th + th,
.entry-flow .entry_table_job thead th + th {
  border-left: 0.1rem solid #dedede;
}
.entry-detail .entry_table_job tbody th,
.entry-flow .entry_table_job tbody th {
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job tbody th,
  .entry-flow .entry_table_job tbody th {
    font-size: 1.12rem;
  }
}
.entry-detail .entry_table_job tbody th,
.entry-detail .entry_table_job tbody td,
.entry-flow .entry_table_job tbody th,
.entry-flow .entry_table_job tbody td {
  padding: 1.2rem 1.6rem;
  vertical-align: middle;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job tbody th,
  .entry-detail .entry_table_job tbody td,
  .entry-flow .entry_table_job tbody th,
  .entry-flow .entry_table_job tbody td {
    padding: 0.8rem 1rem;
    font-size: 1.28rem;
  }
}
.entry-detail .entry_table_job tbody td,
.entry-flow .entry_table_job tbody td {
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry_table_job tbody td,
  .entry-flow .entry_table_job tbody td {
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table-list,
.entry-flow .entry-table-list {
  width: 100%;
}
.entry-detail .entry-table-list tr,
.entry-flow .entry-table-list tr {
  display: flex;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list tr,
  .entry-flow .entry-table-list tr {
    flex-direction: column;
  }
}
.entry-detail .entry-table-list tr:nth-of-type(1) th:nth-of-type(2),
.entry-flow .entry-table-list tr:nth-of-type(1) th:nth-of-type(2) {
  flex: 1;
}
.entry-detail .entry-table-list tr:nth-of-type(1):has([colspan]) th,
.entry-flow .entry-table-list tr:nth-of-type(1):has([colspan]) th {
  flex: 1;
  width: 100%;
}
.entry-detail .entry-table-list th,
.entry-detail .entry-table-list td,
.entry-flow .entry-table-list th,
.entry-flow .entry-table-list td {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list th,
  .entry-detail .entry-table-list td,
  .entry-flow .entry-table-list th,
  .entry-flow .entry-table-list td {
    font-size: 1.28rem;
  }
}
.entry-detail .entry-table-list th,
.entry-flow .entry-table-list th {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 27rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list th,
  .entry-flow .entry-table-list th {
    padding: 1rem;
    width: 100%;
    font-weight: 700;
  }
}
.entry-detail .entry-table-list td,
.entry-flow .entry-table-list td {
  width: 100%;
  padding: 2.2rem 3rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list td,
  .entry-flow .entry-table-list td {
    padding: 2rem;
  }
}
.entry-detail .entry-table-list td + td:before,
.entry-flow .entry-table-list td + td:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: 0.1rem;
  height: calc(100% - 2rem);
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list td + td:before,
  .entry-flow .entry-table-list td + td:before {
    width: calc(100% - 2rem);
    height: 0.1rem;
    top: 0;
    left: 50%;
    translate: -50% 0;
  }
}
.entry-detail .entry-table-list td:has(> div),
.entry-flow .entry-table-list td:has(> div) {
  padding: 0;
}
.entry-detail .entry-table-list td > div,
.entry-flow .entry-table-list td > div {
  position: relative;
  padding: 2.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list td > div,
  .entry-flow .entry-table-list td > div {
    padding: 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list td > div:first-of-type,
  .entry-flow .entry-table-list td > div:first-of-type {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list td > div:last-of-type,
  .entry-flow .entry-table-list td > div:last-of-type {
    padding-bottom: 2rem;
  }
}
.entry-detail .entry-table-list td p,
.entry-flow .entry-table-list td p {
  margin-top: 0 !important;
}
.entry-detail .entry-table-list__text,
.entry-flow .entry-table-list__text {
  line-height: 1.875;
}
.entry-detail .entry-table-list__text:nth-of-type(n + 2),
.entry-flow .entry-table-list__text:nth-of-type(n + 2) {
  margin-top: 2rem;
}
.entry-detail .entry-table-list__map a,
.entry-flow .entry-table-list__map a {
  display: flex;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 3rem;
  gap: 0.6rem;
  translate: 0 -50%;
  color: var(--primary);
  font-size: 1.4rem;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__map a,
  .entry-flow .entry-table-list__map a {
    justify-content: flex-end;
    position: static;
    margin-top: 1rem;
    font-size: 1.12rem;
  }
}
.entry-detail .entry-table-list__map a::after,
.entry-flow .entry-table-list__map a::after {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  margin-top: 0.4rem;
  background-color: var(--primary);
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
.entry-detail .entry-table-list .entry-table-list-sub,
.entry-flow .entry-table-list .entry-table-list-sub {
  margin-top: 0.6rem;
}
.entry-detail .entry-table-list .entry-table-list-sub__item,
.entry-flow .entry-table-list .entry-table-list-sub__item {
  display: flex;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list .entry-table-list-sub__item,
  .entry-flow .entry-table-list .entry-table-list-sub__item {
    flex-direction: column;
  }
}
.entry-detail .entry-table-list .entry-table-list-sub__term,
.entry-flow .entry-table-list .entry-table-list-sub__term {
  flex-shrink: 0;
  width: 14rem;
}
.entry-detail .entry-table-list__item,
.entry-flow .entry-table-list__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__item,
  .entry-flow .entry-table-list__item {
    flex-direction: column;
  }
}
.entry-detail .entry-table-list__term,
.entry-flow .entry-table-list__term {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 27rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__term,
  .entry-flow .entry-table-list__term {
    padding: 1rem;
    width: 100%;
    font-weight: 700;
  }
}
.entry-detail .entry-table-list__description,
.entry-flow .entry-table-list__description {
  width: 100%;
}
.entry-detail .entry-table-list__description:not(:has(.entry-table-list__description-inner)),
.entry-flow .entry-table-list__description:not(:has(.entry-table-list__description-inner)) {
  padding: 2.2rem 3rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__description:not(:has(.entry-table-list__description-inner)),
  .entry-flow .entry-table-list__description:not(:has(.entry-table-list__description-inner)) {
    padding: 2rem;
  }
}
.entry-detail .entry-table-list__description-inner,
.entry-flow .entry-table-list__description-inner {
  position: relative;
  padding: 2.2rem 3rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__description-inner,
  .entry-flow .entry-table-list__description-inner {
    padding: 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__description-inner:first-of-type,
  .entry-flow .entry-table-list__description-inner:first-of-type {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-table-list__description-inner:last-of-type,
  .entry-flow .entry-table-list__description-inner:last-of-type {
    padding-bottom: 2rem;
  }
}
.entry-detail .entry-table-list__text,
.entry-flow .entry-table-list__text {
  line-height: 1.875;
}
.entry-detail .entry-table-list__text:nth-of-type(n + 2),
.entry-flow .entry-table-list__text:nth-of-type(n + 2) {
  margin-top: 2rem;
}
.entry-detail .entry-table-list__text small,
.entry-flow .entry-table-list__text small {
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.6666666667;
}
.entry-detail .entry-table-list__text strong,
.entry-flow .entry-table-list__text strong {
  display: block;
  font-weight: 700;
}
.entry-detail .entry-table-list__text strong + small,
.entry-flow .entry-table-list__text strong + small {
  font-size: 1.4rem;
}
.entry-detail .entry-table-list__text a,
.entry-flow .entry-table-list__text a {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 0.4em;
}
.entry-detail .section__note,
.entry-flow .section__note {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .section__note,
  .entry-flow .section__note {
    margin-top: 1.6rem;
  }
}
.entry-detail .entry-footer,
.entry-flow .entry-footer {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer,
  .entry-flow .entry-footer {
    margin-top: 3rem;
  }
}
.entry-detail .entry-footer__text,
.entry-flow .entry-footer__text {
  color: var(--primary);
  font-weight: 700;
  font-size: 4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer__text,
  .entry-flow .entry-footer__text {
    font-size: 3.2rem;
  }
}
.entry-detail .entry-footer .component-button,
.entry-flow .entry-footer .component-button {
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer .component-button,
  .entry-flow .entry-footer .component-button {
    margin-top: 0.6rem;
  }
}
.entry-detail .entry-footer-add,
.entry-flow .entry-footer-add {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer-add,
  .entry-flow .entry-footer-add {
    margin-top: 3rem;
  }
}
.entry-detail .entry-footer-add p,
.entry-flow .entry-footer-add p {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer-add p,
  .entry-flow .entry-footer-add p {
    margin-top: 0.8rem;
    font-size: 1.28rem;
  }
}
.entry-detail .entry-footer-add small,
.entry-flow .entry-footer-add small {
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.6666666667;
}
.entry-detail .entry-footer-add strong,
.entry-flow .entry-footer-add strong {
  display: block;
  font-weight: 700;
}
.entry-detail .entry-footer-add strong + small,
.entry-flow .entry-footer-add strong + small {
  font-size: 1.4rem;
}
.entry-detail .entry-footer-add__links,
.entry-flow .entry-footer-add__links {
  display: flex;
  flex-direction: column;
}
.entry-detail .entry-footer-add a,
.entry-flow .entry-footer-add a {
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: underline;
  text-underline-offset: 0.4em;
  color: var(--primary);
}
.entry-detail .entry-footer-add a.guide-link,
.entry-flow .entry-footer-add a.guide-link {
  display: inline-block;
  position: relative;
  padding-left: 2rem;
}
.entry-detail .entry-footer-add a.guide-link::after,
.entry-flow .entry-footer-add a.guide-link::after {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  content: "";
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  clip-path: polygon(75% 50%, 0 0, 0 100%);
  background-color: var(--primary);
}
.entry-detail .entry-footer-add em,
.entry-flow .entry-footer-add em {
  font-style: italic;
}
.entry-detail .entry-footer-add img,
.entry-flow .entry-footer-add img {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.entry-detail .entry-footer-add ul,
.entry-flow .entry-footer-add ul {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer-add ul,
  .entry-flow .entry-footer-add ul {
    margin-top: 0.8rem;
  }
}
.entry-detail .entry-footer-add ul > li,
.entry-flow .entry-footer-add ul > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.entry-detail .entry-footer-add ul > li::before,
.entry-flow .entry-footer-add ul > li::before {
  content: "・";
  margin-right: 0.25em;
}
.entry-detail .entry-footer-add ol,
.entry-flow .entry-footer-add ol {
  counter-reset: listnum 0;
  list-style: none;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .entry-footer-add ol,
  .entry-flow .entry-footer-add ol {
    margin-top: 0.8rem;
  }
}
.entry-detail .entry-footer-add ol > li,
.entry-flow .entry-footer-add ol > li {
  padding-left: 1em;
  text-indent: -1em;
}
.entry-detail .entry-footer-add ol > li + li,
.entry-flow .entry-footer-add ol > li + li {
  margin-top: 0.5em;
}
.entry-detail .entry-footer-add ol > li::before,
.entry-flow .entry-footer-add ol > li::before {
  counter-increment: listnum;
  content: counter(listnum) ".";
}

.entry-detail__extralink {
  margin-top: 1.5em;
}
.entry-detail__extralink > a {
  color: var(--primary-txt);
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .entry-detail__extralink > a {
    font-size: 1.44rem;
  }
}
.entry-detail__extralink > a::before {
  content: ">";
  margin-right: 0.8rem;
  color: var(--primary-txt);
  font-weight: 700;
  font-size: 1.8rem;
  font-family: Yakuhanjp, "Roboto", sans-serif;
  display: inline-block;
  transform: scaleX(0.75);
}

.is-career .entry-detail .component-tab__item:nth-of-type(1) button::after,
.is-career .entry-flow .component-tab__item:nth-of-type(1) button::after {
  background-color: #ff8549;
}
@media (hover: hover) {
  .is-career .entry-detail .component-tab__item:nth-of-type(1) button:hover,
  .is-career .entry-flow .component-tab__item:nth-of-type(1) button:hover {
    color: #ff8549;
  }
}
@media (hover: none) {
  .is-career .entry-detail .component-tab__item:nth-of-type(1) button:active,
  .is-career .entry-flow .component-tab__item:nth-of-type(1) button:active {
    color: #ff8549;
  }
}
.is-career .entry-detail .component-tab__item:nth-of-type(1) button.is-clicked,
.is-career .entry-flow .component-tab__item:nth-of-type(1) button.is-clicked {
  color: #ff8549;
}
.is-career .entry-detail .component-tab__item:nth-of-type(2) button::after,
.is-career .entry-flow .component-tab__item:nth-of-type(2) button::after {
  background-color: #0b96d7;
}
@media (hover: hover) {
  .is-career .entry-detail .component-tab__item:nth-of-type(2) button:hover,
  .is-career .entry-flow .component-tab__item:nth-of-type(2) button:hover {
    color: #0b96d7;
  }
}
@media (hover: none) {
  .is-career .entry-detail .component-tab__item:nth-of-type(2) button:active,
  .is-career .entry-flow .component-tab__item:nth-of-type(2) button:active {
    color: #0b96d7;
  }
}
.is-career .entry-detail .component-tab__item:nth-of-type(2) button.is-clicked,
.is-career .entry-flow .component-tab__item:nth-of-type(2) button.is-clicked {
  color: #0b96d7;
}
.is-career .entry-detail .component-tab__item:nth-of-type(3) button::after,
.is-career .entry-flow .component-tab__item:nth-of-type(3) button::after {
  background-color: #09c895;
}
@media (hover: hover) {
  .is-career .entry-detail .component-tab__item:nth-of-type(3) button:hover,
  .is-career .entry-flow .component-tab__item:nth-of-type(3) button:hover {
    color: #09c895;
  }
}
@media (hover: none) {
  .is-career .entry-detail .component-tab__item:nth-of-type(3) button:active,
  .is-career .entry-flow .component-tab__item:nth-of-type(3) button:active {
    color: #09c895;
  }
}
.is-career .entry-detail .component-tab__item:nth-of-type(3) button.is-clicked,
.is-career .entry-flow .component-tab__item:nth-of-type(3) button.is-clicked {
  color: #09c895;
}
.is-career .entry-detail .component-tab__item:nth-of-type(4) button::after,
.is-career .entry-flow .component-tab__item:nth-of-type(4) button::after {
  background-color: #004988;
}
@media (hover: hover) {
  .is-career .entry-detail .component-tab__item:nth-of-type(4) button:hover,
  .is-career .entry-flow .component-tab__item:nth-of-type(4) button:hover {
    color: #004988;
  }
}
@media (hover: none) {
  .is-career .entry-detail .component-tab__item:nth-of-type(4) button:active,
  .is-career .entry-flow .component-tab__item:nth-of-type(4) button:active {
    color: #004988;
  }
}
.is-career .entry-detail .component-tab__item:nth-of-type(4) button.is-clicked,
.is-career .entry-flow .component-tab__item:nth-of-type(4) button.is-clicked {
  color: #004988;
}
.is-career .entry-detail #detail01 .section__heading--line::before {
  background-color: #ff8549;
}
.is-career .entry-detail #detail01 .entry-table__heading {
  background-color: #ff8549;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(1) th + th {
  border-left: 0.1rem solid #dedede;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(odd) th {
  background-color: #fff2e6;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(odd) td {
  background-color: #fef9f4;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(odd) td + td:before {
  background-color: #ffd7ae;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even) {
  background-color: #f6f0e9;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) th {
  background-color: #faede1;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) th {
    background-color: #fff2e6;
  }
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) td {
  background-color: #f6f0e9;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) td {
    background-color: #fef9f4;
  }
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) td + td:before {
  background-color: #ffd7ae;
}
.is-career .entry-detail #detail01 .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even) {
  background-color: #fef9f4;
}
.is-career .entry-detail #detail01 .entry-table-list__text a,
.is-career .entry-detail #detail01 .section__note a {
  color: #ff8549;
}
.is-career .entry-detail #detail01 .entry-table-list__text a::after,
.is-career .entry-detail #detail01 .section__note a::after {
  background-color: #ff8549;
}
.is-career .entry-detail #detail01 .entry_table_job thead th {
  background-color: #ff8549;
  color: #fff;
}
.is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(odd) th {
  background-color: #fff2e6;
}
.is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(odd) td {
  background-color: #fef9f4;
}
.is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(odd) td + td {
  background-color: #fff5eb;
}
.is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(even) th {
  background-color: #faede1;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(even) th {
    background-color: #fff2e6;
  }
}
.is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(even) td {
  background-color: #f6f0e9;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail01 .entry_table_job tbody tr:nth-of-type(even) td {
    background-color: #fef9f4;
  }
}
.is-career .entry-detail #detail02 .section__heading--line::before {
  background-color: #0b96d7;
}
.is-career .entry-detail #detail02 .entry-table__heading {
  background-color: #0b96d7;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(odd) th {
  background-color: #e6f4ff;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(odd) td {
  background-color: #f0f9ff;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(odd) td + td {
  background-color: #d0eaff;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even) {
  background-color: #e6f4ff;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) th {
  background-color: #d8ecff;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) th {
    background-color: #e6f4ff;
  }
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) td {
  background-color: #e0f2ff;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) td {
    background-color: #f0f9ff;
  }
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) td + td:before {
  background-color: #cce6ff;
}
.is-career .entry-detail #detail02 .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even) {
  background-color: #f0f9ff;
}
.is-career .entry-detail #detail02 .entry-table-list__text a,
.is-career .entry-detail #detail02 .section__note a {
  color: #0b96d7;
}
.is-career .entry-detail #detail02 .entry-table-list__text a::after,
.is-career .entry-detail #detail02 .section__note a::after {
  background-color: #0b96d7;
}
.is-career .entry-detail #detail02 .entry_table_job thead th {
  background-color: #0b96d7;
  color: #fff;
}
.is-career .entry-detail #detail02 .entry_table_job tbody tr:nth-of-type(odd) th {
  background-color: #e6f4ff;
}
.is-career .entry-detail #detail02 .entry_table_job tbody tr:nth-of-type(odd) td {
  background-color: #f0f9ff;
}
.is-career .entry-detail #detail02 .entry_table_job tbody tr:nth-of-type(odd) td + td {
  background-color: #e6f4ff;
}
.is-career .entry-detail #detail02 .entry_table_job tbody tr:nth-of-type(even) th {
  background-color: #d8ecff;
}
.is-career .entry-detail #detail02 .entry_table_job tbody tr:nth-of-type(even) td {
  background-color: #e0f2ff;
}
.is-career .entry-detail #detail02 .entry-footer__text {
  color: #0b96d7;
}
.is-career .entry-detail #detail02 .component-button--entry-detail a {
  background-color: #0b96d7;
}
@media (hover: hover) {
  .is-career .entry-detail #detail02 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e6f4ff;
  }
}
@media (hover: none) {
  .is-career .entry-detail #detail02 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e6f4ff;
  }
}
.is-career .entry-detail #detail03 .section__heading--line::before {
  background-color: #09c895;
}
.is-career .entry-detail #detail03 .entry-table__heading {
  background-color: #09c895;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(odd) th {
  background-color: #e1fff9;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(odd) td {
  background-color: #f0fffb;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(odd) td + td:before {
  background-color: #84dbc4;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even) {
  background-color: #e6fffa;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) th {
  background-color: #cffaef;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) th {
    background-color: #e6fffa;
  }
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) td {
  background-color: #dcfff2;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) td {
    background-color: #f0fffb;
  }
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) td + td:before {
  background-color: #84dbc4;
}
.is-career .entry-detail #detail03 .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even) {
  background-color: #f0fffb;
}
.is-career .entry-detail #detail03 .entry-table-list__text a,
.is-career .entry-detail #detail03 .section__note a {
  color: #09c895;
}
.is-career .entry-detail #detail03 .entry-table-list__text a::after,
.is-career .entry-detail #detail03 .section__note a::after {
  background-color: #09c895;
}
.is-career .entry-detail #detail03 .entry_table_job thead th {
  background-color: #09c895;
  color: #fff;
}
.is-career .entry-detail #detail03 .entry_table_job tbody tr:nth-of-type(odd) th {
  background-color: #e1fff9;
}
.is-career .entry-detail #detail03 .entry_table_job tbody tr:nth-of-type(odd) td {
  background-color: #f0fffb;
}
.is-career .entry-detail #detail03 .entry_table_job tbody tr:nth-of-type(odd) td + td {
  background-color: #e6fffa;
}
.is-career .entry-detail #detail03 .entry_table_job tbody tr:nth-of-type(even) th {
  background-color: #cffaef;
}
.is-career .entry-detail #detail03 .entry_table_job tbody tr:nth-of-type(even) td {
  background-color: #dcfff2;
}
.is-career .entry-detail #detail03 .entry-footer__text {
  color: #09c895;
}
.is-career .entry-detail #detail03 .component-button--entry-detail a {
  background-color: #09c895;
}
@media (hover: hover) {
  .is-career .entry-detail #detail03 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e1fff9;
  }
}
@media (hover: none) {
  .is-career .entry-detail #detail03 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e1fff9;
  }
}
.is-career .entry-detail #detail04 .section__heading--line::before {
  background-color: #004988;
}
.is-career .entry-detail #detail04 .entry-table__heading {
  background-color: #004988;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(odd) th {
  background-color: #e1eaf1;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(odd) td {
  background-color: #eaeef1;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(odd) td + td:before {
  background-color: #d7c0ff;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even) {
  background-color: #e1eaf1;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) th {
  background-color: #cfddeb;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) th {
    background-color: #e1eaf1;
  }
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) td {
  background-color: #d9e4ef;
}
@media screen and (max-width: 768px) {
  .is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) td {
    background-color: #eaeef1;
  }
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) td + td:before {
  background-color: #d7c0ff;
}
.is-career .entry-detail #detail04 .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even) {
  background-color: #eaeef1;
}
.is-career .entry-detail #detail04 .entry-table-list__text a,
.is-career .entry-detail #detail04 .section__note a {
  color: #004988;
}
.is-career .entry-detail #detail04 .entry-table-list__text a::after,
.is-career .entry-detail #detail04 .section__note a::after {
  background-color: #004988;
}
.is-career .entry-detail #detail04 .entry_table_job thead th {
  background-color: #004988;
  color: #fff;
}
.is-career .entry-detail #detail04 .entry_table_job tbody tr:nth-of-type(odd) th {
  background-color: #e1eaf1;
}
.is-career .entry-detail #detail04 .entry_table_job tbody tr:nth-of-type(odd) td {
  background-color: #eaeef1;
}
.is-career .entry-detail #detail04 .entry_table_job tbody tr:nth-of-type(odd) td + td {
  background-color: #e1eaf1;
}
.is-career .entry-detail #detail04 .entry_table_job tbody tr:nth-of-type(even) th {
  background-color: #cfddeb;
}
.is-career .entry-detail #detail04 .entry_table_job tbody tr:nth-of-type(even) td {
  background-color: #d9e4ef;
}
.is-career .entry-detail #detail04 .entry-footer__text {
  color: #004988;
}
.is-career .entry-detail #detail04 .component-button--entry-detail a {
  background-color: #004988;
}
@media (hover: hover) {
  .is-career .entry-detail #detail04 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e1eaf1;
  }
}
@media (hover: none) {
  .is-career .entry-detail #detail04 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e1eaf1;
  }
}
.is-career .entry-flow #flow01 .section__heading--line::before {
  background-color: #ff8549;
}
.is-career .entry-flow #flow01 .component-flow__circle {
  background-color: #ff8549;
}
.is-career .entry-flow #flow01 .component-flow::after {
  background-color: #ff8549;
}
.is-career .entry-flow #flow01 .component-flow__heading::after {
  background-color: #ff8549;
}
.is-career .entry-flow #flow01 .component-flow__text-btn {
  background-color: #ff8549;
}
.is-career .entry-flow #flow02 .section__heading--line::before {
  background-color: #0b96d7;
}
.is-career .entry-flow #flow02 .component-flow__circle {
  background-color: #0b96d7;
}
.is-career .entry-flow #flow02 .component-flow::after {
  background-color: #0b96d7;
}
.is-career .entry-flow #flow02 .component-flow__heading::after {
  background-color: #0b96d7;
}
.is-career .entry-flow #flow02 .component-flow__text-btn {
  background-color: #0b96d7;
}
.is-career .entry-flow #flow02 .entry-footer__text {
  color: #0b96d7;
}
.is-career .entry-flow #flow02 .component-button--entry-detail a {
  background-color: #0b96d7;
}
@media (hover: hover) {
  .is-career .entry-flow #flow02 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e6f4ff;
  }
}
@media (hover: none) {
  .is-career .entry-flow #flow02 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e6f4ff;
  }
}
.is-career .entry-flow #flow03 .section__heading--line::before {
  background-color: #09c895;
}
.is-career .entry-flow #flow03 .component-flow__circle {
  background-color: #09c895;
}
.is-career .entry-flow #flow03 .component-flow::after {
  background-color: #09c895;
}
.is-career .entry-flow #flow03 .component-flow__heading::after {
  background-color: #09c895;
}
.is-career .entry-flow #flow03 .component-flow__text-btn {
  background-color: #09c895;
}
.is-career .entry-flow #flow03 .entry-footer__text {
  color: #09c895;
}
.is-career .entry-flow #flow03 .component-button--entry-detail a {
  background-color: #09c895;
}
@media (hover: hover) {
  .is-career .entry-flow #flow03 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e1fff9;
  }
}
@media (hover: none) {
  .is-career .entry-flow #flow03 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e1fff9;
  }
}
.is-career .entry-flow #flow04 .section__heading--line::before {
  background-color: #004988;
}
.is-career .entry-flow #flow04 .component-flow__circle {
  background-color: #004988;
}
.is-career .entry-flow #flow04 .component-flow::after {
  background-color: #004988;
}
.is-career .entry-flow #flow04 .component-flow__heading::after {
  background-color: #004988;
}
.is-career .entry-flow #flow04 .component-flow__text-btn {
  background-color: #004988;
}
.is-career .entry-flow #flow04 .entry-footer__text {
  color: #004988;
}
.is-career .entry-flow #flow04 .component-button--entry-detail a {
  background-color: #004988;
}
@media (hover: hover) {
  .is-career .entry-flow #flow04 .component-button--entry-detail a:hover {
    box-shadow: 0 0 0 0.8rem #e1eaf1;
  }
}
@media (hover: none) {
  .is-career .entry-flow #flow04 .component-button--entry-detail a:active {
    box-shadow: 0 0 0 0.8rem #e1eaf1;
  }
}

.is-new .entry-detail .entry-table-list tr:nth-of-type(odd) th,
.is-new .entry-flow .entry-table-list tr:nth-of-type(odd) th {
  background-color: #ebf9f0;
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(odd) td,
.is-new .entry-flow .entry-table-list tr:nth-of-type(odd) td {
  background-color: #effff5;
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(odd) td + td:before,
.is-new .entry-flow .entry-table-list tr:nth-of-type(odd) td + td:before {
  background-color: #c7f2d9;
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even),
.is-new .entry-flow .entry-table-list tr:nth-of-type(odd) td > div:nth-of-type(even) {
  background-color: #ebf9f0;
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(even) th,
.is-new .entry-flow .entry-table-list tr:nth-of-type(even) th {
  background-color: #d8f0e0;
}
@media screen and (max-width: 768px) {
  .is-new .entry-detail .entry-table-list tr:nth-of-type(even) th,
  .is-new .entry-flow .entry-table-list tr:nth-of-type(even) th {
    background-color: #ebf9f0;
  }
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(even) td,
.is-new .entry-flow .entry-table-list tr:nth-of-type(even) td {
  background-color: #dcf7e5;
}
@media screen and (max-width: 768px) {
  .is-new .entry-detail .entry-table-list tr:nth-of-type(even) td,
  .is-new .entry-flow .entry-table-list tr:nth-of-type(even) td {
    background-color: #effff5;
  }
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(even) td + td:before,
.is-new .entry-flow .entry-table-list tr:nth-of-type(even) td + td:before {
  background-color: #c7f2d9;
}
.is-new .entry-detail .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even),
.is-new .entry-flow .entry-table-list tr:nth-of-type(even) td > div:nth-of-type(even) {
  background-color: #effff5;
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(odd) .entry-table-list__term,
.is-new .entry-flow .entry-table-list__item:nth-of-type(odd) .entry-table-list__term {
  background-color: #ebf9f0;
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(odd) .entry-table-list__description,
.is-new .entry-flow .entry-table-list__item:nth-of-type(odd) .entry-table-list__description {
  background-color: #effff5;
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(odd) .entry-table-list__description-inner:nth-of-type(even),
.is-new .entry-flow .entry-table-list__item:nth-of-type(odd) .entry-table-list__description-inner:nth-of-type(even) {
  background-color: #ebf9f0;
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(even) .entry-table-list__term,
.is-new .entry-flow .entry-table-list__item:nth-of-type(even) .entry-table-list__term {
  background-color: #d8f0e0;
}
@media screen and (max-width: 768px) {
  .is-new .entry-detail .entry-table-list__item:nth-of-type(even) .entry-table-list__term,
  .is-new .entry-flow .entry-table-list__item:nth-of-type(even) .entry-table-list__term {
    background-color: #ebf9f0;
  }
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(even) .entry-table-list__description,
.is-new .entry-flow .entry-table-list__item:nth-of-type(even) .entry-table-list__description {
  background-color: #dcf7e5;
}
@media screen and (max-width: 768px) {
  .is-new .entry-detail .entry-table-list__item:nth-of-type(even) .entry-table-list__description,
  .is-new .entry-flow .entry-table-list__item:nth-of-type(even) .entry-table-list__description {
    background-color: #effff5;
  }
}
.is-new .entry-detail .entry-table-list__item:nth-of-type(even) .entry-table-list__description-inner:nth-of-type(even),
.is-new .entry-flow .entry-table-list__item:nth-of-type(even) .entry-table-list__description-inner:nth-of-type(even) {
  background-color: #effff5;
}
.is-new .entry-table__largetable tr.thead {
  background-color: #ebf9f0;
}

.entry-detail {
  padding-top: 9.5rem;
}
@media screen and (max-width: 768px) {
  .entry-detail {
    padding-top: 4.75rem;
  }
}
.entry-detail h3.section__heading {
  margin-top: 4rem;
}
.entry-detail .section__heading + .entry-table {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .entry-detail .section__heading + .entry-table {
    margin-top: 2rem;
  }
}

.entry-flow {
  margin-top: 12rem;
  padding: 9.5rem 0 12rem;
}
@media screen and (max-width: 768px) {
  .entry-flow {
    margin-top: 6rem;
    padding: 4.75rem 0 6rem;
  }
}
.entry-flow .component-tab {
  border-color: #e9ded4;
}
.entry-flow .component-flow {
  margin-top: 8rem;
  row-gap: 8rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow {
    margin-top: 3.75rem;
    row-gap: 3.75rem;
  }
}
.entry-flow .component-flow::after {
  display: block;
  width: 3px;
  height: calc(100% - 8rem);
  content: "";
  position: absolute;
  top: calc(50% - 3rem);
  left: 5rem;
  translate: 0 -50%;
  background-color: var(--primary);
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow::after {
    position: absolute;
    top: calc(50% - 3rem);
    left: 5.5rem;
  }
}
.entry-flow .component-flow__item {
  background-color: #fff;
  padding: 0.8rem 5rem 0.8rem 0;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__item {
    padding: 1.6rem;
    -moz-column-gap: 1.6rem;
         column-gap: 1.6rem;
  }
}
.entry-flow .component-flow__item::after {
  display: none;
}
.entry-flow .component-flow__circle {
  position: relative;
  z-index: 3;
  transform: translateY(-30%);
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__circle {
    transform: translateY(-50%);
  }
}
.entry-flow .component-flow__inner {
  align-items: center;
  gap: 1rem 5rem;
}
.entry-flow .component-flow__heading {
  position: relative;
  flex-shrink: 0;
  width: 22.8rem;
  height: 100%;
  display: grid;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__heading {
    width: 100%;
    height: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .entry-flow .component-flow__heading::after {
    display: block;
    width: 1px;
    height: calc(100% - 5rem);
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    translate: 2.5rem -50%;
    background-color: var(--primary);
  }
}
.entry-flow .component-flow__heading.fs-small {
  font-size: 1.8rem;
}
.entry-flow .component-flow__text {
  margin-top: 0;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__text {
    padding-right: 2rem;
  }
}
.entry-flow .component-flow__text-btn {
  color: #fff;
  background-color: var(--primary);
  letter-spacing: 1px;
  padding: 0.25em 2em 0.25em 1em;
  border-radius: 20vh;
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.5em;
  position: relative;
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__text-btn {
    font-size: 1.12rem;
  }
}
@media (hover: hover) {
  .entry-flow .component-flow__text-btn:hover {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .entry-flow .component-flow__text-btn:hover::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  .entry-flow .component-flow__text-btn:active {
    box-shadow: 0 0 0 0.8rem var(--hover);
  }
  .entry-flow .component-flow__text-btn:active::after {
    animation: arrow-center 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
.entry-flow .component-flow__text-btn::after {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 0.8rem;
  translate: 0 -50%;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .entry-flow .component-flow__text-btn::after {
    width: 0.96rem;
    height: 0.96rem;
    right: 0.64rem;
  }
}

.is-career .entry-flow {
  background-color: #fff2e6;
}

.is-new .entry-flow {
  background-color: #ebf9f0;
}

.entry-aside {
  padding-top: 12rem;
}
@media screen and (max-width: 768px) {
  .entry-aside {
    padding-top: 6rem;
  }
}

.qa {
  padding-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .qa {
    padding-top: 2.4rem;
  }
}
.qa .qa-contents {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents {
    gap: 5rem;
  }
}
.qa .qa-contents-list {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
  margin-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list {
    gap: 1.4rem;
    margin-top: 2.4rem;
  }
}
.qa .qa-contents-list__item {
  border-radius: 0.8rem;
  box-shadow: 0 0.2rem 2rem rgba(51, 51, 51, 0.1);
}
.qa .qa-contents-list__item:has(.is-clicked) .qa-contents-list__body {
  grid-template-rows: 1fr !important;
}
.qa .qa-contents-list__item:has(.is-clicked) .qa-contents-list__heading::before {
  rotate: 0deg;
}
.qa .qa-contents-list__heading button, .qa .qa-contents-list__text {
  display: flex;
  gap: 2.6rem;
  line-height: 1.8;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button, .qa .qa-contents-list__text {
    gap: 1.3rem;
  }
}
.qa .qa-contents-list__heading button::before, .qa .qa-contents-list__text::before {
  margin-top: 0.6rem;
  color: var(--primary);
  font-weight: 700;
  font-size: 3rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button::before, .qa .qa-contents-list__text::before {
    margin-top: 0.3rem;
    font-size: 2.4rem;
  }
}
.qa .qa-contents-list__heading button p + p, .qa .qa-contents-list__text p + p {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button p + p, .qa .qa-contents-list__text p + p {
    margin-top: 0.8rem;
  }
}
.qa .qa-contents-list__heading button em, .qa .qa-contents-list__text em {
  font-style: italic;
}
.qa .qa-contents-list__heading button img, .qa .qa-contents-list__text img {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.qa .qa-contents-list__heading button hr, .qa .qa-contents-list__text hr {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button hr, .qa .qa-contents-list__text hr {
    margin-top: 0.8rem;
  }
}
.qa .qa-contents-list__heading button ul, .qa .qa-contents-list__text ul {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button ul, .qa .qa-contents-list__text ul {
    margin-top: 0.8rem;
  }
}
.qa .qa-contents-list__heading button ul > li, .qa .qa-contents-list__text ul > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.qa .qa-contents-list__heading button ul > li::before, .qa .qa-contents-list__text ul > li::before {
  content: "・";
  margin-right: 0.25em;
}
.qa .qa-contents-list__heading button ol, .qa .qa-contents-list__text ol {
  counter-reset: listnum 0;
  list-style: none;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button ol, .qa .qa-contents-list__text ol {
    margin-top: 0.8rem;
  }
}
.qa .qa-contents-list__heading button ol > li, .qa .qa-contents-list__text ol > li {
  padding-left: 1em;
  text-indent: -1em;
}
.qa .qa-contents-list__heading button ol > li + li, .qa .qa-contents-list__text ol > li + li {
  margin-top: 0.5em;
}
.qa .qa-contents-list__heading button ol > li::before, .qa .qa-contents-list__text ol > li::before {
  counter-increment: listnum;
  content: counter(listnum) ".";
}
.qa .qa-contents-list__heading button a, .qa .qa-contents-list__text a {
  color: var(--primary);
  text-decoration: underline;
}
.qa .qa-contents-list__heading {
  position: relative;
  background-color: white;
}
.qa .qa-contents-list__heading::before, .qa .qa-contents-list__heading::after {
  display: block;
  width: 2.8rem;
  height: 0.2rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  translate: 0 -50%;
  background-color: var(--primary);
  transition: rotate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading::before, .qa .qa-contents-list__heading::after {
    right: 1.5rem;
    width: 1.4rem;
  }
}
.qa .qa-contents-list__heading::before {
  rotate: -90deg;
}
.qa .qa-contents-list__heading button {
  width: 100%;
  padding: 2.4rem 5.8rem 2.4rem 2rem;
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__heading button {
    padding: 1.2rem 4rem 1.2rem 1rem;
    font-size: 1.44rem;
  }
}
.qa .qa-contents-list__heading button::before {
  content: "Q";
}
.qa .qa-contents-list__body {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.qa .qa-contents-list__text {
  padding: 0 3rem 2.4rem 2rem;
}
@media screen and (max-width: 768px) {
  .qa .qa-contents-list__text {
    padding: 0 1.5rem 1.2rem 1rem;
  }
}
.qa .qa-contents-list__text::before {
  content: "A";
}
.qa .qa-contents-list__wrapper {
  overflow: hidden;
}
.qa .component-index {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .qa .component-index {
    margin-top: 6rem;
  }
}

.history-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .history-introduction {
    padding-top: 5.8rem;
  }
}

.history-flow {
  padding-top: 9.4rem;
}
@media screen and (max-width: 768px) {
  .history-flow {
    padding-top: 4.7rem;
  }
}
.history-flow .component-flow {
  margin-top: 6.8rem;
}
@media screen and (max-width: 768px) {
  .history-flow .component-flow {
    margin-top: 3.4rem;
  }
}

.history-vision .history-vision-list {
  display: flex;
  gap: 1.2rem;
  margin-top: 2.8rem;
}
@media screen and (max-width: 768px) {
  .history-vision .history-vision-list {
    flex-direction: column;
    margin-top: 1.4rem;
  }
}
.history-vision .history-vision-list__item {
  position: relative;
  overflow: hidden;
  border-radius: 1.4rem;
}
.history-vision .history-vision-list__content {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 3.4rem 3rem;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .history-vision .history-vision-list__content {
    padding: 1.7rem 1.5rem;
  }
}
.history-vision .history-vision-list__heading {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  font-weight: 700;
  line-height: 1;
}
.history-vision .history-vision-list__heading-en {
  font-size: 5rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .history-vision .history-vision-list__heading-en {
    font-size: 4rem;
  }
}
.history-vision .history-vision-list__heading-ja {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .history-vision .history-vision-list__heading-ja {
    font-size: 1.92rem;
  }
}
.history-vision .history-vision-list__text {
  margin-top: 1.8rem;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .history-vision .history-vision-list__text {
    margin-top: 0.9rem;
  }
}

.history-guide {
  padding-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .history-guide {
    padding-top: 5.6rem;
  }
}
.history-guide .component-index {
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .history-guide .component-index {
    margin-top: 2.1rem;
  }
}

.history-sustainable {
  padding-top: 10.4rem;
}
@media screen and (max-width: 768px) {
  .history-sustainable {
    padding-top: 5.2rem;
  }
}
.history-sustainable__inner {
  display: flex;
}
.history-sustainable__content {
  flex: 1;
}
.history-sustainable .history-sustainable-links {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem 0;
  width: 100%;
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .history-sustainable .history-sustainable-links {
    flex-direction: column;
    gap: 2rem 0;
    margin-top: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .history-sustainable .history-sustainable-links__item {
    width: 50%;
  }
}
.history-sustainable .history-sustainable-links__item a {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .history-sustainable .history-sustainable-links__item a {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
}
.history-sustainable__image {
  width: 51rem;
  height: 40rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 1.4rem;
}
.history-sustainable__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.history-sustainable .component-button {
  margin-top: 6.6rem;
}

.home-section .component-button {
  position: absolute;
  top: 3.2rem;
  right: 0;
}
@media screen and (max-width: 768px) {
  .home-section .component-button {
    position: static;
    text-align: center;
  }
}

.home-hero {
  position: relative;
  z-index: 1;
}
.home-hero__background {
  overflow: hidden;
  height: 93.5rem;
  width: 101%;
}
@media screen and (max-width: 768px) {
  .home-hero__background {
    height: 40rem;
  }
}
.home-hero__background video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .home-hero__background video {
    transform: scale(1.15);
  }
}
.home-hero__inner {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding-left: 19rem;
}
@media screen and (max-width: 768px) {
  .home-hero__inner {
    justify-content: center;
    align-items: flex-end;
    padding-left: 0;
    padding-bottom: 7rem;
  }
}
.home-hero__inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 22rem;
  background-image: linear-gradient(to bottom, rgba(51, 51, 51, 0.2) 50%, rgba(51, 51, 51, 0) 100%);
}
@media screen and (max-width: 768px) {
  .home-hero__inner::before {
    display: none;
  }
}
.home-hero__heading {
  color: #fff;
  font-weight: 700;
  font-size: 11rem;
  line-height: 1.2727272727;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .home-hero__heading {
    font-size: 4rem;
    line-height: 1.375;
    letter-spacing: 0;
  }
}

.home-index {
  padding: 17rem 0 20rem;
}
@media screen and (max-width: 768px) {
  .home-index {
    padding: 6rem 0 4rem;
  }
}
.home-index .section__inner {
  width: 100%;
  max-width: 154rem;
  margin-left: auto;
  margin-right: auto;
}
.home-index .home-index-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9rem 5rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list {
    gap: 3rem;
  }
}
.home-index .home-index-list__item {
  width: calc(50% - 3.3333333rem);
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item a {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
}
@media (hover: hover) {
  .home-index .home-index-list__item a:hover .home-index-list__image img {
    scale: 1.08;
  }
  .home-index .home-index-list__item a:hover .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #88b3f9;
  }
  .home-index .home-index-list__item a:hover .home-index-list__image::after {
    animation: arrow-home 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
  @keyframes arrow-home {
    0% {
      translate: 0 50%;
      opacity: 1;
    }
    50% {
      translate: 50% 50%;
      opacity: 0;
    }
    51% {
      translate: -50% 50%;
      opacity: 0;
    }
    100% {
      translate: 0 50%;
      opacity: 1;
    }
  }
}
@media (hover: none) {
  .home-index .home-index-list__item a:active .home-index-list__image img {
    scale: 1.08;
  }
  .home-index .home-index-list__item a:active .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #88b3f9;
  }
  .home-index .home-index-list__item a:active .home-index-list__image::after {
    animation: arrow-home 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 1;
  }
  @keyframes arrow-home {
    0% {
      translate: 0 50%;
      opacity: 1;
    }
    50% {
      translate: 50% 50%;
      opacity: 0;
    }
    51% {
      translate: -50% 50%;
      opacity: 0;
    }
    100% {
      translate: 0 50%;
      opacity: 1;
    }
  }
}
.home-index .home-index-list__item--low img {
  aspect-ratio: 2/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
@media screen and (min-width: 769px) {
  .home-index .home-index-list__item--wide {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item--wide {
    padding-bottom: 1.6rem;
  }
}
.home-index .home-index-list__item--wide a {
  display: block;
}
.home-index .home-index-list__item--wide .home-index-list__image {
  width: 100%;
}
.home-index .home-index-list__item--wide .home-index-list__image::before, .home-index .home-index-list__item--wide .home-index-list__image::after {
  right: 5rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item--wide .home-index-list__image::before, .home-index .home-index-list__item--wide .home-index-list__image::after {
    width: 5rem;
    height: 5rem;
    right: 2rem;
  }
}
.home-index .home-index-list__item--wide .home-index-list__image::after {
  -webkit-mask-size: 1.6rem 1.6rem !important;
          mask-size: 1.6rem 1.6rem !important;
}
.home-index .home-index-list__item--wide .home-index-list__heading {
  gap: 2.4rem;
  margin-top: -4.8rem;
  padding: 0 3.8rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item--wide .home-index-list__heading {
    gap: 0.8rem;
    margin-top: -2.3rem;
    padding: 0 2rem;
  }
}
.home-index .home-index-list__item--wide .home-index-list__heading-en {
  font-size: 9rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item--wide .home-index-list__heading-en {
    font-size: 4rem;
  }
}
.home-index .home-index-list__item--wide .home-index-list__heading-ja {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__item--wide .home-index-list__heading-ja {
    font-size: 2rem;
  }
}
@media (hover: hover) {
  .home-index .home-index-list__item:nth-of-type(1) a:hover .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
  }
}
@media (hover: none) {
  .home-index .home-index-list__item:nth-of-type(1) a:active .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
  }
}
.home-index .home-index-list__item:nth-of-type(1) .home-index-list__image::before {
  border-color: #0bd7a0;
}
.home-index .home-index-list__item:nth-of-type(1) .home-index-list__image::after {
  background-color: #0bd7a0;
}
.home-index .home-index-list__item:nth-of-type(1) .home-index-list__heading {
  color: #0bd7a0;
}
@media (hover: hover) {
  .home-index .home-index-list__item:nth-of-type(2) a:hover .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #fff2e6;
  }
}
@media (hover: none) {
  .home-index .home-index-list__item:nth-of-type(2) a:active .home-index-list__image::before {
    box-shadow: 0 0 0 0.8rem #fff2e6;
  }
}
.home-index .home-index-list__item:nth-of-type(2) .home-index-list__image::before {
  border-color: #ff8549;
}
.home-index .home-index-list__item:nth-of-type(2) .home-index-list__image::after {
  background-color: #ff8549;
}
.home-index .home-index-list__item:nth-of-type(2) .home-index-list__heading {
  color: #ff8549;
}
.home-index .home-index-list__image {
  position: relative;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__image {
    flex-shrink: 0;
    width: 14rem;
  }
}
.home-index .home-index-list__image::before, .home-index .home-index-list__image::after {
  display: block;
  width: 10rem;
  height: 10rem;
  content: "";
  position: absolute;
  right: 2rem;
  bottom: 0;
  translate: 0 50%;
  border-radius: 50%;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__image::before, .home-index .home-index-list__image::after {
    width: 3rem;
    height: 3rem;
    right: 1rem;
  }
}
.home-index .home-index-list__image::before {
  background-color: #fff;
  border: 0.2rem solid #4285f4;
  transition: box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: box-shadow;
}
.home-index .home-index-list__image::after {
  background-color: #4285f4;
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/1.6rem 1.6rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__image::after {
    -webkit-mask-size: 1.2rem 1.2rem;
            mask-size: 1.2rem 1.2rem;
  }
}
.home-index .home-index-list__image span {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 1.4rem;
}
.home-index .home-index-list__image img {
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.home-index .home-index-list__heading {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.6rem;
  margin-top: -2rem;
  padding: 0 3rem;
  color: #4285f4;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__heading {
    gap: 1rem;
    margin-top: 0rem;
    padding: 0;
  }
}
.home-index .home-index-list__heading-en {
  font-size: 4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__heading-en {
    font-size: 2rem;
  }
}
.home-index .home-index-list__heading-ja {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .home-index .home-index-list__heading-ja {
    font-size: 1.6rem;
  }
}

.home-introduction {
  position: relative;
  z-index: 9;
  margin-top: 10.2rem;
  background-color: var(--secondary);
}
@media screen and (max-width: 768px) {
  .home-introduction {
    margin-top: 3rem;
  }
}
.home-introduction .section__inner {
  padding-top: 10.6rem;
  padding-bottom: 10rem;
}
@media screen and (max-width: 768px) {
  .home-introduction .section__inner {
    padding-top: 5.6rem;
    padding-bottom: 5.2rem;
  }
}
.home-introduction__image {
  position: absolute;
  inset: 0;
}
.home-introduction__image img {
  border-radius: 1rem;
}
.home-introduction__image img:nth-of-type(1) {
  position: absolute;
  top: -3.6rem;
  left: -15rem;
  width: 28rem;
}
@media screen and (max-width: 768px) {
  .home-introduction__image img:nth-of-type(1) {
    top: -1.5rem;
    right: 1.8rem;
    left: auto;
    width: 7.5rem;
  }
}
.home-introduction__image img:nth-of-type(2) {
  position: absolute;
  right: -22.2rem;
  bottom: -7rem;
  width: 32rem;
}
@media screen and (max-width: 768px) {
  .home-introduction__image img:nth-of-type(2) {
    display: none;
  }
}
.home-introduction__image img:nth-of-type(3) {
  position: absolute;
  top: 19rem;
  left: -2.4rem;
  width: 14rem;
}
@media screen and (max-width: 768px) {
  .home-introduction__image img:nth-of-type(3) {
    top: 5rem;
    right: 0.4rem;
    left: auto;
    width: 3.7rem;
  }
}
.home-introduction__heading {
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.5555555556;
}
@media screen and (max-width: 768px) {
  .home-introduction__heading {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.home-introduction__text {
  margin-top: 3.2rem;
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .home-introduction__text {
    margin-top: 0.8rem;
    font-size: 1.4rem;
    line-height: 1.7142857143;
  }
}

.home-work .splide {
  margin-top: 2.4rem;
}
.home-work .splide__arrows {
  top: 9rem !important;
}
@media screen and (min-width: 769px) {
  .home-work .home-work-list {
    display: flex !important;
    gap: 4rem;
    margin-top: 5.8rem !important;
  }
}
@media screen and (min-width: 769px) {
  .home-work .home-work-list__item {
    width: 40rem;
  }
}
.home-work .home-work-list__image {
  overflow: hidden;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-list__image {
    width: 100%;
    max-width: 31.5rem;
    margin-left: auto;
    margin-right: auto;
    height: 18rem;
  }
}
.home-work .home-work-list__content {
  padding: 1.4rem 2rem 0;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-list__content {
    padding: 1.6rem 0 0;
  }
}
.home-work .home-work-list__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-list__heading {
    font-size: 2rem;
  }
}
.home-work .home-work-list__text {
  margin-top: 1rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .home-work .component-button {
    margin-top: 2.6rem;
  }
}
.home-work .home-work-banner {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  height: 20rem;
  margin-top: 10.2rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner {
    max-width: 32.5rem;
    height: 16rem;
    margin-top: 6rem;
  }
}
.home-work .home-work-banner a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-right: 10.4rem;
  padding-left: 3rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner a {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 2rem;
  }
}
.home-work .home-work-banner a::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0.3;
  background-image: linear-gradient(to right, #10d994, #4285f4, #69d314);
}
.home-work .home-work-banner__heading {
  color: #fff;
  font-weight: 700;
  font-size: 6rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner__heading {
    font-size: 2.4rem;
    text-align: left;
  }
}
.home-work .home-work-banner__subheading {
  font-weight: 700;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner__subheading {
    font-size: 1.8rem;
  }
}
.home-work .home-work-banner__text {
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner__text {
    margin-top: 0.6rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.05em;
  }
}
.home-work .home-work-banner__illust {
  width: 14.4rem;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner__illust {
    position: absolute;
    right: 1.8rem;
    bottom: 0.6rem;
    width: 10.6rem;
  }
}
.home-work .home-work-banner .component-arrow {
  position: absolute;
  top: 50%;
  right: 3rem;
  translate: 0 -50%;
}
@media screen and (max-width: 768px) {
  .home-work .home-work-banner .component-arrow {
    width: 3rem;
    height: 3rem;
    border: 0.2rem solid var(--primary);
    right: 2rem;
  }
}

.home-interview {
  padding-top: 17.7rem;
}
@media screen and (max-width: 768px) {
  .home-interview {
    padding-top: 10.7rem;
  }
}
.home-interview__inner {
  position: relative;
  z-index: 1;
  margin-top: -16rem;
  padding-top: 10.6rem;
}
@media screen and (max-width: 768px) {
  .home-interview__inner {
    margin-top: 0;
    padding-top: 3.8rem;
  }
}
.home-interview__inner::before {
  display: block;
  width: calc(100% - 11.2rem);
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .home-interview__inner::before {
    display: none;
  }
}
.home-interview__inner:has(.home-interview-talk) {
  padding-bottom: 33rem;
}
@media screen and (max-width: 768px) {
  .home-interview__inner:has(.home-interview-talk) {
    padding-bottom: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .home-interview .splide {
    margin-top: 3rem;
  }
}
.home-interview .splide__arrows {
  top: 13rem !important;
}
@media screen and (min-width: 769px) {
  .home-interview .home-interview-list {
    display: flex !important;
    gap: 7rem;
    margin-top: 3.8rem !important;
  }
}
@media screen and (min-width: 769px) {
  .home-interview .home-interview-list__item {
    width: 38rem;
  }
}
.home-interview .home-interview-list__item[data-join=story] figcaption::before {
  background-image: linear-gradient(to right, #4dc6ff, #0568f0);
}
.home-interview .home-interview-list__item[data-join=new] figcaption::before {
  /*background-image: linear-gradient(to right, #10d994, #69d314);*/
  background-image: linear-gradient(to right, #49ffbf, #2be4c5, #36d0ff);
}
.home-interview .home-interview-list__item[data-join=career] figcaption::before {
  opacity: 1 !important;
  background-image: linear-gradient(to right, #fde3ab, #fea174);
}
.home-interview .home-interview-list__image {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-interview .home-interview-list__image {
    height: 26rem;
  }
}
.home-interview .home-interview-list__image figcaption {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 2rem;
  left: 2rem;
  z-index: 1;
  overflow: hidden;
  min-width: 10rem;
  height: 2.4rem;
  padding: 0 2rem;
  border-radius: 10rem;
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .home-interview .home-interview-list__image figcaption {
    padding: 0 1.7rem;
  }
}
.home-interview .home-interview-list__image figcaption::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-interview .home-interview-list__content {
  width: 100%;
  max-width: 34rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-top: -7.4rem;
  padding: 3rem 3rem 0;
  border-radius: 1rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .home-interview .home-interview-list__content {
    margin-top: 0;
    padding: 0.8rem 0 0;
    border-radius: 0;
  }
}
.home-interview .home-interview-list__heading {
  color: var(--dark);
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.5454545455;
}
@media screen and (max-width: 768px) {
  .home-interview .home-interview-list__heading {
    font-size: 2rem;
    line-height: 1.7;
  }
}
.home-interview .home-interview-list__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .home-interview .component-button {
    margin-top: 2.6rem;
  }
}

.home-interview-talk {
  margin-top: 12.4rem;
}
@media screen and (max-width: 768px) {
  .home-interview-talk {
    margin-top: 5rem;
  }
}
.home-interview-talk a {
  display: flex;
  align-items: center;
  gap: 2rem 7.4rem;
}
@media screen and (max-width: 768px) {
  .home-interview-talk a {
    flex-direction: column;
  }
}
.home-interview-talk__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 57rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-interview-talk__image {
    width: 100%;
  }
}
.home-interview-talk__heading {
  color: var(--primary);
  font-weight: 700;
  font-size: 5rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .home-interview-talk__heading {
    font-size: 2rem;
  }
}
.home-interview-talk__subheading {
  margin-top: 2rem;
  font-weight: 700;
  font-size: 3rem;
  line-height: 1.6;
  transition: color 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: color;
}
@media screen and (max-width: 768px) {
  .home-interview-talk__subheading {
    margin-top: -0.6rem;
    font-size: 2rem;
    line-height: 1.8;
  }
}
@media (hover: hover) {
  .home-interview-talk__subheading:hover {
    color: #4285f4;
  }
}
@media (hover: none) {
  .home-interview-talk__subheading:active {
    color: #4285f4;
  }
}
@media (hover: hover) {
  .home-interview-talk__subheading:hover {
    color: #4285f4;
  }
}
@media (hover: none) {
  .home-interview-talk__subheading:active {
    color: #4285f4;
  }
}
.home-interview-talk__subheading small {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .home-interview-talk__subheading small {
    font-size: 1.4rem;
  }
}
.home-interview-talk__text {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .home-interview-talk__text {
    margin-top: 1.2rem;
  }
}

.home-interview-wave {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  opacity: 0.2;
}
@media screen and (max-width: 768px) {
  .home-interview-wave {
    opacity: 0.1;
  }
}
.home-interview-wave::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(175deg, #fff 30%, transparent 60%);
}

@media screen and (max-width: 768px) {
  .home-culture .splide {
    margin-top: 3.6rem;
  }
}
.home-culture .splide__arrows {
  top: 10rem !important;
}
@media screen and (min-width: 769px) {
  .home-culture .home-culture-list {
    display: flex !important;
    flex-wrap: wrap;
    gap: 2.2rem;
    margin-top: 4.2rem !important;
  }
}
.home-culture .home-culture-list__item {
  width: calc(50% - 1.1rem);
}
.home-culture .home-culture-list__item--slim {
  width: calc(33.333333% - 1.4666666rem);
}
.home-culture .home-culture-list__item a {
  color: #fff;
}
.home-culture .home-culture-list__item a[target=_blank] .home-culture-list__image {
  position: relative;
}
.home-culture .home-culture-list__item a[target=_blank] .home-culture-list__image::after {
  display: block;
  width: 2.7rem;
  height: 2.7rem;
  content: "";
  position: absolute;
  top: 2rem;
  right: 2rem;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .home-culture .home-culture-list__item a[target=_blank] .home-culture-list__image::after {
    width: 1.9rem;
    height: 1.9rem;
    top: 1rem;
    right: 1rem;
  }
}
.home-culture .home-culture-list__image {
  overflow: hidden;
  border-radius: 1rem;
  position: relative;
}
@media screen and (min-width: 769px) {
  .home-culture .home-culture-list__image {
    aspect-ratio: 24/13;
  }
}
@media screen and (max-width: 768px) {
  .home-culture .home-culture-list__image {
    height: 20rem;
  }
}
.home-culture .home-culture-list__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-culture .home-culture-list__image.dark-overlay::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.25);
  z-index: 1;
}
.home-culture .home-culture-list__content {
  position: absolute;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 2rem;
  font-weight: 700;
  line-height: 1;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .home-culture .home-culture-list__content {
    gap: 1rem;
  }
}
.home-culture .home-culture-list__heading {
  font-size: 3.2rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .home-culture .home-culture-list__heading {
    font-size: 2rem;
  }
}
.home-culture .home-culture-list__text {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .home-culture .home-culture-list__text {
    font-size: 1.6rem;
  }
}
.home-culture .home-culture-list .component-arrow {
  bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .home-culture .component-button {
    margin-top: 4rem;
  }
}

.home-recruit {
  padding-top: 21rem;
}
@media screen and (max-width: 768px) {
  .home-recruit {
    padding-top: 8.8rem;
  }
}
.home-recruit__inner {
  display: flex;
}
.home-recruit__content {
  flex: 1;
}
.home-recruit .home-recruit-links {
  display: flex;
  flex-direction: column;
  gap: 4rem 2rem;
  width: 100%;
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .home-recruit .home-recruit-links {
    gap: 2rem 0;
    margin-top: 3rem;
  }
}
.home-recruit .home-recruit-links__item a {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .home-recruit .home-recruit-links__item a {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
}
.home-recruit__image {
  width: 74rem;
  height: 40rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 1.4rem;
}
.home-recruit__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-recruit .home-recruit-buttons {
  display: flex;
  gap: 2.2rem;
  margin-top: 21rem;
}
@media screen and (max-width: 768px) {
  .home-recruit .home-recruit-buttons {
    flex-direction: column;
    margin-top: 4rem;
  }
}
.home-recruit .home-recruit-buttons__item {
  width: 100%;
}
.home-recruit .home-recruit-buttons__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  position: relative;
  height: 14rem;
  border-radius: 1rem;
  background-color: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .home-recruit .home-recruit-buttons__item a {
    height: 5rem;
    font-size: 1.6rem;
  }
}
.home-recruit .home-recruit-buttons__item a::after {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  content: "";
  margin-top: 0.1rem;
  background-color: #fff;
  -webkit-mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/icn_blank.svg") no-repeat center/contain;
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .home-recruit .home-recruit-buttons__item a::after {
    width: 1.9rem;
    height: 1.9rem;
    position: absolute;
    top: 50%;
    right: 1.6rem;
    translate: 0 -50%;
  }
}

.home-event {
  padding-top: 21rem;
}
@media screen and (max-width: 768px) {
  .home-event {
    padding-top: 8rem;
  }
}
.home-event .section__inner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .home-event .section__inner {
    flex-direction: column;
  }
}
.home-event .home-event-list {
  width: 61rem;
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list {
    width: 100%;
    margin-top: 3.6rem;
  }
}
.home-event .home-event-list__item a {
  position: relative;
  display: block;
  padding: 2.8rem 0;
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__item a {
    padding: 1.6rem 0;
  }
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__item a::before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    background-color: #ddd;
    border-radius: 1px;
  }
}
.home-event .home-event-list__item a::after {
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #ddd;
  border-radius: 1px;
}
.home-event .home-event-list__date {
  display: block;
  color: #666;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__date {
    font-size: 1.4rem;
  }
}
.home-event .home-event-list__text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__text {
    margin-top: 0.8rem;
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__text .component-arrow {
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .home-event .home-event-list__text .component-arrow::before {
    -webkit-mask-size: 0.8rem 0.8rem;
            mask-size: 0.8rem 0.8rem;
  }
}

.interview-sort {
  padding-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .interview-sort {
    padding-top: 3.2rem;
  }
}
.interview-sort button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 16.2rem;
  height: 3.6rem;
  border: 1px solid #ddd;
  border-radius: 3.6rem;
  color: #666;
  font-size: 1.3rem;
}
.interview-sort button.is-active {
  border-color: var(--primary);
  color: var(--primary);
}
@media (hover: hover) {
  .interview-sort button[data-join=new]:hover {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
    color: #0bd7a0;
  }
}
@media (hover: none) {
  .interview-sort button[data-join=new]:active {
    box-shadow: 0 0 0 0.8rem #ebf9f0;
    color: #0bd7a0;
  }
}
.interview-sort button[data-join=new].is-active {
  border-color: #0bd7a0;
  color: #0bd7a0;
}
@media (hover: hover) {
  .interview-sort button[data-join=career]:hover {
    box-shadow: 0 0 0 0.8rem #fff2e6;
    color: #ff8549;
  }
}
@media (hover: none) {
  .interview-sort button[data-join=career]:active {
    box-shadow: 0 0 0 0.8rem #fff2e6;
    color: #ff8549;
  }
}
.interview-sort button[data-join=career].is-active {
  border-color: #ff8549;
  color: #ff8549;
}
.interview-sort .interview-sorts {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 3.2rem;
}
@media screen and (min-width: 769px) {
  .interview-sort .interview-sorts {
    width: calc(100% - 20rem);
  }
}
.interview-sort .interview-sorts__label {
  width: 14.4rem;
  font-weight: 700;
  line-height: 1;
}
.interview-sort .interview-sorts__item {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .interview-sort .interview-sorts__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
.interview-sort .interview-sorts-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .interview-sort .interview-sorts-list__item {
    width: calc(50% - 0.5rem);
  }
}
.interview-sort__button {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 768px) {
  .interview-sort__button {
    position: static;
    margin-top: 2rem;
    text-align: center;
  }
  .interview-sort__button button {
    border: none;
    text-decoration: underline;
  }
}

.interview-index {
  padding-top: 8rem;
}
@media screen and (max-width: 768px) {
  .interview-index {
    padding-top: 4rem;
  }
}
.interview-index .component-interview + .interview-index-video {
  margin-top: 8.4rem;
}
@media screen and (max-width: 768px) {
  .interview-index .component-interview + .interview-index-video {
    margin-top: 4.2rem;
  }
}
.interview-index .interview-index-video {
  margin-top: 2.2rem;
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video {
    margin-top: 1.1rem;
  }
}
.interview-index .interview-index-video .interview-index-videos {
  display: flex;
  flex-wrap: wrap;
  gap: 4.2rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video .interview-index-videos {
    margin-top: 1.6rem;
  }
}
.interview-index .interview-index-video .interview-index-videos__item {
  width: calc(50% - 2.1rem);
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video .interview-index-videos__item {
    width: 100%;
  }
}
.interview-index .interview-index-video .interview-index-videos__movie {
  overflow: hidden;
  border-radius: 1rem;
  aspect-ratio: 16/9;
}
.interview-index .interview-index-video .interview-index-videos__movie iframe {
  width: 100%;
  height: 100%;
}
.interview-index .interview-index-video .interview-index-videos__content {
  padding: 0 4rem;
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video .interview-index-videos__content {
    padding: 0 2rem;
  }
}
.interview-index .interview-index-video .interview-index-videos__heading {
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video .interview-index-videos__heading {
    font-size: 1.92rem;
  }
}
.interview-index .interview-index-video .interview-index-videos__text {
  margin-top: 0rem;
  font-size: 1.4rem;
  line-height: 1.5714285714;
}
@media screen and (max-width: 768px) {
  .interview-index .interview-index-video .interview-index-videos__text {
    font-size: 1.12rem;
  }
}

.interview-header {
  padding-top: 6.2rem;
}
@media screen and (max-width: 768px) {
  .interview-header {
    padding-top: 3.1rem;
  }
}
.interview-header .section__inner {
  display: flex;
  gap: 2.5rem 5rem;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .interview-header .section__inner {
    flex-direction: column;
    align-items: flex-start;
  }
}
.interview-header__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 63rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .interview-header__image {
    width: 100%;
  }
}
.interview-header__data {
  line-height: 1.75;
}
@media screen and (min-width: 769px) {
  .interview-header__data {
    font-size: 2.4rem;
  }
}
.interview-header__heading {
  margin-top: 2rem;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .interview-header__heading {
    font-size: 2.88rem;
  }
}
.interview-header__text {
  margin-top: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .interview-header__text {
    padding-top: 0.8rem;
  }
}

.interview-detail {
  padding-top: 9.2rem;
}
@media screen and (max-width: 768px) {
  .interview-detail {
    padding-top: 2.4rem;
  }
}
.interview-detail .section__inner > *:first-child {
  margin-top: 0;
}
.interview-detail .section__inner > div:nth-of-type(even) .interview-detail_col6-4 {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .interview-detail .section__inner > div:nth-of-type(even) .interview-detail_col6-4 {
    flex-direction: column;
  }
}
@media screen and (min-width: 769px) {
  .interview-detail .section__inner .js-inview:has(.interview-detail_col6-4) .interview-detail_col6-4 {
    flex-direction: row;
  }
  .interview-detail .section__inner .js-inview:has(.interview-detail_col6-4) ~ .js-inview:has(.interview-detail_col6-4) .interview-detail_col6-4 {
    flex-direction: row-reverse;
  }
  .interview-detail .section__inner .js-inview:has(.interview-detail_col6-4) ~ .js-inview:has(.interview-detail_col6-4) ~ .js-inview:has(.interview-detail_col6-4) .interview-detail_col6-4 {
    flex-direction: row;
  }
}
.interview-detail h2 {
  margin-top: 9.6rem;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .interview-detail h2 {
    margin-top: 4.8rem;
    font-size: 2.24rem;
  }
}
.interview-detail h2 + p {
  margin-top: 2.8rem;
  line-height: 2;
}
@media screen and (min-width: 769px) {
  .interview-detail h2 + p {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-detail h2 + p {
    margin-top: 1.4rem;
  }
}
.interview-detail p {
  margin-top: 0.4rem;
  line-height: 2.5;
}
@media screen and (max-width: 768px) {
  .interview-detail p {
    margin-top: 0.2rem;
  }
}
.interview-detail_col6-4 {
  display: flex;
  gap: 4rem;
  align-items: flex-start;
  margin-top: 9.6rem;
}
@media screen and (max-width: 768px) {
  .interview-detail_col6-4 {
    flex-direction: column;
    gap: 1.6rem;
    margin-top: 4.8rem;
  }
}
.interview-detail_col6-4 h2 {
  margin-top: 0;
}
.interview-detail_col6-4 p:has(img) {
  margin: 0;
  overflow: hidden;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .interview-detail_col6-4 p:has(img) {
    width: 100%;
    margin-top: 2.7rem;
  }
}
.interview-detail_col6-4 > div:nth-of-type(1) {
  width: calc(60% - 4rem);
}
@media screen and (max-width: 768px) {
  .interview-detail_col6-4 > div:nth-of-type(1) {
    width: 100%;
  }
}
.interview-detail_col6-4 > div:nth-of-type(2) {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .interview-detail_col6-4 > div:nth-of-type(2) {
    width: 100%;
  }
}

.interview-other {
  padding-top: 18rem;
}
@media screen and (max-width: 768px) {
  .interview-other {
    padding-top: 9rem;
  }
}
.interview-other .component-interview {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .interview-other .component-interview {
    margin-top: 1.6rem;
  }
}
.interview-other .component-button {
  margin-top: 3.8rem;
}
@media screen and (max-width: 768px) {
  .interview-other .component-button {
    margin-top: 1.9rem;
  }
}

.message-index {
  margin-top: 12.4rem;
}
@media screen and (max-width: 768px) {
  .message-index {
    margin-top: 6.2rem;
  }
}
.message-index .message-index-list {
  display: flex;
  flex-direction: column;
  gap: 12rem;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list {
    gap: 6rem;
  }
}
.message-index .message-index-list__item {
  display: flex;
  align-items: flex-start;
  gap: 6rem;
  padding-right: 8rem;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__item {
    flex-direction: column;
    gap: 3rem;
    padding-right: 0;
  }
}
@media screen and (min-width: 769px) {
  .message-index .message-index-list__item:nth-of-type(even) {
    flex-direction: row-reverse;
    padding-right: 0;
    padding-left: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .message-index .message-index-list__item:nth-of-type(even) .message-index-list__text::before {
    right: auto;
    left: 0;
  }
}
.message-index .message-index-list__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 54rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__image {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .message-index .message-index-list__content {
    padding-top: 0.8rem;
  }
}
.message-index .message-index-list__heading {
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.5555555556;
  margin-top: 0.5em;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__heading {
    font-size: 2.16rem;
    margin-top: 0.25em;
  }
}
.message-index .message-index-list__subheading {
  font-weight: 700;
  font-size: 3rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__subheading {
    font-size: 1.8rem;
  }
}
.message-index .message-index-list__data {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__data {
    font-size: 1.2rem;
  }
}
.message-index .message-index-list__text {
  position: relative;
  margin-top: 2rem;
  padding-top: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__text {
    padding-top: 0.96rem;
  }
}
.message-index .message-index-list__text::before {
  display: block;
  width: 70rem;
  height: 0.2rem;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--primary);
}
.message-index .message-index-list__hr {
  width: 100%;
  height: 0;
  margin-block: 10rem;
  border-top: 1px dashed #aaa;
}
@media screen and (max-width: 768px) {
  .message-index .message-index-list__hr {
    margin-block: 5rem;
  }
}

.life-introduction {
  padding-top: 11rem;
}
@media screen and (max-width: 768px) {
  .life-introduction {
    padding-top: 5.5rem;
  }
}

.life-place {
  padding-top: 10.8rem;
}
@media screen and (max-width: 768px) {
  .life-place {
    padding-top: 5.4rem;
  }
}
.life-place .component-column {
  margin-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .life-place .component-column {
    margin-top: 2.4rem;
  }
}

.life-interview {
  padding-top: 10.8rem;
}
@media screen and (max-width: 768px) {
  .life-interview {
    padding-top: 5.4rem;
  }
}
.life-interview .component-column {
  margin-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .life-interview .component-column {
    margin-top: 2.4rem;
  }
}

.new-about {
  padding-top: 15rem;
}
@media screen and (max-width: 768px) {
  .new-about {
    padding-top: 5.8rem;
  }
}
.new-about__content {
  display: flex;
  align-items: center;
  gap: 2rem 9rem;
  margin-top: 7rem;
  margin-left: -21rem;
}
@media screen and (max-width: 768px) {
  .new-about__content {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 2.4rem;
    margin-left: 0;
  }
}
.new-about__image {
  width: 88rem;
  height: 60rem;
  overflow: hidden;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .new-about__image {
    width: 100%;
    height: 16rem;
  }
}
.new-about__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .new-about__image img {
    -o-object-position: top;
       object-position: top;
  }
}
.new-about .new-about-list {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .new-about .new-about-list {
    gap: 0.7rem;
    padding: 0 1rem;
  }
}
.new-about .new-about-list__item a {
  display: flex;
  align-items: center;
  gap: 2rem;
  position: relative;
  font-weight: 700;
  font-size: 2.6rem;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .new-about .new-about-list__item a {
    gap: 1.5rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .new-about .new-about-list .component-arrow {
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .new-about .new-about-list .component-arrow::before {
    -webkit-mask-size: 1.4rem 1.4rem;
            mask-size: 1.4rem 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .new-about .component-button {
    margin-top: 3rem;
  }
}

body.is-new .home-work {
  padding-top: 15rem;
}
@media screen and (max-width: 768px) {
  body.is-new .home-work {
    padding-top: 7.6rem;
  }
}
body.is-new .home-culture {
  padding-top: 19rem;
}
@media screen and (max-width: 768px) {
  body.is-new .home-culture {
    padding-top: 5.8rem;
  }
}

.numbers {
  padding-top: 12.6rem;
}
.numbers .numbers-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem 4rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list {
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__icon {
    scale: 0.7;
  }
}
.numbers .numbers-list__graph {
  width: 100%;
  max-width: 47.4rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__graph {
    scale: 0.9;
  }
}
.numbers .numbers-list__circle {
  width: 27.6rem;
  height: 27.6rem;
  border-radius: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__circle {
    scale: 0.8;
  }
}
.numbers .numbers-list__number {
  color: #4285f4;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
.numbers .numbers-list__number-text {
  font-weight: 700;
  font-size: 3.4rem;
  line-height: 1.1764705882;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__number-text {
    font-size: 2.38rem;
  }
}
.numbers .numbers-list__number-value {
  font-weight: 500;
  font-size: 12rem;
  font-family: Yakuhanjp, "Roboto", sans-serif;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__number-value {
    font-size: 8.4rem;
  }
}
.numbers .numbers-list__number-value--slim {
  letter-spacing: -0.02em;
}
.numbers .numbers-list__number-unit {
  font-weight: 700;
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__number-unit {
    font-size: 2.38rem;
  }
}
.numbers .numbers-list__number-box {
  display: inline-block;
  translate: 0 -1.2rem;
  padding: 0.6rem 1.4rem 0.3rem;
  border: 0.4rem solid #4285f4;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__number-box {
    margin-top: 2rem;
    padding: 0.1rem 0.8rem 0.2rem;
    font-size: 1.2rem;
  }
}
.numbers .numbers-list__number-box span {
  margin-left: 0.4rem;
  font-weight: 500;
  font-size: 4rem;
  font-family: Yakuhanjp, "Roboto", sans-serif;
  letter-spacing: -0.016em;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__number-box span {
    font-size: 2.8rem;
  }
}
.numbers .numbers-list .numbers-list-numbers {
  line-height: 1;
}
.numbers .numbers-list .numbers-list-numbers__item {
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list .numbers-list-numbers__item {
    scale: 0.7;
  }
}
.numbers .numbers-list .numbers-list-numbers__label {
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list .numbers-list-numbers__label {
    font-size: 1.26rem;
  }
}
.numbers .numbers-list .numbers-list-numbers__value {
  color: #4285f4;
  font-weight: 500;
  font-size: 8rem;
  font-family: Yakuhanjp, "Roboto", sans-serif;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list .numbers-list-numbers__value {
    font-size: 5.6rem;
  }
}
.numbers .numbers-list .numbers-list-numbers__unit {
  color: #4285f4;
  font-weight: 700;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list .numbers-list-numbers__unit {
    font-size: 1.82rem;
  }
}
.numbers .numbers-list__content {
  display: flex;
  flex: 1;
  flex-direction: column;
}
.numbers .numbers-list__heading {
  position: relative;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.3076923077;
  letter-spacing: 0;
  text-align: center;
}
.numbers .numbers-list__heading small {
  position: absolute;
  top: -0.4rem;
  right: 0;
  translate: 0 -100%;
  font-size: 1.2rem;
  line-height: 1.5;
}
.numbers .numbers-list__heading-span {
  display: inline-block;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__heading-span {
    font-size: 1.12rem;
  }
}
.numbers .numbers-list__text {
  margin-top: 2.2rem;
  line-height: 2.125;
}
.numbers .numbers-list__note {
  margin-top: auto;
  padding-top: 2rem;
  font-size: 1.2rem;
  text-align: right;
}
.numbers .numbers-list__item {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 4rem 4rem 3rem;
  border-radius: 1.4rem;
  background-color: #f8f8f8;
  /*&:nth-of-type(6) {
      .numbers-list {
          &__icon {
              @include absolute($top: rem(180), $left: 50%);
              translate: -50% -50%;
              width: rem(74);
          }

          &__number {
              margin-top: rem(20);
          }

          &__heading {
              margin-top: rem(42);

              @include mq-down() {
                  margin-top: rem(20);
              }
          }
      }

      .numbers-list-numbers {
          &__item {
              &:nth-of-type(1) {
                  @include absolute($top: rem(210), $left: rem(450));
                  text-align: center;

                  @include mq-down() {
                      left: rem(250);
                  }

                  .numbers-list-numbers {
                      &__label {
                          font-size: rem(15);
                      }

                      &__text {
                          margin-top: rem(6);
                      }
                  }
              }

              &:nth-of-type(2) {
                  @include absolute($top: rem(190), $left: rem(50));
                  text-align: center;

                  @include mq-down() {
                      top: rem(20);
                      left: rem(0);
                  }

                  &::after {
                      @include mock(rem(76), rem(27));
                      @include absolute($top: rem(-4), $right: rem(-34));
                      translate: 0 -100%;
                      transform: skew(-35deg);
                      border-top: rem(2) dashed #4285f4;
                      border-left: rem(2) solid #4285f4;

                      @include mq-down() {
                          transform: skew(-35deg) scale(1, -1);
                          top: unset;
                          bottom: rem(-50);
                          right: unset;
                          left: rem(30);
                      }
                  }

                  .numbers-list-numbers {
                      &__label {
                          font-size: rem(15);
                      }

                      &__text {
                          margin-top: rem(4);
                      }

                      &__value {
                          font-size: rem(70);
                      }
                  }
              }

              &:nth-of-type(3) {
                  @include absolute($top: rem(60), $left: rem(40));
                  display: flex;
                  align-items: flex-end;
                  gap: 0 rem(4);

                  @include mq-down() {
                      // flex-direction: column;
                      top: rem(10);
                      transform: translateX(50%);
                      right: calc(50% - rem(20));
                  }

                  @include mq-up() {
                      &::after {
                          @include mock(rem(150), rem(31));
                          @include absolute($top: rem(16), $left: rem(90));
                          translate: 0 -100%;
                          transform: skew(-35deg);
                          border-top: rem(2) dashed #4285f4;
                          border-left: rem(2) solid #4285f4;

                          @include mq-down() {
                              @include mock(rem(140), rem(45));
                              top: rem(52);
                              left: unset;
                              right: rem(70);
                          }
                      }
                  }

                  .numbers-list-numbers {
                      &__label {
                          margin-bottom: rem(12);
                          font-size: rem(15);
                      }

                      &__value {
                          font-size: rem(70);
                      }

                      &__unit {
                          font-size: rem(18);
                      }
                  }
              }
          }
      }
  }*/
  /*&:nth-of-type(16) {
      .numbers-list {
          &__icon {
              @include centering(rem(107));
          }

          &__number {
              margin-top: rem(20);
          }

          &__heading {
              margin-top: rem(16);
          }
      }
  }*/
  /*&:nth-of-type(21) {
      @include mq-up() {
          @include centering-flex();
      }

      .numbers-list {
          &__icon {
              width: rem(88);

              @include mq-up() {
                  @include absolute($top: 50%, $left: rem(31));
                  translate: 0 -50%;
              }

              @include mq-down() {
                  margin: 0 auto;
              }
          }

          &__heading {
              @include mq-up() {
                  @include absolute($top: rem(24), $right: rem(40));
                  text-align: right;
              }

              @include mq-down() {
                  margin-top: rem(20);
              }
          }

          &__note {
              @include mq-up() {
                  @include absolute($bottom: rem(24), $right: rem(40));
                  text-align: right;
              }
          }
      }
  }*/
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item {
    padding: 4rem 1rem 3rem;
  }
}
.numbers .numbers-list__item:nth-of-type(1) .numbers-list__icon {
  width: 100%;
  max-width: 12.4rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(1) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(1) .numbers-list__heading {
  margin-top: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(2) .numbers-list__icon {
  width: 100%;
  max-width: 11.2rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(2) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(2) .numbers-list__heading {
  margin-top: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list__icon {
  position: absolute;
  top: 18rem;
  left: 50%;
  translate: -50% -50%;
  width: 7.1rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list__heading {
  margin-top: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 21rem;
  left: 46rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(1) {
    left: 25rem;
  }
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 20rem;
  left: 7rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(2) {
    left: -1rem;
  }
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__label {
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__value {
  font-size: 7rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3) {
  position: absolute;
  top: 11rem;
  left: 4rem;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3) {
    flex-direction: column;
    left: -0.5rem;
  }
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3)::after {
  display: block;
  width: 5.2rem;
  height: 0.2rem;
  content: "";
  position: absolute;
  right: 0.2rem;
  bottom: 1.8rem;
  translate: 100% 0;
  border-top: 0.2rem dashed #4285f4;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__label {
  margin-bottom: 0.7rem;
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__value {
  font-size: 4rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__unit {
  font-size: 1.8rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4) {
  position: absolute;
  top: 2.8rem;
  left: 6rem;
  display: flex;
  align-items: flex-end;
  gap: 0.8rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4) {
    flex-direction: column;
    left: 4rem;
  }
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4)::after {
  display: block;
  width: 8.5rem;
  height: 0.2rem;
  content: "";
  position: absolute;
  right: 0;
  bottom: 1.8rem;
  translate: 100% 0;
  border-top: 0.2rem dashed #4285f4;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__label {
  margin-bottom: 0.7rem;
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__value {
  font-size: 4rem;
}
.numbers .numbers-list__item:nth-of-type(3) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__unit {
  font-size: 1.8rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list__icon {
  position: absolute;
  top: 18rem;
  left: 50%;
  translate: -50% -50%;
  width: 11.4rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list__heading {
  margin-top: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 13rem;
  left: 46rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(1) {
    top: 21rem;
    left: 25rem;
  }
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__label {
  margin-bottom: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 13rem;
  left: 4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(2) {
    top: 5rem;
    left: 0;
  }
}
.numbers .numbers-list__item:nth-of-type(4) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list__icon {
  position: absolute;
  top: 18rem;
  left: 50%;
  display: flex;
  gap: 1.9rem;
  translate: -50% -50%;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list__icon img:nth-of-type(1) {
  width: 4.6rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list__icon img:nth-of-type(2) {
  width: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list__heading {
  margin-top: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 13rem;
  left: 46rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(1) {
    top: 21rem;
    left: 25rem;
  }
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__label {
  margin-bottom: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 13rem;
  left: 4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(2) {
    top: 21rem;
    left: 0;
  }
}
.numbers .numbers-list__item:nth-of-type(5) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list__icon {
  width: 100%;
  max-width: 10.2rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list__heading {
  margin-top: 5.2rem;
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers {
  display: flex;
  justify-content: center;
  gap: 5.9rem;
  position: relative;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers {
    gap: 0rem;
  }
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers::before {
  display: block;
  width: 0.2rem;
  height: 12.1rem;
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: #e2e2e2;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers::before {
    height: 8.47rem;
  }
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__item {
  text-align: center;
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__label {
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__label {
    font-size: 1.82rem;
  }
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__value {
  font-size: 11rem;
  letter-spacing: -0.04em;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__value {
    font-size: 7.7rem;
  }
}
.numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__unit {
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(6) .numbers-list-numbers__unit {
    font-size: 2.38rem;
  }
}
.numbers .numbers-list__item:nth-of-type(7) .numbers-list__icon {
  width: 100%;
  max-width: 10.8rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(7) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(7) .numbers-list__heading {
  margin-top: 1rem;
}
.numbers .numbers-list__item:nth-of-type(8) .numbers-list__icon {
  width: 100%;
  max-width: 10.8rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(8) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(8) .numbers-list__heading {
  margin-top: 2.8rem;
}
.numbers .numbers-list__item:nth-of-type(9) .numbers-list__icon {
  width: 100%;
  max-width: 7.7rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(9) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(9) .numbers-list__heading {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list__heading {
  margin-top: 2.8rem;
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 7rem;
  left: 17rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(1) {
    top: 5.5rem;
    left: 7.5rem;
  }
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 7.8rem;
  left: 30.5rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(2) {
    top: 6rem;
    left: 15.5rem;
  }
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(3) {
  position: absolute;
  top: 2.5rem;
  left: 43rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__item:nth-of-type(3) {
    top: 3rem;
    left: 23rem;
  }
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__value {
  font-size: 3.6rem;
}
.numbers .numbers-list__item:nth-of-type(10) .numbers-list-numbers__unit {
  font-size: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(11) .numbers-list__icon {
  width: 100%;
  max-width: 8.4rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(11) .numbers-list__number {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 1.2rem;
  margin-top: 0.4rem;
}
.numbers .numbers-list__item:nth-of-type(11) .numbers-list__number-value {
  translate: 0 1.6rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(11) .numbers-list__number-value {
    translate: 0 0.8rem;
  }
}
.numbers .numbers-list__item:nth-of-type(11) .numbers-list__heading {
  margin-top: 2.6rem;
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list__heading {
  margin-top: 2.8rem;
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 12rem;
  left: 16.5rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(1) {
    top: 9rem;
    left: 6.5rem;
  }
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 9.5rem;
  left: 29.5rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(2) {
    top: 7.5rem;
    left: 14.5rem;
  }
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(3) {
  position: absolute;
  top: 4rem;
  left: 42.5rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__item:nth-of-type(3) {
    top: 4.2rem;
    left: 22rem;
  }
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__value {
  font-size: 2.4rem;
}
.numbers .numbers-list__item:nth-of-type(12) .numbers-list-numbers__unit {
  font-size: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list__icon {
  position: absolute;
  top: 18rem;
  left: 50%;
  translate: -50% -50%;
  width: 7.1rem;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list__heading {
  margin-top: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item {
  text-align: center;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 15rem;
  left: 46rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(1) {
    top: 24rem;
    left: 21rem;
  }
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 24rem;
  left: 7rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(2) {
    left: -1rem;
  }
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(3) {
  position: absolute;
  top: 5rem;
  left: 2.5rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__item:nth-of-type(3) {
    top: 1rem;
    left: -1rem;
  }
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__text {
  margin-top: 0.6rem;
}
.numbers .numbers-list__item:nth-of-type(13) .numbers-list-numbers__value {
  font-size: 6rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list__icon {
  position: absolute;
  top: 18rem;
  left: 50%;
  translate: -50% -50%;
  width: 7.1rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list__heading {
  margin-top: 4.2rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(1) {
  position: absolute;
  top: 20rem;
  left: 44rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(1) {
    top: 25rem;
    left: 18rem;
  }
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(1) .numbers-list-numbers__value {
  font-size: 7.4rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(2) {
  position: absolute;
  top: 22rem;
  left: 3rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(2) {
    top: 26rem;
    left: -1rem;
  }
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__label {
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__text {
  margin-top: 0.8rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(2) .numbers-list-numbers__value {
  font-size: 6rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3) {
  position: absolute;
  top: 10rem;
  left: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3) {
    top: 4rem;
    left: -1rem;
  }
}
@media screen and (min-width: 769px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3)::after {
    display: block;
    width: 5.2rem;
    height: 0.2rem;
    content: "";
    position: absolute;
    right: 1.2rem;
    bottom: 1.8rem;
    translate: 100% 0;
    border-top: 0.2rem dashed #4285f4;
  }
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__label {
  margin-bottom: 0.7rem;
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__value {
  font-size: 4rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(3) .numbers-list-numbers__unit {
  font-size: 1.8rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4) {
  position: absolute;
  top: 1.5rem;
  left: 2rem;
  display: flex;
  align-items: flex-end;
  gap: 0 0.8rem;
}
@media screen and (max-width: 768px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4) {
    flex-direction: column;
    left: 7rem;
  }
}
@media screen and (min-width: 769px) {
  .numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4)::after {
    display: block;
    width: 5.2rem;
    height: 1.2rem;
    content: "";
    position: absolute;
    right: -0.8rem;
    bottom: 0.8rem;
    translate: 100% 0;
    transform: skew(35deg);
    border-top: 0.2rem dashed #4285f4;
    border-right: 0.2rem solid #4285f4;
  }
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__label {
  margin-bottom: 0.7rem;
  font-size: 1.5rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__value {
  font-size: 4rem;
}
.numbers .numbers-list__item:nth-of-type(14) .numbers-list-numbers__item:nth-of-type(4) .numbers-list-numbers__unit {
  font-size: 1.8rem;
}
.numbers .numbers-list__item:nth-of-type(15) .numbers-list__icon {
  width: 100%;
  max-width: 10.6rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(15) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(15) .numbers-list__heading {
  margin-top: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(16) .numbers-list__icon {
  width: 100%;
  max-width: 10.3rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(16) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(16) .numbers-list__heading {
  margin-top: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(17) {
  /*grid-row: 10 / 12;*/
}
.numbers .numbers-list__item:nth-of-type(17) .numbers-list__icon {
  width: 100%;
  max-width: 8.5rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(17) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(17) .numbers-list__heading {
  margin-top: 1.6rem;
}
.numbers .numbers-list__item:nth-of-type(18) {
  /*@include mq-up() {
      @include centering-flex();
  }*/
  /*.numbers-list {
      &__icon {
          width: rem(88);

          @include mq-up() {
              @include absolute($top: 50%, $left: rem(31));
              translate: 0 -50%;
          }

          @include mq-down() {
              margin: 0 auto;
          }
      }

      &__heading {
          @include mq-up() {
              @include absolute($top: rem(24), $right: rem(40));
              text-align: right;
          }

          @include mq-down() {
              margin-top: rem(20);
          }

          small {
              font-size: rem(12);
              line-height: 1.5;
              translate: 0;
              top: 100%;

              @include mq-down() {
                  position: relative;
                  display: block;
                  margin-top: 1em;
              }
          }
      }

      &__note {
          @include mq-up() {
              @include absolute($bottom: rem(24), $right: rem(40));
              text-align: right;
          }
      }
  }*/
}
.numbers .numbers-list__item:nth-of-type(18) .numbers-list__icon {
  width: 100%;
  max-width: 8.8rem;
  margin-left: auto;
  margin-right: auto;
}
.numbers .numbers-list__item:nth-of-type(18) .numbers-list__number {
  margin-top: 2rem;
}
.numbers .numbers-list__item:nth-of-type(18) .numbers-list__heading {
  margin-top: 1.6rem;
}

.open-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .open-introduction {
    padding-top: 5.8rem;
  }
}

.open-feature {
  padding-top: 10.4rem;
}
@media screen and (max-width: 768px) {
  .open-feature {
    padding-top: 5.2rem;
  }
}
.open-feature .component-column {
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .open-feature .component-column {
    margin-top: 2.1rem;
  }
}

.open-voice {
  padding-top: 10.2rem;
}
@media screen and (max-width: 768px) {
  .open-voice {
    padding-top: 5.1rem;
  }
}

.open-flow {
  padding-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .open-flow {
    padding-top: 5.6rem;
  }
}
.open-flow .open-flow-list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-list {
    margin-top: 2.1rem;
  }
}
.open-flow .open-flow-list__item {
  padding: 2.4rem 5rem;
  border: 0.4rem solid #f2f2f2;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-list__item {
    padding: 1.2rem 2.5rem;
  }
}
.open-flow .open-flow-list__item:nth-of-type(n + 2) {
  position: relative;
}
.open-flow .open-flow-list__item:nth-of-type(n + 2)::before {
  display: block;
  width: 6.7rem;
  height: 2rem;
  content: "";
  position: absolute;
  top: -3rem;
  left: 50%;
  translate: -50% -50%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--primary);
}
.open-flow .open-flow-list__heading {
  display: flex;
  gap: 1.7rem;
  font-weight: 700;
}
.open-flow .open-flow-list__heading-number {
  flex-shrink: 0;
  color: var(--primary);
  font-size: 4rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-list__heading-number {
    font-size: 3.2rem;
  }
}
.open-flow .open-flow-list__heading-text {
  margin-top: 0.6rem;
  font-size: 2.4rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-list__heading-text {
    font-size: 1.92rem;
    margin-top: 0;
  }
}
.open-flow .open-flow-list__text {
  margin-top: 1.2rem;
  line-height: 2.125;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-list__text {
    margin-top: 0.6rem;
  }
}
.open-flow .open-flow-footer {
  margin-top: 8.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-footer {
    margin-top: 4.3rem;
  }
}
.open-flow .open-flow-footer__text {
  color: var(--primary);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-footer__text {
    font-size: 2.08rem;
  }
}
.open-flow .open-flow-footer .component-button {
  margin-top: 0.6rem;
}
@media screen and (max-width: 768px) {
  .open-flow .open-flow-footer .component-button {
    margin-top: 2rem;
  }
}
.open-flow .component-index {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .open-flow .component-index {
    margin-top: 6rem;
  }
}

.person-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .person-introduction {
    padding-top: 5.8rem;
  }
}

.person-power {
  padding-top: 10.6rem;
}
@media screen and (max-width: 768px) {
  .person-power {
    padding-top: 5.3rem;
  }
}
.person-power .person-power-list {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list {
    gap: 5rem;
  }
}
.person-power .person-power-list__inner {
  display: flex;
  gap: 5rem;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__inner {
    flex-direction: column;
    gap: 2.5rem;
  }
}
.person-power .person-power-list__image {
  flex-shrink: 0;
  overflow: hidden;
  width: 63rem;
  border-radius: 1.4rem;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__image {
    width: 100%;
  }
}
.person-power .person-power-list__content {
  margin-top: -1rem;
}
.person-power .person-power-list__heading {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-weight: 700;
  line-height: 1;
}
.person-power .person-power-list__heading-number {
  color: var(--primary);
  font-size: 8rem;
  font-family: Yakuhanjp, "Jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__heading-number {
    font-size: 4rem;
  }
}
.person-power .person-power-list__heading-text {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__heading-text {
    font-size: 2.1rem;
  }
}
.person-power .person-power-list__subheading {
  margin-top: 1.6rem;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__subheading {
    margin-top: 0.8rem;
  }
}
.person-power .person-power-list__text {
  margin-top: 1.8rem;
  line-height: 2.125;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list__text {
    margin-top: 0.9rem;
  }
}
.person-power .person-power-list .person-power-list-box {
  display: flex;
  align-items: center;
  gap: 1rem 5.6rem;
  margin-top: 4rem;
  padding: 1.8rem 5.6rem;
  border: 0.4rem solid #f4f4f4;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .person-power .person-power-list .person-power-list-box {
    flex-direction: column;
    margin-top: 2rem;
    padding: 0.9rem 2.8rem;
  }
}
.person-power .person-power-list .person-power-list-box__heading {
  flex-shrink: 0;
  color: var(--primary);
  font-size: 2rem;
}
.person-power .person-power-list .person-power-list-box__subheading {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.8888888889;
}
.person-power .person-power-list .person-power-list-box__text {
  line-height: 2.125;
}
.person-power .component-index {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .person-power .component-index {
    margin-top: 6rem;
  }
}

.policy--lead {
  font-size: 2rem;
  font-weight: bold;
  margin-block: 12.4rem 2em;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .policy--lead {
    font-size: 1.6rem;
    margin-block: 6.2rem 1em;
  }
}
.policy-item {
  font-size: 1.8rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .policy-item {
    font-size: 1.6rem;
  }
}
.policy-item + .policy-item {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .policy-item + .policy-item {
    margin-top: 2.5rem;
  }
}
.policy-item__inner h2 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.6666666667;
  letter-spacing: 0.12em;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  .policy-item__inner h2 {
    font-size: 2rem;
  }
}
.policy-item__inner p {
  margin-bottom: 1em;
}
.policy-item__inner ol {
  counter-reset: listnum 0;
  list-style: none;
}
.policy-item__inner ol > li {
  padding-left: 1em;
  text-indent: -1em;
}
.policy-item__inner ol > li + li {
  margin-top: 0.5em;
}
.policy-item__inner ol > li::before {
  counter-increment: listnum;
  content: counter(listnum) ".";
}
.policy-item__inner ol > li > ul > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.policy-item__inner ol > li > ul > li::before {
  content: "・";
  margin-right: 0.25em;
}
.policy-item__footer {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .policy-item__footer {
    justify-content: flex-start;
  }
}
.policy-item__footer .policy-item__inner {
  width: -moz-fit-content;
  width: fit-content;
}
.policy-item__footer .policy-item__inner address {
  font-style: normal;
}
.reason {
  margin-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .reason {
    margin-top: 5.6rem;
  }
}
@media screen and (max-width: 768px) {
  .reason .component-box {
    gap: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .reason .component-box__item {
    width: calc((100% - 1.6rem) / 2);
    padding-inline: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .reason .component-box__header {
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .reason:has(.component-box__item) .component-box__heading {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}

.welfare-introduction {
  padding-top: 11.6rem;
}
@media screen and (max-width: 768px) {
  .welfare-introduction {
    padding-top: 5.8rem;
  }
}

.workstyle-content {
  padding-top: 12rem;
}
@media screen and (max-width: 768px) {
  .workstyle-content {
    padding-top: 6rem;
  }
}
.workstyle-content .workstyle-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 2.5rem;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .workstyle-content .workstyle-list {
    gap: 1rem;
    margin-top: 1.5rem;
  }
}
@media screen and (min-width: 769px) {
  .workstyle-content .workstyle-list:not(:has(:nth-child(3))) .workstyle-list__item {
    width: calc(50% - 1.25rem) !important;
  }
}
.workstyle-content .workstyle-list__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(33.333333% - 1.6666666rem);
  height: 7rem;
  position: relative;
  border: 0.4rem solid #f4f4f4;
  border-radius: 0.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .workstyle-content .workstyle-list__item {
    width: 100%;
    height: 5.6rem;
  }
}
.workstyle-content .workstyle-list__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 2rem;
  width: 4.8rem;
  height: 3.8rem;
  translate: 0 -50%;
}
@media screen and (max-width: 768px) {
  .workstyle-content .workstyle-list__icon {
    width: 3.84rem;
    height: 3.04rem;
  }
}
.workstyle-content .workstyle-list__icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.workstyle-diversity {
  padding-top: 11.4rem;
}
@media screen and (max-width: 768px) {
  .workstyle-diversity {
    padding-top: 5.7rem;
  }
}
.workstyle-diversity .component-tab {
  margin-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .workstyle-diversity .component-tab {
    margin-top: 2.4rem;
  }
}
.workstyle-diversity .component-contents {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .workstyle-diversity .component-contents {
    margin-top: 2.5rem;
  }
}

.workstyle-facility {
  padding-top: 11.4rem;
}
@media screen and (max-width: 768px) {
  .workstyle-facility {
    padding-top: 5.7rem;
  }
}
.workstyle-facility .workstyle-facility-images {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .workstyle-facility .workstyle-facility-images {
    gap: 1rem;
    margin-top: 2.5rem;
  }
}
.workstyle-facility .workstyle-facility-images__item {
  overflow: hidden;
  width: calc(50% - 1rem);
  border-radius: 1rem;
}
.workstyle-facility .component-index {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .workstyle-facility .component-index {
    margin-top: 6rem;
  }
}

.worklife-welfare {
  padding-top: 10.6rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare {
    padding-top: 4.8rem;
  }
}
.worklife-welfare .component-contents {
  margin-top: 7.8rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare .component-contents {
    margin-top: 3.2rem;
  }
}
.worklife-welfare .component-data {
  margin-top: 6.5rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare .component-data {
    margin-top: 3.2rem;
  }
}
.worklife-welfare .component-column,
.worklife-welfare .component-index {
  margin-top: 7rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare .component-column,
  .worklife-welfare .component-index {
    margin-top: 4.8rem;
  }
}
.worklife-welfare-contents__item + .worklife-welfare-contents__item {
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare-contents__item + .worklife-welfare-contents__item {
    margin-top: 3.6rem;
  }
}
.worklife-welfare-anchor {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .worklife-welfare-anchor {
    flex-direction: column;
    margin-top: 3.6rem;
  }
}
.worklife-welfare-anchor-button {
  width: calc(16.6666666667% - 1.6rem);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .worklife-welfare-anchor-button {
    width: 100%;
  }
}
.worklife-welfare-anchor-button a {
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
  border: 2px solid #333;
  border-radius: 0.8rem;
  padding: 0.75em;
  display: grid;
  place-items: center;
  line-height: 1.5;
  width: 100%;
  height: 100%;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .worklife-welfare-anchor-button a {
    font-size: 1.4rem;
    height: auto;
    width: 32rem;
    height: auto;
  }
}
.worklife-welfare-anchor-button a::after {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  translate: 0 -50%;
  transform: rotate(90deg);
  -webkit-mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
          mask: url("../../../saiyou/assets/img/common/arrow.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .worklife-welfare-anchor-button a::after {
    width: 1.28rem;
    height: 1.28rem;
    right: 2.56rem;
  }
}
@media (hover: hover) {
  .worklife-welfare-anchor-button a:hover::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button a:active::after {
    animation: arrow-down 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 1;
  }
}
.worklife-welfare-anchor-button:nth-of-type(1) a {
  border-color: #fb72b6;
  color: #fb72b6;
}
.worklife-welfare-anchor-button:nth-of-type(1) a::after {
  background-color: #fb72b6;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(1) a:hover {
    background-color: #fb72b6;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(1) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(1) a:active {
    background-color: #fb72b6;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(1) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare-anchor-button:nth-of-type(2) a {
  border-color: #0b96d7;
  color: #0b96d7;
}
.worklife-welfare-anchor-button:nth-of-type(2) a::after {
  background-color: #0b96d7;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(2) a:hover {
    background-color: #0b96d7;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(2) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(2) a:active {
    background-color: #0b96d7;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(2) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare-anchor-button:nth-of-type(3) a {
  border-color: #09c895;
  color: #09c895;
}
.worklife-welfare-anchor-button:nth-of-type(3) a::after {
  background-color: #09c895;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(3) a:hover {
    background-color: #09c895;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(3) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(3) a:active {
    background-color: #09c895;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(3) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare-anchor-button:nth-of-type(4) a {
  border-color: #d19a24;
  color: #d19a24;
}
.worklife-welfare-anchor-button:nth-of-type(4) a::after {
  background-color: #d19a24;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(4) a:hover {
    background-color: #d19a24;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(4) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(4) a:active {
    background-color: #d19a24;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(4) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare-anchor-button:nth-of-type(5) a {
  border-color: #a45ec6;
  color: #a45ec6;
}
.worklife-welfare-anchor-button:nth-of-type(5) a::after {
  background-color: #a45ec6;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(5) a:hover {
    background-color: #a45ec6;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(5) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(5) a:active {
    background-color: #a45ec6;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(5) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare-anchor-button:nth-of-type(6) a {
  border-color: #e74c3c;
  color: #e74c3c;
}
.worklife-welfare-anchor-button:nth-of-type(6) a::after {
  background-color: #e74c3c;
}
@media (hover: hover) {
  .worklife-welfare-anchor-button:nth-of-type(6) a:hover {
    background-color: #e74c3c;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(6) a:hover::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .worklife-welfare-anchor-button:nth-of-type(6) a:active {
    background-color: #e74c3c;
    color: #fff;
  }
  .worklife-welfare-anchor-button:nth-of-type(6) a:active::after {
    background-color: #fff;
  }
}
.worklife-welfare#welfare01 .section__heading--line::before {
  background-color: #fb72b6;
}
.worklife-welfare#welfare01 .component-data__text {
  color: #fb72b6;
}
.worklife-welfare#welfare02 .section__heading--line::before {
  background-color: #0b96d7;
}
.worklife-welfare#welfare02 .component-data__text {
  color: #0b96d7;
}
.worklife-welfare#welfare03 .section__heading--line::before {
  background-color: #09c895;
}
.worklife-welfare#welfare03 .component-data__text {
  color: #09c895;
}
.worklife-welfare#welfare04 .section__heading--line::before {
  background-color: #d19a24;
}
.worklife-welfare#welfare04 .component-data__text {
  color: #d19a24;
}
.worklife-welfare#welfare05 .section__heading--line::before {
  background-color: #a45ec6;
}
.worklife-welfare#welfare05 .component-data__text {
  color: #a45ec6;
}
.worklife-welfare#welfare06 .section__heading--line::before {
  background-color: #e74c3c;
}
.worklife-welfare#welfare06 .component-data__text {
  color: #e74c3c;
}

.workstyle-introduction {
  padding-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .workstyle-introduction {
    padding-top: 3.6rem;
  }
}

.workstyle-facility-button {
  margin: 6rem auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .workstyle-facility-button {
    margin: 3rem auto;
  }
}

.workstyle-feature {
  padding-top: 11rem;
}
@media screen and (max-width: 768px) {
  .workstyle-feature {
    padding-top: 5.5rem;
  }
}
.workstyle-feature .component-button + .component-button {
  margin-top: 2.4rem !important;
}
.workstyle-design {
  padding-top: 11rem;
}
@media screen and (max-width: 768px) {
  .workstyle-design {
    padding-top: 5.5rem;
  }
}
.workstyle-design__wrapper {
  display: flex;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .workstyle-design__wrapper {
    flex-direction: column;
    margin-top: 2rem;
  }
}
.workstyle-design__ttl {
  font-size: 2.4rem;
  line-height: 3.6rem;
  font-weight: 700;
  width: 90%;
  margin-inline: auto;
  color: #fff;
  margin-bottom: 3rem;
  border-radius: 0.6rem;
  padding: 1rem 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .workstyle-design__ttl {
    font-size: 1.2rem;
    line-height: 1.8rem;
    margin-bottom: 1.5rem;
  }
}
.workstyle-design__lists {
  width: 33.3333333333%;
}
@media screen and (max-width: 768px) {
  .workstyle-design__lists {
    width: 100%;
    margin-bottom: 3rem;
  }
}
.workstyle-design__lists:not(:nth-of-type(1)) .workstyle-design__list {
  border-left: solid 0.1rem #dedede;
}
@media screen and (max-width: 768px) {
  .workstyle-design__lists:not(:nth-of-type(1)) .workstyle-design__list {
    border-left: none;
  }
}
@media screen and (max-width: 768px) {
  .workstyle-design__lists:not(:last-of-type) .workstyle-design__list {
    border-bottom: solid 0.1rem #dedede;
  }
}
.workstyle-design__list {
  padding: 3rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media screen and (max-width: 768px) {
  .workstyle-design__list {
    padding: 1.5rem 1rem;
    gap: 3.6rem;
  }
}
.workstyle-design__list figure {
  width: 9.6rem;
  height: 9.6rem;
  margin: 0 auto 2rem auto;
}
@media screen and (max-width: 768px) {
  .workstyle-design__list figure {
    width: 4.8rem;
    height: 4.8rem;
  }
}
.workstyle-design__list figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.workstyle-design__list li {
  height: 20rem;
}
@media screen and (max-width: 768px) {
  .workstyle-design__list li {
    height: auto;
  }
}
.workstyle-design__list li > p {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .workstyle-design__list li > p {
    font-size: 1.4rem;
    margin-bottom: 0.5rem;
  }
}

.is-new .workstyle-design__ttl {
  background-color: #0bd7a0;
}

.is-career .workstyle-design__ttl {
  background-color: #ff8a50;
}