@charset "UTF-8";
/**
 * Swiper 11.1.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 30, 2024
 */
/* FONT_START */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-lock {
  display: none;
}
/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}
/* Navigation font end */
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}
.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
/* Zoom container styles start */
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
/* Zoom container styles end */
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube {
  overflow: visible;
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
/* Cube slide shadows start */
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* Cube slide shadows end */
.swiper-flip {
  overflow: visible;
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
/* Flip slide shadows start */
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* Flip slide shadows end */
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}
.swiper-cards {
  overflow: visible;
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}
/* lenis */
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: 10px;
}
@media screen and (max-width: 1600px) {
  html {
    font-size: 0.625vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.6041666667vw;
  }
}
:root {
  --remV: 10px;
}
@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: 1.75;
  letter-spacing: 0.08em;
  font-family: "Figtree", 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;
  }
}
a {
  color: #333;
  text-decoration: none;
}
em {
  font-style: normal;
}
img,
iframe {
  display: block;
  width: 100%;
}
button {
  padding: 0;
  border: none;
  touch-action: manipulation;
  cursor: pointer;
}
.layout-container {
  padding-top: calc(11 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-container {
    overflow: hidden;
    padding-top: 6rem;
  }
}
.layout-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 999;
}
.layout-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: calc(11 * var(--remV));
  padding-right: calc(4.4 * var(--remV));
  padding-left: calc(4.4 * var(--remV));
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .layout-header__inner {
    height: 6rem;
    padding-right: 2rem;
    padding-left: 2.4rem;
  }
}
.layout-header .header-logo {
  width: calc(22.7 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-logo {
    width: 12rem;
  }
}
.layout-header .header-nav {
  display: flex;
  align-items: center;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav {
    position: absolute;
    top: 6rem;
    right: 0;
    left: 0;
    flex-direction: column;
    align-items: flex-start;
    translate: 100% 0;
    overflow: auto;
    height: calc(100dvh - 6rem);
    padding: 1.6rem 2rem;
    border-top: 1px solid #eee;
    background-color: #fff;
    transition: translate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.layout-header .header-nav .header-nav-global {
  display: flex;
  align-items: center;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global {
    width: 100%;
    height: auto;
    align-items: flex-start;
    flex-direction: column;
  }
}
.layout-header .header-nav .header-nav-global__item {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global__item {
    width: 100%;
    height: auto;
  }
}
.layout-header .header-nav .header-nav-global__button {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global__button {
    width: 100%;
    height: auto;
  }
}
.layout-header .header-nav .header-nav-global__button a,
.layout-header .header-nav .header-nav-global__button button {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 calc(1.6 * var(--remV));
  background: none;
  font-weight: 500;
  font-size: calc(1.7 * var(--remV));
  letter-spacing: 0.05em;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global__button a,
  .layout-header .header-nav .header-nav-global__button button {
    width: 100%;
    padding: 1.6rem;
    border-bottom: 1px solid #eee;
    font-size: 1.7rem;
  }
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global__button a:hover,
  .layout-header .header-nav .header-nav-global__button button:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global__button a:active,
  .layout-header .header-nav .header-nav-global__button button:active {
    color: #0599d9;
  }
}
.layout-header .header-nav .header-nav-global__button button {
  display: flex;
  align-items: center;
  gap: calc(0.6 * var(--remV));
  position: relative;
  height: 100%;
  padding: 0 calc(1.6 * var(--remV));
  background: none;
  color: #333;
  font-weight: 500;
  font-size: calc(1.7 * var(--remV));
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global__button button {
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 0.6rem;
    padding: 1.6rem;
    font-size: 1.7rem;
  }
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global__button button:hover::before {
    translate: 0 40%;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global__button button:active::before {
    translate: 0 40%;
  }
}
.layout-header .header-nav .header-nav-global__button button::before {
  display: block;
  width: calc(1.5 * var(--remV));
  height: calc(0.8 * var(--remV));
  content: "";
  margin-top: calc(0.2 * var(--remV));
  background: url("/assets/img/common/arw_round.svg") no-repeat center/contain;
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global__button button::before {
    display: block;
    width: 1.5rem;
    height: 0.8rem;
    content: "";
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu {
  position: absolute;
  top: calc(11 * var(--remV));
  right: 0;
  left: 0;
  z-index: -1;
  translate: 0 -100%;
  background-color: #eefaff;
  transition: translate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu {
    display: grid;
    grid-template-rows: 0fr;
    position: static;
    translate: 0;
    background: none;
    transition: grid-template-rows 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu.is-clicked {
  translate: 0;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu.is-clicked {
    grid-template-rows: 1fr;
  }
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__wrapper {
    overflow: hidden;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__inner {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: calc(6 * var(--remV)) 0;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__inner {
    padding: 3rem 2rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__head {
  display: flex;
  align-items: center;
  gap: calc(4 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__head {
    flex-direction: column;
    align-items: flex-start;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__content {
  width: calc(34 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__content {
    width: 100%;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__text {
  display: flex;
  gap: calc(1.5 * var(--remV));
  color: #0599d9;
  font-weight: 700;
  font-size: calc(5 * var(--remV));
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__text {
    gap: 1.5rem;
    font-size: 5rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__text .component-logo-blue::before {
  width: calc(2.4 * var(--remV));
  height: calc(2.4 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu__text span {
  margin-top: calc(-0.6 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__text span {
    margin-top: -0.8rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__link {
  display: inline-flex;
  align-items: center;
  gap: calc(1 * var(--remV));
  color: #0599d9;
  font-weight: 700;
  font-size: calc(1.8 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__link {
    gap: 1rem;
    font-size: 1.8rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__link--blank::after {
  display: block;
  width: calc(1.7 * var(--remV));
  height: calc(1.6 * var(--remV));
  content: "";
  background-color: #0599d9;
  mask: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__link--blank::after {
    width: 1.7rem;
    height: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__button {
    width: 100%;
    margin-top: 1.6rem !important;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__button a,
.layout-header .header-nav .header-nav-global .header-magemenu__button span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: calc(20 * var(--remV));
  height: calc(3.6 * var(--remV));
  gap: 1rem;
  border: calc(0.2 * var(--remV)) solid #0599d9;
  border-radius: calc(3.6 * var(--remV));
  color: #0599d9;
  font-weight: 700;
  font-size: calc(1.6 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__button a,
  .layout-header .header-nav .header-nav-global .header-magemenu__button span {
    width: 100%;
    height: 3.6rem;
    border-width: 0.2rem;
    border-radius: 3.6rem;
    font-size: 1.6rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__button a::after,
.layout-header .header-nav .header-nav-global .header-magemenu__button span::after {
  display: block;
  width: calc(1.4 * var(--remV));
  height: calc(0.9 * var(--remV));
  content: "";
  background: url("/assets/img/common/arw_button.svg") no-repeat center/contain;
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu__button a::after,
  .layout-header .header-nav .header-nav-global .header-magemenu__button span::after {
    display: block;
    width: 1.4rem;
    height: 0.9rem;
    content: "";
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__button a {
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global .header-magemenu__button a:hover {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu__button a:hover::after {
    translate: 50% 0;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global .header-magemenu__button a:active {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu__button a:active::after {
    translate: 50% 0;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__button--wide span {
  width: 80%;
}
.layout-header .header-nav .header-nav-global .header-magemenu a.hover-arrow .header-magemenu__button span {
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global .header-magemenu a.hover-arrow:hover .header-magemenu__button span {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu a.hover-arrow:hover .header-magemenu__button span::after {
    translate: 50% 0;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global .header-magemenu a.hover-arrow:active .header-magemenu__button span {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu a.hover-arrow:active .header-magemenu__button span::after {
    translate: 50% 0;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__image {
  margin-top: calc(1.4 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-company {
  display: flex;
  flex-wrap: wrap;
  gap: calc(3 * var(--remV));
  margin-top: calc(2 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-company {
    flex-direction: column;
    gap: 1.5rem;
    margin-top: 2rem;
    padding: 1rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-company__item {
  width: calc(25% - calc(2.4 * var(--remV)));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-company__item {
    width: 100%;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-company__item a {
  display: flex;
  flex-direction: column;
  gap: calc(1.5 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business {
  display: flex;
  justify-content: center;
  flex: 1;
  flex-direction: column;
  gap: calc(3 * var(--remV));
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business {
    padding: 1rem;
    line-height: 2;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business__item {
  display: flex;
  flex-direction: column;
  gap: calc(2.5 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub {
  display: flex;
  flex-direction: column;
  gap: calc(2.5 * var(--remV));
  padding-left: calc(4 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub__item {
  display: flex;
  flex-direction: column;
  gap: calc(1.5 * var(--remV));
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub__text a {
  color: #0599d9;
  font-weight: 700;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub__text a:hover {
    opacity: 0.5;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub__text a:active {
    opacity: 0.5;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links {
  display: flex;
  flex-wrap: wrap;
  gap: calc(1 * var(--remV)) calc(3 * var(--remV));
  padding-left: calc(2 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links {
    flex-direction: column;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a {
  display: flex;
  align-items: center;
  gap: calc(0.4 * var(--remV));
  color: #0599d9;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a {
    gap: 0.4rem;
  }
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a:hover {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a:hover::before {
    translate: 50% 0;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a:active {
    opacity: 0.5;
  }
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a:active::before {
    translate: 50% 0;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a::before {
  display: block;
  width: calc(0.7 * var(--remV));
  height: calc(1 * var(--remV));
  content: "";
  background: url("/assets/img/common/arw_line.svg") no-repeat center/contain;
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item a::before {
    display: block;
    width: 0.7rem;
    height: 1rem;
    content: "";
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item--blank a::after {
  display: block;
  width: calc(1.3 * var(--remV));
  height: calc(1.3 * var(--remV));
  content: "";
  background-color: #0599d9;
  mask: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu .header-magemenu-business .header-magemenu-business-sub .header-magemenu-business-links__item--blank a::after {
    width: 1.3rem;
    height: 1.3rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__close {
  position: absolute;
  top: calc(1 * var(--remV));
  right: 0;
}
.layout-header .header-nav .header-nav-global .header-magemenu__close button {
  width: calc(4 * var(--remV));
  height: calc(4 * var(--remV));
  border-radius: 100%;
  position: relative;
  border: calc(0.2 * var(--remV)) solid #0599d9;
  background-color: #fff;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-global .header-magemenu__close button:hover {
    opacity: 0.5;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-global .header-magemenu__close button:active {
    opacity: 0.5;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu__close button::before, .layout-header .header-nav .header-nav-global .header-magemenu__close button::after {
  display: block;
  width: calc(2.2 * var(--remV));
  height: calc(0.2 * var(--remV));
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-color: #0599d9;
}
.layout-header .header-nav .header-nav-global .header-magemenu__close button::before {
  rotate: 45deg;
}
.layout-header .header-nav .header-nav-global .header-magemenu__close button::after {
  rotate: -45deg;
}
.layout-header .header-nav .header-nav-global .header-magemenu--business .header-magemenu__inner {
  display: flex;
  gap: calc(7 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-global .header-magemenu--business .header-magemenu__inner {
    flex-direction: column;
    gap: 2rem;
  }
}
.layout-header .header-nav .header-nav-global .header-magemenu--business .header-magemenu__button {
  margin-top: calc(2 * var(--remV));
}
.layout-header .header-nav .header-nav-button {
  display: flex;
  gap: calc(2 * var(--remV));
  margin-left: calc(5 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-button {
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    margin-top: 4rem;
    margin-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-button__item {
    width: 100%;
  }
}
.layout-header .header-nav .header-nav-button__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(19 * var(--remV));
  height: calc(5 * var(--remV));
  gap: calc(0.8 * var(--remV));
  border: 0.1rem solid #0599d9;
  border-radius: calc(2.5 * var(--remV));
  background-color: #0599d9;
  color: #fff;
  font-weight: 500;
  font-size: calc(1.6 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-button__item a {
    width: 100%;
    height: 5rem;
    gap: 0.8rem;
    border-radius: 2.5rem;
    font-size: 1.6rem;
  }
}
.layout-header .header-nav .header-nav-button__item a::before {
  background-color: #fff;
  mask: no-repeat center/contain;
}
.layout-header .header-nav .header-nav-button__item:nth-of-type(1) a::before {
  display: block;
  width: calc(1.9 * var(--remV));
  height: calc(1.6 * var(--remV));
  content: "";
  mask-image: url("/assets/img/common/icn_download.svg");
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-button__item:nth-of-type(1) a::before {
    display: block;
    width: 1.9rem;
    height: 1.6rem;
    content: "";
  }
}
.layout-header .header-nav .header-nav-button__item:nth-of-type(2) a::before {
  display: block;
  width: calc(1.8 * var(--remV));
  height: calc(1.5 * var(--remV));
  content: "";
  mask-image: url("/assets/img/common/icn_mail.svg");
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-button__item:nth-of-type(2) a::before {
    display: block;
    width: 1.8rem;
    height: 1.5rem;
    content: "";
  }
}
.layout-header .header-nav .header-nav-language {
  display: flex;
  margin-left: calc(3.4 * var(--remV));
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav .header-nav-language {
    justify-content: center;
    width: 100%;
    margin-top: 4rem;
    margin-left: 0;
  }
}
.layout-header .header-nav .header-nav-language__item:nth-of-type(n + 2)::before {
  margin: 0 calc(0.8 * var(--remV));
  content: "/";
}
.layout-header .header-nav .header-nav-language__item a {
  opacity: 0.5;
  background: none;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .layout-header .header-nav .header-nav-language__item a:hover {
    opacity: 1;
    color: #0599d9;
  }
}
@media (hover: none) {
  .layout-header .header-nav .header-nav-language__item a:active {
    opacity: 1;
    color: #0599d9;
  }
}
.layout-header .header-nav .header-nav-language__item a.is-active {
  opacity: 1;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav--en {
    display: contents;
  }
}
@media screen and (max-width: 768px) {
  .layout-header .header-nav--en .header-nav-language {
    justify-content: flex-end;
    margin-top: 0;
  }
}
.layout-header .header-hamburger {
  width: 3.2rem;
  height: 2.2rem;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  background: none;
}
.layout-header .header-hamburger span {
  width: 3.2rem;
  height: 0.2rem;
  position: absolute;
  left: calc(50% - 1.6rem);
  display: block;
  background-color: #0599d9;
  will-change: opacity, translate;
}
.layout-header .header-hamburger span:nth-of-type(1), .layout-header .header-hamburger span:nth-of-type(2), .layout-header .header-hamburger span:nth-of-type(3) {
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.layout-header .header-hamburger span:nth-of-type(1) {
  top: 2rem;
}
.layout-header .header-hamburger span:nth-of-type(2) {
  top: calc(50% - 0.1rem);
}
.layout-header .header-hamburger span:nth-of-type(3) {
  bottom: 2rem;
}
.layout-header .header-hamburger span:nth-of-type(4), .layout-header .header-hamburger span:nth-of-type(5) {
  top: calc(50% - 0.1rem);
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.layout-header .header-hamburger span:nth-of-type(4) {
  translate: -4rem -4rem;
  rotate: 45deg;
}
.layout-header .header-hamburger span:nth-of-type(5) {
  translate: 4rem -4rem;
  rotate: -45deg;
}
.layout-footer .footer-head {
  padding: 9rem 0;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head {
    padding: 4rem 3rem;
  }
}
.layout-footer .footer-head .footer-nav {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav {
    flex-direction: column;
  }
}
@media (hover: hover) {
  .layout-footer .footer-head .footer-nav a:hover {
    text-decoration: underline;
  }
}
@media (hover: none) {
  .layout-footer .footer-head .footer-nav a:active {
    text-decoration: underline;
  }
}
.layout-footer .footer-head .footer-nav__heading {
  color: #111;
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav__heading {
    font-size: 1.4rem;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-search,
.layout-footer .footer-head .footer-nav .footer-nav-global {
  display: flex;
}
.layout-footer .footer-head .footer-nav .footer-nav-search {
  gap: 9rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-search {
    gap: 4rem;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub {
  display: flex;
  gap: 2rem 5rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub {
    flex-direction: column;
    width: 100%;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub--column {
  flex-direction: column;
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding-left: 0.2rem;
  color: #666;
  font-weight: 700;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub__heading {
    font-size: 1.2rem;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub__heading::before {
  display: block;
  width: 1rem;
  height: 1px;
  content: "";
  background-color: #666;
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub__heading:nth-of-type(n + 2) {
  margin-top: 1rem;
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub .footer-search-link {
  margin-top: 0.4rem;
  padding-left: 1.8rem;
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub .footer-search-link__item {
  line-height: 1.7;
}
.layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub .footer-search-link__item a {
  color: #666;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-search .footer-search-sub .footer-search-link__item a {
    font-size: 1.1rem;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-global {
  gap: 9rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-global {
    flex-wrap: wrap;
    gap: 3rem 4rem;
  }
}
.layout-footer .footer-head .footer-nav .footer-nav-global__item .footer-global-sub__item {
  line-height: 1.9;
}
.layout-footer .footer-head .footer-nav .footer-nav-global__item .footer-global-sub__item a {
  color: #333;
  font-weight: 700;
}
.layout-footer .footer-head .footer-nav .footer-nav-global__item:has(.footer-nav__heading) .footer-global-sub {
  margin-top: 0.6rem;
}
.layout-footer .footer-head .footer-nav .footer-nav-global__item:has(.footer-nav__heading) .footer-global-sub__item a {
  color: #666;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-head .footer-nav .footer-nav-global__item:nth-of-type(n + 2) {
    width: calc(50% - 2rem);
  }
}
.layout-footer .footer-foot {
  padding: 4rem 0 2rem;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-foot {
    padding: 3rem 0 3rem;
  }
}
.layout-footer .footer-foot .footer-logo {
  width: 100%;
  max-width: 24.8rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-foot .footer-logo {
    max-width: 19.3rem;
  }
}
.layout-footer .footer-foot .footer-copy {
  margin-top: 2.5rem;
  color: #666;
  font-size: 1.2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-foot .footer-copy {
    font-size: 1.1rem;
  }
}
.layout-footer .footer-totop {
  position: fixed;
  right: 5rem;
  bottom: 1rem;
  z-index: 9;
  rotate: 90deg;
  transform-origin: top right;
}
@media screen and (max-width: 768px) {
  .layout-footer .footer-totop {
    right: 0.2rem;
    bottom: -1rem;
  }
}
.layout-footer .footer-totop a {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  color: #0599d9;
  font-size: 1.4rem;
  font-weight: 700;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  letter-spacing: 0.1em;
}
@media (hover: hover) {
  .layout-footer .footer-totop a:hover::before {
    animation: line-draw 1s cubic-bezier(0.23, 1, 0.32, 1) forwards;
  }
}
@media (hover: none) {
  .layout-footer .footer-totop a:active::before {
    animation: line-draw 1s cubic-bezier(0.23, 1, 0.32, 1) forwards;
  }
}
.layout-footer .footer-totop a::before {
  display: block;
  width: 6rem;
  height: 1px;
  content: "";
  background-color: #0599d9;
}
@keyframes line-draw {
  0% {
    scale: 1;
    transform-origin: center left;
  }
  50% {
    scale: 0 1;
    transform-origin: center left;
  }
  50.001% {
    scale: 0 1;
    transform-origin: center right;
  }
  100% {
    scale: 1;
    transform-origin: center right;
  }
}
body.on-hamburger {
  overflow: hidden;
}
body.on-hamburger .header-nav {
  translate: 0;
}
body.on-hamburger .header-hamburger span:nth-of-type(1), body.on-hamburger .header-hamburger span:nth-of-type(2), body.on-hamburger .header-hamburger span:nth-of-type(3) {
  opacity: 0;
  transition: translate 0.18s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
body.on-hamburger .header-hamburger span:nth-of-type(1) {
  translate: -200%;
}
body.on-hamburger .header-hamburger span:nth-of-type(2) {
  translate: 200%;
  transition-delay: 0.04s;
}
body.on-hamburger .header-hamburger span:nth-of-type(3) {
  translate: -200%;
  transition-delay: 0.06s;
}
body.on-hamburger .header-hamburger span:nth-of-type(4), body.on-hamburger .header-hamburger span:nth-of-type(5) {
  translate: 0;
  opacity: 1;
  transition: translate 0.22s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-delay: 0.18s;
}
body.on-hamburger .header-hamburger span:nth-of-type(5) {
  transition-delay: 0.22s;
}
.article__inner,
.section__inner,
.aside__inner,
.nav__inner {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .article__inner,
  .section__inner,
  .aside__inner,
  .nav__inner {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.home-section__inner {
  width: 100%;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .home-section__inner {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.component-logo-white::before,
.component-logo-blue::before {
  display: block;
  width: 3rem;
  height: 3rem;
  content: "";
  background: no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-logo-white::before,
  .component-logo-blue::before {
    width: 2rem;
    height: 2rem;
  }
}
.component-logo-white::before {
  background-image: url("/assets/img/common/logo_white.svg");
}
.component-logo-blue::before {
  background-image: url("/assets/img/common/logo_blue.svg");
}
.component-icon-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
}
.component-icon-modal::before {
  background: url("/assets/img/common/icn_modal.webp") no-repeat center/contain;
  transition: scale 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.component-icon-modal--38 {
  width: 3.8rem;
  height: 3.8rem;
  border-radius: 100%;
}
.component-icon-modal--38::before {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  content: "";
}
.component-line-gradation::before {
  display: block;
  width: 0.5rem;
  height: 9rem;
  content: "";
  background: linear-gradient(#0599d9, #fff);
}
@media (hover: hover) {
  .component-arrow:hover .component-arrow__target {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .component-arrow:hover .component-arrow__target::after {
    animation: arrow-move 0.3s 1 cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
@media (hover: none) {
  .component-arrow:active .component-arrow__target {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .component-arrow:active .component-arrow__target::after {
    animation: arrow-move 0.3s 1 cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.component-arrow__target {
  display: block;
  position: relative;
  overflow: hidden;
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-arrow__target::after {
  display: block;
  width: 1.4rem;
  height: 0.8rem;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  mask: url(/assets/img/common/arw_button.svg) no-repeat center/contain;
  will-change: translate;
}
.component-arrow__target--none-ttl {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  padding: 2rem;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
}
.component-arrow--30 .component-arrow__target {
  width: 3rem;
  height: 3rem;
  border-radius: 100%;
}
.component-arrow--40 .component-arrow__target {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}
.component-arrow--50 .component-arrow__target {
  width: 5rem;
  height: 5rem;
  border-radius: 100%;
}
.component-arrow--65 .component-arrow__target {
  width: 6.5rem;
  height: 6.5rem;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  .component-arrow--34sp .component-arrow__target {
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 100%;
  }
}
@media screen and (max-width: 768px) {
  .component-arrow--34sp .component-button-more {
    font-size: 1rem;
  }
}
@media (hover: hover) {
  .component-arrow--white:hover .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--white:hover .component-arrow__target::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .component-arrow--white:active .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--white:active .component-arrow__target::after {
    background-color: #fff;
  }
}
.component-arrow--white .component-arrow__target {
  background-color: #fff;
}
.component-arrow--white .component-arrow__target::after {
  background-color: #0599d9;
}
@media (hover: hover) {
  .component-arrow--blue:hover .component-arrow__target {
    background-color: #fff;
  }
  .component-arrow--blue:hover .component-arrow__target::after {
    background-color: #0599d9;
  }
}
@media (hover: none) {
  .component-arrow--blue:active .component-arrow__target {
    background-color: #fff;
  }
  .component-arrow--blue:active .component-arrow__target::after {
    background-color: #0599d9;
  }
}
.component-arrow--blue .component-arrow__target {
  border: 0.2rem solid #fff;
  background-color: #0599d9;
}
.component-arrow--blue .component-arrow__target::after {
  background-color: #fff;
}
@media (hover: hover) {
  .component-arrow--border:hover .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--border:hover .component-arrow__target::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .component-arrow--border:active .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--border:active .component-arrow__target::after {
    background-color: #fff;
  }
}
.component-arrow--border .component-arrow__target {
  border: 0.2rem solid #0599d9;
  background-color: #fff;
}
.component-arrow--border .component-arrow__target::after {
  background-color: #0599d9;
}
@media (hover: hover) {
  .component-arrow--light-blue:hover .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--light-blue:hover .component-arrow__target::after {
    background-color: #eefaff;
  }
}
@media (hover: none) {
  .component-arrow--light-blue:active .component-arrow__target {
    background-color: #0599d9;
  }
  .component-arrow--light-blue:active .component-arrow__target::after {
    background-color: #eefaff;
  }
}
.component-arrow--light-blue .component-arrow__target {
  border: 0.2rem solid #0599d9;
  background-color: #eefaff;
}
.component-arrow--light-blue .component-arrow__target::after {
  background-color: #0599d9;
}
@keyframes arrow-move {
  0%, 100% {
    translate: -50% -50%;
  }
  50% {
    translate: 200% -50%;
  }
  51% {
    translate: -250% -50%;
  }
}
.component-heading {
  display: flex;
  flex-direction: column;
  color: #0599d9;
  font-weight: 700;
  line-height: 1;
}
.component-heading.component-logo-white, .component-heading.component-logo-blue {
  position: relative;
}
.component-heading.component-logo-white::before, .component-heading.component-logo-blue::before {
  position: absolute;
  top: 1.2rem;
  left: -4.2rem;
}
@media screen and (max-width: 768px) {
  .component-heading.component-logo-white::before, .component-heading.component-logo-blue::before {
    position: static;
  }
}
.component-heading__en {
  font-size: 8rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
}
@media screen and (max-width: 768px) {
  .component-heading__en {
    padding-left: 2rem;
    font-size: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .component-heading__en:has(br) {
    line-height: 1;
  }
}
@media screen and (max-width: 768px) {
  .component-heading__en.component-heading__en--facility {
    font-size: 4.1rem;
  }
}
.component-heading__ja {
  margin-top: 1.2rem;
  padding-left: 1.5rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .component-heading__ja {
    margin-top: 0.4rem;
    padding-left: 3.5rem;
    font-size: 1.6rem;
  }
}
.component-heading__ja:has(br) {
  line-height: 1.75;
}
.component-heading__row {
  display: flex;
  align-items: flex-end;
  gap: 2.2rem;
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  .component-heading__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.1rem;
    font-size: 3.8rem;
    padding-left: 2rem;
  }
}
.component-heading__row small {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .component-heading__row small {
    font-size: 2rem;
  }
}
.component-heading--white {
  color: #fff;
}
.component-heading--large .component-heading__en {
  font-size: 10rem;
}
@media screen and (max-width: 768px) {
  .component-heading--large .component-heading__en {
    font-size: 5rem;
  }
}
.component-heading--large .component-heading__ja {
  margin-top: 0;
}
.component-heading--only-ja {
  font-size: 6.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .component-heading--only-ja {
    font-size: 2.56rem;
  }
}
.component-heading--only-ja strong {
  font-size: 8rem;
}
@media screen and (max-width: 768px) {
  .component-heading--only-ja strong {
    font-size: 3.2rem;
  }
}
.component-heading--only-ja.component-logo-white::before, .component-heading--only-ja.component-logo-blue::before {
  top: 3rem;
}
.component-heading.js-inview {
  translate: 0 2.5rem;
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1), translate 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity, translate;
}
.component-heading.js-inview::before {
  scale: 0;
  transition: scale 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-delay: 0.2s;
  will-change: scale;
}
.component-heading.is-inview {
  translate: 0;
  opacity: 1;
}
.component-heading.is-inview.component-logo-white::before, .component-heading.is-inview.component-logo-blue::before {
  scale: 1;
}
.component-background-grid {
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), rgba(51, 51, 51, 0.05) calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), rgba(51, 51, 51, 0.05) calc(100% - 1px));
  background-size: 1.6rem 1.6rem;
  background-repeat: repeat;
  background-position: center center;
}
.component-section-heading {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading {
    font-size: 1.8rem;
  }
}
.component-section-heading.component-logo-blue::before {
  margin-top: 0.2rem;
}
.component-section-heading small {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading small {
    font-size: 1.2rem;
  }
}
.component-section-heading--center {
  justify-content: center;
}
.component-section-heading--black {
  color: #333;
}
.component-section-heading--white {
  color: #fff;
}
.component-section-heading--small {
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading--small {
    font-size: 1.68rem;
  }
}
.component-section-heading--large {
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading--large {
    font-size: 1.92rem;
  }
}
.component-section-heading-small {
  color: #0599d9;
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .component-section-heading-small {
    font-size: 1.92rem;
  }
}
.component-section-heading-small--white {
  color: #fff;
}
.component-section-heading-small--black {
  color: #333;
}
.component-section-heading-large {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 0.2rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-section-heading-large {
    font-size: 2.4rem;
  }
}
.component-section-heading-large--left {
  align-items: flex-start;
  text-align: left;
}
.component-section-heading-large--wide-space {
  gap: 4.5rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading-large--wide-space {
    gap: 2.925rem;
  }
}
.component-section-heading-large--white {
  color: #fff;
}
.component-section-heading-large--black {
  color: #333;
}
.component-section-heading-large.case-list-section-heading {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .component-section-heading-large.case-list-section-heading {
    margin-top: 4rem;
  }
}
.component-section-text {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-section-text {
    font-size: 1.35rem;
  }
}
.component-section-text--blue {
  color: #0599d9;
}
.component-category {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 2.4rem;
}
.component-category__item {
  display: flex;
  align-items: center;
  height: 2.3rem;
  padding: 0 0.8rem 0.1rem 0.8rem;
  font-size: 1.4rem;
  background-color: #ddd;
}
.component-category--small .component-category__item {
  padding: 0 0.6rem 0.1rem 0.6rem;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
.component-more a,
.component-more span {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  color: #0599d9;
  font-weight: 500;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .component-more a,
  .component-more span {
    font-size: 1.2rem;
  }
}
.component-more a::before,
.component-more span::before {
  display: block;
  width: 0.6rem;
  height: 1rem;
  content: "";
  margin-top: 0.1rem;
  background: url("/assets/img/common/arw_line.svg") no-repeat center/contain;
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate;
}
@media (hover: hover) {
  .component-more a:hover {
    text-decoration: underline;
  }
  .component-more a:hover::before {
    translate: 50% 0;
  }
}
@media (hover: none) {
  .component-more a:active {
    text-decoration: underline;
  }
  .component-more a:active::before {
    translate: 50% 0;
  }
}
.component-more--anchor a::before {
  rotate: 90deg;
}
.component-more--small a,
.component-more--small span {
  font-size: 1.2rem;
}
.component-link-map {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #0599d9;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
.component-link-map:before {
  display: block;
  width: 1.1rem;
  height: 1.5rem;
  content: "";
  margin-top: 0.2rem;
  background: url("/assets/img/common/icn_map.svg") no-repeat center/contain;
}
.component-button a,
.component-button--no-animation a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 35rem;
  height: 8rem;
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-right: 1rem;
  border: 0.2rem solid #0599d9;
  border-radius: 4rem;
  background-color: #0599d9;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  transition: color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .component-button a,
  .component-button--no-animation a {
    width: 31.5rem;
    height: 6rem;
    font-size: 1.6rem;
  }
}
.component-button a::before,
.component-button--no-animation a::before {
  display: block;
  width: 1.7rem;
  height: 1rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 3rem;
  translate: 0 -50%;
  background-color: #fff;
  mask: url("/assets/img/common/arw_button.svg") no-repeat center/contain;
  transition: background-color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-button a::after,
.component-button--no-animation a::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -2;
  background-color: #0599d9;
}
.component-button a span {
  width: 96rem;
  height: 96rem;
  border-radius: 100%;
  position: absolute;
  z-index: -1;
  translate: -50% -50%;
  scale: 0;
  display: block;
  background-color: #fff;
  transition: scale 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);
  will-change: scale;
}
@media (hover: hover) {
  .component-button a:hover {
    color: #0599d9;
  }
  .component-button a:hover::before {
    background-color: #0599d9;
  }
  .component-button a:hover span {
    scale: 1;
  }
}
@media (hover: none) {
  .component-button a:active {
    color: #0599d9;
  }
  .component-button a:active::before {
    background-color: #0599d9;
  }
  .component-button a:active span {
    scale: 1;
  }
}
.component-button--wide a {
  width: auto;
  height: 7rem;
  padding-right: 7rem;
  padding-left: 7rem;
}
.component-button--wide-slim a {
  padding-left: 3.8rem;
}
.component-button--large a {
  width: 40rem;
  height: 8rem;
}
.component-button--large a.component-arrow {
  justify-content: flex-start;
  padding-left: 4rem;
  font-size: 1.6rem;
}
.component-button--large a.component-arrow .component-arrow__target {
  position: absolute;
  top: calc(50% - 2rem);
  right: 2rem;
}
@media screen and (max-width: 768px) {
  .component-button--large-popup a {
    width: 26rem;
    height: 8rem;
    margin-top: 2rem;
  }
}
.component-button--x-large a {
  width: 44rem;
  height: 8rem;
  justify-content: flex-start;
  padding-bottom: 0;
  padding-left: 5rem;
}
.component-button--x-large a.component-arrow {
  justify-content: flex-start;
  padding-left: 4rem;
  font-size: 1.6rem;
}
.component-button--x-large a.component-arrow .component-arrow__target {
  position: absolute;
  top: calc(50% - 2rem);
  right: 2rem;
}
.component-button--reverse a::before {
  position: absolute;
  top: 50%;
  left: 3rem;
  right: auto;
  rotate: 180deg;
}
.component-button--border a {
  border: 0.2rem solid #0599d9;
  background-color: #fff;
  color: #0599d9;
}
.component-button--border a::before {
  background-color: #0599d9;
}
.component-button--border a::after {
  background-color: #fff;
}
.component-button--border a span {
  background-color: #0599d9;
}
@media (hover: hover) {
  .component-button--border a:not(.no-animation):hover {
    color: #fff;
  }
  .component-button--border a:not(.no-animation):hover::before {
    background-color: #fff;
  }
}
@media (hover: none) {
  .component-button--border a:not(.no-animation):active {
    color: #fff;
  }
  .component-button--border a:not(.no-animation):active::before {
    background-color: #fff;
  }
}
.component-button--mail a {
  gap: 1.5rem;
}
.component-button--mail a::before {
  width: 1.8rem;
  height: 1.5rem;
  translate: 0;
  position: static;
  margin-top: 0.2rem;
  mask-image: url("/assets/img/common/icn_mail.svg");
}
.component-button--download a {
  gap: 1.2rem;
}
.component-button--download a::before {
  width: 1.9rem;
  height: 1.6rem;
  translate: 0;
  position: static;
  margin-top: 0.2rem;
  mask-image: url("/assets/img/common/icn_download.svg");
}
.component-button--blank a::before {
  width: 2.1rem;
  height: 2.1rem;
  mask-image: url("/assets/img/common/icn_blank.svg");
}
.component-button--blank-inner a {
  flex-direction: row-reverse;
  gap: 1.8rem;
  padding-right: 0;
}
.component-button--blank-inner a::before {
  width: 2.1rem;
  height: 2.1rem;
  translate: 0;
  position: static;
  margin-top: 0.2rem;
  mask-image: url("/assets/img/common/icn_blank.svg");
}
@media screen and (max-width: 768px) {
  .component-button--mv a {
    width: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .hataraku-link__button {
    text-align: center;
  }
}
.hataraku-link__button a {
  margin-top: 2rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  width: 26rem;
  height: 6rem;
  position: relative;
  z-index: 1;
  overflow: hidden;
  border: 0.2rem solid #0599d9;
  border-radius: 4rem;
  background-color: #fff;
  color: #0599d9;
  font-weight: 700;
  padding-left: 3.6rem;
  padding-right: 1rem;
  font-size: 1.8rem;
  transition: color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .hataraku-link__button a {
    width: 26.5rem;
    height: 6rem;
    font-size: 1.6rem;
  }
}
.hataraku-link__button .component-arrow__target {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  background-color: #0599d9;
}
.hataraku-link__button:hover .component-arrow__target {
  background-color: #0599d9;
}
.hataraku-link__button:hover .component-arrow__target::after {
  background-color: #fff;
}
.component-button-corner a {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 40rem;
  height: 8rem;
  padding-right: 2rem;
  padding-left: 4rem;
  background-color: #fff;
  gap: 1rem;
  font-weight: 700;
  transition: color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .component-button-corner a {
    width: 100%;
  }
}
@media (hover: hover) {
  .component-button-corner a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .component-button-corner a:active {
    color: #0599d9;
  }
}
.component-button-more {
  display: flex;
  align-items: center;
  gap: 2rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 1.2rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
}
.component-button-more--white {
  color: #fff;
}
.component-breadcrumb {
  position: absolute;
  top: 12.6rem;
  right: 2rem;
  z-index: 9;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .component-breadcrumb {
    top: 7rem;
    left: 2rem;
    right: auto;
    width: calc(100% - 2rem);
    overflow-x: auto;
    white-space: nowrap;
  }
}
.component-breadcrumb .component-breadcrumb-list {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .component-breadcrumb .component-breadcrumb-list {
    justify-content: flex-start;
    margin-right: initial;
    flex-wrap: nowrap;
    width: 100%;
    max-width: none;
  }
}
.component-breadcrumb .component-breadcrumb-list__item:nth-of-type(1) a {
  color: #0599d9;
}
.component-breadcrumb .component-breadcrumb-list__item:nth-of-type(n+2) {
  display: flex;
  align-items: center;
}
.component-breadcrumb .component-breadcrumb-list__item:nth-of-type(n+2)::before {
  display: block;
  width: 1px;
  height: 1rem;
  content: "";
  margin: 0 1.6rem;
  background-color: #b9b9bc;
}
@media (hover: hover) {
  .component-breadcrumb .component-breadcrumb-list__item a:hover {
    text-decoration: underline;
  }
}
@media (hover: none) {
  .component-breadcrumb .component-breadcrumb-list__item a:active {
    text-decoration: underline;
  }
}
.component-breadcrumb--white {
  color: #fff;
}
.component-breadcrumb--white .component-breadcrumb-list__item:nth-of-type(1) a {
  color: #fff;
}
.component-breadcrumb--white .component-breadcrumb-list__item:nth-of-type(n+2)::before {
  background-color: #fff;
}
.component-breadcrumb--white .component-breadcrumb-list__item:nth-of-type(n+2) a {
  color: #fff;
}
.component-breadcrumb--black .component-breadcrumb-list__item:nth-of-type(1) a {
  color: #333;
}
.component-nav .component-nav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem 4rem;
}
@media screen and (max-width: 768px) {
  .component-nav .component-nav-list {
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .component-nav .component-nav-list:has(.component-nav-list__item--half) {
    flex-direction: row;
    gap: 1rem;
  }
}
.component-nav .component-nav-list__item {
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .component-nav .component-nav-list__item {
    width: 100%;
  }
}
.component-nav .component-nav-list__item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 40rem;
  height: 8rem;
  padding-right: 2rem;
  padding-left: 4rem;
  gap: 2rem;
  font-weight: 700;
  transition: color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .component-nav .component-nav-list__item a {
    width: 100%;
    padding-right: 1rem;
    padding-left: 2rem;
  }
}
@media (hover: hover) {
  .component-nav .component-nav-list__item a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .component-nav .component-nav-list__item a:active {
    color: #0599d9;
  }
}
.component-nav .component-nav-list__item a span {
  rotate: 90deg;
}
.component-nav .component-nav-list__item.is-current a {
  opacity: 0.5;
  pointer-events: none;
}
.component-nav .component-nav-list__item.is-current a span {
  border-color: #aaa;
}
.component-nav .component-nav-list__item.is-current a span::after {
  background-color: #444;
}
@media screen and (max-width: 768px) {
  .component-nav .component-nav-list__item--half {
    width: 48%;
  }
}
.component-nav .component-nav-list__item--half a {
  width: 100%;
  padding: 0 1rem;
  gap: 0rem;
}
@media screen and (min-width: 769px) {
  .component-nav .component-nav-list__item--half a {
    width: 40rem;
    padding-right: 2rem;
    padding-left: 4rem;
  }
}
.component-nav .component-nav-list__item--half span {
  flex-shrink: 0;
}
.component-nav .component-nav-list__body {
  display: flex;
  flex-direction: column;
}
.component-nav .component-nav-list__content {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .component-nav .component-nav-list__content {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
  }
}
.component-nav .component-nav-list__heading, .component-nav .component-nav-list__text {
  rotate: 0deg !important;
  letter-spacing: 0;
}
.component-nav .component-nav-list__heading {
  font-size: 1.5rem;
}
@media screen and (min-width: 769px) {
  .component-nav .component-nav-list__heading {
    font-size: 1.8rem;
  }
}
.component-nav .component-nav-list__text {
  font-size: 1.1rem;
  font-weight: normal;
}
@media screen and (min-width: 769px) {
  .component-nav .component-nav-list__text {
    font-size: 1.4rem;
  }
}
.component-nav .component-nav-list__icon {
  display: none;
}
@media screen and (min-width: 769px) {
  .component-nav .component-nav-list__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #EEFAFF;
    border-radius: 1rem;
    rotate: 0deg !important;
    width: 4rem;
    height: 4rem;
  }
}
.component-nav--global .component-nav-list__item a span {
  rotate: 0deg;
}
.component-nav--slim .component-nav-list {
  justify-content: center;
}
.component-nav--slim .component-nav-list__item a {
  width: 40.1rem;
}
@media screen and (max-width: 768px) {
  .component-nav--slim .component-nav-list__item a {
    width: 100%;
  }
}
.component-list-text {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4.2rem 4rem;
}
@media screen and (max-width: 768px) {
  .component-list-text {
    flex-direction: column;
  }
}
.component-list-text__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40rem;
  height: 12rem;
  display: flex !important;
  line-height: 2;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-list-text__item {
    width: 100%;
  }
}
.component-list-text__item em {
  color: #0599d9;
}
.component-list-text--small {
  justify-content: flex-start;
  gap: 1rem 1.4rem;
}
.component-list-text--small .component-list-text__item {
  width: 24rem;
  height: 7.6rem;
  font-size: 1.4rem;
  line-height: 1.8571428571;
}
.component-customer {
  display: flex;
  position: relative;
}
@media screen and (max-width: 768px) {
  .component-customer {
    flex-direction: column;
  }
}
.component-customer .component-customer-list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 33.333%;
}
@media screen and (max-width: 768px) {
  .component-customer .component-customer-list {
    width: auto;
  }
}
.component-customer__note {
  position: absolute;
  right: 0;
  bottom: 0;
  translate: -100% 0;
}
@media screen and (max-width: 768px) {
  .component-customer__note {
    position: static;
    translate: 0;
  }
}
.component-group {
  padding: 10.6rem 0 11rem;
}
@media screen and (max-width: 768px) {
  .component-group {
    padding: 5rem 0 5.2rem;
  }
}
.component-group .component-section-heading.component-logo-blue::before {
  margin-top: 0.2rem;
}
.component-group__content {
  display: flex;
  align-items: flex-end;
  gap: 19.2rem;
}
@media screen and (max-width: 768px) {
  .component-group__content {
    flex-direction: column;
    align-items: center;
    gap: 3.2rem;
  }
}
.component-group .component-group-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem 6.4rem;
  width: 81.6rem;
  margin-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .component-group .component-group-list {
    width: 100%;
    gap: 1.5rem;
    margin-top: 0;
  }
}
.component-group .component-group-list__item {
  overflow: hidden;
  width: calc(50% - 3.2rem);
  border: 1px solid #ddd;
  border-radius: 1rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .component-group .component-group-list__item {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(50% - 0.75rem);
  }
}
.component-group .component-group-list a {
  position: relative;
}
.component-group .component-group-list a::before {
  display: block;
  width: 2rem;
  height: 2.1rem;
  content: "";
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  background: url("/assets/img/common/icn_window.webp") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-group .component-group-list a::before {
    right: 0.2rem;
    bottom: 0.3rem;
  }
}
.component-group .component-group-list a::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: #eefaff;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: transform;
}
@media (hover: hover) {
  .component-group .component-group-list a:hover::after {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .component-group .component-group-list a:active::after {
    opacity: 0.6;
  }
}
.component-group .component-group-sns {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 1.5rem;
}
.component-group .component-group-sns__item a {
  display: block;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .component-group .component-group-sns__item a:hover {
    opacity: 0.5;
  }
}
@media (hover: none) {
  .component-group .component-group-sns__item a:active {
    opacity: 0.5;
  }
}
.component-group .component-group-sns__item--facebook a {
  display: block;
  width: 5rem;
  height: 5rem;
  content: "";
  background: url("/assets/img/common/icn_facebook.svg") no-repeat center/contain;
}
.component-group .component-group-sns__item--x a {
  display: block;
  width: 4rem;
  height: 4rem;
  content: "";
  background: url("/assets/img/common/icn_x.webp") no-repeat center/contain;
}
.component-group--light-blue {
  background-color: #eefaff;
}
.component-group--no-heading .component-group .component-group,
.component-group--no-heading .component-group .component-group-list {
  margin-top: 0;
}
.component-group--en {
  padding: 8.5rem 0 10rem;
}
.component-group--en .component-group-list {
  gap: 4rem;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .component-group--en .component-group-list {
    gap: 1.5rem;
  }
}
.component-cta {
  display: flex;
}
@media screen and (max-width: 768px) {
  .component-cta {
    flex-direction: column;
  }
}
.component-cta__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 5.2rem;
  width: 50%;
  padding: 10rem 0 6.6rem;
}
@media screen and (max-width: 768px) {
  .component-cta__item {
    align-items: center !important;
    width: 100%;
    padding: 5rem 4rem 5rem !important;
  }
}
.component-cta__head {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .component-cta__head {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .component-cta__content {
    width: 100%;
  }
}
.component-cta__heading {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  font-weight: 700;
  font-size: 6rem;
  line-height: 1;
  margin-left: 5rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .component-cta__heading {
    gap: 0.2rem;
    font-size: 5rem;
    margin-left: 4rem;
  }
}
.component-cta__heading.component-logo-blue::before, .component-cta__heading.component-logo-white::before {
  position: absolute;
  top: 0.8rem;
  left: -4rem;
}
@media screen and (max-width: 768px) {
  .component-cta__heading.component-logo-blue::before, .component-cta__heading.component-logo-white::before {
    left: -6.5vw;
  }
}
.component-cta__subheading {
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .component-cta__subheading {
    padding-left: 1em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .component-cta__button {
    width: 100%;
  }
}
.component-cta__button a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 27rem;
  height: 7rem;
  gap: 1.4rem;
  padding-right: 1.4rem;
  padding-bottom: 0.2rem;
  border: 0.2rem solid;
  border-radius: 3.5rem;
  font-weight: 500;
  font-size: 1.8rem;
  margin: 4.4rem 0 0;
}
@media screen and (max-width: 768px) {
  .component-cta__button a {
    width: 100%;
    height: 6rem;
  }
}
.component-cta__button a::before {
  margin-top: 0.2rem;
  mask: no-repeat center/contain;
}
.component-cta__item:nth-of-type(1) {
  align-items: flex-end;
  background-color: #0599d9;
  padding: 5.7rem 0;
}
.component-cta__item:nth-of-type(1) .component-cta__head {
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(1) .component-cta__head {
    gap: 0rem;
  }
}
.component-cta__item:nth-of-type(1) .component-cta__content {
  color: #fff;
}
.component-cta__item:nth-of-type(1) .component-cta__image {
  width: 31.6rem;
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(1) .component-cta__image {
    width: 70%;
    margin-inline: auto;
  }
}
.component-cta__item:nth-of-type(1) .component-cta__button a {
  border-color: #fff;
  background-color: #fff;
  color: #0599d9;
}
.component-cta__item:nth-of-type(1) .component-cta__button a::before {
  display: block;
  width: 1.9rem;
  height: 1.6rem;
  content: "";
  background-color: #0599d9;
  mask-image: url("/assets/img/common/icn_download.svg");
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(1) .component-cta__button a {
    margin: 4.4rem 0;
  }
}
.component-cta__item:nth-of-type(2) {
  border-top: 0.2rem solid #f4f5f8;
  padding: 2rem 0 3.5rem 0;
  align-items: center;
}
.component-cta__item:nth-of-type(2) .component-cta__head {
  gap: 5.6rem;
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(2) .component-cta__head {
    gap: 0rem;
  }
}
.component-cta__item:nth-of-type(2) .component-cta__content {
  color: #0599d9;
}
.component-cta__item:nth-of-type(2) .component-cta__image {
  width: 31.5rem;
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(2) .component-cta__image {
    width: 70%;
    margin-inline: auto;
  }
}
.component-cta__item:nth-of-type(2) .component-cta__button a {
  border-color: #0599d9;
  background-color: #0599d9;
  color: #fff;
}
.component-cta__item:nth-of-type(2) .component-cta__button a::before {
  display: block;
  width: 1.8rem;
  height: 1.5rem;
  content: "";
  background-color: #fff;
  mask-image: url("/assets/img/common/icn_mail.svg");
}
@media screen and (max-width: 768px) {
  .component-cta__item:nth-of-type(2) .component-cta__button a {
    margin: 4.4rem 0;
  }
}
.component-page-header {
  position: relative;
  z-index: 1;
}
.component-page-header__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  height: calc(34.5 * var(--remV));
}
@media screen and (max-width: 768px) {
  .component-page-header__background {
    height: 21.4rem;
  }
}
.component-page-header__background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.component-page-header__wave {
  position: absolute;
  right: 0;
  bottom: -2px;
  left: 0;
  height: calc(12 * var(--remV));
}
@media screen and (max-width: 768px) {
  .component-page-header__wave {
    height: 6rem;
    bottom: -5px;
  }
}
.component-page-header__rectangle {
  width: calc(128 * var(--remV));
  height: 100%;
  position: absolute;
  top: 0;
  right: calc((100vw - 192rem) / 2);
  z-index: -1;
}
@media screen and (max-width: 1920px) {
  .component-page-header__rectangle {
    right: 0;
  }
}
.component-page-header__rectangle img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.component-page-header__line {
  position: absolute;
  right: 0;
  bottom: calc(-3.5 * var(--remV));
  left: 0;
}
.component-page-header__line path {
  fill: none;
  stroke: #0599d9;
  stroke-width: 0.15rem;
  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
  transition: stroke-dashoffset 2.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.component-page-header .section__inner {
  display: flex;
  align-items: center;
  height: calc(34.5 * var(--remV));
}
@media screen and (max-width: 768px) {
  .component-page-header .section__inner {
    height: 21.4rem;
    padding-right: 0;
  }
}
.component-page-header .section__inner:has(.component-page-header__text) {
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 4.5rem;
  height: 100%;
}
.component-page-header__heading {
  font-weight: 700;
}
.component-page-header__heading.component-logo-white {
  position: relative;
}
.component-page-header__heading.component-logo-white::before {
  position: absolute;
  top: 1.2rem;
  left: -4.2rem;
}
.component-page-header__heading-en {
  display: block;
  font-size: 8rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .component-page-header__heading-en {
    font-size: 6rem;
  }
}
.component-page-header__text {
  width: 100%;
  padding: 1.6rem 0;
  background: linear-gradient(to right, #fff, transparent);
  color: #0599d9;
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .component-page-header__text {
    font-size: 1.6rem;
    padding-right: 1.6rem;
  }
}
.component-page-header--rectangle-high {
  height: calc(50 * var(--remV));
}
@media screen and (max-width: 768px) {
  .component-page-header--rectangle-high {
    height: auto;
  }
}
.component-page-header--rectangle-wide .component-page-header__rectangle {
  width: 100%;
  height: calc(40 * var(--remV));
  right: 0;
}
@media screen and (max-width: 768px) {
  .component-page-header--rectangle-wide .component-page-header__rectangle {
    height: 18rem;
  }
}
.component-page-header--rectangle-wide .section__inner {
  height: calc(40 * var(--remV));
}
@media screen and (max-width: 768px) {
  .component-page-header--rectangle-wide .section__inner {
    height: 18rem;
  }
}
.component-case-index {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 4rem;
}
.component-case-index[id^=home] {
  display: none !important;
}
.component-case-index.is-clicked {
  display: flex !important;
}
.component-case-index__item {
  width: 40rem;
}
@media (hover: hover) {
  .component-case-index__item a:hover .component-case-index__company, .component-case-index__item a:hover .component-case-index__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .component-case-index__item a:active .component-case-index__company, .component-case-index__item a:active .component-case-index__heading {
    color: #0599d9;
  }
}
.component-case-index__content {
  margin-top: 2rem;
}
.component-case-index__company, .component-case-index__heading {
  line-height: 1.45;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-case-index__company {
  font-weight: 700;
}
.component-case-index__heading {
  font-weight: 700;
  font-size: 2.4rem;
}
.component-case-index .home-case-sub {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.8rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .component-case-index .home-case-sub {
    flex-direction: column;
  }
}
.component-case-index .home-case-sub__item {
  display: flex;
  align-items: baseline;
  gap: 0.8rem;
  width: calc(50% - 0.4rem);
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .component-case-index .home-case-sub__item {
    width: 100%;
    font-size: 1.4rem;
    font-weight: 500;
  }
}
.component-case-index .home-case-sub__heading {
  margin-top: 0.3rem;
  color: #666;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
.component-case-index .home-case-sub__text {
  flex: 1;
}
.component-case-index .home-case-sub.case-slide__sub {
  padding-bottom: 2.4rem;
}
.component-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
.component-modal__background {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-color: rgba(51, 51, 51, 0.3);
  scrollbar-gutter: stable;
}
.component-modal__content {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow-y: auto;
  pointer-events: none;
}
.component-modal__content-inner {
  width: 100%;
  max-width: 92rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-height: 100vh;
  pointer-events: auto;
}
.component-modal__content-item {
  padding: 6rem 8.5rem 6.4rem;
  border-radius: 2rem;
  background-color: #fff;
}
.component-modal__button {
  position: absolute;
  top: 0;
  right: 0.2rem;
}
.component-modal__button button {
  width: 8.8rem;
  height: 8.8rem;
  background: none;
  position: relative;
}
.component-modal__button button::before, .component-modal__button button::after {
  display: block;
  width: 0.2rem;
  height: 3rem;
  content: "";
  position: absolute;
  top: calc(50% - 1.5rem);
  left: calc(50% - 0.1rem);
  background-color: #333;
}
.component-modal__button button::before {
  rotate: 45deg;
}
.component-modal__button button::after {
  rotate: -45deg;
}
.component-modal.is-active {
  opacity: 1;
  visibility: visible;
}
body.is-loaded .component-page-header__line svg path {
  stroke-dashoffset: 0;
}
body.on-modal {
  overflow: hidden;
}
body.on-modal .layout-header,
body.on-modal .layout-content,
body.on-modal .layout-footer {
  overflow: auto;
  scrollbar-gutter: stable;
}
.component-contact-recruit .section__inner {
  display: flex;
  align-items: center;
  gap: 7.2rem;
  padding: 5rem 16.6rem;
  border-radius: 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit .section__inner {
    flex-direction: column;
    padding: 2rem;
    gap: 1.2rem;
  }
}
.component-contact-recruit__heading {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__heading {
    font-size: 2.25rem;
  }
}
.component-contact-recruit__text {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__text {
    font-size: 1.35rem;
  }
}
.component-contact-recruit__body {
  flex: 1;
  font-family: "Figtree", Yakuhanjp, sans-serif;
}
.component-contact-recruit a {
  display: inline-flex;
  align-items: center;
}
.component-contact-recruit a::before {
  background-color: #0599d9;
}
.component-contact-recruit__tel a {
  gap: 1.4rem;
  color: #0599d9;
  font-size: 6rem;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__tel a {
    font-size: 3.9rem;
    pointer-events: auto;
  }
}
.component-contact-recruit__tel a::before {
  display: block;
  width: 3.4rem;
  height: 4.4rem;
  content: "";
  mask: url("/assets/img/common/icn_tel.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__tel a::before {
    display: block;
    width: 2.21rem;
    height: 2.86rem;
    content: "";
  }
}
.component-contact-recruit__mail a {
  gap: 2rem;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__mail a {
    font-size: 1.8rem;
  }
}
.component-contact-recruit__mail a::before {
  display: block;
  width: 2.5rem;
  height: 1.8rem;
  content: "";
  margin-top: 0.3rem;
  mask: url("/assets/img/common/icn_mail-line.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .component-contact-recruit__mail a::before {
    display: block;
    width: 1.875rem;
    height: 1.35rem;
    content: "";
  }
}
.component-contact-recruit--blue {
  color: #fff;
}
.component-contact-recruit--blue a {
  color: #fff;
}
.component-contact-recruit--blue a::before {
  background-color: #fff;
}
.component-subject-list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .component-subject-list {
    flex-direction: column;
    align-items: center;
    gap: 4rem 0;
  }
}
.component-subject-list__item {
  width: 36rem;
  height: 53.3rem;
  position: relative;
}
.component-subject-list__text {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 21rem;
  position: relative;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-subject-list__text {
    font-size: 2rem;
  }
}
.component-subject-list__text::before {
  display: block;
  width: 100%;
  height: 28.5rem;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  background: url("/assets/img/solution/kankyo/office/bg_bubble.svg") no-repeat center/cover;
}
.component-subject-list__image {
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
}
.component-subject-list__image:nth-of-type(1) {
  width: 23.3rem;
}
.component-subject-list__image:nth-of-type(2) {
  width: 21.8rem;
}
.component-subject-list__image:nth-of-type(3) {
  width: 25.1rem;
}
.component-subject-list--small .component-subject-list__item {
  width: 28.8rem;
  height: 34.7rem;
}
.component-subject-list--small .component-subject-list__text {
  height: 16.5rem;
  font-size: 1.8rem;
}
.component-subject-list--small .component-subject-list__text::before {
  height: 22.8rem;
}
.component-subject-list--small .component-subject-list__image:nth-of-type(1) {
  width: 11.6rem;
}
.component-subject-list--small .component-subject-list__image:nth-of-type(2), .component-subject-list--small .component-subject-list__image:nth-of-type(4) {
  width: 10.9rem;
}
.component-subject-list--small .component-subject-list__image:nth-of-type(3) {
  width: 12.6rem;
}
.component-solution-list {
  display: flex;
  flex-direction: column;
  gap: 18rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list {
    gap: 6rem 0;
  }
}
.component-solution-list__item {
  display: flex;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__item {
    flex-direction: column;
  }
}
.component-solution-list__item:nth-of-type(even) {
  flex-direction: row-reverse;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__item:nth-of-type(even) {
    flex-direction: column;
  }
}
.component-solution-list__image {
  width: 50.1rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__image {
    width: 100%;
  }
}
.component-solution-list__content {
  flex: 1;
}
.component-solution-list__content--align-center {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.component-solution-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__heading {
    font-size: 2.25rem;
  }
}
.component-solution-list__heading--small {
  font-size: 2.4rem;
}
.component-solution-list__subheading {
  font-weight: 700;
  color: #0599d9;
}
.component-solution-list__logo {
  margin-top: -16rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__logo {
    margin-top: -2rem;
  }
}
.component-solution-list__logo ul {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 768px) {
  .component-solution-list__logo ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
.component-solution-list__text {
  line-height: 1.5;
}
.component-solution-list--small-image .component-solution-list__image {
  width: 43.5rem;
}
.component-solution-list--large-image .component-solution-list__image {
  width: 55.2rem;
}
.component-aside-office {
  display: flex;
  flex-wrap: wrap;
  gap: 5.8rem 5rem;
}
@media screen and (max-width: 768px) {
  .component-aside-office {
    flex-direction: column;
  }
}
.component-aside-office__item {
  width: calc(33.333% - 3.4rem);
}
@media screen and (max-width: 768px) {
  .component-aside-office__item {
    width: 100%;
  }
}
.component-aside-office__head {
  position: relative;
}
.component-aside-office__head::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(transparent 50%, rgba(51, 51, 51, 0.5));
}
.component-aside-office__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  padding: 2rem;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
}
.component-aside-office__text {
  line-height: 2;
}
.component-table {
  border: 1px solid #aad5df;
  border-spacing: 0;
  width: 100%;
  margin-block-start: 3rem;
}
.component-table__th {
  background: #e2f8fe;
  font-weight: bold;
  color: #139de2;
  text-align: center;
  border-block-end: 1px solid #aad5df;
  padding: 8px 0;
}
@media screen and (min-width: 769px) {
  .component-table__th {
    width: 14.2857142857%;
  }
}
.component-table__th:not(:last-child) {
  border-inline-end: 1px solid #aad5df;
}
.component-table__th.size--l {
  width: 50%;
}
@media screen and (min-width: 769px) {
  .component-table__th.size--l {
    width: 40%;
  }
}
.component-table__td {
  padding: 2rem;
  vertical-align: top;
  white-space: nowrap;
}
@media screen and (min-width: 769px) {
  .component-table__td {
    white-space: normal;
  }
}
.component-table__td:not(:last-child) {
  border-inline-end: 1px solid #aad5df;
}
.component-table__td.em {
  background: #EDFAFF;
}
.component-table__list {
  list-style: disc;
  margin-left: 2rem;
}
.component-scroll {
  max-width: 100%;
  overflow-x: auto;
}
@media screen and (min-width: 769px) {
  .component-scroll {
    overflow-x: hidden;
  }
}
.component-section-heading--black {
  color: #333;
}
.component-arrow--33 .component-arrow__target {
  width: 3.3rem;
  height: 3.3rem;
  border-radius: 100%;
}
.component-image-link {
  display: flex;
  flex-wrap: wrap;
  gap: 5.5rem 5.4rem;
}
@media screen and (max-width: 768px) {
  .component-image-link {
    flex-direction: column;
    gap: 2.75rem;
  }
}
.component-image-link__item {
  width: 39rem;
}
@media screen and (max-width: 768px) {
  .component-image-link__item {
    width: 100%;
  }
}
.component-image-link__item a {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 2rem;
  overflow: hidden;
}
@media (hover: hover) {
  .component-image-link__item a:hover .company-index-list__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .component-image-link__item a:active .company-index-list__heading {
    color: #0599d9;
  }
}
.component-image-link__image {
  width: 100%;
  height: 20rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .component-image-link__image {
    width: 100%;
  }
}
.component-image-link__content {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 2rem;
  background: #fff;
  position: relative;
  padding-left: 2.4rem;
  padding-right: 3rem;
}
.component-image-link__heading {
  height: 100%;
  flex: 1;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.08em;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .component-image-link__heading {
    font-size: 1.5rem;
    line-height: 1.4;
  }
}
@media screen and (min-width: 769px) {
  .component-image-link--small {
    gap: 5.5rem 2.6rem;
  }
  .component-image-link--small .component-image-link__item {
    width: 30rem;
  }
  .component-image-link--small .component-image-link__image {
    width: 30rem;
    height: 16.4rem;
  }
  .component-image-link--small .component-image-link__heading {
    font-size: 1.4rem;
    line-height: 2.0714285714;
    text-align: left;
    letter-spacing: 0em;
  }
  .component-image-link--small .component-image-link__content {
    background: #fff;
    position: relative;
    width: 30rem;
    padding-left: 2rem;
    padding-right: 4.8rem;
  }
  .component-image-link--small .component-image-link__content .component-arrow__target {
    position: absolute;
    top: 2.7rem;
    right: 1rem;
  }
}
@media screen and (min-width: 769px) {
  .component-image-link--center:not(:has(:nth-child(3))) {
    justify-content: center;
    gap: 13rem;
  }
}
.component-contact {
  color: #fff;
  background: #0599d9;
  border-radius: 2rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .component-contact {
    padding: 4rem 2rem;
  }
}
.component-contact__heading {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.2666666667;
}
@media screen and (max-width: 768px) {
  .component-contact__heading {
    font-size: 2.25rem;
  }
}
.component-contact__inner {
  display: flex;
  justify-content: center;
  gap: 0 7rem;
}
@media screen and (max-width: 768px) {
  .component-contact__inner {
    flex-direction: column;
    gap: 2rem 7rem;
  }
}
.component-contact__text {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .component-contact__text {
    font-size: 1.35rem;
  }
}
.component-contact__button a {
  color: #0599d9;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44.4rem;
  height: 7.5rem;
  gap: 1.7rem;
  padding-right: 1.4rem;
  padding-bottom: 0.2rem;
  border: 0.2rem solid #fff;
  border-radius: 1rem;
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-contact__button a {
    width: 100%;
    height: 5.625rem;
    font-size: 1.53rem;
  }
}
.component-contact__button--mail a::before {
  background: #0599d9;
  display: block;
  width: 2.5rem;
  height: 1.8rem;
  content: "";
  mask: url("/assets/img/guide/icn_cta_mail.svg") no-repeat center/contain;
}
.component-form {
  padding: 0 9rem;
}
@media screen and (max-width: 768px) {
  .component-form {
    padding: 2rem;
  }
}
.component-form__attention {
  line-height: 1.75;
}
.component-form__attention-required {
  color: #fff;
  background: #ea4048;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  display: inline-flex;
  height: 2.3rem;
  padding: 0 0.8rem;
  margin-right: 1rem;
  vertical-align: text-bottom;
}
.component-form__content {
  display: flex;
  flex-direction: column;
  gap: 4.9rem 0;
}
@media screen and (max-width: 768px) {
  .component-form__content {
    gap: 2.45rem 0;
  }
}
.component-form__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .component-form__item {
    flex-direction: column;
  }
}
.component-form__item:has(.component-form-checkbox) {
  margin-top: 3.4rem;
}
.component-form__heading {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6666666667;
  width: 27.6rem;
  max-height: 2.5em;
}
@media screen and (max-width: 768px) {
  .component-form__heading {
    max-height: 100%;
    font-size: 1.35rem;
  }
}
.component-form__heading.is-required {
  position: relative;
}
.component-form__heading.is-required:after {
  color: #fff;
  background: #ea4048;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  display: inline-flex;
  height: 2.3rem;
  padding: 0 0.8rem;
  vertical-align: text-bottom;
  content: "必須";
  margin-left: 2rem;
}
.component-form__data {
  line-height: 1.75;
  width: calc(100% - 27.6rem);
}
@media screen and (max-width: 768px) {
  .component-form__data {
    width: 100%;
    margin-top: 1rem;
  }
}
.component-form__note {
  line-height: 1.75;
  margin-top: 0.4rem;
  padding-left: 0.25em;
  margin-bottom: -1.2rem;
}
.component-form-input-text {
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  appearance: none;
  font-family: "Figtree", Yakuhanjp, "Noto Sans JP", sans-serif;
  background: #f9f9f9;
  border: 1px solid #dddddd;
  width: 100%;
  height: 4rem;
  padding: 0 1rem;
}
.component-form-input-text--company {
  width: 56.6rem;
}
@media screen and (max-width: 768px) {
  .component-form-input-text--company {
    width: 100%;
  }
}
.component-form-input-text--name, .component-form-input-text--division, .component-form-input-text--position {
  width: 32rem;
}
@media screen and (max-width: 768px) {
  .component-form-input-text--name, .component-form-input-text--division, .component-form-input-text--position {
    width: 100%;
  }
}
.component-form-input-text--member, .component-form-input-text--address {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .component-form-input-text--member, .component-form-input-text--address {
    width: 100%;
  }
}
.component-form-textarea {
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: "Figtree", Yakuhanjp, "Noto Sans JP", sans-serif;
  background: #f9f9f9;
  border: 1px solid #dddddd;
  width: 100%;
  width: 56.6rem;
  height: 18rem;
  padding: 1rem;
}
@media screen and (max-width: 768px) {
  .component-form-textarea {
    width: 100%;
  }
}
.component-form-textarea--other {
  height: 15.2rem;
}
.component-form-checkbox {
  display: flex;
  align-items: center;
}
.component-form-checkbox__input {
  display: none;
}
.component-form-checkbox__input:checked + .component-form-checkbox__dummy {
  background: #ea4048;
  border: none;
}
.component-form-checkbox__input:checked + .component-form-checkbox__dummy:before {
  opacity: 1;
}
.component-form-checkbox__dummy {
  background: #f9f9f9;
  border: 1px solid #dddddd;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 1px;
  vertical-align: text-bottom;
  padding-bottom: 0.3rem;
  cursor: pointer;
}
.component-form-checkbox__dummy:before {
  display: inline-block;
  width: 1.2rem;
  height: 0.8rem;
  box-sizing: border-box;
  border: solid #fff;
  border-width: 0 0 0.3rem 0.3rem;
  content: "";
  rotate: -45deg;
  opacity: 0;
}
.component-form-checkbox__text {
  flex: 1;
  line-height: 1.5;
  letter-spacing: 0.08em;
  margin-left: 0.9rem;
  cursor: pointer;
}
.component-form-checkbox + .component-form-checkbox {
  margin-top: 2.6rem;
}
@media screen and (max-width: 768px) {
  .component-form-checkbox + .component-form-checkbox {
    margin-top: 1.3rem;
  }
}
.component-form-radio {
  display: flex;
  align-items: center;
  min-width: 31.5rem;
}
.component-form-radio-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2.9rem 0;
}
@media screen and (max-width: 768px) {
  .component-form-radio-wrapper {
    gap: 1.45rem;
  }
}
.component-form-radio-wrapper--area {
  gap: 2.9rem 2rem;
}
@media screen and (max-width: 768px) {
  .component-form-radio-wrapper--area {
    gap: 1.45rem;
  }
}
.component-form-radio-wrapper--area .component-form-radio {
  min-width: 16.4rem;
}
.component-form-radio-wrapper--area .component-form-radio:nth-of-type(2n) {
  margin-right: 40%;
}
.component-form-radio__input {
  display: none;
}
.component-form-radio__input:checked + .component-form-radio__dummy {
  background: #ea4048;
  border: none;
}
.component-form-radio__input:checked + .component-form-radio__dummy:before {
  opacity: 1;
}
.component-form-radio__dummy {
  background: #f9f9f9;
  border: 1px solid #dddddd;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  vertical-align: text-bottom;
  cursor: pointer;
}
.component-form-radio__dummy:before {
  background-color: #fff;
  display: block;
  width: 1rem;
  height: 1rem;
  box-sizing: border-box;
  border-radius: 50%;
  content: "";
  opacity: 0;
}
.component-form-radio__text {
  line-height: 1.5;
  letter-spacing: 0.08em;
  margin-left: 0.9rem;
  cursor: pointer;
}
.component-form-address-button {
  display: inline-block;
}
.component-form-address-button__inner {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  font-family: "Figtree", Yakuhanjp, "Noto Sans JP", sans-serif;
  position: relative;
  color: #333;
  background-color: #eeeeee;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 3.6rem;
  box-sizing: border-box;
  padding: 0 1.1rem;
  padding-bottom: 0.2rem;
  border: 0.2rem solid #dddddd;
  border-radius: 0.2rem;
  margin-left: 2.8rem;
}
@media screen and (max-width: 768px) {
  .component-form-address-button__inner {
    margin-left: 0;
    margin-top: 1rem;
  }
}
.component-form-agree.is-required .component-form-agree__heading {
  position: relative;
}
.component-form-agree.is-required .component-form-agree__heading:after {
  color: #fff;
  background: #ea4048;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  display: inline-flex;
  height: 2.3rem;
  padding: 0 0.8rem;
  vertical-align: middle;
  content: "必須";
  margin-left: 1.3rem;
  margin-right: calc(-1.3rem - 2em - 1.6rem);
}
.component-form-agree__heading {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-form-agree__heading {
    font-size: 1.8rem;
    text-align: left;
  }
}
.component-form-agree__text {
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .component-form-agree__text {
    font-size: 1.4rem;
    text-align: left;
  }
}
.component-form-agree__text a {
  color: #0599d9;
  text-decoration: underline;
  text-underline-offset: 0.5em;
}
@media screen and (max-width: 768px) {
  .component-form-agree__text a {
    display: block;
  }
}
@media (hover: hover) {
  .component-form-agree__text a:hover {
    text-decoration: none;
  }
}
@media (hover: none) {
  .component-form-agree__text a:active {
    text-decoration: none;
  }
}
.component-form-agree__checkbox {
  display: flex;
  justify-content: center;
  align-items: center;
}
.component-form-agree__input {
  display: none;
}
.component-form-agree__input:checked + .component-form-agree__dummy {
  background: #ea4048;
  border: none;
}
.component-form-agree__input:checked + .component-form-agree__dummy:before {
  opacity: 1;
}
.component-form-agree__dummy {
  background: #f9f9f9;
  border: 1px solid #dddddd;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 1px;
  vertical-align: text-bottom;
  padding-bottom: 0.3rem;
  cursor: pointer;
  border-radius: 50%;
}
.component-form-agree__dummy:before {
  display: inline-block;
  width: 1.2rem;
  height: 0.8rem;
  box-sizing: border-box;
  border: solid #fff;
  border-width: 0 0 0.3rem 0.3rem;
  content: "";
  rotate: -45deg;
  opacity: 0;
}
.component-form-agree__text {
  line-height: 1.75;
  letter-spacing: 0.08em;
  margin-left: 1.5rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .component-form-agree__text {
    margin-left: 0;
    font-size: 1.4rem;
  }
}
.component-form-button {
  display: flex;
  justify-content: center;
}
.component-form-button__inner {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  font-family: "Figtree", Yakuhanjp, "Noto Sans JP", sans-serif;
  position: relative;
  color: #fff;
  background-color: #0599d9;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 35rem;
  height: 8rem;
  padding-bottom: 0.2rem;
  border: 0.2rem solid #0599d9;
  border-radius: 4rem;
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .component-form-button__inner {
    width: 100%;
  }
}
.component-form-button__inner::before {
  background: #fff;
  position: absolute;
  top: calc(50% - 0.6rem);
  right: 3rem;
  display: block;
  width: 1.8rem;
  height: 1.2rem;
  content: "";
  mask: url("/assets/img/common/arw_button.svg") no-repeat center/contain;
}
.component-form--download {
  background: #fff;
  border-radius: 2rem;
}
.component-form--download .component-form__attention-required {
  background: #0599d9;
}
.component-form--download .component-form__heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .component-form--download .component-form__heading {
    flex-direction: row;
  }
}
.component-form--download .component-form__heading.is-required:after {
  background: #0599d9;
  margin-left: 0;
  margin-top: 0.8rem;
  margin-bottom: -2.3rem;
}
@media screen and (max-width: 768px) {
  .component-form--download .component-form__heading.is-required:after {
    margin-top: 0;
    margin-left: 0.8rem;
  }
}
.component-form--download .component-form-checkbox__input:checked + .component-form-checkbox__dummy {
  background: #0599d9;
}
.component-form--download .component-form-agree__input:checked + .component-form-agree__dummy {
  background: #0599d9;
}
.works-list {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 4rem;
}
@media screen and (max-width: 768px) {
  .works-list {
    gap: 3rem;
  }
}
.works-list__item {
  width: 40rem;
}
@media screen and (max-width: 768px) {
  .works-list__item {
    width: 100%;
  }
}
@media (hover: hover) {
  .works-list__item a:hover .home-works-body__company, .works-list__item a:hover .home-works-body__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .works-list__item a:active .home-works-body__company, .works-list__item a:active .home-works-body__heading {
    color: #0599d9;
  }
}
.works-list .component-arrow__target {
  position: absolute;
  right: 2.2rem;
  bottom: 1.8rem;
  width: 6.5rem;
  height: 6.5rem;
}
.works-list .component-arrow__target:after {
  width: 1.8rem;
  height: 1rem;
}
.works-list__image {
  position: relative;
}
.works-list__content {
  margin-top: 2rem;
}
.works-list__company, .works-list__heading {
  line-height: 1.45;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.works-list__company {
  font-weight: 700;
}
.works-list__heading {
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .works-list__heading {
    font-size: 2.04rem;
  }
}
.works-list .works-list-data {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.8rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .works-list .works-list-data {
    flex-direction: column;
  }
}
.works-list .works-list-data__item {
  display: flex;
  gap: 0.8rem;
  width: calc(50% - 0.4rem);
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .works-list .works-list-data__item {
    width: 100%;
  }
}
.works-list .works-list-data__heading {
  margin-top: 0.3rem;
  color: #666;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .works-list .works-list-data__heading {
    font-size: 1.05rem;
  }
}
.works-list .works-list-data__text {
  flex: 1;
}
.section-white-base-blue-bg {
  position: relative;
}
.section-white-base-blue-bg:before {
  background: #0599d9;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 22.3rem;
  content: "";
}
.section-white-base-blue-bg .section__inner {
  position: relative;
  background: #fff;
  border-radius: 3rem 3rem 0 0;
}
.component-faq {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.component-faq__item {
  background: #f6fcff;
  overflow: hidden;
}
.component-faq__item[aria-hidden=false] .component-faq__content {
  grid-template-rows: 1fr;
}
.component-faq__item[aria-hidden=false] .component-faq__inner {
  padding-top: 3.1rem;
  padding-bottom: 3.6rem;
}
.component-faq__item[aria-hidden=false] .component-faq__button:before {
  rotate: 0deg;
}
.component-faq__header {
  position: relative;
  display: flex;
  padding: 3.4rem 14rem 3.8rem 4.5rem;
  cursor: pointer;
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: background-color;
}
@media (hover: hover) {
  .component-faq__header:hover {
    background-color: #eefaff;
  }
}
@media (hover: none) {
  .component-faq__header:active {
    background-color: #eefaff;
  }
}
.component-faq__header:before {
  content: "Q";
  color: #0599d9;
  font-weight: 700;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  font-size: 4rem;
  line-height: 1;
  width: 7rem;
}
.component-faq__heading {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding-top: 0.2rem;
}
.component-faq__button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  position: absolute;
  top: calc(50% - 4.5rem);
  right: 3rem;
  width: 9rem;
  height: 9rem;
  cursor: pointer;
}
.component-faq__button:after, .component-faq__button:before {
  background: #0599d9;
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 3.2rem;
  height: 0.6rem;
  content: "";
  translate: -50% -50%;
  border-radius: 0.3rem;
  box-sizing: border-box;
}
.component-faq__button:before {
  rotate: 90deg;
  transition: rotate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-faq__content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-faq__inner {
  position: relative;
  display: flex;
  padding: 3.1rem 14rem 3.6rem 4.5rem;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  transition: padding 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.component-faq__inner a {
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: color;
}
.component-faq__inner:before {
  content: "A";
  color: #d98205;
  font-weight: 700;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  font-size: 4rem;
  line-height: 1;
  width: 7rem;
}
.component-faq__inner:after {
  background: #d7f0fa;
  position: absolute;
  top: 0;
  left: 3rem;
  display: block;
  width: 122rem;
  height: 0.2rem;
  content: "";
}
.component-faq__text {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  letter-spacing: 0.06em;
}
.component-banner-img {
  max-width: 350px;
  margin: 0 auto 3rem;
}
@media screen and (min-width: 769px) {
  .component-banner-img {
    max-width: 700px;
    margin-bottom: 10rem;
  }
}
.component-banner-img .component-arrow {
  display: block;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.component-banner-img .home-solution-body-list__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  padding: 0 1.5rem 1.5rem 3rem;
}
.component-banner-img .home-solution-body-list__heading {
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (min-width: 769px) {
  .component-banner-img .home-solution-body-list__heading {
    font-size: 4rem;
  }
}
.component-ex-banner {
  display: flex !important;
  height: 16rem;
  background-color: rgba(225, 217, 1, 0.2);
  background-image: repeating-linear-gradient(-45deg, #fff, #fff 7px, rgba(225, 225, 225, 0) 0, rgba(225, 225, 225, 0) 14px);
  border: solid 4px #ffd900;
}
@media screen and (max-width: 768px) {
  .component-ex-banner {
    flex-direction: column;
    height: auto;
  }
}
.component-ex-banner__content {
  flex: 1;
  padding: 1.5rem;
}
@media screen and (min-width: 769px) {
  .component-ex-banner__content {
    padding: 3.2rem 6rem;
  }
}
.component-ex-banner__text {
  color: #333;
  font-weight: 500;
  line-height: 1.875;
}
.component-ex-banner__image {
  position: relative;
  overflow: hidden;
  width: 36rem;
}
.component-ex-banner__image .component-button-more {
  display: none;
}
@media screen and (min-width: 769px) {
  .component-ex-banner__image .component-button-more {
    display: flex;
    position: absolute;
    right: 3.2rem;
    bottom: 2.4rem;
  }
}
.component-ex-banner .component-section-heading {
  color: #333;
}
.home-hero {
  position: relative;
}
.home-hero .swiper-slide {
  overflow: hidden;
  height: calc(81.1 * var(--remV));
}
@media screen and (max-width: 768px) {
  .home-hero .swiper-slide {
    height: 46rem;
  }
}
.home-hero .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-hero .swiper-nav {
  position: absolute;
  bottom: 3rem;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 3rem;
  translate: -50% 0;
  z-index: 99;
}
@media screen and (max-width: 768px) {
  .home-hero .swiper-nav {
    bottom: 2rem;
  }
}
.home-hero .swiper-pause {
  width: 1.7rem;
  height: 2rem;
  display: flex;
  justify-content: space-between;
  position: relative;
  background: none;
}
.home-hero .swiper-pause::before, .home-hero .swiper-pause::after {
  display: block;
  width: 0.5rem;
  height: 2rem;
  content: "";
  background-color: #fff;
  transition: scale 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.home-hero .swiper-pause::before {
  transform-origin: center left;
}
.home-hero .swiper-pause.is-started::before {
  scale: 3.5 1;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #fff;
}
.home-hero .swiper-pause.is-started::after {
  scale: 1 0;
}
@media (hover: hover) {
  .home-hero .swiper-pause:hover::before, .home-hero .swiper-pause:hover::after {
    background-color: #0599d9;
  }
}
@media (hover: none) {
  .home-hero .swiper-pause:active::before, .home-hero .swiper-pause:active::after {
    background-color: #0599d9;
  }
}
.home-hero .swiper-pagination {
  display: flex;
  gap: 2rem;
  position: relative;
  bottom: auto;
  width: auto;
}
.home-hero .swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
  margin: 0 !important;
  transition: scale 0.25s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
@media (hover: hover) {
  .home-hero .swiper-pagination-bullet:hover {
    scale: 1.6;
  }
}
@media (hover: none) {
  .home-hero .swiper-pagination-bullet:active {
    scale: 1.6;
  }
}
.home-hero .swiper-pagination-bullet-active {
  width: 1rem;
  height: 1rem;
  scale: 1.6;
  background-color: #0599d9;
}
.home-hero .section__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 9;
  translate: -50% -50%;
}
@media screen and (max-width: 768px) {
  .home-hero .section__inner {
    top: 0;
    translate: -50% 0;
    padding: 3rem;
  }
}
.home-hero__content {
  display: inline-flex;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
  color: #fff;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .home-hero__content {
    align-items: flex-start;
    gap: 1.4rem;
    text-align: left;
  }
}
.home-hero__heading, .home-hero__text {
  translate: 0 2.5rem;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.39, 0.575, 0.565, 1), translate 0.45s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity, transform;
}
.home-hero__heading {
  font-size: 6.4rem;
  line-height: 1.40625;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .home-hero__heading {
    font-size: 3.8rem;
    line-height: 1.2631578947;
  }
}
.home-hero__heading span {
  letter-spacing: 0.15em;
}
.home-hero__text {
  font-size: 2.2rem;
  letter-spacing: 0.175em;
  transition-delay: 0.25s;
}
@media screen and (max-width: 768px) {
  .home-hero__text {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
body.is-loaded .home-hero__heading, body.is-loaded .home-hero__text {
  translate: 0;
  opacity: 1;
}
.home-news {
  padding-top: 5rem;
}
@media screen and (max-width: 768px) {
  .home-news {
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  .home-news .section__inner {
    padding: 0;
  }
}
.home-news .swiper {
  height: 8rem;
  border-radius: 4rem;
  background-color: #f4f5f8;
}
@media screen and (max-width: 768px) {
  .home-news .swiper {
    height: 7rem;
    border-radius: 0;
  }
}
@media screen and (max-width: 768px) {
  .home-news .swiper-wrapper {
    align-items: center;
  }
}
.home-news .swiper-slide {
  display: flex;
  align-items: center;
  padding-right: 16rem;
  padding-left: 6rem;
}
@media screen and (max-width: 768px) {
  .home-news .swiper-slide {
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
    height: 4.5rem;
    padding-right: 7rem;
    padding-left: 2rem;
  }
}
.home-news .swiper-nav {
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  gap: 6rem;
  z-index: 1;
  padding: 0 5rem;
  background-color: #f4f5f8;
}
@media screen and (max-width: 768px) {
  .home-news .swiper-nav {
    gap: 2.4rem;
    padding: 0 1.5rem;
  }
}
.home-news .swiper-nav:before {
  display: block;
  width: 1px;
  height: 2.6rem;
  content: "";
  position: absolute;
  top: calc(50% - 1.3rem);
  right: 9rem;
  background-color: #b9b9bc;
}
@media screen and (max-width: 768px) {
  .home-news .swiper-nav:before {
    top: calc(50% - 0.8rem);
    right: 3.5rem;
    height: 1.6rem;
  }
}
.home-news .swiper-button {
  width: 0.8rem;
  height: 1.4rem;
  position: static;
  margin: 0;
}
@media (hover: hover) {
  .home-news .swiper-button:hover::after {
    translate: 80% 0;
  }
}
@media (hover: none) {
  .home-news .swiper-button:active::after {
    translate: 80% 0;
  }
}
.home-news .swiper-button::after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: url("/assets/img/common/arw_line.svg") no-repeat center/contain;
  font-size: 0;
  transition: translate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate;
}
.home-news .swiper-button-prev {
  right: 11rem;
  left: auto;
  rotate: 180deg;
}
.home-news .swiper-button-next {
  display: flex;
  align-items: center;
  gap: 3rem;
}
.home-news__head {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .home-news__head {
    gap: 2.4rem;
  }
}
.home-news__date, .home-news__tag {
  color: #0599d9;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .home-news__date, .home-news__tag {
    display: inline-block;
    font-size: 1.2rem;
  }
}
.home-news__tag {
  margin-left: 1.8rem;
}
@media screen and (max-width: 768px) {
  .home-news__tag {
    margin-left: 0;
  }
}
.home-news__text {
  flex: 1;
  margin-left: 5.8rem;
}
@media screen and (max-width: 768px) {
  .home-news__text {
    margin-left: 0;
    font-size: 1.4rem;
  }
}
.home-news__text a {
  color: #0599d9;
}
.home-news .component-more {
  margin-top: 0.8rem;
  padding-right: 3rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .home-news .component-more {
    padding-right: 2rem;
  }
}
.home-banner {
  padding: 3.5rem 0 13.2rem;
}
@media screen and (max-width: 768px) {
  .home-banner {
    padding: 3.5rem 0 2.5rem;
  }
}
.home-banner .home-banner-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4rem;
}
.home-banner .home-banner-list__item {
  width: 40rem;
}
@media screen and (max-width: 768px) {
  .home-solution {
    padding-top: 5rem;
  }
}
.home-solution__inner {
  position: relative;
  z-index: 1;
  padding: 13rem 0 8rem;
}
@media screen and (max-width: 768px) {
  .home-solution__inner {
    padding: 4rem 2rem 7rem;
  }
}
.home-solution__background {
  position: absolute;
  top: 0;
  left: 0;
  width: calc((100vw - calc(172 * var(--remV))) / 2 + calc(172 * var(--remV)));
  height: 100%;
  z-index: -1;
  overflow: hidden;
  border-radius: 0 28rem 0 0;
  background-color: #0599d9;
}
@media screen and (max-width: 768px) {
  .home-solution__background {
    width: 100%;
    border-radius: 0;
  }
}
.home-solution__background svg {
  position: absolute;
  top: -33rem;
  right: -29.5rem;
  width: 258.4rem;
  height: 175.5rem;
  display: block;
  max-width: 258.4rem;
}
.home-solution__background svg path {
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
  fill: none;
  stroke: #7bc9eb;
  stroke-width: 0.05rem;
  transition: stroke-dashoffset 5s cubic-bezier(0.23, 1, 0.32, 1);
}
.home-solution__background svg path:nth-of-type(1), .home-solution__background svg path:nth-of-type(4) {
  stroke-dashoffset: -4000;
}
.home-solution__background svg path:nth-of-type(1) {
  transition-duration: 2.8s;
}
.home-solution__background svg path:nth-of-type(4) {
  transition-duration: 3.5s;
}
.home-solution.is-inview .home-solution__background svg path {
  stroke-dashoffset: 0;
}
.home-solution .component-heading {
  width: 100%;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
}
.home-solution .home-solution-head,
.home-solution .home-solution-body,
.home-solution .home-solution-body-list,
.home-solution .home-solution-box,
.home-solution .home-solution-box-list {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head,
  .home-solution .home-solution-body,
  .home-solution .home-solution-body-list,
  .home-solution .home-solution-box,
  .home-solution .home-solution-box-list {
    flex-direction: column;
  }
}
.home-solution .home-solution-head,
.home-solution .home-solution-body {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
}
.home-solution .home-solution-head a,
.home-solution .home-solution-body a {
  display: block;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.home-solution .home-solution-head__content,
.home-solution .home-solution-body__content {
  position: relative;
}
.home-solution .home-solution-head__content::before,
.home-solution .home-solution-body__content::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  border-radius: 3rem 3rem 3rem 0;
  background: linear-gradient(transparent, rgba(51, 51, 51, 0.5));
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head__content::before,
  .home-solution .home-solution-body__content::before {
    border-radius: 2rem 2rem 2rem 0;
    background: linear-gradient(to left, transparent, rgba(51, 51, 51, 0.5));
  }
}
.home-solution .home-solution-head {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head {
    margin-top: 3rem;
  }
}
.home-solution .home-solution-head__image {
  width: 62rem;
  height: 34.1rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head__image {
    width: 100%;
    height: auto;
  }
}
.home-solution .home-solution-head__heading {
  position: absolute;
  bottom: 3rem;
  left: 4rem;
  z-index: 1;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.1;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head__heading {
    bottom: 50%;
    left: 2rem;
    translate: 0 50%;
    font-size: 3rem;
  }
}
.home-solution .home-solution-head__heading small {
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head__heading small {
    font-size: 2.4rem;
  }
}
.home-solution .home-solution-head .component-button-more {
  position: absolute;
  right: 4rem;
  bottom: 4rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head .component-button-more {
    right: 1rem;
    bottom: 1rem;
  }
}
.home-solution .home-solution-head__text {
  margin-top: 2rem;
  padding: 0 6rem;
  color: #fff;
  font-weight: 500;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-head__text {
    margin-top: 1rem;
    padding: 0;
    font-size: 1.4rem;
  }
}
.home-solution .home-solution-body {
  align-items: center;
  margin-top: 7rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body {
    align-items: flex-start;
    gap: 2.8rem;
    margin-top: 5.8rem;
    text-align: left;
  }
}
.home-solution .home-solution-body__heading {
  display: flex;
  justify-content: center;
  flex-direction: column;
  flex: 1;
  height: 100%;
  height: 16.6rem;
  padding-left: 6rem;
  color: #fff;
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body__heading {
    flex-direction: row;
    justify-content: flex-start;
    font-size: 2.4rem;
    padding-left: 0;
  }
}
.home-solution .home-solution-body__heading small {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list {
    gap: 2rem;
    width: 100%;
  }
}
.home-solution .home-solution-body .home-solution-body-list__item {
  width: 30rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__item:nth-of-type(n + 2) {
    padding-top: 2rem;
    border-top: 1px dotted rgba(255, 255, 255, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__item a {
    display: flex;
    gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__item a::before {
    display: none;
  }
}
.home-solution .home-solution-body .home-solution-body-list__image {
  width: 30rem;
  height: 16.6rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__image {
    width: 14rem;
    height: 10rem;
  }
}
.home-solution .home-solution-body .home-solution-body-list__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-solution .home-solution-body .home-solution-body-list__content {
  display: flex;
  align-items: center;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  padding: 0 1.5rem 1.5rem 3rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__content {
    flex: 1;
    align-items: flex-start;
    position: relative;
    padding: 1.5rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__content .component-button-more {
    position: absolute;
    right: 1.2rem;
    bottom: 0;
  }
}
.home-solution .home-solution-body .home-solution-body-list__content--blank::after {
  display: block;
  width: 3rem;
  height: 3rem;
  content: "";
  background-color: #fff;
  mask: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__content--blank::after {
    width: 2rem;
    height: 2rem;
  }
}
.home-solution .home-solution-body .home-solution-body-list__content--blank .component-arrow__target {
  opacity: 0;
}
.home-solution .home-solution-body .home-solution-body-list__heading {
  flex: 1;
  width: 100%;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-body .home-solution-body-list__heading {
    font-size: 2.2rem;
  }
}
.home-solution .home-solution-box {
  width: 100%;
  max-width: 138rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 7rem;
  padding: 4rem 5rem;
  border-radius: 3rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box {
    gap: 2rem;
    margin-top: 5rem;
    padding: 3rem 2rem;
    border-radius: 1rem;
  }
}
.home-solution .home-solution-box__heading {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  letter-spacing: 0.05em;
}
.home-solution .home-solution-box__heading::before, .home-solution .home-solution-box__heading::after {
  display: block;
  width: 2.3rem;
  height: 3.4rem;
  content: "";
  opacity: 0.4;
  background: url("/assets/img/home/deco_heading.svg") no-repeat center/contain;
}
.home-solution .home-solution-box__heading::before {
  margin-top: -1.4rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box__heading::before {
    rotate: 24deg;
    margin-top: -5.4rem;
    margin-right: -1rem;
  }
}
.home-solution .home-solution-box__heading::after {
  margin-bottom: -1.4rem;
  rotate: 180deg;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box__heading::after {
    rotate: 204deg;
    margin-bottom: -2.4rem;
    margin-left: -1rem;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box .home-solution-box-list {
    gap: 1.5rem;
  }
}
.home-solution .home-solution-box .home-solution-box-list__item {
  width: 30rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box .home-solution-box-list__item {
    display: flex;
    align-items: center;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box .home-solution-box-list__item:nth-of-type(n + 2) {
    padding-top: 1.5rem;
    border-top: 1px dotted rgba(5, 153, 217, 0.3);
  }
}
.home-solution .home-solution-box .home-solution-box-list__item a {
  position: relative;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box .home-solution-box-list__image {
    width: 14rem;
    height: 10rem;
  }
}
.home-solution .home-solution-box .home-solution-box-list__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-solution .home-solution-box .home-solution-box-list__text {
  margin-top: 1.6rem;
  color: #0599d9;
  font-weight: 500;
  line-height: 1.5625;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-box .home-solution-box-list__text {
    flex: 1;
    margin-top: 0;
  }
}
.home-solution .home-solution-box .home-solution-box-list__content {
  position: absolute;
  right: 1.5rem;
  bottom: 2.5rem;
}
.home-solution .home-solution-foot {
  padding: 11rem 0 9.5rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot {
    padding: 5rem 0 5.5rem;
  }
}
.home-solution .home-solution-foot__text {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.6666666667;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot__text {
    font-size: 1.6rem;
    text-align: left;
  }
}
.home-solution .home-solution-foot .home-solution-foot-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem 10.5rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list {
    flex-direction: column;
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__item:nth-of-type(n + 2) {
    padding-top: 2rem;
    border-top: 1px dotted rgba(5, 153, 217, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__item a {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
}
@media (hover: hover) {
  .home-solution .home-solution-foot .home-solution-foot-list__item a:hover .home-solution-foot-list__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .home-solution .home-solution-foot .home-solution-foot-list__item a:active .home-solution-foot-list__heading {
    color: #0599d9;
  }
}
.home-solution .home-solution-foot .home-solution-foot-list__image {
  width: 22rem;
  height: 22rem;
  border-radius: 100%;
  overflow: hidden;
  border: 0.5rem solid #f4f5f8;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__image {
    width: 10rem;
    height: 10rem;
    border-width: 0.2rem;
  }
}
.home-solution .home-solution-foot .home-solution-foot-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-solution .home-solution-foot .home-solution-foot-list__heading {
  margin-top: 1rem;
  font-weight: 700;
  font-size: 1.8rem;
  text-align: center;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__heading {
    flex: 1;
    margin-top: 0;
    font-weight: 700;
    font-size: 2rem;
    text-align: left;
  }
}
.home-solution .home-solution-foot .home-solution-foot-list__heading em {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .home-solution .home-solution-foot .home-solution-foot-list__heading em {
    font-size: 1.8rem;
  }
}
.home-case__image {
  position: relative;
  width: 100%;
}
.home-case__image::after {
  display: block;
  width: calc((100vw - calc(172 * var(--remV))) / 2 + calc(172 * var(--remV)));
  height: calc(12 * var(--remV));
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  border-radius: 0 10rem 0 0;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .home-case__image::after {
    display: none;
  }
}
.home-case .home-case-head {
  width: 100%;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  gap: 3rem 5.5rem;
  padding-right: 8rem;
}
@media screen and (max-width: 768px) {
  .home-case .home-case-head {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 5rem;
    padding-right: 0;
  }
}
.home-case .home-case-head .home-case-tab {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .home-case .home-case-head .home-case-tab {
    order: 1;
    margin-top: 0;
    padding-left: 2rem;
  }
}
.home-case .home-case-head .home-case-tab__item button {
  display: flex;
  align-items: center;
  height: 2.6rem;
  padding: 0 1rem 0.2rem 1rem;
  background-color: #ddd;
  font-size: 1.4rem;
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .home-case .home-case-head .home-case-tab__item button:hover {
    background-color: #0599d9;
    color: #fff;
  }
}
@media (hover: none) {
  .home-case .home-case-head .home-case-tab__item button:active {
    background-color: #0599d9;
    color: #fff;
  }
}
.home-case .home-case-head .home-case-tab__item button.is-clicked {
  background-color: #0599d9;
  color: #fff;
  pointer-events: none;
}
.home-case .component-case-index {
  margin-top: 5rem;
}
.home-case .home-case-foot {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 9rem;
}
.home-case .home-case-foot__heading {
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
.home-case .home-case-foot .home-case-logo {
  display: flex;
  flex-wrap: wrap;
  gap: 7.6rem 3.4rem;
  margin-top: 5.1rem;
}
.home-case .home-case-foot .home-case-logo__item {
  width: 18.5rem;
}
.home-case .component-button {
  margin-top: 8rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .home-case .component-button {
    margin-top: 4.5rem;
  }
}
.home-nav {
  padding: 0 0 15rem;
}
@media screen and (max-width: 768px) {
  .home-nav {
    padding: 7rem 0;
  }
}
.home-nav .home-nav-list {
  display: flex;
}
@media screen and (max-width: 768px) {
  .home-nav .home-nav-list {
    flex-direction: column;
    gap: 1px;
  }
}
.home-nav .home-nav-list__item {
  width: 33.3333333333vw;
  height: 18.75vw;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .home-nav .home-nav-list__item {
    width: 100%;
    height: 21.1rem;
  }
}
.home-nav .home-nav-list__item a {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.home-nav .home-nav-list__item a::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  opacity: 0.6;
  background-color: #0599d9;
  transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .home-nav .home-nav-list__item a:hover::before {
    opacity: 0.8;
  }
  .home-nav .home-nav-list__item a:hover img {
    scale: 1.1;
  }
}
@media (hover: none) {
  .home-nav .home-nav-list__item a:active::before {
    opacity: 0.8;
  }
  .home-nav .home-nav-list__item a:active img {
    scale: 1.1;
  }
}
.home-nav .home-nav-list__image {
  width: 100%;
  height: 100%;
}
.home-nav .home-nav-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  transition: scale 1s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.home-nav .home-nav-list__heading {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 3.6rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .home-nav .home-nav-list__heading {
    font-size: 2.4rem;
    justify-content: flex-start;
    left: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .home-nav .home-nav-list .component-button-more {
    position: absolute;
    top: 0;
    right: 2rem;
    bottom: 0;
    display: flex;
    align-items: center;
    z-index: 1;
  }
}
.home-hataraku {
  padding-bottom: 16rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku {
    padding-bottom: 3.5rem;
  }
}
.home-hataraku .home-section__inner {
  width: 100%;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  gap: 7rem 8rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-section__inner {
    flex-direction: column;
  }
}
.home-hataraku__content {
  position: relative;
  z-index: 1;
  width: calc(50 * var(--remV));
  padding-top: 8rem;
}
@media screen and (max-width: 1920px) {
  .home-hataraku__content {
    width: 50rem;
  }
}
@media screen and (max-width: 768px) {
  .home-hataraku__content {
    width: 100%;
    padding-top: 5rem;
  }
}
.home-hataraku__content::before {
  display: block;
  width: calc((100vw - calc(24 * var(--remV))) / 2 + calc(44 * var(--remV)));
  height: calc(100% - 2rem);
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  border-radius: 0 10rem 0 0;
  background-color: #0599d9;
}
@media screen and (max-width: 768px) {
  .home-hataraku__content::before {
    width: 36.5rem;
    height: 38.6rem;
    border-radius: 0 7rem 0 0;
  }
}
.home-hataraku__head {
  display: flex;
  align-items: center;
}
.home-hataraku__head::after {
  display: block;
  width: 2.1rem;
  height: 2.1rem;
  content: "";
  background: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .home-hataraku__head::after {
    margin-top: 1.2rem;
  }
}
.home-hataraku__logo {
  width: 10rem;
  margin-right: 1.2rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku__logo {
    width: 6rem;
  }
}
.home-hataraku__heading {
  color: #fff;
  line-height: 1;
  margin-right: 1.2rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku__heading {
    margin-right: 0.6rem;
  }
}
.home-hataraku__heading-ja {
  display: block;
  padding-right: 0.5rem;
  font-weight: 500;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  text-align: right;
}
.home-hataraku__heading-en {
  display: block;
  margin-top: -0.5rem;
  font-weight: 700;
  font-size: 6.4rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
}
@media screen and (max-width: 768px) {
  .home-hataraku__heading-en {
    font-size: 4rem;
  }
}
.home-hataraku__text {
  margin-top: 1.5rem;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.2222222222;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .home-hataraku__text {
    font-size: 1.5rem;
  }
}
.home-hataraku__illust {
  width: 39rem;
  margin-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku__illust {
    width: 100%;
    max-width: 20.8rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
  }
}
.home-hataraku .home-hataraku-list {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-hataraku-list {
    flex-direction: row;
    overflow: auto;
    width: 100%;
    padding: 0 1rem 1rem 1rem;
  }
}
.home-hataraku .home-hataraku-list__item a {
  display: flex;
  gap: 2.8rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-hataraku-list__item a {
    flex-direction: column;
    gap: 1.6rem;
  }
}
@media (hover: hover) {
  .home-hataraku .home-hataraku-list__item a:hover .home-hataraku-list__heading {
    color: #0599d9;
  }
  .home-hataraku .home-hataraku-list__item a:hover .component-more span::before {
    translate: 50% 0;
  }
}
@media (hover: none) {
  .home-hataraku .home-hataraku-list__item a:active .home-hataraku-list__heading {
    color: #0599d9;
  }
  .home-hataraku .home-hataraku-list__item a:active .component-more span::before {
    translate: 50% 0;
  }
}
.home-hataraku .home-hataraku-list__image {
  overflow: hidden;
  width: 29rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-hataraku-list__image {
    width: 31.8rem;
  }
}
.home-hataraku .home-hataraku-list__content {
  flex: 1;
}
.home-hataraku .home-hataraku-list__data {
  display: flex;
  align-items: center;
  gap: 3rem;
}
.home-hataraku .home-hataraku-list__category {
  display: flex;
  align-items: center;
  height: 2.6rem;
  padding: 0 1.2rem 0.1rem 1.2rem;
  border: 0.2rem solid #0599d9;
  border-radius: 1.3rem;
  color: #0599d9;
  font-weight: 500;
  font-size: 1.2rem;
}
.home-hataraku .home-hataraku-list__date {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  position: relative;
  padding-bottom: 0.2rem;
  color: #999;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
.home-hataraku .home-hataraku-list__date::before {
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  content: "";
  background: url("/assets/img/common/icn_date.svg") no-repeat center/contain;
}
.home-hataraku .home-hataraku-list__heading {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: 0.8rem;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-hataraku-list__heading {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.home-hataraku .home-hataraku-list .component-more {
  margin-top: 1.4rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .home-hataraku .home-hataraku-list .component-more {
    margin-top: 0.8rem;
  }
}
.home-office {
  padding: 10rem 0 10.8rem;
}
@media screen and (max-width: 768px) {
  .home-office {
    padding: 5rem 0;
  }
}
.home-office .home-office-list {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  gap: 2rem 4rem;
  margin-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list {
    flex-direction: column;
    margin-top: 3rem;
  }
}
.home-office .home-office-list__item {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__item {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__item:not(:first-of-type) {
    padding-top: 2rem;
    border-top: 1px dotted rgba(5, 153, 217, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__item a {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
}
@media (hover: hover) {
  .home-office .home-office-list__item a:hover .home-office-list__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .home-office .home-office-list__item a:active .home-office-list__heading {
    color: #0599d9;
  }
}
.home-office .home-office-list__image {
  width: 29rem;
  height: 18rem;
  overflow: hidden;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__image {
    width: 15rem;
    height: 9.3rem;
    border-radius: 0.4rem;
  }
}
.home-office .home-office-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-office .home-office-list__content {
  display: flex;
  gap: 0.6rem 2rem;
  margin-top: 1.4rem;
  padding-right: 1rem;
  padding-left: 0.5rem;
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__content {
    flex: 1;
    flex-direction: column;
    justify-content: center;
    margin-top: 0;
  }
}
.home-office .home-office-list__heading {
  flex: 1;
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .home-office .home-office-list__heading {
    font-size: 2rem;
  }
}
.home-office .component-button {
  margin-top: 6rem;
  text-align: center;
}
.tour-about__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .tour-about__heading {
    font-size: 2.2rem;
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .tour-about__text {
    text-align: center;
  }
}
.tour-about .tour-about-list {
  display: flex;
  justify-content: center;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .tour-about .tour-about-list {
    gap: 2.5rem;
  }
}
.tour-about .tour-about-list__item {
  width: 51.4rem;
}
@media screen and (max-width: 768px) {
  .tour-about .tour-about-list__item {
    width: 100%;
  }
}
.tour-point .tour-point-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5rem 0;
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list {
    gap: 2.5rem 0;
  }
}
.tour-point .tour-point-list__item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 25%;
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list__item {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list__item::before, .tour-point .tour-point-list__item::after {
    scale: 0.5;
    margin: -6rem;
  }
}
.tour-point .tour-point-list__item::before {
  display: block;
  content: "";
  width: 24rem;
  height: 24rem;
  border-radius: 100%;
  background: no-repeat #fff;
}
.tour-point .tour-point-list__item:nth-of-type(1)::before {
  background-image: url("/assets/img/tour/icn_point01.svg");
  background-position: center;
  background-size: 9.2rem;
}
.tour-point .tour-point-list__item:nth-of-type(2) {
  width: 25.1%;
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list__item:nth-of-type(2) {
    width: 50%;
  }
}
.tour-point .tour-point-list__item:nth-of-type(2)::before {
  background-image: url("/assets/img/tour/icn_point02.svg");
  background-position: center 5.6rem;
  background-size: 13.5rem 11.1rem;
}
.tour-point .tour-point-list__item:nth-of-type(3) {
  position: relative;
}
.tour-point .tour-point-list__item:nth-of-type(3)::before {
  background-image: url("/assets/img/tour/icn_point03-01.svg");
  background-position: center;
  background-size: 10.2rem;
}
.tour-point .tour-point-list__item:nth-of-type(3)::after {
  display: block;
  width: 3.4rem;
  height: 2.8rem;
  content: "";
  position: absolute;
  top: 6rem;
  left: 21rem;
  opacity: 0.5;
  background: url("/assets/img/tour/icn_point03-02.svg") no-repeat center/contain;
}
.tour-point .tour-point-list__item:nth-of-type(4) {
  position: relative;
}
.tour-point .tour-point-list__item:nth-of-type(4)::before {
  background-image: url("/assets/img/tour/icn_point04-01.svg");
  background-position: 10.2rem 5.6rem;
  background-size: 6.2rem 13.3rem;
}
.tour-point .tour-point-list__item:nth-of-type(4)::after {
  display: block;
  width: 6.7rem;
  height: 6.8rem;
  content: "";
  position: absolute;
  top: 11.2rem;
  left: 11.4rem;
  background: url("/assets/img/tour/icn_point04-02.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list__item:nth-of-type(4)::after {
    top: 10rem;
    left: 10.4rem;
  }
}
.tour-point .tour-point-list__item:nth-of-type(5)::before {
  background-image: url("/assets/img/tour/icn_point05.svg");
  background-position: center;
  background-size: 10.3rem;
}
.tour-point .tour-point-list__item:nth-of-type(6)::before {
  background-image: url("/assets/img/tour/icn_point06.svg");
  background-position: center;
  background-size: 12.6rem 7.6rem;
}
.tour-point .tour-point-list__item:nth-of-type(7)::before {
  background-image: url("/assets/img/tour/icn_point07.svg");
  background-position: center;
  background-size: 11.2rem 9.7rem;
}
.tour-point .tour-point-list__text {
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.5555555556;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .tour-point .tour-point-list__text {
    font-size: 0.99rem;
  }
}
.tour-flow .tour-flow-list {
  display: flex;
  gap: 2.75rem 5.5rem;
}
@media screen and (max-width: 768px) {
  .tour-flow .tour-flow-list {
    flex-direction: column;
  }
}
.tour-flow .tour-flow-list__item {
  flex: 1;
  overflow: hidden;
  border-radius: 2rem;
  background-color: #fff;
}
.tour-flow .tour-flow-list__image {
  position: relative;
}
.tour-flow .tour-flow-list__image figcaption {
  position: absolute;
  top: 0;
  left: 0;
  width: 11.6rem;
  height: 11.6rem;
  border-radius: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  translate: -45% -45%;
  padding-right: 1.4rem;
  padding-bottom: 1.8rem;
  background-color: #0599d9;
  color: #fff;
  font-weight: 700;
  font-size: 3rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
  letter-spacing: 0.05em;
}
.tour-flow .tour-flow-list__content {
  padding: 3rem 4rem 3rem;
}
@media screen and (max-width: 768px) {
  .tour-flow .tour-flow-list__content {
    padding: 2rem;
  }
}
.tour-flow .tour-flow-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .tour-flow .tour-flow-list__heading {
    font-size: 2.04rem;
  }
}
.tour-office .tour-office-list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .tour-office .tour-office-list {
    gap: 3rem;
  }
}
.tour-office .tour-office-list__item {
  display: flex;
  gap: 5.2rem;
}
@media screen and (max-width: 768px) {
  .tour-office .tour-office-list__item {
    flex-direction: column;
    gap: 2.6rem;
  }
}
.tour-office .tour-office-list__image {
  width: 58rem;
}
@media screen and (max-width: 768px) {
  .tour-office .tour-office-list__image {
    width: 100%;
  }
}
.tour-office .tour-office-list__content {
  flex: 1;
}
.tour-office .tour-office-list__heading {
  font-weight: 700;
  font-size: 3rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .tour-office .tour-office-list__heading {
    font-size: 2.55rem;
  }
}
.tour-office .tour-office-list .tour-office-list-sub {
  display: flex;
  flex-direction: column;
}
.tour-office .tour-office-list .tour-office-list-sub__item {
  display: flex;
  gap: 1rem;
}
.tour-office .tour-office-list .tour-office-list-sub__heading {
  flex-shrink: 0;
  width: 9rem;
}
@media screen and (max-width: 768px) {
  .tour-office .tour-office-list .tour-office-list-sub__heading {
    width: 6.75rem;
  }
}
.company-index__text {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .company-index__text {
    font-size: 2rem;
  }
}
.company-index .company-index-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7.5rem 6rem;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-list {
    flex-direction: column;
    gap: 2.5rem;
  }
}
.company-index .company-index-list__item {
  width: calc(33.3333% - 4rem);
}
@media screen and (max-width: 768px) {
  .company-index .company-index-list__item {
    width: 100%;
  }
}
@media (hover: hover) {
  .company-index .company-index-list__item a:hover .company-index-list__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .company-index .company-index-list__item a:active .company-index-list__heading {
    color: #0599d9;
  }
}
.company-index .company-index-list__image {
  width: 38.6rem;
  height: 23rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-list__image {
    width: 100%;
  }
}
.company-index .company-index-list__image .component-arrow__target {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
}
.company-index .company-index-list__heading {
  font-weight: 700;
  font-size: 2.4rem;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.company-index .company-index-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem 2rem;
  padding: 3.6rem 3.6rem 3.6rem 6rem;
  background: url("/assets/img/common/bg_line.webp") no-repeat center/contain #eefaff;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-box {
    flex-direction: column;
    padding: 3rem;
    background: #eefaff;
  }
}
.company-index .company-index-box__heading a {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-box__heading a {
    font-size: 2.04rem;
    line-height: 1.3;
  }
}
@media (hover: hover) {
  .company-index .company-index-box__heading a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .company-index .company-index-box__heading a:active {
    color: #0599d9;
  }
}
.company-index .company-index-box__heading a .component-arrow__target {
  flex-shrink: 0;
}
.company-index .company-index-box__text {
  padding-left: 5rem;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-box__text {
    padding-left: 6rem;
  }
}
.company-index .company-index-box__image {
  display: flex;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-box__image {
    flex-direction: column;
    width: 100%;
  }
}
.company-index .company-index-box__image-item {
  width: 29.8rem;
}
@media screen and (max-width: 768px) {
  .company-index .company-index-box__image-item {
    width: 100%;
  }
}
.company-movie {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .company-movie .component-section-heading-large {
    align-items: flex-start;
    font-size: 3rem;
    text-align: left;
  }
}
.company-movie__text {
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company-movie__text {
    text-align: left;
  }
}
.company-movie__content iframe {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 768px) {
  .company-movie__content iframe {
    width: 31.6rem;
    height: 17.7rem;
  }
}
.company-message .section__inner {
  display: flex;
  gap: 3rem 6rem;
}
@media screen and (max-width: 768px) {
  .company-message .section__inner {
    flex-direction: column;
  }
}
.company-message__image {
  width: 40rem;
}
@media screen and (max-width: 768px) {
  .company-message__image {
    width: 100%;
    max-width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.company-message__content {
  flex: 1;
}
.company-message__content > *:first-child {
  margin-top: 0 !important;
}
.company-message__text {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .company-message__text {
    margin-top: 1.5rem;
  }
}
.company-message__name {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .company-message__name {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1rem;
  }
}
.company-message__name em {
  font-weight: 700;
}
.company-message__name img {
  width: 12.8rem;
}
.company-message__name:has(em) img {
  margin-top: 1rem;
  margin-left: auto;
}
.company-vision__head {
  width: 100%;
  max-width: 99.2rem;
  margin-left: auto;
  margin-right: auto;
  color: #0599d9;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.company-vision__head--en {
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .company-vision__head--en .company-vision__heading {
    font-size: 2.52rem;
  }
}
.company-vision__subheading {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .company-vision__subheading {
    flex-direction: column;
    font-size: 2.6rem;
    line-height: 1.2;
  }
}
.company-vision__subheading em {
  font-size: 4.8rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .company-vision__subheading em {
    font-size: 2.6rem;
  }
}
.company-vision__heading {
  border-top: 1px solid #0599d9;
  font-size: 5.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company-vision__heading {
    font-size: 3.64rem;
    line-height: 1.4;
  }
}
.company-vision .company-vision-list {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list {
    gap: 5rem;
  }
}
.company-vision .company-vision-list.component-logo-blue {
  position: relative;
}
.company-vision .company-vision-list.component-logo-blue::before {
  position: absolute;
  top: 0;
  left: calc(50% - 1.5rem);
}
.company-vision .company-vision-list__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list__item {
    flex-direction: column;
  }
}
.company-vision .company-vision-list__head {
  width: 30rem;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list__head {
    width: auto;
  }
}
.company-vision .company-vision-list__heading {
  color: #0599d9;
  font-weight: 700;
}
.company-vision .company-vision-list__heading-en {
  display: block;
  font-size: 5.6rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list__heading-en {
    font-size: 3.64rem;
    line-height: 1;
  }
}
.company-vision .company-vision-list__heading-ja {
  letter-spacing: 0.1em;
}
.company-vision .company-vision-list__body {
  flex: 1;
}
.company-vision .company-vision-list__subheading {
  font-weight: 700;
  font-size: 4.8rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list__subheading {
    font-size: 3.12rem;
  }
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list--en .company-vision-list__heading-en {
    font-size: 2.52rem;
  }
}
.company-vision .company-vision-list--en .company-vision-list__subheading {
  padding-left: 1em;
  text-indent: -1em;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-list--en .company-vision-list__subheading {
    font-size: 1.68rem;
  }
}
.company-vision .company-vision-box {
  position: relative;
  padding: 2.5rem 14.4rem 5rem 14.4rem;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-box {
    padding: 2rem;
  }
}
.company-vision .company-vision-box__heading, .company-vision .company-vision-box__text {
  color: #0599d9;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.company-vision .company-vision-box__heading {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-box__heading {
    font-size: 2.6rem;
    line-height: 1.4;
  }
}
.company-vision .company-vision-box__text {
  border-top: 1px solid #0599d9;
}
.company-vision .company-vision-box .company-vision-box-list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  counter-reset: vision 0;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-box .company-vision-box-list__item {
    display: flex;
    gap: 1rem;
  }
}
.company-vision .company-vision-box .company-vision-box-list__item::before {
  margin-right: 3.6rem;
  color: #0599d9;
  font-weight: 700;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  counter-increment: vision;
  content: "0" counter(vision);
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-box .company-vision-box-list__item::before {
    flex-shrink: 0;
    margin-right: 0;
  }
}
.company-vision .company-vision-box .company-vision-box-list__item em {
  font-weight: 700;
}
.company-vision .company-vision-box__image {
  position: absolute;
  right: 7.2rem;
  bottom: 4.6rem;
  width: 22.8rem;
  height: 22.8rem;
  border-radius: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .company-vision .company-vision-box__image {
    position: static;
    margin: 2rem auto 0;
  }
}
.company-outline .component-more {
  text-align: right;
}
.company-outline__content {
  display: flex;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .company-outline__content {
    flex-direction: column;
  }
}
.company-outline .company-outline-list {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .company-outline .company-outline-list:nth-of-type(n + 2) {
    margin-top: 1.6rem;
    padding-top: 1.6rem;
    border-top: 1px solid #0599d9;
  }
}
.company-outline .company-outline-list__item {
  display: flex;
  gap: 0 1rem;
  padding-left: 0.5rem;
}
@media screen and (max-width: 768px) {
  .company-outline .company-outline-list__item {
    flex-direction: column;
  }
}
.company-outline .company-outline-list__item:nth-of-type(n + 2) {
  margin-top: 1.6rem;
  padding-top: 1.6rem;
  border-top: 1px solid #0599d9;
}
.company-outline .company-outline-list__heading {
  width: 15rem;
  color: #0599d9;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .company-outline .company-outline-list__heading {
    width: 100%;
  }
}
.company-outline .company-outline-list__text {
  flex: 1;
}
.company-office .company-office-list {
  display: flex;
  flex-direction: column;
  gap: 7.5rem;
}
.company-office .company-office-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .company-office .company-office-list__heading {
    font-size: 2.72rem;
  }
}
.company-office .company-office-list .company-office-sub {
  display: flex;
  flex-wrap: wrap;
  gap: 0 7rem;
}
@media screen and (max-width: 768px) {
  .company-office .company-office-list .company-office-sub {
    flex-direction: column;
    gap: 0;
  }
}
.company-office .company-office-list .company-office-sub__item {
  width: calc(50% - 3.5rem);
}
@media screen and (max-width: 768px) {
  .company-office .company-office-list .company-office-sub__item {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .company-office .company-office-list .company-office-sub__item:nth-of-type(n + 3) {
    margin-top: 4rem;
    padding-top: 2rem;
    border-top: 1px solid #0599d9;
  }
}
@media screen and (max-width: 768px) {
  .company-office .company-office-list .company-office-sub__item:nth-of-type(n + 2) {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #0599d9;
  }
}
.company-office .company-office-list .company-office-sub__heading {
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .company-office .company-office-list .company-office-sub__heading {
    font-size: 2.04rem;
  }
}
.company-history .company-history-list {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }
}
.company-history .company-history-list::before {
  display: block;
  width: 0.2rem;
  height: calc(100% - 2rem);
  content: "";
  position: absolute;
  top: 0.8rem;
  left: 11rem;
  translate: -50% 0;
  background: linear-gradient(#0599d9 70%, #eefaff);
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list::before {
    left: 0;
  }
}
.company-history .company-history-list__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__item {
    flex-wrap: wrap;
  }
}
.company-history .company-history-list__item:not(:last-of-type) .company-history-list__heading, .company-history .company-history-list__item:not(:last-of-type) .company-history-list__month, .company-history .company-history-list__item:not(:last-of-type) .company-history-list__text {
  padding-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__item:not(:last-of-type) .company-history-list__heading, .company-history .company-history-list__item:not(:last-of-type) .company-history-list__month, .company-history .company-history-list__item:not(:last-of-type) .company-history-list__text {
    padding-bottom: 0;
  }
}
.company-history .company-history-list__heading, .company-history .company-history-list__month {
  color: #0599d9;
  font-weight: 700;
}
.company-history .company-history-list__heading {
  position: relative;
  width: 11rem;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__heading {
    width: auto;
    padding-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__heading:empty {
    display: none;
  }
}
.company-history .company-history-list__heading:not(:empty)::after {
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  position: absolute;
  top: 0.8rem;
  right: 0;
  translate: 50% 0;
  border-radius: 50%;
  background-color: #0599d9;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__heading:not(:empty)::after {
    top: 0.5rem;
    right: auto;
    left: 0;
    translate: -50% 0;
  }
}
.company-history .company-history-list__month {
  width: 9rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__month {
    width: auto;
    padding-left: 2rem;
  }
}
.company-history .company-history-list__text {
  padding-left: 5rem;
}
@media screen and (max-width: 768px) {
  .company-history .company-history-list__text {
    width: 100%;
    padding-left: 2rem;
  }
}
.company-privacy .company-privacy-list {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .company-privacy .company-privacy-list {
    gap: 2rem;
  }
}
.company-privacy .company-privacy-list__heading {
  padding-bottom: 1.8rem;
  border-bottom: 1px solid #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .company-privacy .company-privacy-list__heading {
    padding-bottom: 0.9rem;
    font-size: 2.04rem;
  }
}
.company-privacy .company-privacy-list__content > *:first-of-type {
  margin-top: 0 !important;
}
.company-privacy .company-privacy-list__text {
  margin-top: 2.5rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .company-privacy .company-privacy-list__text {
    margin-top: 1.25rem;
  }
}
.company-privacy .company-privacy-list__text a {
  color: #0599d9;
}
@media (hover: hover) {
  .company-privacy .company-privacy-list__text a:hover {
    text-decoration: underline;
  }
}
@media (hover: none) {
  .company-privacy .company-privacy-list__text a:active {
    text-decoration: underline;
  }
}
.company-privacy .company-privacy-list__text--indent {
  padding-left: 2rem;
}
.company-privacy .company-privacy-list__text--unindent {
  padding-left: 2rem;
  text-indent: -2rem;
}
.company-privacy__note {
  line-height: 1.5;
  text-align: right;
}
.sustainability-header {
  overflow: hidden;
}
.sustainability-header__inner {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  gap: 4rem 8rem;
}
@media screen and (max-width: 768px) {
  .sustainability-header__inner {
    flex-direction: column;
  }
}
.sustainability-header__image {
  position: relative;
  z-index: 1;
  width: 56.7rem;
  padding: 4rem 0;
}
@media screen and (max-width: 768px) {
  .sustainability-header__image {
    width: 100%;
    padding-right: 2rem;
    padding: 2rem 2.8rem 2rem 0;
  }
}
.sustainability-header__image::before {
  display: block;
  width: calc(100vw - 160rem + 19rem);
  height: 100%;
  content: "";
  position: absolute;
  top: 50%;
  right: 37.8rem;
  z-index: -1;
  translate: 0 -50%;
  background-color: #0599d9;
}
@media screen and (max-width: 1920px) {
  .sustainability-header__image::before {
    width: calc(96rem + 19rem);
  }
}
@media screen and (max-width: 768px) {
  .sustainability-header__image::before {
    left: 0;
    width: 33.33%;
  }
}
.sustainability-header__content {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .sustainability-header__content {
    padding-right: 2.8rem;
    padding-left: 2.8rem;
  }
}
.sustainability-header__text {
  margin-top: 3rem;
  line-height: 1.875;
}
.sustainability-header__text:nth-of-type(n + 2) {
  margin-top: 2rem;
}
.sustainability-header__signature {
  font-size: 1.4rem;
  text-align: right;
}
.sustainability-header__signature img {
  width: 20.3rem;
  margin-left: auto;
}
@media screen and (min-width: 769px) {
  .sustainability-header--reverse .sustainability-header__inner {
    flex-direction: row-reverse;
    align-items: flex-start;
  }
}
.sustainability-header--reverse .sustainability-header__image::before {
  left: 37.8rem;
  right: auto;
}
@media screen and (max-width: 768px) {
  .sustainability-header--reverse .sustainability-header__image::before {
    left: 0;
    width: 33.33%;
  }
}
.sustainability-materiality .component-section-heading-small,
.sustainability-health .component-section-heading-small {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 1.8rem;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .component-section-heading-small,
  .sustainability-health .component-section-heading-small {
    gap: 0.9rem;
  }
}
.sustainability-materiality .component-section-heading-small span,
.sustainability-health .component-section-heading-small span {
  font-size: 4rem;
  font-weight: 700;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .component-section-heading-small span,
  .sustainability-health .component-section-heading-small span {
    font-size: 3rem;
  }
}
.sustainability-materiality {
  overflow: hidden;
}
.sustainability-materiality__item {
  display: flex;
  gap: 2rem 4rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__item {
    flex-direction: column;
  }
}
.sustainability-materiality__item::before, .sustainability-materiality__item::after {
  display: block;
  content: "";
  background-color: rgba(5, 153, 217, 0.2);
  z-index: -1;
}
.sustainability-materiality__item::before {
  width: 25.4rem;
  height: 25.4rem;
  border-radius: 100%;
}
.sustainability-materiality__item::after {
  width: 16rem;
  height: 16rem;
  border-radius: 100%;
}
.sustainability-materiality__item--01, .sustainability-materiality__item--03 {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__item--01, .sustainability-materiality__item--03 {
    flex-direction: column;
  }
}
.sustainability-materiality__item--01 {
  align-items: center;
}
.sustainability-materiality__item--01::before {
  position: absolute;
  top: -16rem;
  right: -13.6rem;
}
.sustainability-materiality__item--01::after {
  position: absolute;
  top: -4rem;
  right: -24.2rem;
}
.sustainability-materiality__item--02::before {
  position: absolute;
  top: -7.6rem;
  left: -14.4rem;
}
.sustainability-materiality__item--02::after {
  position: absolute;
  top: -11rem;
  left: -24.6rem;
}
.sustainability-materiality__item--03::before {
  position: absolute;
  top: -9.2rem;
  right: -13.8rem;
}
.sustainability-materiality__item--03::after {
  position: absolute;
  top: -15rem;
  right: -23rem;
}
.sustainability-materiality__image {
  width: 56.7rem;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__image {
    width: 100%;
  }
}
.sustainability-materiality__content {
  flex: 1;
}
.sustainability-materiality .sustainability-materiality-list {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .sustainability-materiality-list {
    gap: 1.5rem;
  }
}
.sustainability-materiality .sustainability-materiality-list__item {
  display: flex;
  gap: 2rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .sustainability-materiality-list__item {
    gap: 1rem;
  }
}
.sustainability-materiality .sustainability-materiality-list__item::before {
  display: block;
  width: 2.2rem;
  height: 1.9rem;
  content: "";
  flex-shrink: 0;
  margin-top: 0.8rem;
  background: url("/assets/img/common/icn_check.svg") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .sustainability-materiality-list__item::before {
    display: block;
    width: 1.65rem;
    height: 1.425rem;
    content: "";
    margin-top: 0.4rem;
  }
}
.sustainability-materiality .sustainability-materiality-list__item a {
  color: #0599d9;
  text-decoration: underline;
}
@media (hover: hover) {
  .sustainability-materiality .sustainability-materiality-list__item a:hover {
    text-decoration: none;
  }
}
@media (hover: none) {
  .sustainability-materiality .sustainability-materiality-list__item a:active {
    text-decoration: none;
  }
}
.sustainability-materiality .sustainability-materiality-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  padding: 1rem 3rem;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .sustainability-materiality-box {
    flex-direction: column;
    gap: 0.3rem;
  }
}
.sustainability-materiality .sustainability-materiality-box__item {
  width: calc(50% - 1.5rem);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality .sustainability-materiality-box__item {
    width: 100%;
  }
}
.sustainability-health .section__inner {
  padding: 6rem 9rem 10rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .sustainability-health .section__inner {
    padding: 2rem;
  }
}
.sustainability-health__heading {
  width: 100%;
  max-width: 28.2rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .sustainability-health__heading {
    max-width: 23.97rem;
  }
}
.sustainability-health__figure {
  width: 100%;
  overflow: auto;
  padding-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health__figure img {
    width: 76.8rem;
    max-width: 76.8rem;
  }
}
.sustainability-health__content {
  flex: 1;
}
.sustainability-health__subheading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .sustainability-health__subheading {
    font-size: 2.04rem;
  }
}
.sustainability-health__text {
  line-height: 1.875;
}
.sustainability-health__text a {
  color: #0599d9;
  text-decoration: underline;
}
@media (hover: hover) {
  .sustainability-health__text a:hover {
    text-decoration: none;
  }
}
@media (hover: none) {
  .sustainability-health__text a:active {
    text-decoration: none;
  }
}
.sustainability-health .sustainability-health-about,
.sustainability-health .sustainability-health-case,
.sustainability-health .sustainability-health-row {
  display: flex;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-about,
  .sustainability-health .sustainability-health-case,
  .sustainability-health .sustainability-health-row {
    flex-direction: column;
  }
}
.sustainability-health .sustainability-health-about__item,
.sustainability-health .sustainability-health-case__item,
.sustainability-health .sustainability-health-row__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-about__item,
  .sustainability-health .sustainability-health-case__item,
  .sustainability-health .sustainability-health-row__item {
    flex-direction: column;
  }
}
.sustainability-health .sustainability-health-about {
  flex-direction: column;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-about {
    gap: 3rem;
  }
}
.sustainability-health .sustainability-health-about__item {
  gap: 1.6rem;
}
.sustainability-health .sustainability-health-about__image {
  width: 36.5rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-about__image {
    width: 100%;
    max-width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.sustainability-health .sustainability-health-case {
  flex-direction: column;
  gap: 8rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-case {
    gap: 4rem;
  }
}
.sustainability-health .sustainability-health-case__item {
  gap: 5.4rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-case__item {
    gap: 2.7rem;
  }
}
.sustainability-health .sustainability-health-case__item:nth-of-type(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-case__item:nth-of-type(odd) {
    flex-direction: column;
  }
}
.sustainability-health .sustainability-health-case__image {
  width: 44.2rem;
}
@media screen and (max-width: 768px) {
  .sustainability-health .sustainability-health-case__image {
    width: 100%;
  }
}
.sustainability-health .sustainability-health-case__image:has(:nth-of-type(n + 2)) {
  position: relative;
  z-index: 1;
  height: 25rem;
}
.sustainability-health .sustainability-health-case__image:has(:nth-of-type(n + 2)) img {
  width: 25.4rem;
}
.sustainability-health .sustainability-health-case__image:has(:nth-of-type(n + 2)) img:nth-of-type(2) {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.sustainability-health .sustainability-health-row {
  gap: 5rem;
}
.sustainability-health .sustainability-health-row__item {
  flex-direction: column;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .sustainability-sdgs__figure {
    overflow: auto;
    padding-bottom: 2rem;
  }
}
.sustainability-sdgs__figure img {
  width: 100%;
  max-width: 127.8rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .sustainability-sdgs__figure img {
    width: 75rem;
    max-width: 75rem;
  }
}
.company-satelliteoffice__logo {
  width: 100%;
  max-width: 35rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .company-satelliteoffice__logo {
    max-width: 17.5rem;
  }
}
.company-satelliteoffice__text {
  font-size: 2.2rem;
  line-height: 2.1818181818;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company-satelliteoffice__text {
    font-size: 1.43rem;
  }
}
.company-satelliteoffice__text:nth-of-type(n + 2) {
  margin-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .company-satelliteoffice__text:nth-of-type(n + 2) {
    margin-top: 2.25rem;
  }
}
.solution-facility__note {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 2.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-facility__note {
    font-size: 1.8rem;
    line-height: 2;
    text-align: left;
  }
}
.solution-facility__image {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
}
.solution-facility .solution-facility-list {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .solution-facility .solution-facility-list {
    gap: 3.5rem;
  }
}
.solution-facility .solution-facility-list__item {
  display: flex;
  align-items: center;
  gap: 5.8rem;
}
@media screen and (max-width: 768px) {
  .solution-facility .solution-facility-list__item {
    flex-direction: column;
    gap: 2.9rem;
  }
}
.solution-facility .solution-facility-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .solution-facility .solution-facility-list__image {
    width: 100%;
  }
}
.solution-facility .solution-facility-list__content {
  flex: 1;
}
.solution-facility .solution-facility-list__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.solution-facility .solution-facility-list__head.solution-facility-list__head--blank-link {
  justify-content: start;
  gap: 1.8rem;
  color: #0599d9;
}
.solution-facility .solution-facility-list__head.solution-facility-list__head--blank-link::after {
  display: block;
  width: 2.1rem;
  height: 2.1rem;
  content: "";
  margin-top: 1.2rem;
  background-color: #0599d9;
  mask: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
}
.solution-facility .solution-facility-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .solution-facility .solution-facility-list__heading {
    font-size: 2.6rem;
  }
}
.solution-education-banner .solution-education-banner-list {
  display: flex;
  justify-content: center;
  gap: 6.8rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .solution-education-banner .solution-education-banner-list {
    gap: 1.7rem;
  }
}
.solution-education-banner .solution-education-banner-list__item {
  width: 50.7rem;
}
@media screen and (max-width: 768px) {
  .solution-education-banner .solution-education-banner-list__item {
    width: 100%;
  }
}
.solution-education-reason .solution-education-reason-list {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list {
    gap: 3.5rem;
  }
}
.solution-education-reason .solution-education-reason-list__item {
  display: flex;
  align-items: center;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list__item {
    flex-direction: column;
    gap: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .solution-education-reason .solution-education-reason-list__item:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}
.solution-education-reason .solution-education-reason-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list__image {
    width: 100%;
    max-width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.solution-education-reason .solution-education-reason-list__content {
  flex: 1;
}
.solution-education-reason .solution-education-reason-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 2.0833333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list__heading {
    font-size: 1.8rem;
    line-height: 1.4;
  }
}
.solution-education-reason .solution-education-reason-list__text {
  line-height: 1.875;
}
.solution-education-reason .solution-education-reason-list__text:nth-of-type(1) {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list__text:nth-of-type(1) {
    margin-top: 1rem;
  }
}
.solution-education-reason .solution-education-reason-list__text:nth-of-type(n + 2) {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .solution-education-reason .solution-education-reason-list__text:nth-of-type(n + 2) {
    margin-top: 1.25rem;
  }
}
.solution-education-about .solution-education-about-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 4rem;
}
@media screen and (max-width: 768px) {
  .solution-education-about .solution-education-about-list {
    flex-direction: column;
  }
}
.solution-education-about .solution-education-about-list__item {
  width: calc(50% - 2rem);
}
@media screen and (max-width: 768px) {
  .solution-education-about .solution-education-about-list__item {
    width: 100%;
  }
}
.solution-education-about .solution-education-about-list__image {
  position: relative;
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .solution-education-about .solution-education-about-list__image {
    width: 100%;
  }
}
.solution-education-about .solution-education-about-list__image figcaption {
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  height: 4rem;
  padding: 0 2.2rem 0.1rem 2.2rem;
  color: #fff;
  background-color: rgba(5, 153, 217, 0.8);
  letter-spacing: 0.05em;
}
.solution-education-about .solution-education-about-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
.solution-education-about .solution-education-about-list__text em {
  color: #0599d9;
}
.solution-education-feature__heading {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 4rem;
}
.solution-education-feature .solution-education-feature-list {
  display: flex;
  justify-content: center;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-education-feature .solution-education-feature-list {
    flex-direction: column;
  }
}
.solution-education-feature .solution-education-feature-list__item {
  width: 100%;
}
.solution-education-feature .solution-education-feature-list__item:nth-of-type(1) .solution-education-feature-list__image img {
  width: 15.3rem;
}
.solution-education-feature .solution-education-feature-list__item:nth-of-type(2) .solution-education-feature-list__image img {
  width: 14.6rem;
}
.solution-education-feature .solution-education-feature-list__item:nth-of-type(3) .solution-education-feature-list__image img {
  width: 16.7rem;
}
.solution-education-feature .solution-education-feature-list__text {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 10.6rem;
  position: relative;
  margin-bottom: 2rem;
  text-align: center;
}
.solution-education-feature .solution-education-feature-list__text::after {
  display: block;
  width: 3rem;
  height: 2rem;
  content: "";
  position: absolute;
  bottom: -2rem;
  left: calc(50% - 1.25rem);
  background: url("/assets/img/solution/education/arw_round.svg") no-repeat center/contain;
}
.solution-education-feature .solution-education-feature-list__image {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: 19.3rem;
}
.solution-education-feature .solution-education-problem {
  position: relative;
  margin-bottom: 7.5rem;
}
.solution-education-feature .solution-education-problem::after {
  display: block;
  width: 13.5rem;
  height: 7.5rem;
  content: "";
  position: absolute;
  bottom: -7.5rem;
  left: calc(50% - 6.75rem);
  background-color: #eefaff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.solution-education-feature .solution-education-problem .solution-education-problem-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7.5rem 4.5rem;
}
@media screen and (max-width: 768px) {
  .solution-education-feature .solution-education-problem .solution-education-problem-list {
    flex-direction: column;
    gap: 3.75rem;
  }
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item {
  position: relative;
  width: 39.5rem;
  padding: 3rem 3.8rem;
  border-radius: 0.5rem;
  box-shadow: 0.8rem 0.8rem 2rem rgba(68, 76, 85, 0.1);
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .solution-education-feature .solution-education-problem .solution-education-problem-list__item {
    width: 100%;
  }
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item::before {
  display: block;
  width: 1.2rem;
  height: 3rem;
  content: "";
  position: absolute;
  top: -1.5rem;
  left: calc(50% - 0.6rem);
  background-color: rgba(5, 153, 217, 0.5);
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(1)::before, .solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(5)::before {
  rotate: 45deg;
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(2)::before, .solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(4)::before, .solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(7)::before {
  rotate: -30deg;
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(3)::before, .solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(8)::before {
  rotate: -65deg;
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__item:nth-of-type(6)::before {
  rotate: -45deg;
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  text-align: center;
}
.solution-education-feature .solution-education-problem .solution-education-problem-list__text {
  line-height: 1.875;
  letter-spacing: 0.05em;
}
.solution-education-feature__image {
  display: flex;
  gap: 9rem;
}
@media screen and (max-width: 768px) {
  .solution-education-feature__image {
    flex-direction: column;
    gap: 4.5rem;
    height: auto;
  }
}
.solution-education-feature__image-item {
  width: calc((100% - 9rem) / 2);
}
@media screen and (max-width: 768px) {
  .solution-education-feature__image-item {
    width: 100%;
  }
}
.solution-education-feature__text {
  width: 100%;
  max-width: 66rem;
  margin-left: auto;
  margin-right: auto;
}
.solution-education-feature__note {
  color: #0599d9;
  font-size: 2.1rem;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-education-feature__note {
    font-size: 1.575rem;
    text-align: left;
  }
}
.solution-education-case .solution-education-case-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6.8rem 0;
}
.solution-education-case .solution-education-case-list__item {
  position: relative;
  width: 50%;
  padding-bottom: 3.8rem;
  padding-left: 5.5rem;
}
@media screen and (max-width: 768px) {
  .solution-education-case .solution-education-case-list__item {
    width: 100%;
  }
}
.solution-education-case .solution-education-case-list__image {
  width: 56rem;
}
@media screen and (max-width: 768px) {
  .solution-education-case .solution-education-case-list__image {
    width: 100%;
  }
}
.solution-education-case .solution-education-case-list__button a {
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 44.2rem;
  height: 8.4rem;
  padding-right: 4.2rem;
  border: 0.2rem solid #0599d9;
  background-color: #fff;
  text-align: center;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .solution-education-case .solution-education-case-list__button a {
    width: 100%;
    padding: 0 2.1rem;
  }
}
@media (hover: hover) {
  .solution-education-case .solution-education-case-list__button a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .solution-education-case .solution-education-case-list__button a:active {
    color: #0599d9;
  }
}
.solution-education-case .solution-education-case-list__button a span:nth-of-type(1) {
  flex: 1;
}
.solution-healthcare-strength__heading {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength__heading {
    gap: 2rem;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list {
  width: 100%;
  max-width: fit-content;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 6.5rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength .solution-healthcare-strength-list {
    gap: 3.25rem;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list__item {
  display: flex;
  align-items: center;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength .solution-healthcare-strength-list__item {
    flex-direction: column;
    gap: 0.4rem;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list__number {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  width: 12.5rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 8rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength .solution-healthcare-strength-list__number {
    width: auto;
    font-size: 5.2rem;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list__number::after {
  display: block;
  width: 0.5rem;
  height: 5.8rem;
  content: "";
  border-radius: 0.5rem;
  background-color: #d7f0fa;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength .solution-healthcare-strength-list__number::after {
    display: none;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-strength .solution-healthcare-strength-list__heading {
    font-size: 1.8rem;
    text-align: center;
  }
}
.solution-healthcare-strength .solution-healthcare-strength-list__text em {
  color: #0599d9;
}
.solution-healthcare-solution .solution-healthcare-solution-list {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list {
    gap: 3.5rem;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__head {
  display: flex;
  gap: 5.6rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__head {
    flex-direction: column;
    gap: 1.4rem;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__image {
    width: 100%;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__content {
  flex: 1;
  position: relative;
  padding-top: 0.5rem;
}
.solution-healthcare-solution .solution-healthcare-solution-list__body {
  background: #eefaff;
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), padding 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  margin-top: 1.6rem;
  padding: 0 12.6rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__body {
    padding: 0 2rem;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__body.is-clicked {
  grid-template-rows: 1fr;
  padding: 9.2rem 12.6rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__body.is-clicked {
    padding: 2rem;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__body-inner {
  overflow: hidden;
}
.solution-healthcare-solution .solution-healthcare-solution-list__button {
  position: absolute;
  right: 0;
  bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button {
    position: static;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button {
  display: flex;
  align-items: center;
  gap: 2rem;
  color: #0599d9;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  background: none;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button button {
    margin-left: auto;
  }
}
@media (hover: hover) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button button:hover span {
    background-color: #0599d9;
  }
  .solution-healthcare-solution .solution-healthcare-solution-list__button button:hover span::before, .solution-healthcare-solution .solution-healthcare-solution-list__button button:hover span::after {
    background-color: #fff;
  }
}
@media (hover: none) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button button:active span {
    background-color: #0599d9;
  }
  .solution-healthcare-solution .solution-healthcare-solution-list__button button:active span::before, .solution-healthcare-solution .solution-healthcare-solution-list__button button:active span::after {
    background-color: #fff;
  }
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button span {
  width: 5rem;
  height: 5rem;
  border-radius: 100%;
  position: relative;
  border: 0.2rem solid #0599d9;
  background-color: #fff;
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1), border-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button span::before, .solution-healthcare-solution .solution-healthcare-solution-list__button button span::after {
  display: block;
  width: 1.5rem;
  height: 1px;
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: calc(50% - 0.75rem);
  background-color: #0599d9;
  transition: rotate 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button span::after {
  rotate: 90deg;
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked {
  color: #bfbfbf;
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked span {
  background-color: #bfbfbf;
  border-color: #bfbfbf;
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked span::before, .solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked span::after {
  background-color: #fff;
}
.solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked span::after {
  rotate: 180deg;
}
@media (hover: hover) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked:hover span {
    background-color: #666;
    border-color: #666;
  }
}
@media (hover: none) {
  .solution-healthcare-solution .solution-healthcare-solution-list__button button.is-clicked:active span {
    background-color: #666;
    border-color: #666;
  }
}
.solution-healthcare-accordion-list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion-list {
    flex-direction: column;
    gap: 2rem;
  }
}
.solution-healthcare-accordion-list__item {
  width: 45.4rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion-list__item {
    width: 100%;
  }
}
.solution-healthcare-accordion-list__image {
  width: 45.4rem;
  height: 20.2rem;
  border-radius: 2rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion-list__image {
    width: 100%;
    height: auto;
  }
}
.solution-healthcare-accordion-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solution-healthcare-accordion-list__heading {
  color: #0599d9;
  font-size: 3.2rem;
  line-height: 1.5625;
  font-weight: 700;
  margin-top: 1.8rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion-list__heading {
    font-size: 2.4rem;
    line-height: 1.4;
  }
}
.solution-healthcare-accordion-list__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4rem;
  margin-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion-list__tag {
    gap: 0.7rem;
    margin-top: 0.25rem;
  }
}
.solution-healthcare-accordion-list__tag span {
  color: #0599d9;
  background: #fff;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  height: 2.6rem;
  border-radius: 1.3rem;
  padding: 0 1.3rem 0.1rem;
  border: 0.2rem solid #0599d9;
}
.solution-healthcare-accordion-list__text {
  line-height: 1.875;
  margin-top: 1.1rem;
}
.solution-healthcare-accordion__copy {
  color: #0599d9;
  font-size: 2.4rem;
  line-height: 2.0833333333;
  font-weight: 700;
  text-align: center;
  margin-top: 7.8rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion__copy {
    font-size: 1.56rem;
    line-height: 1.4;
    margin-top: 3.9rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-healthcare-accordion .component-button a {
    width: 100%;
  }
}
.solution-healthcare-feature .solution-healthcare-feature-list {
  display: flex;
  justify-content: space-between;
  gap: 4rem 19rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-feature .solution-healthcare-feature-list {
    flex-direction: column;
  }
}
.solution-healthcare-feature .solution-healthcare-feature-list__item {
  width: 100%;
  letter-spacing: 0.05em;
}
.solution-healthcare-feature .solution-healthcare-feature-list__image img {
  width: auto;
  height: 22.3rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-feature .solution-healthcare-feature-list__image img {
    height: 11.15rem;
  }
}
.solution-healthcare-feature .solution-healthcare-feature-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-feature .solution-healthcare-feature-list__heading {
    font-size: 1.8rem;
  }
}
.solution-healthcare-feature .solution-healthcare-feature-list__text {
  line-height: 2;
}
.solution-healthcare-feature .solution-healthcare-feature-box {
  text-align: center;
}
.solution-healthcare-feature .solution-healthcare-feature-box__inner {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  gap: 3rem;
  padding: 1.2rem 4.2rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-feature .solution-healthcare-feature-box__inner {
    flex-direction: column-reverse;
    gap: 1.5rem;
  }
}
.solution-healthcare-feature .solution-healthcare-feature-box__text {
  flex: 1;
  text-align: left;
}
.solution-healthcare-feature .solution-healthcare-feature-box__logo {
  width: 11.9rem;
}
.solution-healthcare-attempt__head {
  display: flex;
  gap: 2.9rem 5.8rem;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-attempt__head {
    flex-direction: column;
  }
}
.solution-healthcare-attempt__content {
  flex: 1;
}
.solution-healthcare-attempt__image {
  width: 43.3rem;
  height: 26.8rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .solution-healthcare-attempt__image {
    width: 100%;
  }
}
.solution-healthcare-attempt__image img {
  width: 25rem;
  border-radius: 1rem;
}
.solution-healthcare-attempt__image img:nth-of-type(1) {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.solution-healthcare-attempt__image img:nth-of-type(2) {
  position: absolute;
  right: 0;
  bottom: 0;
}
.solution-common__text {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 2.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-common__text {
    font-size: 1.8rem;
    line-height: 2;
    text-align: left;
  }
}
@media screen and (max-width: 768px) {
  .solution-top__image {
    overflow: auto;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-top__image img {
    width: 75rem;
    max-width: 75rem;
  }
}
.solution-top-info {
  position: relative;
}
.solution-top-info:before {
  display: block;
  width: 100%;
  height: 32rem;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #eefaff;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .solution-top-info:before {
    display: none;
  }
}
.solution-top-nav {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  gap: 4rem;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .solution-top-nav {
    flex-direction: column;
    margin-top: 2.5rem;
  }
}
.solution-top-nav a {
  display: block;
  position: relative;
  color: #fff;
}
.solution-top-nav a::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  background: linear-gradient(transparent, rgba(51, 51, 51, 0.5));
}
@media screen and (max-width: 768px) {
  .solution-top-nav a::before {
    background: linear-gradient(to left, transparent, rgba(51, 51, 51, 0.5));
  }
}
.solution-top-nav__image {
  width: 62rem;
  height: 34.1rem;
}
@media screen and (max-width: 768px) {
  .solution-top-nav__image {
    width: 100%;
    height: auto;
  }
}
.solution-top-nav__heading {
  position: absolute;
  bottom: 2.6rem;
  left: 4rem;
  z-index: 1;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.3333333333;
  letter-spacing: 0.06em;
  display: flex;
  align-items: center;
  min-height: 2.6666666667em;
}
@media screen and (max-width: 768px) {
  .solution-top-nav__heading {
    bottom: 50%;
    left: 2rem;
    translate: 0 50%;
    font-size: 2.6rem;
  }
}
.solution-top-nav .component-button-more {
  position: absolute;
  right: 4rem;
  bottom: 3rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .solution-top-nav .component-button-more {
    right: 1rem;
    bottom: 1rem;
  }
}
.solution-top-nav__text {
  margin-top: 2.2rem;
  padding: 0 3.2rem;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .solution-top-nav__text {
    margin-top: 1.1rem;
    padding: 0;
    font-size: 1.36rem;
  }
}
.solution-top-nav--3line {
  gap: 4rem 5.2rem;
}
.solution-top-nav--3line .solution-top-nav__image {
  width: 39.1rem;
  height: 21.7rem;
}
.solution-top-nav--3line .solution-top-nav__heading {
  position: absolute;
  bottom: 3.6rem;
  left: 4rem;
  font-size: 3.1rem;
  min-height: 0;
}
@media screen and (max-width: 768px) {
  .solution-top-nav--3line .solution-top-nav__heading.solution-top-nav__heading--environment {
    font-size: 2.3rem;
  }
}
.solution-top-nav--3line .solution-top-nav--target::after {
  content: "";
  position: absolute;
  right: 2rem;
  bottom: 4rem;
  display: block;
  width: 4rem;
  height: 4rem;
  background-color: #fff;
  mask: url("/assets/img/common/icn_blank.svg") no-repeat center/contain;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .solution-top-nav--3line .solution-top-nav--target::after {
    position: absolute;
    right: 2rem;
    bottom: 2rem;
  }
}
.solution-top-nav--3line .component-arrow__target {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  z-index: 1;
  width: 6.5rem;
  height: 6.5rem;
  border-radius: 50%;
}
.solution-top-nav--3line .component-arrow__target::after {
  display: block;
  width: 1.8rem;
  height: 1rem;
  content: "";
}
.solution-detail-list {
  display: flex;
  flex-direction: column;
  gap: 11.5rem;
}
@media screen and (max-width: 768px) {
  .solution-detail-list {
    gap: 2rem;
  }
}
.solution-detail-list__item {
  display: flex;
  align-items: center;
  gap: 6.4rem;
}
@media screen and (max-width: 768px) {
  .solution-detail-list__item {
    flex-direction: column;
    gap: 3.2rem;
  }
}
@media screen and (min-width: 769px) {
  .solution-detail-list__item:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}
.solution-detail-list__image {
  width: 62rem;
  height: 30.6rem;
  border-radius: 3rem 3rem 3rem 0;
}
@media screen and (max-width: 768px) {
  .solution-detail-list__image {
    width: 100%;
    height: auto;
  }
}
.solution-detail-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solution-detail-list__content {
  flex: 1;
}
.solution-detail-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .solution-detail-list__heading {
    font-size: 1.56rem;
  }
}
.solution-detail-list__heading strong {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-detail-list__heading strong {
    font-size: 2.6rem;
  }
}
.solution-detail-list__text {
  font-size: 1.6rem;
  line-height: 1.875;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .solution-detail-list__text {
    margin-top: 0;
    font-size: 1.36rem;
  }
}
.solution-reason {
  display: flex;
  justify-content: center;
  gap: 10.5rem;
}
@media screen and (max-width: 768px) {
  .solution-reason {
    flex-wrap: wrap;
    gap: 2rem 0;
  }
}
@media screen and (max-width: 768px) {
  .solution-reason__item {
    width: 50%;
  }
}
.solution-reason__image {
  width: 22rem;
  height: 22rem;
  border-radius: 50%;
  border: 0.3rem solid #f4f5f8;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .solution-reason__image {
    width: 11rem;
    height: 11rem;
    margin: 0 auto;
  }
}
.solution-reason__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solution-reason__heading {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 1.5833333333;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .solution-reason__heading {
    font-size: 1.35rem;
  }
}
.solution-reason__heading strong {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .solution-reason__heading strong {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-office-heading {
    margin-top: 5rem;
  }
}
.solution-office-list {
  display: flex;
  justify-content: center;
  gap: 3.9rem;
}
@media screen and (max-width: 768px) {
  .solution-office-list {
    gap: 1.95rem;
  }
}
.solution-office-list__image {
  width: 29rem;
  height: 18rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .solution-office-list__image {
    width: 100%;
  }
}
.solution-office-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solution-office-list__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1.4rem;
}
.solution-office-list__heading {
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
.solution-office-list__map-link a {
  display: flex;
  align-items: center;
  color: #0599d9;
  font-size: 1.2rem;
}
.solution-office-list__map-link a::before {
  display: block;
  width: 1rem;
  height: 1.4rem;
  content: "";
  background-color: #0599d9;
  mask: url("/assets/img/common/icn_map.svg") no-repeat center/contain;
  margin-right: 0.5rem;
}
@media (hover: hover) {
  .solution-office-list__map-link a:hover {
    text-decoration: underline;
  }
}
@media (hover: none) {
  .solution-office-list__map-link a:active {
    text-decoration: underline;
  }
}
.solution-office-service .solution-office-service-list {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media screen and (max-width: 768px) {
  .solution-office-service .solution-office-service-list {
    gap: 3.5rem;
  }
}
.solution-office-service .solution-office-service-list__item a {
  display: flex;
  align-items: center;
  gap: 5.6rem;
}
@media screen and (max-width: 768px) {
  .solution-office-service .solution-office-service-list__item a {
    flex-direction: column;
    gap: 2.8rem;
  }
}
.solution-office-service .solution-office-service-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .solution-office-service .solution-office-service-list__image {
    width: 100%;
  }
}
.solution-office-service .solution-office-service-list__content {
  flex: 1;
  width: 100%;
}
.solution-office-service .solution-office-service-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.5625;
}
@media screen and (max-width: 768px) {
  .solution-office-service .solution-office-service-list__heading {
    font-size: 2.4rem;
  }
}
.solution-office-service .solution-office-service-list__text {
  line-height: 1.875;
}
.solution-office-consulting .solution-office-consulting-list {
  display: flex;
  flex-direction: column;
  gap: 14.4rem;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list {
    gap: 7.2rem;
  }
}
.solution-office-consulting .solution-office-consulting-list__item {
  display: flex;
  gap: 3rem;
  position: relative;
  z-index: 1;
  padding: 6rem 7.4rem 7rem;
  border-radius: 3rem 3rem 3rem 0;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__item {
    flex-direction: column;
    gap: 1.5rem;
    padding: 2rem;
  }
}
.solution-office-consulting .solution-office-consulting-list__item:not(:last-of-type)::after {
  display: block;
  width: 1rem;
  height: 14.6rem;
  content: "";
  position: absolute;
  bottom: -14.4rem;
  left: 50%;
  z-index: -1;
  translate: -50% 0;
  background-color: #0599d9;
}
.solution-office-consulting .solution-office-consulting-list__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15rem;
  height: 15rem;
  border-radius: 100%;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__icon {
    width: 7.5rem;
    height: 7.5rem;
    border-radius: 100%;
    margin: 0 auto;
  }
}
.solution-office-consulting .solution-office-consulting-list__icon:nth-of-type(1) img {
  width: 8rem;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__icon img {
    width: 50%;
    height: 50%;
  }
}
.solution-office-consulting .solution-office-consulting-list__content {
  flex: 1;
}
.solution-office-consulting .solution-office-consulting-list__heading {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  color: #0599d9;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__heading {
    gap: 0.7rem;
    text-align: center;
  }
}
.solution-office-consulting .solution-office-consulting-list__heading-number {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__heading-number {
    font-size: 1.3rem;
  }
}
.solution-office-consulting .solution-office-consulting-list__heading-text {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__heading-text {
    font-size: 1.95rem;
  }
}
.solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub {
    flex-direction: column;
  }
}
.solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub__item {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub__item {
    width: 100%;
  }
}
.solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub--no-wrap {
  flex-wrap: nowrap;
  gap: 4.4rem;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub--no-wrap {
    gap: 0;
  }
}
.solution-office-consulting .solution-office-consulting-list .solution-office-consulting-list-sub--no-wrap .solution-office-consulting-list-sub__item {
  width: auto;
}
.solution-office-consulting .solution-office-consulting-list__image {
  overflow: hidden;
  border-radius: 3rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__image {
    overflow: auto;
    border-radius: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-office-consulting .solution-office-consulting-list__image img {
    width: 50rem;
    max-width: 50rem;
  }
}
.solution-office-flow {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .solution-office-flow {
    flex-wrap: wrap;
    gap: 3rem 0;
  }
}
.solution-office-flow__item {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .solution-office-flow__item {
    width: 50%;
  }
}
.solution-office-flow__item:not(:last-of-type) .solution-office-flow__content {
  position: relative;
  z-index: 1;
}
.solution-office-flow__item:not(:last-of-type) .solution-office-flow__content::after {
  display: block;
  width: 100%;
  height: 1rem;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  z-index: -1;
  translate: 50% -50%;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .solution-office-flow__item:not(:last-of-type) .solution-office-flow__content::after {
    display: none;
  }
}
.solution-office-flow__item:nth-of-type(1) .solution-office-flow__icon {
  padding-left: 1rem;
}
.solution-office-flow__number {
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
.solution-office-flow__content {
  width: 19.5rem;
  height: 19.5rem;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 1.5rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .solution-office-flow__content {
    width: 14.625rem;
    height: 14.625rem;
    gap: 0.75rem;
  }
}
.solution-office-flow__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10rem;
  height: 8rem;
}
@media screen and (max-width: 768px) {
  .solution-office-flow__icon {
    width: 7.5rem;
    height: 6rem;
    scale: 0.75;
  }
}
.solution-office-flow__heading {
  font-weight: 700;
}
.solution-office-flow__text {
  color: #fff;
  font-weight: 700;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-office-flow__text {
    font-size: 1.2rem;
  }
}
.solution-office-subject__content {
  position: relative;
}
.solution-office-subject__content .component-list-text {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .solution-office-subject__content .component-list-text {
    position: static;
  }
}
.solution-construction-contents {
  display: flex;
  flex-direction: column;
  gap: 27rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents {
    gap: 6.75rem;
  }
}
.solution-construction-contents__item {
  display: flex;
  flex-direction: column;
  gap: 6.8rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__item {
    gap: 3.4rem;
  }
}
.solution-construction-contents__item:nth-of-type(even) .solution-construction-contents__head {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__item:nth-of-type(even) .solution-construction-contents__head {
    flex-direction: column;
  }
}
.solution-construction-contents__head {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__head {
    flex-direction: column;
    gap: 2rem;
  }
}
.solution-construction-contents__image {
  width: 51rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__image {
    width: 100%;
  }
}
.solution-construction-contents__content {
  display: flex;
  flex: 1;
  gap: 0.8rem;
}
.solution-construction-contents__content-inner {
  flex: 1;
  padding-top: 3rem;
}
.solution-construction-contents__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__heading {
    font-size: 3rem;
  }
}
.solution-construction-contents__subheading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents__subheading {
    font-size: 1.8rem;
  }
}
.solution-construction-contents__text {
  line-height: 1.5;
}
.solution-construction-contents .solution-construction-images {
  display: flex;
  gap: 5.4rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents .solution-construction-images {
    flex-wrap: wrap;
    gap: 2rem;
  }
}
.solution-construction-contents .solution-construction-images__item {
  width: calc(25% - 1.3rem);
}
@media screen and (max-width: 768px) {
  .solution-construction-contents .solution-construction-images__item {
    width: calc(50% - 1rem);
  }
}
.solution-construction-contents .solution-construction-images__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .solution-construction-contents .solution-construction-images__heading {
    font-size: 1.8rem;
  }
}
.solution-construction-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-list {
    flex-direction: column;
    gap: 3rem;
  }
}
.solution-construction-list__item {
  width: calc(33.333% - 4rem);
}
@media screen and (max-width: 768px) {
  .solution-construction-list__item {
    width: 100%;
  }
}
.solution-construction-list__content {
  position: relative;
}
.solution-construction-list__content-item {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  flex-direction: column;
  gap: 2rem;
}
.solution-construction-list__icon {
  width: 4.7rem;
  height: 4.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.solution-construction-list__heading {
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-construction-list__heading {
    font-size: 1.5rem;
  }
}
.solution-construction-list__text {
  line-height: 1.875;
}
.solution-office-ict .component-section-heading-large--white {
  height: 20rem;
}
.solution-office-ict .component-section-heading-large--white span {
  width: 100%;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
@media screen and (max-width: 768px) {
  .solution-office-ict .component-section-heading-large--white span.solution-office-ict-section-heading {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.solution-office-ict .solution-office-ict-list {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
.solution-office-ict .solution-office-ict-list__item {
  display: flex;
  align-items: center;
  gap: 3.2rem;
}
@media screen and (max-width: 768px) {
  .solution-office-ict .solution-office-ict-list__item {
    flex-direction: column;
  }
}
.solution-office-ict .solution-office-ict-list__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15rem;
  height: 15rem;
  border-radius: 100%;
}
.solution-office-ict .solution-office-ict-list__content {
  flex: 1;
}
.solution-office-ict .solution-office-ict-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2rem;
}
.solution-office-ict .solution-office-ict-list__text {
  line-height: 1.5;
}
.solution-office-ict__illust {
  width: 100%;
  max-width: 26.6rem;
  margin-left: auto;
  margin-right: auto;
}
.solution-office-ict .solution-office-ict-products {
  display: flex;
  flex-wrap: wrap;
  gap: 5.8rem 4rem;
}
@media screen and (max-width: 768px) {
  .solution-office-ict .solution-office-ict-products {
    flex-direction: column;
  }
}
.solution-office-ict .solution-office-ict-products__item {
  width: calc(25% - 3rem);
}
@media screen and (max-width: 768px) {
  .solution-office-ict .solution-office-ict-products__item {
    width: 100%;
  }
}
.solution-office-ict .solution-office-ict-products__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2rem;
}
.solution-office-ict .solution-office-ict-products__text {
  line-height: 1.5;
}
.solution-office-ict .solution-office-ict-illust {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .solution-office-ict .solution-office-ict-illust {
    flex-direction: column;
    gap: 6rem 0;
  }
}
.solution-office-ict .solution-office-ict-illust__item:nth-of-type(1) .solution-office-ict-illust__image img {
  height: 17.3rem;
}
.solution-office-ict .solution-office-ict-illust__item:nth-of-type(2) .solution-office-ict-illust__image img {
  height: 18.7rem;
}
.solution-office-ict .solution-office-ict-illust__item:nth-of-type(3) .solution-office-ict-illust__image img {
  height: 18.2rem;
}
.solution-office-ict .solution-office-ict-illust__image {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: 18.7rem;
}
.solution-office-ict .solution-office-ict-illust__image img {
  width: auto;
}
.solution-office-ict .solution-office-ict-illust__text {
  font-size: 2rem;
  text-align: center;
}
.solution-office-ict .solution-office-ict-illust__text em {
  color: #0599d9;
  font-weight: 700;
}
.solution-detail {
  padding-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__component-section-heading {
    margin-top: 3rem;
  }
}
.solution-detail__heading {
  font-size: 3rem;
  font-weight: 700;
}
.solution-detail__inner + .solution-detail__inner {
  margin-top: 6rem;
}
.solution-detail__content p {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__content p {
    font-size: 1.35rem;
  }
}
.solution-detail__content-heading {
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .solution-detail__content-heading {
    font-size: 1.6rem;
  }
}
.solution-detail__content-heading--line {
  border-bottom: 1px solid #0599d9;
  padding-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__content-heading--line {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-detail__content-heading--line.mt0 {
    margin-top: 0rem;
  }
}
.solution-detail__content-sub-heading {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__content-sub-heading {
    font-size: 1.6rem;
    margin-top: 3rem;
  }
}
.solution-detail__content-col1 {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__content-col1 {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .solution-detail__content-col1.mt {
    margin-top: 4rem;
  }
}
.solution-detail__col-heading {
  font-size: 2.2rem;
  font-weight: 700;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__col-heading {
    font-size: 1.8rem;
  }
}
.solution-detail__col1-image--small {
  width: 80%;
  margin-inline: auto;
}
.solution-detail__col2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0 4rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__col2 {
    flex-direction: column;
    gap: 4rem 0;
  }
}
.solution-detail__col2-item {
  width: calc((100% - 4rem) / 2);
}
@media screen and (max-width: 768px) {
  .solution-detail__col2-item {
    width: 100%;
  }
}
.solution-detail__col2-content dt {
  font-size: 1.7rem;
  font-weight: 700;
}
.solution-detail__col2-content dd {
  margin-top: 2rem;
  padding-left: 1.5rem;
  position: relative;
}
.solution-detail__col2-content dd::before {
  position: absolute;
  top: 0.85rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #0599d9;
  content: "";
}
.solution-detail__col2-image--small {
  width: 64.6%;
  margin-inline: auto;
}
.solution-detail__col2-image--small-ex {
  width: 53%;
  margin-inline: auto;
}
.solution-detail__col2-image--small img {
  width: 100%;
  object-fit: cover;
}
.solution-detail__col2-image--row {
  display: flex;
  flex-direction: column;
  gap: 2rem 0;
}
.solution-detail__col2-image--row-small {
  width: 30%;
  margin-inline: auto;
}
.solution-detail__col2-content + .solution-detail__col2-content {
  margin-top: 2rem;
}
.solution-detail__col3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0 6rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__col3 {
    flex-direction: column;
    gap: 3rem 0;
  }
}
.solution-detail__col3-item {
  width: calc((100% - 12rem) / 3);
}
@media screen and (max-width: 768px) {
  .solution-detail__col3-item {
    width: 100%;
  }
}
.solution-detail__col4 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0 2rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .solution-detail__col4 {
    flex-direction: column;
    gap: 3rem 0;
  }
}
.solution-detail__col4.gap {
  gap: 0;
}
.solution-detail__col4-item {
  width: calc((100% - 6rem) / 4);
}
@media screen and (max-width: 768px) {
  .solution-detail__col4-item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .solution-detail__col4-item-txt {
    margin-top: 0 !important;
  }
}
.solution-detail__border-box {
  padding: 2rem;
  border: 1px solid #0599d9;
  margin-top: 4rem;
}
.solution-detail__border-box p {
  position: relative;
  padding-left: 2rem;
  margin: 0;
}
.solution-detail__border-box p::before {
  position: absolute;
  top: 0.6rem;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: #0599d9;
  content: "";
}
@media screen and (max-width: 768px) {
  .component-section-heading-large.component-logo-blue + figure.mt-70 {
    overflow: auto;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .component-section-heading-large.component-logo-blue + figure.mt-70 img {
    width: 75rem;
    max-width: 75rem;
  }
}
@media screen and (max-width: 768px) {
  .case.taxonomy-case {
    margin-top: 7.2rem;
  }
}
.case .case-narrow {
  background-color: transparent;
  border-radius: 3rem 3rem 3rem 0;
  padding: 0 4%;
  transition: all 0.5;
}
@media screen and (max-width: 768px) {
  .case .case-narrow {
    padding: 0 4% 6%;
    margin-top: -4rem;
  }
}
.case .case-narrow.is-open {
  transition: all 0.5;
  background-color: #e6f5fb;
  padding: 2% 4%;
}
.case .case-narrow__inner {
  display: flex;
  gap: 12rem;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .case .case-narrow__inner {
    gap: 2rem;
  }
}
.case .case-narrow__heading {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .case .case-narrow__heading {
    gap: 0.6rem;
    font-size: 1.8rem;
  }
}
.case .case-narrow .case-narrow-list__item {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .case .case-narrow .case-narrow-list__item {
    flex-direction: column;
    gap: 1rem;
  }
}
.case .case-narrow .case-narrow-list__item:nth-of-type(n + 2) {
  margin-top: 2rem;
  padding-top: 2rem;
}
@media screen and (max-width: 768px) {
  .case .case-narrow .case-narrow-list__item:nth-of-type(n + 2) {
    margin-top: 1rem;
    padding-top: 1rem;
  }
}
.case .case-narrow .case-narrow-list__head {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 10%;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  flex-shrink: 0;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .case .case-narrow .case-narrow-list__head {
    gap: 0.9rem;
    width: auto;
    font-size: 1.425rem;
  }
}
.case .case-narrow .case-narrow-list__head::before {
  margin-top: 0.1rem;
  background: no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .case .case-narrow .case-narrow-list__head::before {
    width: 1.35rem !important;
    height: 1.35rem !important;
  }
}
.case .case-narrow .case-narrow-list__head--industry::before {
  display: block;
  width: 1.9rem;
  height: 1.8rem;
  content: "";
  background-image: url("/assets/img/case/icn_gyoshu.svg");
}
.case .case-narrow .case-narrow-list__head--service::before {
  display: block;
  width: 1.9rem;
  height: 1.8rem;
  content: "";
  background-image: url("/assets/img/case/icn_service.svg");
}
.case .case-narrow .case-narrow-list__head--category::before {
  display: block;
  width: 1.9rem;
  height: 1.8rem;
  content: "";
  background-image: url("/assets/img/case/icn_category.svg");
}
.case .case-narrow .case-narrow-list__head--employee::before {
  display: block;
  width: 1.9rem;
  height: 1.8rem;
  content: "";
  background-image: url("/assets/img/case/icn_employee.svg");
}
.case .case-narrow .case-narrow-list__head--area::before {
  display: block;
  width: 1.9rem;
  height: 1.9rem;
  content: "";
  background: #666;
  mask: url("/assets/img/common/icn_map.svg") no-repeat center/contain;
}
.case .case-narrow .case-narrow-list__head--task::before {
  display: block;
  width: 1.9rem;
  height: 1.9rem;
  content: "";
  background-image: url("/assets/img/case/icn_task.svg");
}
.case .case-narrow .case-narrow-list__body {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}
.case .case-narrow .case-narrow-list__body label {
  display: flex;
  align-items: center;
  height: 2.6rem;
  padding: 0 0.8rem 0.1rem 0.8rem;
  font-size: 1.4rem;
  background-color: #ddd;
  cursor: pointer;
  transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .case .case-narrow .case-narrow-list__body label:hover {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .case .case-narrow .case-narrow-list__body label:active {
    opacity: 0.6;
  }
}
.case .case-narrow .case-narrow-list__body input[type=radio] {
  appearance: none;
}
@media screen and (max-width: 768px) {
  .case .case-narrow .case-narrow-list__body input[type=radio] {
    display: none;
  }
}
.case .case-narrow .case-narrow-list__body input[type=radio]:checked + label {
  background-color: #0599d9;
  color: #fff;
  pointer-events: none;
}
.case .case-narrow__button {
  display: none;
  opacity: 0;
  text-align: center;
  margin: 0;
}
.case .case-narrow__button.is-open {
  display: block;
  opacity: 1;
  transition: display 2s, opacity 2s, margin 2s;
}
.case .case-narrow__button button {
  background: none;
  color: #666666;
  font-size: 1.6rem;
  position: relative;
  margin: 0 0 2rem;
  opacity: 0;
  transition: opacity 2s;
}
@media (hover: hover) {
  .case .case-narrow__button button:hover {
    text-decoration: underline;
  }
}
@media (hover: none) {
  .case .case-narrow__button button:active {
    text-decoration: underline;
  }
}
@media screen and (max-width: 768px) {
  .case .case-narrow__button button {
    margin: 2rem 0 0;
  }
}
.case .case-narrow__button button::before {
  background: #666666;
  position: absolute;
  top: 50%;
  left: -8px;
  display: block;
  width: 1.5rem;
  height: 0.1rem;
  content: "";
  translate: -50% -50%;
  border-radius: 0.3rem;
  box-sizing: border-box;
  rotate: 45deg;
}
.case .case-narrow__button button::after {
  background: #666666;
  position: absolute;
  top: 50%;
  left: -8px;
  display: block;
  width: 1.5rem;
  height: 0.1rem;
  content: "";
  translate: -50% -50%;
  border-radius: 0.3rem;
  box-sizing: border-box;
  rotate: 135deg;
}
.case .case-narrow__button.is-open button {
  opacity: 1;
  transition: opacity 2s;
}
.case-header__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 4.8rem;
}
@media screen and (max-width: 768px) {
  .case-header__heading {
    font-size: 3.6rem;
    padding-top: 4rem !important;
  }
}
.case-header__text {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .case-header__text {
    font-size: 2.1rem;
  }
}
.case-header .case-header-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.6rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .case-header .case-header-list {
    gap: 1.3rem;
  }
}
.case-header .case-header-list__item {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.case-header .case-header-list__heading {
  height: 2.6rem;
  padding: 0 1rem 0.1rem 1rem;
  background-color: #0599d9;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .case-header .case-header-list__heading {
    white-space: nowrap;
  }
}
.case-detail .case-detail-head-list {
  display: flex;
  gap: 12.8rem;
}
@media screen and (max-width: 768px) {
  .case-detail .case-detail-head-list {
    flex-direction: column;
    gap: 6.4rem;
  }
}
.case-detail .case-detail-head-list__item {
  width: 100%;
}
.case-detail .case-detail-head-list__text {
  font-weight: 500;
  line-height: 1.875;
}
.case-detail .case-detail-head-list__text a {
  text-decoration: underline;
}
.case-detail .case-detail-head-list__text li {
  display: flex;
  column-gap: 0.8rem;
  align-items: center;
}
.case-detail .case-detail-head-list__text li::before {
  content: "";
  display: inline-block;
  width: 0.8rem;
  height: 0.8rem;
  background-color: #0599d9;
  border-radius: 50%;
}
.case-detail__content {
  width: 100%;
  max-width: 95rem;
  margin-left: auto;
  margin-right: auto;
}
.case-detail__content > *:first-child {
  margin-top: 0;
}
.case-detail__content figure {
  overflow: hidden;
  margin-top: 10rem;
  border-radius: 3rem 0 3rem 0;
}
@media screen and (max-width: 768px) {
  .case-detail__content figure {
    margin-top: 5rem;
  }
}
.case-detail__content h2 {
  margin-top: 1rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .case-detail__content h2 {
    margin-top: 0.5rem;
    font-size: 2.1rem;
  }
}
.case-detail__content p {
  margin-top: 0.5rem;
  font-weight: 500;
  line-height: 1.875;
}
.case-detail .case-detail-list {
  width: 100%;
  max-width: 113rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 27rem;
}
@media screen and (max-width: 768px) {
  .case-detail .case-detail-list {
    gap: 6.75rem;
  }
}
.case-detail .case-detail-list__item {
  width: 43rem;
}
.case-detail .case-detail-list__image {
  width: 100%;
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  .case-detail .case-detail-list__image {
    width: 15rem;
  }
}
.case-detail .case-detail-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .case-detail .case-detail-list__heading {
    font-size: 2.1rem;
  }
}
.case-detail .case-detail-list__text {
  position: relative;
  border-top: 0.2rem solid #d7f0fa;
  border-bottom: 0.2rem solid #d7f0fa;
  font-weight: 500;
  line-height: 1.875;
}
.case-detail .case-detail-list__text::before, .case-detail .case-detail-list__text::after {
  display: block;
  width: 3.6rem;
  height: 2.9rem;
  content: "";
  opacity: 0.5;
  background: url("/assets/img/common/icn_quotation.svg") no-repeat center/contain;
}
.case-detail .case-detail-list__text::before {
  position: absolute;
  top: -1.5rem;
  left: -5.6rem;
}
.case-detail .case-detail-list__text::after {
  position: absolute;
  right: -5.6rem;
  bottom: -1.5rem;
  rotate: 180deg;
}
.case-detail__link {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}
@media screen and (min-width: 769px) {
  .case-detail__link {
    flex-direction: row;
    column-gap: 24px;
  }
}
.case-detail__link .case-detail__company {
  flex: 1;
  height: auto;
}
.case-detail__link .case-detail__company:nth-child(2) {
  border: 2px solid #0599d9;
  color: #0599d9;
}
.case-detail__link .case-detail__company-content {
  padding: 2rem 3rem;
}
.case-detail__link .case-detail__company-image {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .case-detail__link .case-detail__company-image {
    width: 20rem;
  }
}
.case-detail__link .component-section-heading {
  font-size: 1.8rem;
}
@media screen and (min-width: 769px) {
  .case-detail__link .component-section-heading {
    font-size: 2.4rem;
  }
}
.case-detail__company {
  display: flex !important;
  height: 25rem;
}
@media screen and (max-width: 768px) {
  .case-detail__company {
    flex-direction: column;
    height: auto;
  }
}
.case-detail__company-content, .case-detail__company-image {
  width: 100%;
}
.case-detail__company-content {
  flex: 1;
  padding: 3.2rem 6rem;
}
@media screen and (max-width: 768px) {
  .case-detail__company-content {
    padding: 3.2rem;
  }
}
.case-detail__company-image {
  position: relative;
  overflow: hidden;
  width: 64rem;
}
.case-detail__company-image .component-button-more {
  position: absolute;
  right: 3.2rem;
  bottom: 2.4rem;
}
.case-detail__company-text {
  padding-left: 5rem;
  color: #fff;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .case-detail__company-text {
    padding-left: 1.25rem;
  }
}
.case-detail__company-text--blue {
  color: #0599d9;
  font-weight: 800;
  padding-left: 5rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .case-detail__company-text--blue {
    padding-left: 1.25rem;
  }
}
.case-detail .case-detail-button {
  display: flex;
  justify-content: center;
  gap: 4rem 11.5rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .case-detail .case-detail-button {
    gap: 2rem;
  }
}
.js-case {
  visibility: hidden;
  margin-top: 2rem;
  padding: 2rem 0 0;
  max-height: 0;
  opacity: 0;
  display: grid;
  grid-template-rows: 0fr;
  transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.js-case[aria-hidden=true] {
  visibility: visible;
  max-height: 100vh;
  opacity: 1;
  grid-template-rows: 1fr;
  margin-bottom: 4rem;
  transition: visibility 2s cubic-bezier(0.39, 0.575, 0.565, 1), max-height 2s cubic-bezier(0.39, 0.575, 0.565, 1), opacity 2s cubic-bezier(0.39, 0.575, 0.565, 1), grid-template-rows 2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .js-case[aria-hidden=true] {
    max-height: 100rem;
  }
}
.js-case__button {
  position: relative;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.1rem 6rem;
  transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1);
  border-radius: 5rem;
  width: 50rem;
  color: #fff;
  background-color: #0599d9;
  font-size: 1.6rem;
  font-weight: 900;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .js-case__button {
    width: 100%;
  }
}
.js-case__button:hover {
  opacity: 0.7;
}
.js-case__button::before {
  background: #fff;
  position: absolute;
  top: 50%;
  right: 16px;
  display: block;
  width: 2rem;
  height: 0.2rem;
  content: "";
  translate: -50% -50%;
  border-radius: 0.3rem;
  box-sizing: border-box;
  rotate: 90deg;
  transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.js-case__button.is-open {
  transition: all 1.5s;
}
.js-case__button.is-open::before {
  rotate: 0deg;
}
.js-case__button::after {
  background: #fff;
  position: absolute;
  top: 50%;
  right: 16px;
  display: block;
  width: 2rem;
  height: 0.2rem;
  content: "";
  translate: -50% -50%;
  border-radius: 0.5rem;
  box-sizing: border-box;
}
.case-slide__container {
  position: relative;
  width: 132rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .case-slide__container {
    width: 98%;
  }
}
.case-slide.recruit-career-question__main {
  padding: 0;
}
.case-slide-section__ttl.component-section-heading-large {
  letter-spacing: -0.01em;
}
.component-case-index.case-slide__list {
  gap: initial;
  flex-wrap: initial;
}
.case-slide__container.recruit-career-question__main .swiper-button-prev {
  left: 0;
  top: 24%;
}
@media screen and (max-width: 768px) {
  .case-slide__container.recruit-career-question__main .swiper-button-prev {
    top: 18.5%;
  }
}
.case-slide__container.recruit-career-question__main .swiper-button-next {
  right: 0;
  top: 24%;
}
@media screen and (max-width: 768px) {
  .case-slide__container.recruit-career-question__main .swiper-button-next {
    top: 18.5%;
  }
}
.case-slide__container .swiper-pagination {
  margin-top: 3.6rem;
  margin-bottom: 2.6rem;
  position: static;
}
@media screen and (max-width: 768px) {
  .case-slide__container .swiper-pagination {
    margin-top: -2.4rem;
    margin-bottom: 1.5rem;
  }
}
.case-slide__container .swiper-pagination span {
  margin: 0 1.6rem !important;
}
@media screen and (max-width: 768px) {
  .recruit-component-heading {
    margin-top: 4rem;
    padding-right: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .recruit-component-heading--dc-se {
    margin-top: 12rem;
    padding-right: 2rem;
  }
}
.recruit-component-heading__ja {
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-component-page-header__line {
    bottom: calc(-10.5 * var(--remV));
  }
}
@media screen and (max-width: 768px) {
  .recruit-component-page-header__line--dc-se {
    bottom: calc(-45.5 * var(--remV));
  }
}
.recruit .recruit-list {
  display: flex;
  gap: 9rem;
}
@media screen and (max-width: 768px) {
  .recruit .recruit-list {
    flex-direction: column;
  }
}
.recruit .recruit-list__item {
  width: 100%;
}
.recruit .recruit-list .component-section-heading-large {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 2.8rem;
  line-height: 1.375;
}
.recruit .recruit-list .component-section-heading-large::after {
  display: block;
  width: 5rem;
  height: 3rem;
  content: "";
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #0599d9;
}
@media (hover: hover) {
  .recruit .recruit-list .component-button:has(.recruit-list__logo) a:hover .recruit-list__logo::before {
    opacity: 0;
  }
  .recruit .recruit-list .component-button:has(.recruit-list__logo) a:hover .recruit-list__logo::after {
    opacity: 1;
  }
}
@media (hover: none) {
  .recruit .recruit-list .component-button:has(.recruit-list__logo) a:active .recruit-list__logo::before {
    opacity: 0;
  }
  .recruit .recruit-list .component-button:has(.recruit-list__logo) a:active .recruit-list__logo::after {
    opacity: 1;
  }
}
.recruit .recruit-list__logo {
  position: relative;
  width: 20rem;
}
.recruit .recruit-list__logo::before {
  display: block;
  width: 20rem;
  height: 4.1rem;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url("/assets/img/common/logo_mynavi-2026.gif") no-repeat center/contain;
  transition: opacity 0.2s cubic-bezier(0.47, 0, 0.745, 0.715);
}
.recruit .recruit-list__logo::after {
  display: block;
  width: 20rem;
  height: 4.1rem;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: #fff;
  mask: url("/assets/img/common/logo_mynavi-2026--white.gif") no-repeat center/contain;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.recruit .recruit-list__logo img {
  appearance: none;
}
.recruit-career-job .recruit-career-job-list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list {
    gap: 3rem;
  }
}
.recruit-career-job .recruit-career-job-list__heading {
  font-weight: 700;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list__heading {
    font-size: 2.38rem;
  }
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub {
  display: flex;
  flex-wrap: wrap;
  gap: 3.8rem 5.4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub {
    flex-direction: column;
  }
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub__item a {
  display: block;
  overflow: hidden;
  width: 39rem;
  border-radius: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub__item a {
    width: 100%;
  }
}
@media (hover: hover) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub__item a:hover .recruit-career-job-sub__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub__item a:active .recruit-career-job-sub__heading {
    color: #0599d9;
  }
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub__image {
  overflow: hidden;
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub__content {
  padding: 2.2rem 2.8rem 6.2rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub__content {
    padding: 1.65rem 2.1rem 4.65rem;
  }
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub__heading {
  display: flex;
  justify-content: space-between;
  padding-top: 1rem;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .recruit-career-job .recruit-career-job-list .recruit-career-job-sub__heading {
    font-size: 1.7rem;
  }
}
.recruit-career-job .recruit-career-job-list .recruit-career-job-sub__heading .component-arrow__target {
  flex-shrink: 0;
  margin-top: -0.1rem;
}
.recruit-career-business .recruit-career-business-list {
  display: flex;
  flex-direction: column;
  gap: 11rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list {
    gap: 5.5rem;
  }
}
.recruit-career-business .recruit-career-business-list__item {
  display: flex;
  gap: 8rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__item {
    flex-direction: column;
    gap: 2rem;
  }
}
.recruit-career-business .recruit-career-business-list__item:nth-of-type(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__item:nth-of-type(odd) {
    flex-direction: column;
  }
}
.recruit-career-business .recruit-career-business-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__image {
    width: 100%;
  }
}
.recruit-career-business .recruit-career-business-list__content {
  flex: 1;
}
.recruit-career-business .recruit-career-business-list__heading {
  display: flex;
  flex-direction: column;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  line-height: 2.4;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__heading {
    font-size: 2.38rem;
    line-height: 1.4;
  }
}
.recruit-career-business .recruit-career-business-list__heading em {
  color: #0599d9;
  font-size: 6rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__heading em {
    font-size: 4.5rem;
  }
}
.recruit-career-business .recruit-career-business-list__text {
  margin-top: 3rem;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .recruit-career-business .recruit-career-business-list__text {
    margin-top: 1.5rem;
  }
}
.recruit-career-business .recruit-career-business-list__text:nth-of-type(1) {
  margin-top: 0.5rem;
}
.recruit-career-feature .recruit-career-feature-list {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-feature .recruit-career-feature-list {
    flex-direction: column;
  }
}
.recruit-career-feature .recruit-career-feature-list__item button {
  width: 100%;
  background: none;
  color: #333;
  text-align: left;
}
@media (hover: hover) {
  .recruit-career-feature .recruit-career-feature-list__item button:hover .component-icon-modal::before {
    scale: 1.2;
  }
  .recruit-career-feature .recruit-career-feature-list__item button:hover .recruit-career-feature-list__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .recruit-career-feature .recruit-career-feature-list__item button:active .component-icon-modal::before {
    scale: 1.2;
  }
  .recruit-career-feature .recruit-career-feature-list__item button:active .recruit-career-feature-list__heading {
    color: #0599d9;
  }
}
.recruit-career-feature .recruit-career-feature-list__image {
  position: relative;
  width: 29rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-feature .recruit-career-feature-list__image {
    width: 100%;
  }
}
.recruit-career-feature .recruit-career-feature-list__image .component-icon-modal {
  position: absolute;
  right: 0.7rem;
  bottom: 1.8rem;
}
.recruit-career-feature .recruit-career-feature-list__heading {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.5;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .recruit-career-feature .recruit-career-feature-list__heading {
    font-size: 1.7rem;
  }
}
.recruit-career-number__content {
  padding: 5.5rem 6rem 6rem;
  border-radius: 3rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .recruit-career-number__content {
    padding: 2rem;
  }
}
.recruit-career-number__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-career-number__heading {
    font-size: 1.95rem;
  }
}
.recruit-career-number .recruit-career-number-list {
  display: grid;
  gap: 2.8rem;
  grid-template-columns: 3fr 1fr 2fr 2fr 1fr 3fr;
  grid-template-rows: 40.6rem 23rem 27.6rem 40.6rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-number .recruit-career-number-list {
    width: 116rem;
    scale: 0.5;
    transform-origin: top left;
    margin-right: -58rem;
    margin-bottom: -70.1rem;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .recruit-career-number .recruit-career-number-list__wrapper {
    overflow: auto;
  }
}
.recruit-career-number .recruit-career-number-list__heading {
  padding: 3.5rem 2rem 0;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.1666666667;
}
.recruit-career-number .recruit-career-number-list__heading small {
  font-size: 1.6rem;
}
.recruit-career-number .recruit-career-number-list__number {
  color: #0599d9;
  line-height: 1;
}
.recruit-career-number .recruit-career-number-list__number em {
  display: inline-block;
  font-family: "din-2014-narrow", sans-serif;
}
.recruit-career-number .recruit-career-number-list__number small {
  font-weight: 700;
  letter-spacing: 0.05em;
}
.recruit-career-number .recruit-career-number-list__text {
  color: #0599d9;
  font-weight: 500;
}
.recruit-career-number .recruit-career-number-list__item {
  position: relative;
  border-radius: 1rem;
  background-repeat: no-repeat;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__heading, .recruit-career-number .recruit-career-number-list__item:nth-of-type(5) .recruit-career-number-list__heading, .recruit-career-number .recruit-career-number-list__item:nth-of-type(6) .recruit-career-number-list__heading, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__heading {
  padding: 2rem 2rem 0;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(1) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(2) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(3) .recruit-career-number-list__number {
  text-align: center;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(1) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list__item:nth-of-type(2) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list__item:nth-of-type(3) .recruit-career-number-list__text {
  padding: 0 2rem;
  font-size: 2rem;
  line-height: 1.4;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(1) {
  grid-column: 1/3;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(1) .recruit-career-number-list__number em {
  width: 1em;
  font-size: 20rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(1) .recruit-career-number-list__number small {
  font-size: 7.4rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(2) {
  grid-column: 3/5;
  background-image: url("/assets/img/recruit/career/icn_number01.webp");
  background-size: 22.6rem 23.1rem;
  background-position: center 8.3rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(2) .recruit-career-number-list__number em {
  width: 1.4em;
  font-size: 17rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(2) .recruit-career-number-list__number small {
  font-size: 5.2rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(3) {
  grid-column: 5/7;
  background-image: url("/assets/img/recruit/career/icn_number02.webp");
  background-size: 23.5rem;
  background-position: center 8rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(3) .recruit-career-number-list__number em {
  width: 1em;
  font-size: 20rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(3) .recruit-career-number-list__number small {
  font-size: 7.3rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4), .recruit-career-number .recruit-career-number-list__item:nth-of-type(5), .recruit-career-number .recruit-career-number-list__item:nth-of-type(6), .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) {
  background-image: url("/assets/img/recruit/career/icn_number03.webp");
  background-size: 9.6rem 9.8rem;
  background-position: right 2.5rem center;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(5) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(6) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__number {
  text-align: center;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list__item:nth-of-type(5) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list__item:nth-of-type(6) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__number em {
  font-size: 11.1rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list__item:nth-of-type(5) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list__item:nth-of-type(6) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__number small {
  font-size: 4.1rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__number em {
  width: 0.8em;
  letter-spacing: -0.06em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(4) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__text {
  padding: 0 2rem;
  font-size: 1.4rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(5) {
  grid-column: 2/4;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(5) .recruit-career-number-list__number em {
  width: 1.3em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(6) {
  grid-column: 4/6;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(6) .recruit-career-number-list__number em {
  width: 1.3em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(7) {
  background-image: url("/assets/img/recruit/career/icn_number04.webp");
  background-size: 6.9rem 11.1rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(7) .recruit-career-number-list__number em {
  width: 0.9em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list__item:nth-of-type(9) .recruit-career-number-list__number {
  margin-top: -3.5rem;
  padding-right: 5rem;
  text-align: center;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list__item:nth-of-type(9) .recruit-career-number-list__number em {
  font-size: 20rem;
  letter-spacing: -0.02em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list__item:nth-of-type(9) .recruit-career-number-list__number small {
  font-size: 7.3rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list__item:nth-of-type(9) .recruit-career-number-list__text {
  margin-top: -1.6rem;
  padding: 0 9.8rem;
  font-size: 2rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) {
  grid-column: 1/4;
  background-image: url("/assets/img/recruit/career/icn_number05.webp");
  background-size: 23.2rem 17.9rem;
  background-position: right 5.8rem top 6rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(8) .recruit-career-number-list__number em {
  width: 1.3em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(9) {
  grid-column: 4/7;
  background-image: url("/assets/img/recruit/career/icn_number06.webp");
  background-size: 26rem 14.7rem;
  background-position: right 1.8rem top 10rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(9) .recruit-career-number-list__number em {
  width: 0.9em;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(10) {
  grid-column: 1/3;
  background-image: url("/assets/img/recruit/career/icn_number07.webp");
  background-size: 31.3rem;
  background-position: center 7rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(11) {
  grid-column: 3/5;
  background-image: url("/assets/img/recruit/career/icn_number08.webp");
  background-size: 20rem;
  background-position: center 11.1rem;
}
.recruit-career-number .recruit-career-number-list__item:nth-of-type(12) {
  grid-column: 5/7;
  background-image: url("/assets/img/recruit/career/icn_number09.webp");
  background-size: 20rem;
  background-position: center 11.1rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-sub {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding-right: 7.2rem;
  padding-left: 3.2rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-sub__item {
  display: flex;
  align-items: flex-end;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-sub__item .recruit-career-number-list__text {
  flex: 1;
  font-weight: 700;
  font-size: 2rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-sub__item .recruit-career-number-list__number em {
  font-size: 4rem;
  letter-spacing: -0.03em;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-sub__item .recruit-career-number-list__number small {
  font-size: 3.2rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  padding: 3rem 3rem 0;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) {
  position: absolute;
  right: 5rem;
  bottom: 2rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) .recruit-career-number-list__text {
  font-size: 2.8rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) .recruit-career-number-list__number {
  margin-top: -0.6rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) .recruit-career-number-list__number span {
  width: 0.9em;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) .recruit-career-number-list__number em {
  font-size: 11rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(1) .recruit-career-number-list__number small {
  font-size: 7rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(2) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(3) .recruit-career-number-list__text, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(4) .recruit-career-number-list__text {
  font-size: 2.4rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(2) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(3) .recruit-career-number-list__number, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(4) .recruit-career-number-list__number {
  margin-top: -1rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(2) .recruit-career-number-list__number span, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(3) .recruit-career-number-list__number span, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(4) .recruit-career-number-list__number span {
  width: 0.9em;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(2) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(3) .recruit-career-number-list__number em, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(4) .recruit-career-number-list__number em {
  font-size: 5rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(2) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(3) .recruit-career-number-list__number small, .recruit-career-number .recruit-career-number-list .recruit-career-number-graph__item:nth-of-type(4) .recruit-career-number-list__number small {
  font-size: 5rem;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph .recruit-career-number-list__text {
  font-weight: 700;
}
.recruit-career-number .recruit-career-number-list .recruit-career-number-graph .recruit-career-number-list__number span {
  display: inline-block;
  text-align: center;
}
.recruit-career-system .recruit-career-system-list {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list {
    gap: 5rem;
  }
}
.recruit-career-system .recruit-career-system-list__item {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__item {
    flex-direction: column;
    gap: 2rem;
  }
}
.recruit-career-system .recruit-career-system-list__item:nth-of-type(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__item:nth-of-type(odd) {
    flex-direction: column;
  }
}
.recruit-career-system .recruit-career-system-list__item:nth-of-type(1) {
  align-items: center;
  gap: 18rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__item:nth-of-type(1) {
    gap: 1.8rem;
  }
}
.recruit-career-system .recruit-career-system-list__item:nth-of-type(2) .recruit-career-system-list__image {
  display: grid;
  gap: 2rem 2.8rem;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 37rem 17rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__item:nth-of-type(2) .recruit-career-system-list__image {
    gap: 2rem;
    grid-template-rows: 20.35rem 8.5rem;
  }
}
.recruit-career-system .recruit-career-system-list__item:nth-of-type(2) .recruit-career-system-list__image img {
  border-radius: 1rem;
}
.recruit-career-system .recruit-career-system-list__item:nth-of-type(2) .recruit-career-system-list__image img:nth-of-type(1) {
  grid-column: 1/3;
}
.recruit-career-system .recruit-career-system-list__image {
  width: 62rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__image {
    width: 100%;
  }
}
.recruit-career-system .recruit-career-system-list__content {
  flex: 1;
}
.recruit-career-system .recruit-career-system-list__heading {
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__heading {
    font-size: 2.1rem;
  }
}
.recruit-career-system .recruit-career-system-list__text {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__text {
    margin-top: 1.2rem;
  }
}
.recruit-career-system .recruit-career-system-list__text:nth-of-type(1) {
  margin-top: 3.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-list__text:nth-of-type(1) {
    margin-top: 1.75rem;
  }
}
.recruit-career-system__subheading {
  font-weight: 700;
  font-size: 2.8rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-career-system__subheading {
    font-size: 2.1rem;
  }
}
.recruit-career-system .recruit-career-system-sub {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-sub {
    flex-direction: column;
    gap: 2rem;
  }
}
.recruit-career-system .recruit-career-system-sub__item {
  width: 40rem;
  padding: 3.5rem 4rem 4.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-sub__item {
    width: 100%;
    padding: 2.625rem;
  }
}
.recruit-career-system .recruit-career-system-sub__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-career-system .recruit-career-system-sub__heading {
    font-size: 1.5rem;
  }
}
.recruit-career-question .section__inner {
  padding: 6rem 6.5rem 7rem;
  border-radius: 3rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .recruit-career-question .section__inner {
    padding: 2rem;
  }
}
.recruit-career-question__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__heading {
    font-size: 1.95rem;
    margin-top: 1.5rem;
  }
}
.recruit-career-question__main {
  border-radius: 3rem;
}
.recruit-career-question__main .swiper-button {
  width: auto;
  height: auto;
}
.recruit-career-question__main .swiper-button::after {
  display: none;
}
.recruit-career-question__main .swiper-button-prev {
  left: 1.6rem;
  rotate: 180deg;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__main .swiper-button-prev {
    left: 0;
  }
}
.recruit-career-question__main .swiper-button-next {
  right: 1.6rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__main .swiper-button-next {
    right: 0;
  }
}
.recruit-career-question__main .recruit-career-question-list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 5rem 12rem 4rem 21.8rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__main .recruit-career-question-list {
    padding: 2rem;
  }
}
.recruit-career-question__main .recruit-career-question-list__item {
  position: relative;
}
.recruit-career-question__main .recruit-career-question-list__item:nth-of-type(1) .recruit-career-question-list__icon {
  width: 7.7rem;
}
.recruit-career-question__main .recruit-career-question-list__item:nth-of-type(2) .recruit-career-question-list__icon {
  width: 8.4rem;
}
.recruit-career-question__main .recruit-career-question-list__item:nth-of-type(3) .recruit-career-question-list__icon {
  width: 7rem;
}
.recruit-career-question__main .recruit-career-question-list__item:nth-of-type(4) .recruit-career-question-list__icon {
  width: 7.7rem;
}
.recruit-career-question__main .recruit-career-question-list__icon {
  position: absolute;
  top: -0.4rem;
  left: -6rem;
  translate: -50% 0;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__main .recruit-career-question-list__icon {
    position: static;
    translate: 0;
    width: 5.25rem !important;
    margin: 0 auto;
  }
}
.recruit-career-question__main .recruit-career-question-list__text {
  padding: 2rem 3.8rem;
  border-radius: 1rem;
  background-color: #fff;
  color: #0599d9;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__main .recruit-career-question-list__text {
    padding: 1.5rem 2.85rem;
    font-size: 1.3rem;
  }
}
.recruit-career-question__sub {
  width: 100%;
  max-width: 98rem;
  margin-left: auto;
  margin-right: auto;
}
.recruit-career-question__sub .swiper-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem 4rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-question__sub .swiper-wrapper {
    gap: 1.5rem;
  }
}
.recruit-career-question__sub .swiper-slide {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  width: 30rem !important;
  height: 8rem !important;
  padding: 2.4rem;
  border: 1px solid #0599d9;
  color: #0599d9;
  cursor: pointer;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .recruit-career-question__sub .swiper-slide {
    width: 100% !important;
    height: 6rem !important;
    padding: 1.8rem;
  }
}
@media (hover: hover) {
  .recruit-career-question__sub .swiper-slide:hover {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .recruit-career-question__sub .swiper-slide:active {
    opacity: 0.6;
  }
}
.recruit-career-question__sub .swiper-slide span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.3rem;
  height: 3.3rem;
  border-radius: 100%;
  padding-bottom: 0.2rem;
  border: 1px solid #0599d9;
  color: #0599d9;
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.recruit-career-question__sub .swiper-slide-thumb-active {
  background-color: #0599d9;
  color: #fff;
  pointer-events: none;
}
.recruit-career-question__sub .swiper-slide-thumb-active span {
  background-color: #fff;
  color: #0599d9;
}
.recruit-career-flow .recruit-career-flow-list {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
  }
}
.recruit-career-flow .recruit-career-flow-list::before {
  position: absolute;
  top: calc(50% - 0.5rem);
  left: calc(50% - 57.5rem);
  display: block;
  width: 115rem;
  height: 1rem;
  content: "";
  z-index: -1;
  background: linear-gradient(to right, #fff, #0599d9);
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list::before {
    display: none;
  }
}
.recruit-career-flow .recruit-career-flow-list__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 23.5rem;
  height: 23.5rem;
  border-radius: 100%;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list__item {
    width: 15.8rem;
    height: 15.8rem;
  }
}
.recruit-career-flow .recruit-career-flow-list__number {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 0.2rem;
  color: #0599d9;
  font-weight: 700;
  font-size: 2rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list__number {
    font-size: 1.5rem;
  }
}
.recruit-career-flow .recruit-career-flow-list__number em {
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list__number em {
    font-size: 3.9rem;
  }
}
.recruit-career-flow .recruit-career-flow-list__heading {
  display: flex;
  align-items: center;
  height: 10rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.3333333333;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-career-flow .recruit-career-flow-list__heading {
    height: 5rem;
    font-size: 1.56rem;
  }
}
.recruit-requirements {
  padding-top: 13rem;
}
@media screen and (max-width: 768px) {
  .recruit-requirements {
    padding-top: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .recruit-requirements--dc-se {
    padding-top: 12rem;
  }
}
.recruit-requirements .recruit-requirements-list__item {
  display: flex;
}
@media screen and (max-width: 768px) {
  .recruit-requirements .recruit-requirements-list__item {
    flex-direction: column;
  }
}
.recruit-requirements .recruit-requirements-list__heading, .recruit-requirements .recruit-requirements-list__text {
  display: flex;
  justify-content: center;
  flex-direction: column;
  border-bottom: 1px solid;
  padding: 2.6rem 2.2rem;
}
@media screen and (max-width: 768px) {
  .recruit-requirements .recruit-requirements-list__heading, .recruit-requirements .recruit-requirements-list__text {
    padding: 1.3rem 1.1rem;
  }
}
.recruit-requirements .recruit-requirements-list__heading {
  width: 28rem;
  border-color: #0599d9;
  color: #0599d9;
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .recruit-requirements .recruit-requirements-list__heading {
    width: auto;
  }
}
.recruit-requirements .recruit-requirements-list__text {
  flex: 1;
  border-color: #ddd;
}
@media screen and (max-width: 768px) {
  .recruit-requirements .recruit-requirements-list__text {
    border-bottom: none;
  }
}
.recruit-requirements .recruit-requirements-list__text em {
  font-weight: 700;
}
.recruit-requirements__text {
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-requirements__text {
    font-size: 1.8rem;
  }
}
.knowledge__item {
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .knowledge__item {
    flex-direction: column;
  }
}
.knowledge__image {
  position: relative;
  flex-shrink: 0;
  width: 74.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge__image {
    width: 100%;
  }
}
.knowledge__image .component-arrow__target {
  position: absolute;
  right: 4rem;
  bottom: 3.6rem;
}
.knowledge__content {
  flex: 1;
}
.knowledge__heading {
  font-weight: 700;
  font-size: 3rem;
  line-height: 1.8666666667;
}
@media screen and (max-width: 768px) {
  .knowledge__heading {
    font-size: 2.25rem;
    line-height: 1.4;
  }
}
.knowledge__logo {
  width: 37.7rem;
  margin-left: 0.2rem;
}
@media screen and (max-width: 768px) {
  .knowledge__logo {
    width: 28.275rem;
  }
}
.knowledge .knowledge-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .knowledge .knowledge-list {
    gap: 4rem;
    flex-direction: column;
  }
}
.knowledge .knowledge-list__item {
  width: calc((100% - 8rem) / 3);
}
@media screen and (max-width: 768px) {
  .knowledge .knowledge-list__item {
    width: 100%;
  }
}
.knowledge .knowledge-list__image {
  position: relative;
}
.knowledge .knowledge-list__image .component-arrow__target {
  position: absolute;
  right: 3.6rem;
  bottom: 3rem;
}
.knowledge .knowledge-list__image img {
  aspect-ratio: 62/37;
}
.knowledge .knowledge-list__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 2.2rem;
}
.knowledge-detail__img-figcaption {
  text-align: right;
  font-size: 1.4rem;
  margin: 1rem 0;
}
.knowledge-detail__img-figcaption a {
  display: block;
}
.knowledge-detail__img-figcaption + .knowledge-detail__img-figcaption__img-figcaption {
  margin-top: 0;
}
.knowledge-detail .article__inner {
  position: relative;
  padding: 7.5rem 9rem 11.5rem;
  border-radius: 3rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .article__inner {
    padding: 4rem 2rem;
  }
}
.knowledge-detail .knowledge-detail-header__date {
  color: #a6a6a6;
  font-size: 1.4rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-header__date {
    font-size: 1.19rem;
  }
}
.knowledge-detail .knowledge-detail-index {
  background: #fefaec;
  border-radius: 1rem;
  margin-top: 5.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index {
    margin-top: 2.7rem;
  }
}
.knowledge-detail .knowledge-detail-index[aria-hidden=false] .knowledge-detail-index__content {
  grid-template-rows: 1fr;
}
.knowledge-detail .knowledge-detail-index[aria-hidden=false] .knowledge-detail-index__inner {
  padding: 1.8rem 7.4rem 2.4rem;
}
.knowledge-detail .knowledge-detail-index[aria-hidden=false] .knowledge-detail-index__button:before {
  content: "閉じる";
}
.knowledge-detail .knowledge-detail-index[aria-hidden=false] .knowledge-detail-index__button span::before, .knowledge-detail .knowledge-detail-index[aria-hidden=false] .knowledge-detail-index__button span::after {
  translate: 0;
  scale: 1;
}
.knowledge-detail .knowledge-detail-index__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 5.8rem;
  padding-right: 6.2rem;
  padding-left: 7.2rem;
  color: #fff;
  background: #0599d9;
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: background-color;
  border-radius: 1rem 1rem 0 0;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index__header {
    padding: 0 3.1rem;
  }
}
.knowledge-detail .knowledge-detail-index__heading {
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index__heading {
    font-size: 2.04rem;
  }
}
.knowledge-detail .knowledge-detail-index__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 9.2rem;
  height: 3.2rem;
  padding: 0 1.6rem;
  border-radius: 1.6rem;
  background-color: #fff;
  color: #0599d9;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index__button {
    font-size: 1.19rem;
  }
}
.knowledge-detail .knowledge-detail-index__button:before {
  display: inline-block;
  padding-top: 0.1rem;
  content: "開く";
}
.knowledge-detail .knowledge-detail-index__button span {
  width: 1.3rem;
  height: 1.3rem;
  display: block;
  position: relative;
}
.knowledge-detail .knowledge-detail-index__button span::before, .knowledge-detail .knowledge-detail-index__button span::after {
  display: block;
  width: 1.5rem;
  height: 1px;
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: calc(50% - 0.75rem);
  scale: 0.5 1;
  background-color: #0599d9;
  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);
  will-change: translate, scale;
}
.knowledge-detail .knowledge-detail-index__button span::before {
  translate: -18% 0;
  rotate: 45deg;
}
.knowledge-detail .knowledge-detail-index__button span::after {
  translate: 18% 0;
  rotate: -45deg;
}
.knowledge-detail .knowledge-detail-index__content {
  border-radius: 1rem;
}
.knowledge-detail .knowledge-detail-index__inner {
  padding: 1.8rem 7.4rem 2.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index__inner {
    padding: 0 4.81rem;
  }
}
.knowledge-detail .knowledge-detail-index__inner a {
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: color;
}
@media (hover: hover) {
  .knowledge-detail .knowledge-detail-index__inner a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .knowledge-detail .knowledge-detail-index__inner a:active {
    color: #0599d9;
  }
}
.knowledge-detail .knowledge-detail-index__inner ol {
  font-size: 1.8rem;
  line-height: 2.2222222222;
  list-style: decimal;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-index__inner ol {
    font-size: 1.35rem;
    line-height: 1.6;
  }
}
.knowledge-detail .knowledge-detail-content * :first-child {
  margin-top: 0;
}
.knowledge-detail .knowledge-detail-content h2 {
  margin-top: 6.8rem;
  padding-bottom: 0.8rem;
  border-bottom: 0.2rem solid #0599d9;
  font-weight: 700;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content h2 {
    margin-top: 3.4rem;
    font-size: 2.25rem;
    line-height: 1.6;
  }
}
.knowledge-detail .knowledge-detail-content h3 {
  padding-left: 0.5em;
  font-weight: 700;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content h3 {
    font-size: 1.35rem;
  }
}
.knowledge-detail .knowledge-detail-content h3 + p {
  margin-top: 1.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content h3 + p {
    margin-top: 0.7rem;
  }
}
.knowledge-detail .knowledge-detail-content p {
  margin-top: 3.4rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content p {
    margin-top: 1.7rem;
  }
}
.knowledge-detail .knowledge-detail-content p + p {
  margin-top: 2.8rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content p + p {
    margin-top: 1.4rem;
  }
}
.knowledge-detail .knowledge-detail-content ul {
  margin-top: 2.8rem;
  list-style: disc inside;
  padding-left: 2em;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content ul {
    margin-top: 1.4rem;
  }
}
.knowledge-detail .knowledge-detail-content figure {
  overflow: hidden;
  margin-top: 4.4rem;
  border-radius: 3rem 3rem 3rem 0;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content figure {
    margin-top: 2.2rem;
  }
}
.knowledge-detail .knowledge-detail-content div {
  margin-top: 2.5rem;
  border-radius: 1rem;
  padding: 3.4rem 4.2rem 4.8rem;
  background-color: #f5f5f5;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content div {
    margin-top: 1.25rem;
    padding: 1.7rem 2.1rem 2.4rem;
  }
}
.knowledge-detail .knowledge-detail-content iframe {
  width: 100%;
  height: auto;
  margin-top: 8rem;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-content iframe {
    margin-top: 4rem;
  }
}
.knowledge-detail .knowledge-detail-share {
  position: sticky;
  bottom: calc(100dvh - 69rem);
  left: 4rem;
  width: 2.4rem;
  margin-left: -5.8rem;
  margin-top: -37.2rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-share {
    position: static;
    width: 100%;
    margin-top: 2rem;
    margin-left: 0;
  }
}
.knowledge-detail .knowledge-detail-share__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4.5rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-share__inner {
    flex-direction: row;
    gap: 2.25rem;
  }
}
.knowledge-detail .knowledge-detail-share__heading {
  writing-mode: vertical-rl;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-share__heading {
    writing-mode: horizontal-tb;
  }
}
.knowledge-detail .knowledge-detail-share-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .knowledge-detail-share-list {
    flex-direction: row;
    gap: 1rem;
  }
}
.knowledge-detail .knowledge-detail-share-list__item {
  width: 2.4rem;
  height: 2.4rem;
}
.knowledge-detail .knowledge-detail-share-list__item a,
.knowledge-detail .knowledge-detail-share-list__item button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  display: block;
  width: 100%;
  height: 100%;
}
.knowledge-detail .knowledge-detail-share-list__item--hatena {
  width: 1.9rem;
  height: 1.9rem;
}
.knowledge-detail .knowledge-detail-share-list__item--link {
  width: 2rem;
  height: 1.6rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail .component-button a {
    width: 100%;
  }
}
.knowledge-detail-download__content a {
  display: flex;
  align-items: center;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-download__content a {
    flex-direction: column;
  }
}
@media (hover: hover) {
  .knowledge-detail-download__content a:hover .knowledge-detail-download__heading {
    color: #0599d9;
  }
}
@media (hover: none) {
  .knowledge-detail-download__content a:active .knowledge-detail-download__heading {
    color: #0599d9;
  }
}
.knowledge-detail-download__image {
  width: 36rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-download__image {
    width: 100%;
  }
}
.knowledge-detail-download__heading {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 2.8rem;
  padding: 0 6.2rem;
  font-weight: 700;
  font-size: 2rem;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .knowledge-detail-download__heading {
    padding: 1rem 2rem;
    font-size: 1.5rem;
  }
}
.knowledge-detail-download__heading .component-arrow__target {
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside {
    padding: 2rem;
  }
}
.knowledge-detail-aside .aside__inner {
  padding: 3.6rem 9rem 4.8rem;
  border: 0.2rem solid #0599d9;
  border-radius: 3rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside .aside__inner {
    padding: 2rem;
  }
}
.knowledge-detail-aside__heading {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 54rem;
  margin-left: auto;
  margin-right: auto;
  height: 6rem;
  border-radius: 3rem;
  background-color: #0599d9;
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside__heading {
    font-size: 1.65rem;
  }
}
.knowledge-detail-aside .knowledge-detail-aside-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3.2rem 5rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside .knowledge-detail-aside-list {
    flex-direction: column;
    gap: 1.6rem;
  }
}
.knowledge-detail-aside .knowledge-detail-aside-list__item {
  width: calc(50% - 2.5rem);
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside .knowledge-detail-aside-list__item {
    width: 100%;
  }
}
.knowledge-detail-aside .knowledge-detail-aside-list__item a {
  display: flex;
  gap: 3rem;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside .knowledge-detail-aside-list__item a {
    flex-direction: column;
    gap: 1.5rem;
  }
}
@media (hover: hover) {
  .knowledge-detail-aside .knowledge-detail-aside-list__item a:hover {
    color: #0599d9;
  }
}
@media (hover: none) {
  .knowledge-detail-aside .knowledge-detail-aside-list__item a:active {
    color: #0599d9;
  }
}
.knowledge-detail-aside .knowledge-detail-aside-list__image {
  width: 24.5rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-aside .knowledge-detail-aside-list__image {
    width: 100%;
  }
}
.knowledge-detail-aside .knowledge-detail-aside-list__content {
  flex: 1;
}
.knowledge-detail-aside .knowledge-detail-aside-list__date {
  color: #999;
  font-size: 1.4rem;
}
.knowledge-detail-nav .knowledge-detail-nav-buttons {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 110rem;
  margin-left: auto;
  margin-right: auto;
  flex-wrap: wrap;
  gap: 6rem 5.2rem;
}
@media screen and (max-width: 768px) {
  .knowledge-detail-nav .knowledge-detail-nav-buttons {
    gap: 1.5rem;
  }
}
.topics-list {
  max-width: 110rem;
  margin: 0 auto;
}
.topics-list .list-item {
  border-bottom: 1px solid #dddddd;
}
.topics-list .list-item a {
  display: block;
  padding: 3.8rem 2rem;
}
@media screen and (max-width: 768px) {
  .topics-list .list-item a {
    padding: 1.9rem;
  }
}
@media (hover: hover) {
  .topics-list .list-item a:hover .topics-index-list__text {
    color: #0599d9;
  }
}
@media (hover: none) {
  .topics-list .list-item a:active .topics-index-list__text {
    color: #0599d9;
  }
}
.topics-list .news__detail {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .topics-list .news__detail {
    flex-direction: column;
    gap: 1rem;
  }
}
.topics-list .news__property {
  display: flex;
}
.topics-list time {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  margin-right: 1.2rem;
  flex: 0 0 auto;
}
.topics-list .badge {
  width: 13rem;
  flex: 0 0 auto;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 700;
  min-width: 10rem;
  height: 2.8rem;
  border-radius: 0.2rem;
  background: #666;
}
.topics-list .badge.badge-cate_01 {
  background: #0599d9;
}
.topics-list .badge.badge-cate_02 {
  background: #48c1db;
}
.topics-list .badge.badge-cate_03 {
  background: #9a91d1;
}
.topics-list .badge.badge-cate_04 {
  background: #63b58a;
}
.topics-list .news__ttl {
  flex: 1;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.08em;
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.topics-detail {
  max-width: 110rem;
  margin: 0 auto;
}
.topics-detail__title {
  font-size: 3rem;
  line-height: 1.6666666667;
  letter-spacing: 0.06em;
  text-align: left;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .topics-detail__title {
    font-size: 2.25rem;
    line-height: 1.4;
  }
}
.topics-detail__date {
  color: #999;
  font-family: "Figtree", Yakuhanjp, sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 700;
}
.topics-detail__content {
  line-height: 1.75;
}
.topics-detail__content p {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content p {
    margin-top: 1rem;
  }
}
.topics-detail__content p + p {
  margin-top: 0.75em;
}
@media screen and (max-width: 768px) {
  .topics-detail__content p + p {
    margin-top: 0.375em;
  }
}
.topics-detail__content h2 {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  font-weight: 700;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content h2 {
    margin-top: 2rem;
  }
}
.topics-detail__content h3 {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  font-weight: 700;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content h3 {
    margin-top: 1.5rem;
  }
}
.topics-detail__content h3 + p {
  margin-top: 1rem;
}
.topics-detail__content ul {
  margin-top: 2.7rem;
  margin-bottom: 3.8rem;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .topics-detail__content ul {
    margin-top: 1.35rem;
    margin-bottom: 1.9rem;
  }
}
.topics-detail__content img {
  width: auto;
}
.topics-detail__content img.image-shadow {
  box-shadow: 0 0 3rem rgba(51, 51, 51, 0.1);
}
.topics-detail__content .wp-block-image {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content .wp-block-image {
    margin-top: 1.5rem;
  }
}
.topics-detail__content .wp-block-image + h2 {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content .wp-block-image + h2 {
    margin-top: 3rem;
  }
}
.topics-detail__content .wp-block-image.image-shadow {
  margin-top: 4.5rem;
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content .wp-block-image.image-shadow {
    margin-top: 2.25rem;
    margin-bottom: 2.25rem;
  }
}
.topics-detail__content .wp-block-image.image-shadow img {
  box-shadow: 0 0 3rem rgba(51, 51, 51, 0.1);
}
.topics-detail__content .wp-block-columns h2 + .wp-block-image {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content .wp-block-columns h2 + .wp-block-image {
    margin-top: 1.2rem;
  }
}
.topics-detail__content .wp-block-columns .wp-block-column .wp-block-image,
.topics-detail__content .wp-block-columns .wp-block-column img {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .topics-detail__content .wp-block-columns .wp-block-column .wp-block-image,
  .topics-detail__content .wp-block-columns .wp-block-column img {
    margin-top: 1.5rem;
  }
}
.topics-detail__content table {
  line-height: 1.75;
  margin-top: 0.8rem;
  width: auto;
}
.topics-detail__content table th,
.topics-detail__content table td {
  border: none;
  padding: 0.3rem 4rem 0.4rem 0;
  vertical-align: top;
}
.topics-detail__content table th:first-child,
.topics-detail__content table td:first-child {
  white-space: nowrap;
}
.topics-detail__content table th:last-child,
.topics-detail__content table td:last-child {
  padding-right: 0;
}
.topics-detail__content .wp-block-columns {
  align-items: normal !important;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap !important;
}
@media (min-width: 782px) {
  .topics-detail__content .wp-block-columns {
    flex-wrap: nowrap !important;
  }
}
.topics-detail__content .is-layout-flex {
  display: flex;
}
.topics-detail__content .is-layout-flex {
  flex-wrap: wrap;
  align-items: center;
}
.topics-detail__content .wp-container-core-columns-is-layout-1.wp-container-core-columns-is-layout-1 {
  flex-wrap: nowrap;
}
.topics-detail__content .is-layout-flex > * {
  margin: 0;
}
.topics-detail__content .wp-block-column {
  flex-grow: 1;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
@media (min-width: 782px) {
  .topics-detail__content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
  }
}
.sitemap .sitemap-list {
  display: grid;
  gap: 4rem 12rem;
  grid-template-columns: 48rem 68rem;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.sitemap .sitemap-list__item {
  width: 48rem;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list__item {
    width: 100%;
  }
}
.sitemap .sitemap-list__item .sitemap-list__body-heading {
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list__item .sitemap-list__body-heading {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 769px) {
  .sitemap .sitemap-list__item .sitemap-list__body-heading:nth-of-type(n + 2) {
    margin-top: 2rem;
  }
}
.sitemap .sitemap-list__item:nth-of-type(2) {
  width: 68rem;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list__item:nth-of-type(2) {
    width: 100%;
  }
}
.sitemap .sitemap-list__item:nth-of-type(2) .sitemap-list__body {
  display: flex;
}
.sitemap .sitemap-list__item:nth-of-type(2) .sitemap-list__body-content {
  width: 100%;
  padding-left: 0.8rem;
}
.sitemap .sitemap-list__item:nth-of-type(2) .sitemap-list__body-heading {
  font-weight: 700;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list__item:nth-of-type(2) .sitemap-list__body-heading {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 769px) {
  .sitemap .sitemap-list__item:nth-of-type(2) .sitemap-list__body-heading:nth-of-type(n + 2) {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .sitemap .sitemap-list__content:nth-of-type(2) {
    margin-top: 3rem;
  }
}
.sitemap .sitemap-list__heading a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 2rem 1rem 2.2rem 1rem;
  border-bottom: 0.2rem solid #0599d9;
  color: #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sitemap .sitemap-list__heading a {
    padding-bottom: 1.1rem;
    font-size: 2.04rem;
  }
}
.sitemap .sitemap-list__heading a .component-arrow__target {
  margin-top: 0.2rem;
}
.sitemap .sitemap-list__body .sitemap-link {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-left: 0.8rem;
}
.sitemap .sitemap-list__body .sitemap-link a::before {
  content: "―";
}
.sitemap .sitemap-list__body .sitemap-link__item--s {
  font-size: 1.4rem;
}
.sitemap .sitemap-list__body .sitemap-link__item--s a::before {
  content: "└";
}
.en-home .en-home-list {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .en-home .en-home-list {
    flex-direction: column;
  }
}
@media (hover: hover) {
  .en-home .en-home-list a:hover .en-home-list__text {
    color: #0599d9;
  }
}
@media (hover: none) {
  .en-home .en-home-list a:active .en-home-list__text {
    color: #0599d9;
  }
}
.en-home .en-home-list__image {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
}
.en-home .en-home-list__arrow {
  position: absolute;
  right: 1.6rem;
  bottom: 1.6rem;
}
.en-home .en-home-list__text {
  padding-left: 1rem;
  font-weight: 700;
  font-size: 2.4rem;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.guide-detail-image-list {
  display: flex;
  gap: 0 4.5rem;
}
.guide-detail-image-list__item {
  width: 22.5rem;
}
.guide-detail__list-text {
  font-size: 1.6rem;
  line-height: 1.75;
}
.guide-detail__list-text li {
  padding-left: 2.3rem;
  text-indent: -2.3rem;
}
.guide-detail__list-text li:before {
  content: "●";
  color: #0599d9;
  margin-right: 0.4em;
}
.guide-detail__mv {
  width: 100%;
  margin-top: 4rem;
}
.guide-detail__mv img {
  width: 100%;
  object-fit: cover;
}
.guide-detail__txt {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .guide-detail__txt {
    margin-top: 3rem;
    font-size: 1.35rem;
  }
}
.guide-detail__txt-item + .guide-detail__txt-item {
  margin-top: 2rem;
}
.guide-detail__txt-item--bold {
  font-weight: 700;
}
.guide-detail__txt-item--link {
  display: inline-block;
  transition: opacity 0.3s text-decoration 0.3s;
  text-decoration: underline 1px #333;
  text-underline-offset: 0.2rem;
}
.guide-detail__txt-item--link:hover {
  opacity: 0.8;
  text-decoration: none;
}
.guide-detail__container {
  display: flex;
  justify-content: space-between;
  gap: 0 6rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .guide-detail__container {
    flex-direction: column;
    padding-bottom: 4rem;
  }
}
.guide-detail__inner {
  width: 65%;
}
@media screen and (max-width: 768px) {
  .guide-detail__inner {
    width: 100%;
  }
}
.guide-detail__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .guide-detail__heading {
    font-size: 2.8rem;
  }
}
.guide-detail__article {
  width: 100%;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .guide-detail__article {
    margin-top: 4rem;
  }
}
.guide-detail__article-heading {
  font-size: 3rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .guide-detail__article-heading {
    font-size: 2rem;
  }
}
.guide-detail__article-sub-heading {
  display: block;
  font-size: 2.4rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .guide-detail__article-sub-heading {
    font-size: 1.8rem;
  }
}
.guide-detail__category {
  display: flex;
  align-items: center;
  gap: 0 2rem;
  font-size: 1.4rem;
  font-weight: 700;
  flex-wrap: wrap;
}
.guide-detail__category-list {
  padding: 0.8rem;
}
.guide-detail__content {
  display: flex;
  justify-content: space-between;
  gap: 0 2rem;
}
@media screen and (max-width: 768px) {
  .guide-detail__content {
    flex-direction: column;
  }
}
.guide-detail__content-heading {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .guide-detail__content-heading {
    font-size: 1.8rem;
    margin-top: 2rem;
  }
}
.guide-detail__content-image {
  width: calc(28.16% - 4.5rem);
}
@media screen and (max-width: 768px) {
  .guide-detail__content-image {
    width: 100%;
    max-width: 15rem;
    margin-inline: auto;
  }
}
.guide-detail__content-image img {
  width: 100%;
  object-fit: cover;
}
.guide-detail__content-txt {
  width: 71.84%;
}
@media screen and (max-width: 768px) {
  .guide-detail__content-txt {
    width: 100%;
  }
}
.guide-detail__content-txt-item {
  margin-top: 2rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .guide-detail__content-txt-item {
    font-size: 1.35rem;
  }
}
.guide-detail__content-btn a {
  color: #fff;
  background: #0599d9;
  border: 0.2rem solid #0599d9;
}
.guide-detail__download-side-wrap {
  padding: 3rem 1.5rem;
  width: calc(35% - 6rem);
  height: 1200px;
}
@media screen and (max-width: 768px) {
  .guide-detail__download-side-wrap {
    width: 100%;
    margin-top: 6rem;
  }
}
.guide-detail__download-form {
  height: 100%;
}
.guide-detail-dl__images {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 4.7rem;
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__images {
    flex-direction: column;
    gap: 3rem 0;
  }
}
.guide-detail-dl__images-item {
  width: calc((100% - 9.4rem) / 3);
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__images-item {
    width: 100%;
    max-width: 22.5rem;
  }
}
.guide-detail-dl__list-item {
  margin-left: 1rem;
}
.guide-detail-dl__content {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__content {
    margin-top: 4rem;
  }
}
.guide-detail-dl__content.mt {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__content.mt {
    margin-top: 3rem;
  }
}
.guide-detail-dl__content-heading {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__content-heading {
    font-size: 1.6rem;
  }
}
.guide-detail-dl__col3 {
  gap: 3rem 5rem;
}
@media screen and (max-width: 768px) {
  .guide-detail-dl__col3 {
    gap: 5rem;
  }
}
.subject-mv {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .subject-mv {
    flex-direction: column;
    gap: 2rem;
  }
}
.subject-mv__title.component-section-heading-large {
  font-size: 3.4rem;
}
.subject-customer__content {
  display: flex;
  gap: 6rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .subject-customer__content {
    flex-direction: column;
    gap: 0rem;
  }
}
.subject-customer__content::after {
  display: block;
  width: 2.5rem;
  height: 7.5rem;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #b4e1f4;
}
@media screen and (max-width: 768px) {
  .subject-customer__content::after {
    rotate: 90deg;
    display: none;
  }
}
.subject-customer .subject-customer-list {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  flex-direction: column;
  gap: 3.8rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list {
    gap: 2.85rem;
    height: auto;
    padding: 2rem !important;
  }
}
.subject-customer .subject-customer-list:nth-of-type(1) {
  padding: 4rem 3.5rem 3rem;
  position: relative;
}
.subject-customer .subject-customer-list:nth-of-type(1) .subject-customer-list__number {
  background-color: #fff;
  color: #0599d9;
}
.subject-customer .subject-customer-list:nth-of-type(2) {
  padding: 0 3.5rem;
}
.subject-customer .subject-customer-list:nth-of-type(2) .subject-customer-list__number {
  background-color: #0599d9;
  color: #fff;
}
.subject-customer .subject-customer-list__item {
  display: flex;
  gap: 1.6rem;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list__item {
    gap: 0.8rem;
  }
}
.subject-customer .subject-customer-list__item--arrow {
  display: none;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list__item--arrow {
    display: block;
    width: 2.5rem;
    height: 7.5rem;
    content: "";
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    background-color: #b4e1f4;
    rotate: 90deg;
    margin-inline: auto;
  }
}
.subject-customer .subject-customer-list__number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5rem;
  height: 5rem;
  border-radius: 100%;
  border: 1px solid #0599d9;
  font-weight: 700;
  font-size: 2.4rem;
  font-family: "Noto Sans JP";
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list__number {
    width: 3.75rem;
    height: 3.75rem;
    border-radius: 100%;
    font-size: 1.8rem;
  }
}
.subject-customer .subject-customer-list__number--subject {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5rem;
  height: 5rem;
  border-radius: 100%;
  font-weight: 700;
  font-size: 2.4rem;
  font-family: "Noto Sans JP";
  color: #666;
  border: 0.2rem solid #666;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list__number--subject {
    width: 3.75rem;
    height: 3.75rem;
    border-radius: 100%;
    font-size: 1.8rem;
  }
}
.subject-customer .subject-customer-list__text {
  flex: 1;
  color: #333;
  font-size: 1.6rem;
}
.subject-customer .subject-customer-list__text--blue {
  color: #0599d9;
  font-size: 1.6rem;
}
.subject-customer .subject-customer-list--small {
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list--small {
    gap: 2rem;
  }
}
.subject-customer .subject-customer-list--small .subject-customer-list__number, .subject-customer .subject-customer-list--small .subject-customer-list__text {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .subject-customer .subject-customer-list--small .subject-customer-list__number, .subject-customer .subject-customer-list--small .subject-customer-list__text {
    font-size: 1.5rem;
  }
}
.subject-customer-proposal__inner {
  background-color: #fff;
  margin: 4rem 0 0;
  border-radius: 3rem 3rem 0 0;
  padding: 5.4rem 2rem 4rem 5.6rem;
}
@media screen and (max-width: 768px) {
  .subject-customer-proposal__inner {
    padding: 2rem;
  }
}
.subject-customer-proposal__content {
  display: flex;
  align-items: center;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .subject-customer-proposal__content {
    flex-direction: column;
    gap: 2rem;
  }
}
.subject-customer-proposal__text {
  text-decoration: underline;
}
.subject-customer-proposal__item {
  display: flex;
  color: #0599d9;
  font-size: 1.8rem;
  gap: 1rem;
  width: fit-content;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.subject-customer-proposal__item + .subject-customer-proposal__item {
  margin-top: 0.5rem;
}
.subject-customer-proposal__item:hover {
  color: #666;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media screen and (max-width: 768px) {
  .subject-customer-proposal__item:hover {
    color: #0599d9;
    text-decoration: initial;
    transition: initial;
  }
}
.subject-customer-proposal__number {
  white-space: nowrap;
}
.subject-solution__image {
  width: 100%;
  max-width: 70.7rem;
  margin-left: auto;
  margin-right: auto;
}
.subject-solution .subject-solution-list {
  display: flex;
  flex-direction: column;
  gap: 5.5rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list {
    gap: 2.75rem;
  }
}
.subject-solution .subject-solution-list__heading {
  display: flex;
  gap: 3.2rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__heading {
    gap: 1.6rem;
  }
}
.subject-solution .subject-solution-list__heading-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 8rem;
  height: 8rem;
  border-radius: 100%;
  padding-bottom: 0.2rem;
  background-color: #0599d9;
  color: #fff;
  font-size: 3rem;
  font-family: "Figtree", Yakuhanjp, sans-serif;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__heading-number {
    width: 6rem;
    height: 6rem;
    border-radius: 100%;
    font-size: 2.25rem;
  }
}
.subject-solution .subject-solution-list__heading-text {
  flex: 1;
  color: #0599d9;
  font-size: 2.6rem;
  line-height: 1.3846153846;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__heading-text {
    font-size: 1.95rem;
    line-height: 1.2;
  }
}
.subject-solution .subject-solution-list__item {
  padding: 6rem 7rem 8.5rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__item {
    padding: 2rem;
  }
}
.subject-solution .subject-solution-list__item--summary {
  padding: 3.6rem 7rem 6rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__item--summary {
    padding: 2rem;
  }
}
.subject-solution .subject-solution-list__item--summary .subject-solution-list__heading {
  align-items: center;
  border-bottom: 0.2rem solid #0599d9;
}
.subject-solution .subject-solution-list__item--summary .subject-solution-list__heading-number {
  background: url("/assets/img/subject/icn_light.svg") no-repeat center/2.8rem 4.6rem #0599d9;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__item--summary .subject-solution-list__heading-number {
    background-size: 2.1rem 3.45rem;
  }
}
.subject-solution .subject-solution-list__item--summary .subject-solution-list__heading-text {
  font-size: 3.6rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list__item--summary .subject-solution-list__heading-text {
    font-size: 2.7rem;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image {
  display: flex;
  flex-wrap: wrap;
  gap: 5.2rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image {
    flex-direction: column;
    gap: 2.6rem;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image__item {
  width: calc(50% - 2.6rem);
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image__item {
    width: 100%;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image--grid {
  display: grid;
  grid-template-columns: 76rem 33rem;
  grid-auto-rows: auto;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image--grid {
    grid-template-columns: 100%;
    gap: 1.5rem;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image--grid .subject-solution-list-image__item:nth-child(1) {
  width: 76rem;
  grid-row: 1/3;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image--grid .subject-solution-list-image__item:nth-child(1) {
    width: 100%;
    grid-row: auto;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image--grid .subject-solution-list-image__item:nth-child(2), .subject-solution .subject-solution-list .subject-solution-list-image--grid .subject-solution-list-image__item:nth-child(3) {
  width: auto;
}
.subject-solution .subject-solution-list .subject-solution-list-image--column {
  gap: 3.8rem;
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image--column {
    gap: 1.9rem;
  }
}
.subject-solution .subject-solution-list .subject-solution-list-image--column .subject-solution-list-image__item {
  width: calc(33.333% - 2.6rem);
}
@media screen and (max-width: 768px) {
  .subject-solution .subject-solution-list .subject-solution-list-image--column .subject-solution-list-image__item {
    width: 100%;
  }
}
.subject-aside .subject-aside-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem;
}
@media screen and (max-width: 768px) {
  .subject-aside .subject-aside-list {
    flex-direction: column;
    gap: 3rem;
  }
}
.subject-aside .subject-aside-list__item {
  width: calc(33.333% - 4rem);
}
@media screen and (max-width: 768px) {
  .subject-aside .subject-aside-list__item {
    width: 100%;
  }
}
.subject-aside .subject-aside-list__heading {
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
}
.subject-aside .subject-aside-list__text {
  color: #fff;
  font-size: 1.4rem;
}
.subject__heading {
  color: #0599d9;
  font-weight: 700;
  font-size: 3.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .subject__heading {
    font-size: 2.7rem;
  }
}
.subject .subject-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem;
}
.subject .subject-list__item {
  overflow: hidden;
  width: calc(33.333% - 4rem);
  border-radius: 2rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .subject .subject-list__item {
    width: 100%;
  }
  .subject .subject-list__item .component-arrow__target {
    margin-left: auto;
  }
}
.subject .subject-list__image {
  overflow: hidden;
}
.subject .subject-list__content {
  padding: 3rem 2.6rem 3.8rem;
}
@media screen and (max-width: 768px) {
  .subject .subject-list__content {
    padding: 2rem;
  }
}
.subject .subject-list__content:has(.subject-list__text) {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.5rem;
  padding: 3.2rem 2.6rem 2.5rem;
}
@media screen and (max-width: 768px) {
  .subject .subject-list__content:has(.subject-list__text) {
    padding: 2rem;
  }
}
.subject .subject-list__content:has(.subject-list__text) .subject-list__text {
  width: 100%;
}
.subject .subject-list__content:has(.subject-list__text) .component-arrow__target {
  margin-left: auto;
}
.subject .subject-list__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  font-weight: 700;
  font-size: 2rem;
}
.subject .subject-list__heading .component-arrow__target {
  flex-shrink: 0;
}
.subject .subject-list .subject-list-sub {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1rem;
  font-size: 1.2rem;
}
.subject .subject-list .subject-list-sub__item {
  display: flex;
  gap: 0.8rem;
  width: calc(50% - 2rem);
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .subject .subject-list .subject-list-sub__item {
    width: 100%;
  }
}
.subject .subject-list .subject-list-sub__item:nth-child(odd) {
  width: calc(55% - 2rem);
}
.subject .subject-list .subject-list-sub__item:nth-child(even) {
  width: calc(45% - 2rem);
}
.subject .subject-list .subject-list-sub__item--wide {
  width: 100% !important;
}
.subject .subject-list .subject-list-sub__heading {
  display: flex;
  align-items: center;
  height: 2.2rem;
  padding: 0.6rem 0.6rem;
  background-color: #ddd;
}
.subject .subject-list .subject-list-sub__text {
  flex: 1;
}
.subject-company a {
  display: flex;
  align-items: center;
  gap: 3.75rem 7.5rem;
  overflow: hidden;
  border-radius: 2rem;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .subject-company a {
    flex-direction: column;
  }
}
.subject-company__content {
  flex: 1;
  position: relative;
  padding-left: 11.2rem;
}
@media screen and (max-width: 768px) {
  .subject-company__content {
    padding: 3rem;
  }
}
.subject-company__content .component-arrow__target {
  position: absolute;
  right: 0;
  bottom: -1rem;
}
@media screen and (max-width: 768px) {
  .subject-company__content .component-arrow__target {
    right: 3rem;
    bottom: -1rem;
  }
}
.subject-company__heading {
  font-weight: 700;
  font-size: 3.6rem;
}
@media screen and (max-width: 768px) {
  .subject-company__heading {
    font-size: 1.8rem;
  }
}
.subject-company__text {
  font-size: 2rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .subject-company__text {
    font-size: 1.5rem;
  }
}
.subject-company__image {
  overflow: hidden;
  width: 45.6rem;
}
@media screen and (max-width: 768px) {
  .subject-company__image {
    width: 100%;
  }
}
.subject-detail__heading {
  color: #333;
  font-weight: 700;
  font-size: 3rem;
  position: relative;
  padding: 0 0 0 4rem;
}
@media screen and (max-width: 768px) {
  .subject-detail__heading {
    font-size: 2.25rem;
  }
}
.subject-detail__heading--subject::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 2.5rem;
  height: 3rem;
  content: "";
  display: block;
  background-image: url("/assets/img/subject/heading_icon01.png");
  background-repeat: no-repeat;
  background-size: 100%;
}
.subject-detail__heading--benefit {
  color: #0599d9;
}
.subject-detail__heading--benefit::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 2.55rem;
  height: 4.35rem;
  content: "";
  display: block;
  background-image: url("/assets/img/subject/heading_icon02.png");
  background-repeat: no-repeat;
  background-size: 100%;
}
.subject-detail__heading--proposal {
  padding: 0;
  width: 40%;
  position: static;
}
@media screen and (max-width: 768px) {
  .subject-detail__heading--proposal {
    width: 100%;
  }
}
.newsletter-detail__content {
  margin-block-end: 72px;
}
.newsletter-detail-image-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-block-end: 24px;
}
@media screen and (min-width: 769px) {
  .newsletter-detail-image-list {
    gap: 1rem;
    justify-content: center;
    margin-block-end: 80px;
  }
}
.newsletter-detail-image-list__item {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .newsletter-detail-image-list__item {
    width: 27rem;
  }
}
.newsletter-detail-image-list__item__image {
  margin-block-end: 8px;
}
.newsletter-detail-image-list__item__image > img {
  border-radius: 10px;
}
.newsletter-detail-image-list__item__ttl {
  font-size: 2.4rem;
  font-weight: bold;
  margin-block-end: 8px;
  line-height: 1.3;
}
.newsletter-detail__desc {
  text-align: center;
}
.newsletter-detail__ttl {
  color: #333;
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-block-end: 24px;
}
.newsletter-detail__list-text {
  font-size: 1.6rem;
  line-height: 1.75;
  margin-block-end: 24px;
}
.newsletter-detail__list-text li {
  padding-left: 2.3rem;
  text-indent: -2.3rem;
}
.newsletter-detail__list-text li:before {
  content: "●";
  color: #0599d9;
  margin-right: 0.4em;
}
.newsletter-detail__container {
  display: flex;
  justify-content: space-between;
  gap: 0 6rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .newsletter-detail__container {
    flex-direction: column;
    padding-bottom: 4rem;
  }
}
.newsletter-detail__inner {
  width: 65%;
}
@media screen and (max-width: 768px) {
  .newsletter-detail__inner {
    width: 100%;
  }
}
.newsletter-detail__side-wrap {
  padding: 5rem 2rem;
  width: calc(35% - 6rem);
  height: 1400px;
}
@media screen and (max-width: 768px) {
  .newsletter-detail__side-wrap {
    width: 100%;
    margin-top: 6rem;
  }
}
.newsletter-detail__form {
  width: 100%;
  height: 100%;
  border: none;
}
.thanks-cta-section {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .thanks-cta-section {
    margin-top: 6rem;
  }
}
.thanks__ttl {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .thanks__ttl {
    font-size: 2.8rem;
  }
}
.thanks__txt {
  font-size: 1.6rem;
  margin-top: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .thanks__txt {
    font-size: 1.35rem;
  }
}
.thanks__txt + .thanks__txt {
  margin-top: 0.5rem;
}
.thanks__return-btn {
  margin: 8rem 0;
}
@media screen and (max-width: 768px) {
  .thanks__return-btn {
    width: 90%;
    margin-inline: auto;
  }
}
.thanks__return-btn a {
  margin-inline: auto;
}
.dl-thanks__ttl {
  color: #0599d9;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .dl-thanks__ttl {
    font-size: 2.8rem;
  }
}
.dl-thanks__txt {
  font-size: 1.6rem;
  margin-top: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .dl-thanks__txt {
    font-size: 1.35rem;
  }
}
.dl-thanks__txt + .dl-thanks__txt {
  margin-top: 0.5rem;
}
.dl-thanks__list {
  justify-content: center;
}
.dl-thanks__list--col3 {
  gap: 4rem 3rem;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .dl-thanks__list--col3 {
    gap: 0;
  }
}
.dl-thanks__list--col4 {
  gap: 4rem 2rem;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .dl-thanks__list--col4 {
    gap: 0;
  }
}
.dl-thanks__item {
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.16);
  background: transparent;
  border-radius: 2rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .dl-thanks__item {
    margin-top: 4rem;
  }
}
.dl-thanks__item--col3 {
  width: calc((100% - 6rem) / 3);
}
@media screen and (max-width: 768px) {
  .dl-thanks__item--col3 {
    width: 100%;
  }
}
.dl-thanks__item--col4 {
  width: calc((100% - 6rem) / 4);
}
@media screen and (max-width: 768px) {
  .dl-thanks__item--col4 {
    width: 100%;
  }
}
.dl-thanks__btn-txt {
  border-color: #0599d9;
  background-color: #0599d9;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2rem auto 0;
  width: 80%;
  height: 7rem;
  gap: 1.4rem;
  padding-right: 1.4rem;
  padding-bottom: 0.2rem;
  border: 0.2rem solid;
  border-radius: 1rem;
  font-weight: 700;
  font-size: 1.6rem;
  text-align: center;
}
.dl-thanks__btn-txt::before {
  margin-top: 0.2rem;
  mask: no-repeat center/contain;
  display: block;
  width: 1.9rem;
  height: 1.6rem;
  content: "";
  background-color: #fff;
  mask-image: url(/assets/img/common/icn_download.svg);
}
.dl-thanks__return-btn {
  margin: 8rem 0;
}
@media screen and (max-width: 768px) {
  .dl-thanks__return-btn {
    width: 90%;
    margin-inline: auto;
  }
}
.dl-thanks__return-btn a {
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .only-sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none !important;
  }
}
.justify-center {
  justify-content: center !important;
}
.w-1 {
  width: 0.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-1 {
    width: 0.25rem !important;
  }
}
.w-2 {
  width: 0.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-2 {
    width: 0.5rem !important;
  }
}
.w-3 {
  width: 0.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-3 {
    width: 0.75rem !important;
  }
}
.w-4 {
  width: 0.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-4 {
    width: 1rem !important;
  }
}
.w-5 {
  width: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-5 {
    width: 1.25rem !important;
  }
}
.w-6 {
  width: 0.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-6 {
    width: 1.5rem !important;
  }
}
.w-7 {
  width: 0.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-7 {
    width: 1.75rem !important;
  }
}
.w-8 {
  width: 0.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-8 {
    width: 2rem !important;
  }
}
.w-9 {
  width: 0.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-9 {
    width: 2.25rem !important;
  }
}
.w-10 {
  width: 1rem !important;
}
@media screen and (max-width: 768px) {
  .w-10 {
    width: 2.5rem !important;
  }
}
.w-11 {
  width: 1.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-11 {
    width: 2.75rem !important;
  }
}
.w-12 {
  width: 1.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-12 {
    width: 3rem !important;
  }
}
.w-13 {
  width: 1.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-13 {
    width: 3.25rem !important;
  }
}
.w-14 {
  width: 1.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-14 {
    width: 3.5rem !important;
  }
}
.w-15 {
  width: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-15 {
    width: 3.75rem !important;
  }
}
.w-16 {
  width: 1.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-16 {
    width: 4rem !important;
  }
}
.w-17 {
  width: 1.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-17 {
    width: 4.25rem !important;
  }
}
.w-18 {
  width: 1.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-18 {
    width: 4.5rem !important;
  }
}
.w-19 {
  width: 1.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-19 {
    width: 4.75rem !important;
  }
}
.w-20 {
  width: 2rem !important;
}
@media screen and (max-width: 768px) {
  .w-20 {
    width: 5rem !important;
  }
}
.w-21 {
  width: 2.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-21 {
    width: 5.25rem !important;
  }
}
.w-22 {
  width: 2.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-22 {
    width: 5.5rem !important;
  }
}
.w-23 {
  width: 2.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-23 {
    width: 5.75rem !important;
  }
}
.w-24 {
  width: 2.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-24 {
    width: 6rem !important;
  }
}
.w-25 {
  width: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-25 {
    width: 6.25rem !important;
  }
}
.w-26 {
  width: 2.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-26 {
    width: 6.5rem !important;
  }
}
.w-27 {
  width: 2.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-27 {
    width: 6.75rem !important;
  }
}
.w-28 {
  width: 2.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-28 {
    width: 7rem !important;
  }
}
.w-29 {
  width: 2.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-29 {
    width: 7.25rem !important;
  }
}
.w-30 {
  width: 3rem !important;
}
@media screen and (max-width: 768px) {
  .w-30 {
    width: 7.5rem !important;
  }
}
.w-31 {
  width: 3.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-31 {
    width: 7.75rem !important;
  }
}
.w-32 {
  width: 3.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-32 {
    width: 8rem !important;
  }
}
.w-33 {
  width: 3.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-33 {
    width: 8.25rem !important;
  }
}
.w-34 {
  width: 3.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-34 {
    width: 8.5rem !important;
  }
}
.w-35 {
  width: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-35 {
    width: 8.75rem !important;
  }
}
.w-36 {
  width: 3.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-36 {
    width: 9rem !important;
  }
}
.w-37 {
  width: 3.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-37 {
    width: 9.25rem !important;
  }
}
.w-38 {
  width: 3.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-38 {
    width: 9.5rem !important;
  }
}
.w-39 {
  width: 3.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-39 {
    width: 9.75rem !important;
  }
}
.w-40 {
  width: 4rem !important;
}
@media screen and (max-width: 768px) {
  .w-40 {
    width: 10rem !important;
  }
}
.w-41 {
  width: 4.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-41 {
    width: 10.25rem !important;
  }
}
.w-42 {
  width: 4.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-42 {
    width: 10.5rem !important;
  }
}
.w-43 {
  width: 4.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-43 {
    width: 10.75rem !important;
  }
}
.w-44 {
  width: 4.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-44 {
    width: 11rem !important;
  }
}
.w-45 {
  width: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-45 {
    width: 11.25rem !important;
  }
}
.w-46 {
  width: 4.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-46 {
    width: 11.5rem !important;
  }
}
.w-47 {
  width: 4.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-47 {
    width: 11.75rem !important;
  }
}
.w-48 {
  width: 4.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-48 {
    width: 12rem !important;
  }
}
.w-49 {
  width: 4.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-49 {
    width: 12.25rem !important;
  }
}
.w-50 {
  width: 5rem !important;
}
@media screen and (max-width: 768px) {
  .w-50 {
    width: 12.5rem !important;
  }
}
.w-51 {
  width: 5.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-51 {
    width: 12.75rem !important;
  }
}
.w-52 {
  width: 5.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-52 {
    width: 13rem !important;
  }
}
.w-53 {
  width: 5.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-53 {
    width: 13.25rem !important;
  }
}
.w-54 {
  width: 5.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-54 {
    width: 13.5rem !important;
  }
}
.w-55 {
  width: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-55 {
    width: 13.75rem !important;
  }
}
.w-56 {
  width: 5.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-56 {
    width: 14rem !important;
  }
}
.w-57 {
  width: 5.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-57 {
    width: 14.25rem !important;
  }
}
.w-58 {
  width: 5.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-58 {
    width: 14.5rem !important;
  }
}
.w-59 {
  width: 5.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-59 {
    width: 14.75rem !important;
  }
}
.w-60 {
  width: 6rem !important;
}
@media screen and (max-width: 768px) {
  .w-60 {
    width: 15rem !important;
  }
}
.w-61 {
  width: 6.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-61 {
    width: 15.25rem !important;
  }
}
.w-62 {
  width: 6.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-62 {
    width: 15.5rem !important;
  }
}
.w-63 {
  width: 6.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-63 {
    width: 15.75rem !important;
  }
}
.w-64 {
  width: 6.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-64 {
    width: 16rem !important;
  }
}
.w-65 {
  width: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-65 {
    width: 16.25rem !important;
  }
}
.w-66 {
  width: 6.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-66 {
    width: 16.5rem !important;
  }
}
.w-67 {
  width: 6.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-67 {
    width: 16.75rem !important;
  }
}
.w-68 {
  width: 6.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-68 {
    width: 17rem !important;
  }
}
.w-69 {
  width: 6.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-69 {
    width: 17.25rem !important;
  }
}
.w-70 {
  width: 7rem !important;
}
@media screen and (max-width: 768px) {
  .w-70 {
    width: 17.5rem !important;
  }
}
.w-71 {
  width: 7.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-71 {
    width: 17.75rem !important;
  }
}
.w-72 {
  width: 7.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-72 {
    width: 18rem !important;
  }
}
.w-73 {
  width: 7.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-73 {
    width: 18.25rem !important;
  }
}
.w-74 {
  width: 7.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-74 {
    width: 18.5rem !important;
  }
}
.w-75 {
  width: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-75 {
    width: 18.75rem !important;
  }
}
.w-76 {
  width: 7.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-76 {
    width: 19rem !important;
  }
}
.w-77 {
  width: 7.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-77 {
    width: 19.25rem !important;
  }
}
.w-78 {
  width: 7.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-78 {
    width: 19.5rem !important;
  }
}
.w-79 {
  width: 7.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-79 {
    width: 19.75rem !important;
  }
}
.w-80 {
  width: 8rem !important;
}
@media screen and (max-width: 768px) {
  .w-80 {
    width: 20rem !important;
  }
}
.w-81 {
  width: 8.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-81 {
    width: 20.25rem !important;
  }
}
.w-82 {
  width: 8.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-82 {
    width: 20.5rem !important;
  }
}
.w-83 {
  width: 8.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-83 {
    width: 20.75rem !important;
  }
}
.w-84 {
  width: 8.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-84 {
    width: 21rem !important;
  }
}
.w-85 {
  width: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-85 {
    width: 21.25rem !important;
  }
}
.w-86 {
  width: 8.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-86 {
    width: 21.5rem !important;
  }
}
.w-87 {
  width: 8.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-87 {
    width: 21.75rem !important;
  }
}
.w-88 {
  width: 8.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-88 {
    width: 22rem !important;
  }
}
.w-89 {
  width: 8.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-89 {
    width: 22.25rem !important;
  }
}
.w-90 {
  width: 9rem !important;
}
@media screen and (max-width: 768px) {
  .w-90 {
    width: 22.5rem !important;
  }
}
.w-91 {
  width: 9.1rem !important;
}
@media screen and (max-width: 768px) {
  .w-91 {
    width: 22.75rem !important;
  }
}
.w-92 {
  width: 9.2rem !important;
}
@media screen and (max-width: 768px) {
  .w-92 {
    width: 23rem !important;
  }
}
.w-93 {
  width: 9.3rem !important;
}
@media screen and (max-width: 768px) {
  .w-93 {
    width: 23.25rem !important;
  }
}
.w-94 {
  width: 9.4rem !important;
}
@media screen and (max-width: 768px) {
  .w-94 {
    width: 23.5rem !important;
  }
}
.w-95 {
  width: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .w-95 {
    width: 23.75rem !important;
  }
}
.w-96 {
  width: 9.6rem !important;
}
@media screen and (max-width: 768px) {
  .w-96 {
    width: 24rem !important;
  }
}
.w-97 {
  width: 9.7rem !important;
}
@media screen and (max-width: 768px) {
  .w-97 {
    width: 24.25rem !important;
  }
}
.w-98 {
  width: 9.8rem !important;
}
@media screen and (max-width: 768px) {
  .w-98 {
    width: 24.5rem !important;
  }
}
.w-99 {
  width: 9.9rem !important;
}
@media screen and (max-width: 768px) {
  .w-99 {
    width: 24.75rem !important;
  }
}
.w-100 {
  width: 10rem !important;
}
@media screen and (max-width: 768px) {
  .w-100 {
    width: 25rem !important;
  }
}
.mt-5 {
  margin-top: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-5 {
    margin-top: 0.18rem !important;
  }
}
.pt-5 {
  padding-top: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-5 {
    padding-top: 0.18rem !important;
  }
}
.pb-5 {
  padding-bottom: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-5 {
    padding-bottom: 0.18rem !important;
  }
}
.mt-10 {
  margin-top: 1rem !important;
}
@media screen and (max-width: 768px) {
  .mt-10 {
    margin-top: 0.36rem !important;
  }
}
.pt-10 {
  padding-top: 1rem !important;
}
@media screen and (max-width: 768px) {
  .pt-10 {
    padding-top: 0.36rem !important;
  }
}
.pb-10 {
  padding-bottom: 1rem !important;
}
@media screen and (max-width: 768px) {
  .pb-10 {
    padding-bottom: 0.36rem !important;
  }
}
.mt-15 {
  margin-top: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-15 {
    margin-top: 0.54rem !important;
  }
}
.pt-15 {
  padding-top: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-15 {
    padding-top: 0.54rem !important;
  }
}
.pb-15 {
  padding-bottom: 1.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-15 {
    padding-bottom: 0.54rem !important;
  }
}
.mt-20 {
  margin-top: 2rem !important;
}
@media screen and (max-width: 768px) {
  .mt-20 {
    margin-top: 0.72rem !important;
  }
}
.pt-20 {
  padding-top: 2rem !important;
}
@media screen and (max-width: 768px) {
  .pt-20 {
    padding-top: 0.72rem !important;
  }
}
.pb-20 {
  padding-bottom: 2rem !important;
}
@media screen and (max-width: 768px) {
  .pb-20 {
    padding-bottom: 0.72rem !important;
  }
}
.mt-25 {
  margin-top: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-25 {
    margin-top: 0.9rem !important;
  }
}
.pt-25 {
  padding-top: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-25 {
    padding-top: 0.9rem !important;
  }
}
.pb-25 {
  padding-bottom: 2.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-25 {
    padding-bottom: 0.9rem !important;
  }
}
.mt-30 {
  margin-top: 3rem !important;
}
@media screen and (max-width: 768px) {
  .mt-30 {
    margin-top: 1.08rem !important;
  }
}
.pt-30 {
  padding-top: 3rem !important;
}
@media screen and (max-width: 768px) {
  .pt-30 {
    padding-top: 1.08rem !important;
  }
}
.pb-30 {
  padding-bottom: 3rem !important;
}
@media screen and (max-width: 768px) {
  .pb-30 {
    padding-bottom: 1.08rem !important;
  }
}
.mt-35 {
  margin-top: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-35 {
    margin-top: 1.26rem !important;
  }
}
.pt-35 {
  padding-top: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-35 {
    padding-top: 1.26rem !important;
  }
}
.pb-35 {
  padding-bottom: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-35 {
    padding-bottom: 1.26rem !important;
  }
}
.mt-40 {
  margin-top: 4rem !important;
}
@media screen and (max-width: 768px) {
  .mt-40 {
    margin-top: 1.44rem !important;
  }
}
.pt-40 {
  padding-top: 4rem !important;
}
@media screen and (max-width: 768px) {
  .pt-40 {
    padding-top: 1.44rem !important;
  }
}
.pb-40 {
  padding-bottom: 4rem !important;
}
@media screen and (max-width: 768px) {
  .pb-40 {
    padding-bottom: 1.44rem !important;
  }
}
.mt-45 {
  margin-top: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-45 {
    margin-top: 1.62rem !important;
  }
}
.pt-45 {
  padding-top: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-45 {
    padding-top: 1.62rem !important;
  }
}
.pb-45 {
  padding-bottom: 4.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-45 {
    padding-bottom: 1.62rem !important;
  }
}
.mt-50 {
  margin-top: 5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-50 {
    margin-top: 1.8rem !important;
  }
}
.pt-50 {
  padding-top: 5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-50 {
    padding-top: 1.8rem !important;
  }
}
.pb-50 {
  padding-bottom: 5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-50 {
    padding-bottom: 1.8rem !important;
  }
}
.mt-55 {
  margin-top: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-55 {
    margin-top: 1.98rem !important;
  }
}
.pt-55 {
  padding-top: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-55 {
    padding-top: 1.98rem !important;
  }
}
.pb-55 {
  padding-bottom: 5.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-55 {
    padding-bottom: 1.98rem !important;
  }
}
.mt-60 {
  margin-top: 6rem !important;
}
@media screen and (max-width: 768px) {
  .mt-60 {
    margin-top: 2.16rem !important;
  }
}
.pt-60 {
  padding-top: 6rem !important;
}
@media screen and (max-width: 768px) {
  .pt-60 {
    padding-top: 2.16rem !important;
  }
}
.pb-60 {
  padding-bottom: 6rem !important;
}
@media screen and (max-width: 768px) {
  .pb-60 {
    padding-bottom: 2.16rem !important;
  }
}
.mt-65 {
  margin-top: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-65 {
    margin-top: 2.34rem !important;
  }
}
.pt-65 {
  padding-top: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-65 {
    padding-top: 2.34rem !important;
  }
}
.pb-65 {
  padding-bottom: 6.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-65 {
    padding-bottom: 2.34rem !important;
  }
}
.mt-70 {
  margin-top: 7rem !important;
}
@media screen and (max-width: 768px) {
  .mt-70 {
    margin-top: 2.52rem !important;
  }
}
.pt-70 {
  padding-top: 7rem !important;
}
@media screen and (max-width: 768px) {
  .pt-70 {
    padding-top: 2.52rem !important;
  }
}
.pb-70 {
  padding-bottom: 7rem !important;
}
@media screen and (max-width: 768px) {
  .pb-70 {
    padding-bottom: 2.52rem !important;
  }
}
.mt-75 {
  margin-top: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-75 {
    margin-top: 2.7rem !important;
  }
}
.pt-75 {
  padding-top: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-75 {
    padding-top: 2.7rem !important;
  }
}
.pb-75 {
  padding-bottom: 7.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-75 {
    padding-bottom: 2.7rem !important;
  }
}
.mt-80 {
  margin-top: 8rem !important;
}
@media screen and (max-width: 768px) {
  .mt-80 {
    margin-top: 2.88rem !important;
  }
}
.pt-80 {
  padding-top: 8rem !important;
}
@media screen and (max-width: 768px) {
  .pt-80 {
    padding-top: 2.88rem !important;
  }
}
.pb-80 {
  padding-bottom: 8rem !important;
}
@media screen and (max-width: 768px) {
  .pb-80 {
    padding-bottom: 2.88rem !important;
  }
}
.mt-85 {
  margin-top: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-85 {
    margin-top: 3.06rem !important;
  }
}
.pt-85 {
  padding-top: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-85 {
    padding-top: 3.06rem !important;
  }
}
.pb-85 {
  padding-bottom: 8.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-85 {
    padding-bottom: 3.06rem !important;
  }
}
.mt-90 {
  margin-top: 9rem !important;
}
@media screen and (max-width: 768px) {
  .mt-90 {
    margin-top: 3.24rem !important;
  }
}
.pt-90 {
  padding-top: 9rem !important;
}
@media screen and (max-width: 768px) {
  .pt-90 {
    padding-top: 3.24rem !important;
  }
}
.pb-90 {
  padding-bottom: 9rem !important;
}
@media screen and (max-width: 768px) {
  .pb-90 {
    padding-bottom: 3.24rem !important;
  }
}
.mt-95 {
  margin-top: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-95 {
    margin-top: 3.42rem !important;
  }
}
.pt-95 {
  padding-top: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-95 {
    padding-top: 3.42rem !important;
  }
}
.pb-95 {
  padding-bottom: 9.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-95 {
    padding-bottom: 3.42rem !important;
  }
}
.mt-100 {
  margin-top: 10rem !important;
}
@media screen and (max-width: 768px) {
  .mt-100 {
    margin-top: 3.6rem !important;
  }
}
.pt-100 {
  padding-top: 10rem !important;
}
@media screen and (max-width: 768px) {
  .pt-100 {
    padding-top: 3.6rem !important;
  }
}
.pb-100 {
  padding-bottom: 10rem !important;
}
@media screen and (max-width: 768px) {
  .pb-100 {
    padding-bottom: 3.6rem !important;
  }
}
.mt-105 {
  margin-top: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-105 {
    margin-top: 3.78rem !important;
  }
}
.pt-105 {
  padding-top: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-105 {
    padding-top: 3.78rem !important;
  }
}
.pb-105 {
  padding-bottom: 10.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-105 {
    padding-bottom: 3.78rem !important;
  }
}
.mt-110 {
  margin-top: 11rem !important;
}
@media screen and (max-width: 768px) {
  .mt-110 {
    margin-top: 3.96rem !important;
  }
}
.pt-110 {
  padding-top: 11rem !important;
}
@media screen and (max-width: 768px) {
  .pt-110 {
    padding-top: 3.96rem !important;
  }
}
.pb-110 {
  padding-bottom: 11rem !important;
}
@media screen and (max-width: 768px) {
  .pb-110 {
    padding-bottom: 3.96rem !important;
  }
}
.mt-115 {
  margin-top: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-115 {
    margin-top: 4.14rem !important;
  }
}
.pt-115 {
  padding-top: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-115 {
    padding-top: 4.14rem !important;
  }
}
.pb-115 {
  padding-bottom: 11.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-115 {
    padding-bottom: 4.14rem !important;
  }
}
.mt-120 {
  margin-top: 12rem !important;
}
@media screen and (max-width: 768px) {
  .mt-120 {
    margin-top: 4.32rem !important;
  }
}
.pt-120 {
  padding-top: 12rem !important;
}
@media screen and (max-width: 768px) {
  .pt-120 {
    padding-top: 4.32rem !important;
  }
}
.pb-120 {
  padding-bottom: 12rem !important;
}
@media screen and (max-width: 768px) {
  .pb-120 {
    padding-bottom: 4.32rem !important;
  }
}
.mt-125 {
  margin-top: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-125 {
    margin-top: 4.5rem !important;
  }
}
.pt-125 {
  padding-top: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-125 {
    padding-top: 4.5rem !important;
  }
}
.pb-125 {
  padding-bottom: 12.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-125 {
    padding-bottom: 4.5rem !important;
  }
}
.mt-130 {
  margin-top: 13rem !important;
}
@media screen and (max-width: 768px) {
  .mt-130 {
    margin-top: 4.68rem !important;
  }
}
.pt-130 {
  padding-top: 13rem !important;
}
@media screen and (max-width: 768px) {
  .pt-130 {
    padding-top: 4.68rem !important;
  }
}
.pb-130 {
  padding-bottom: 13rem !important;
}
@media screen and (max-width: 768px) {
  .pb-130 {
    padding-bottom: 4.68rem !important;
  }
}
.mt-135 {
  margin-top: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-135 {
    margin-top: 4.86rem !important;
  }
}
.pt-135 {
  padding-top: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-135 {
    padding-top: 4.86rem !important;
  }
}
.pb-135 {
  padding-bottom: 13.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-135 {
    padding-bottom: 4.86rem !important;
  }
}
.mt-140 {
  margin-top: 14rem !important;
}
@media screen and (max-width: 768px) {
  .mt-140 {
    margin-top: 5.04rem !important;
  }
}
.pt-140 {
  padding-top: 14rem !important;
}
@media screen and (max-width: 768px) {
  .pt-140 {
    padding-top: 5.04rem !important;
  }
}
.pb-140 {
  padding-bottom: 14rem !important;
}
@media screen and (max-width: 768px) {
  .pb-140 {
    padding-bottom: 5.04rem !important;
  }
}
.mt-145 {
  margin-top: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-145 {
    margin-top: 5.22rem !important;
  }
}
.pt-145 {
  padding-top: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-145 {
    padding-top: 5.22rem !important;
  }
}
.pb-145 {
  padding-bottom: 14.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-145 {
    padding-bottom: 5.22rem !important;
  }
}
.mt-150 {
  margin-top: 15rem !important;
}
@media screen and (max-width: 768px) {
  .mt-150 {
    margin-top: 5.4rem !important;
  }
}
.pt-150 {
  padding-top: 15rem !important;
}
@media screen and (max-width: 768px) {
  .pt-150 {
    padding-top: 5.4rem !important;
  }
}
.pb-150 {
  padding-bottom: 15rem !important;
}
@media screen and (max-width: 768px) {
  .pb-150 {
    padding-bottom: 5.4rem !important;
  }
}
.mt-155 {
  margin-top: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-155 {
    margin-top: 5.58rem !important;
  }
}
.pt-155 {
  padding-top: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-155 {
    padding-top: 5.58rem !important;
  }
}
.pb-155 {
  padding-bottom: 15.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-155 {
    padding-bottom: 5.58rem !important;
  }
}
.mt-160 {
  margin-top: 16rem !important;
}
@media screen and (max-width: 768px) {
  .mt-160 {
    margin-top: 5.76rem !important;
  }
}
.pt-160 {
  padding-top: 16rem !important;
}
@media screen and (max-width: 768px) {
  .pt-160 {
    padding-top: 5.76rem !important;
  }
}
.pb-160 {
  padding-bottom: 16rem !important;
}
@media screen and (max-width: 768px) {
  .pb-160 {
    padding-bottom: 5.76rem !important;
  }
}
.mt-165 {
  margin-top: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-165 {
    margin-top: 5.94rem !important;
  }
}
.pt-165 {
  padding-top: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-165 {
    padding-top: 5.94rem !important;
  }
}
.pb-165 {
  padding-bottom: 16.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-165 {
    padding-bottom: 5.94rem !important;
  }
}
.mt-170 {
  margin-top: 17rem !important;
}
@media screen and (max-width: 768px) {
  .mt-170 {
    margin-top: 6.12rem !important;
  }
}
.pt-170 {
  padding-top: 17rem !important;
}
@media screen and (max-width: 768px) {
  .pt-170 {
    padding-top: 6.12rem !important;
  }
}
.pb-170 {
  padding-bottom: 17rem !important;
}
@media screen and (max-width: 768px) {
  .pb-170 {
    padding-bottom: 6.12rem !important;
  }
}
.mt-175 {
  margin-top: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-175 {
    margin-top: 6.3rem !important;
  }
}
.pt-175 {
  padding-top: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-175 {
    padding-top: 6.3rem !important;
  }
}
.pb-175 {
  padding-bottom: 17.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-175 {
    padding-bottom: 6.3rem !important;
  }
}
.mt-180 {
  margin-top: 18rem !important;
}
@media screen and (max-width: 768px) {
  .mt-180 {
    margin-top: 6.48rem !important;
  }
}
.pt-180 {
  padding-top: 18rem !important;
}
@media screen and (max-width: 768px) {
  .pt-180 {
    padding-top: 6.48rem !important;
  }
}
.pb-180 {
  padding-bottom: 18rem !important;
}
@media screen and (max-width: 768px) {
  .pb-180 {
    padding-bottom: 6.48rem !important;
  }
}
.mt-185 {
  margin-top: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-185 {
    margin-top: 6.66rem !important;
  }
}
.pt-185 {
  padding-top: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-185 {
    padding-top: 6.66rem !important;
  }
}
.pb-185 {
  padding-bottom: 18.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-185 {
    padding-bottom: 6.66rem !important;
  }
}
.mt-190 {
  margin-top: 19rem !important;
}
@media screen and (max-width: 768px) {
  .mt-190 {
    margin-top: 6.84rem !important;
  }
}
.pt-190 {
  padding-top: 19rem !important;
}
@media screen and (max-width: 768px) {
  .pt-190 {
    padding-top: 6.84rem !important;
  }
}
.pb-190 {
  padding-bottom: 19rem !important;
}
@media screen and (max-width: 768px) {
  .pb-190 {
    padding-bottom: 6.84rem !important;
  }
}
.mt-195 {
  margin-top: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-195 {
    margin-top: 7.02rem !important;
  }
}
.pt-195 {
  padding-top: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-195 {
    padding-top: 7.02rem !important;
  }
}
.pb-195 {
  padding-bottom: 19.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-195 {
    padding-bottom: 7.02rem !important;
  }
}
.mt-200 {
  margin-top: 20rem !important;
}
@media screen and (max-width: 768px) {
  .mt-200 {
    margin-top: 7.2rem !important;
  }
}
.pt-200 {
  padding-top: 20rem !important;
}
@media screen and (max-width: 768px) {
  .pt-200 {
    padding-top: 7.2rem !important;
  }
}
.pb-200 {
  padding-bottom: 20rem !important;
}
@media screen and (max-width: 768px) {
  .pb-200 {
    padding-bottom: 7.2rem !important;
  }
}
.mt-205 {
  margin-top: 20.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-205 {
    margin-top: 7.38rem !important;
  }
}
.pt-205 {
  padding-top: 20.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-205 {
    padding-top: 7.38rem !important;
  }
}
.pb-205 {
  padding-bottom: 20.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-205 {
    padding-bottom: 7.38rem !important;
  }
}
.mt-210 {
  margin-top: 21rem !important;
}
@media screen and (max-width: 768px) {
  .mt-210 {
    margin-top: 7.56rem !important;
  }
}
.pt-210 {
  padding-top: 21rem !important;
}
@media screen and (max-width: 768px) {
  .pt-210 {
    padding-top: 7.56rem !important;
  }
}
.pb-210 {
  padding-bottom: 21rem !important;
}
@media screen and (max-width: 768px) {
  .pb-210 {
    padding-bottom: 7.56rem !important;
  }
}
.mt-215 {
  margin-top: 21.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-215 {
    margin-top: 7.74rem !important;
  }
}
.pt-215 {
  padding-top: 21.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-215 {
    padding-top: 7.74rem !important;
  }
}
.pb-215 {
  padding-bottom: 21.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-215 {
    padding-bottom: 7.74rem !important;
  }
}
.mt-220 {
  margin-top: 22rem !important;
}
@media screen and (max-width: 768px) {
  .mt-220 {
    margin-top: 7.92rem !important;
  }
}
.pt-220 {
  padding-top: 22rem !important;
}
@media screen and (max-width: 768px) {
  .pt-220 {
    padding-top: 7.92rem !important;
  }
}
.pb-220 {
  padding-bottom: 22rem !important;
}
@media screen and (max-width: 768px) {
  .pb-220 {
    padding-bottom: 7.92rem !important;
  }
}
.mt-225 {
  margin-top: 22.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-225 {
    margin-top: 8.1rem !important;
  }
}
.pt-225 {
  padding-top: 22.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-225 {
    padding-top: 8.1rem !important;
  }
}
.pb-225 {
  padding-bottom: 22.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-225 {
    padding-bottom: 8.1rem !important;
  }
}
.mt-230 {
  margin-top: 23rem !important;
}
@media screen and (max-width: 768px) {
  .mt-230 {
    margin-top: 8.28rem !important;
  }
}
.pt-230 {
  padding-top: 23rem !important;
}
@media screen and (max-width: 768px) {
  .pt-230 {
    padding-top: 8.28rem !important;
  }
}
.pb-230 {
  padding-bottom: 23rem !important;
}
@media screen and (max-width: 768px) {
  .pb-230 {
    padding-bottom: 8.28rem !important;
  }
}
.mt-235 {
  margin-top: 23.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-235 {
    margin-top: 8.46rem !important;
  }
}
.pt-235 {
  padding-top: 23.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-235 {
    padding-top: 8.46rem !important;
  }
}
.pb-235 {
  padding-bottom: 23.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-235 {
    padding-bottom: 8.46rem !important;
  }
}
.mt-240 {
  margin-top: 24rem !important;
}
@media screen and (max-width: 768px) {
  .mt-240 {
    margin-top: 8.64rem !important;
  }
}
.pt-240 {
  padding-top: 24rem !important;
}
@media screen and (max-width: 768px) {
  .pt-240 {
    padding-top: 8.64rem !important;
  }
}
.pb-240 {
  padding-bottom: 24rem !important;
}
@media screen and (max-width: 768px) {
  .pb-240 {
    padding-bottom: 8.64rem !important;
  }
}
.mt-245 {
  margin-top: 24.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-245 {
    margin-top: 8.82rem !important;
  }
}
.pt-245 {
  padding-top: 24.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-245 {
    padding-top: 8.82rem !important;
  }
}
.pb-245 {
  padding-bottom: 24.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-245 {
    padding-bottom: 8.82rem !important;
  }
}
.mt-250 {
  margin-top: 25rem !important;
}
@media screen and (max-width: 768px) {
  .mt-250 {
    margin-top: 9rem !important;
  }
}
.pt-250 {
  padding-top: 25rem !important;
}
@media screen and (max-width: 768px) {
  .pt-250 {
    padding-top: 9rem !important;
  }
}
.pb-250 {
  padding-bottom: 25rem !important;
}
@media screen and (max-width: 768px) {
  .pb-250 {
    padding-bottom: 9rem !important;
  }
}
.mt-255 {
  margin-top: 25.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-255 {
    margin-top: 9.18rem !important;
  }
}
.pt-255 {
  padding-top: 25.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-255 {
    padding-top: 9.18rem !important;
  }
}
.pb-255 {
  padding-bottom: 25.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-255 {
    padding-bottom: 9.18rem !important;
  }
}
.mt-260 {
  margin-top: 26rem !important;
}
@media screen and (max-width: 768px) {
  .mt-260 {
    margin-top: 9.36rem !important;
  }
}
.pt-260 {
  padding-top: 26rem !important;
}
@media screen and (max-width: 768px) {
  .pt-260 {
    padding-top: 9.36rem !important;
  }
}
.pb-260 {
  padding-bottom: 26rem !important;
}
@media screen and (max-width: 768px) {
  .pb-260 {
    padding-bottom: 9.36rem !important;
  }
}
.mt-265 {
  margin-top: 26.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-265 {
    margin-top: 9.54rem !important;
  }
}
.pt-265 {
  padding-top: 26.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-265 {
    padding-top: 9.54rem !important;
  }
}
.pb-265 {
  padding-bottom: 26.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-265 {
    padding-bottom: 9.54rem !important;
  }
}
.mt-270 {
  margin-top: 27rem !important;
}
@media screen and (max-width: 768px) {
  .mt-270 {
    margin-top: 9.72rem !important;
  }
}
.pt-270 {
  padding-top: 27rem !important;
}
@media screen and (max-width: 768px) {
  .pt-270 {
    padding-top: 9.72rem !important;
  }
}
.pb-270 {
  padding-bottom: 27rem !important;
}
@media screen and (max-width: 768px) {
  .pb-270 {
    padding-bottom: 9.72rem !important;
  }
}
.mt-275 {
  margin-top: 27.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-275 {
    margin-top: 9.9rem !important;
  }
}
.pt-275 {
  padding-top: 27.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-275 {
    padding-top: 9.9rem !important;
  }
}
.pb-275 {
  padding-bottom: 27.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-275 {
    padding-bottom: 9.9rem !important;
  }
}
.mt-280 {
  margin-top: 28rem !important;
}
@media screen and (max-width: 768px) {
  .mt-280 {
    margin-top: 10.08rem !important;
  }
}
.pt-280 {
  padding-top: 28rem !important;
}
@media screen and (max-width: 768px) {
  .pt-280 {
    padding-top: 10.08rem !important;
  }
}
.pb-280 {
  padding-bottom: 28rem !important;
}
@media screen and (max-width: 768px) {
  .pb-280 {
    padding-bottom: 10.08rem !important;
  }
}
.mt-285 {
  margin-top: 28.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-285 {
    margin-top: 10.26rem !important;
  }
}
.pt-285 {
  padding-top: 28.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-285 {
    padding-top: 10.26rem !important;
  }
}
.pb-285 {
  padding-bottom: 28.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-285 {
    padding-bottom: 10.26rem !important;
  }
}
.mt-290 {
  margin-top: 29rem !important;
}
@media screen and (max-width: 768px) {
  .mt-290 {
    margin-top: 10.44rem !important;
  }
}
.pt-290 {
  padding-top: 29rem !important;
}
@media screen and (max-width: 768px) {
  .pt-290 {
    padding-top: 10.44rem !important;
  }
}
.pb-290 {
  padding-bottom: 29rem !important;
}
@media screen and (max-width: 768px) {
  .pb-290 {
    padding-bottom: 10.44rem !important;
  }
}
.mt-295 {
  margin-top: 29.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-295 {
    margin-top: 10.62rem !important;
  }
}
.pt-295 {
  padding-top: 29.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-295 {
    padding-top: 10.62rem !important;
  }
}
.pb-295 {
  padding-bottom: 29.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-295 {
    padding-bottom: 10.62rem !important;
  }
}
.mt-300 {
  margin-top: 30rem !important;
}
@media screen and (max-width: 768px) {
  .mt-300 {
    margin-top: 10.8rem !important;
  }
}
.pt-300 {
  padding-top: 30rem !important;
}
@media screen and (max-width: 768px) {
  .pt-300 {
    padding-top: 10.8rem !important;
  }
}
.pb-300 {
  padding-bottom: 30rem !important;
}
@media screen and (max-width: 768px) {
  .pb-300 {
    padding-bottom: 10.8rem !important;
  }
}
.mt-305 {
  margin-top: 30.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-305 {
    margin-top: 10.98rem !important;
  }
}
.pt-305 {
  padding-top: 30.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-305 {
    padding-top: 10.98rem !important;
  }
}
.pb-305 {
  padding-bottom: 30.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-305 {
    padding-bottom: 10.98rem !important;
  }
}
.mt-310 {
  margin-top: 31rem !important;
}
@media screen and (max-width: 768px) {
  .mt-310 {
    margin-top: 11.16rem !important;
  }
}
.pt-310 {
  padding-top: 31rem !important;
}
@media screen and (max-width: 768px) {
  .pt-310 {
    padding-top: 11.16rem !important;
  }
}
.pb-310 {
  padding-bottom: 31rem !important;
}
@media screen and (max-width: 768px) {
  .pb-310 {
    padding-bottom: 11.16rem !important;
  }
}
.mt-315 {
  margin-top: 31.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-315 {
    margin-top: 11.34rem !important;
  }
}
.pt-315 {
  padding-top: 31.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-315 {
    padding-top: 11.34rem !important;
  }
}
.pb-315 {
  padding-bottom: 31.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-315 {
    padding-bottom: 11.34rem !important;
  }
}
.mt-320 {
  margin-top: 32rem !important;
}
@media screen and (max-width: 768px) {
  .mt-320 {
    margin-top: 11.52rem !important;
  }
}
.pt-320 {
  padding-top: 32rem !important;
}
@media screen and (max-width: 768px) {
  .pt-320 {
    padding-top: 11.52rem !important;
  }
}
.pb-320 {
  padding-bottom: 32rem !important;
}
@media screen and (max-width: 768px) {
  .pb-320 {
    padding-bottom: 11.52rem !important;
  }
}
.mt-325 {
  margin-top: 32.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-325 {
    margin-top: 11.7rem !important;
  }
}
.pt-325 {
  padding-top: 32.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-325 {
    padding-top: 11.7rem !important;
  }
}
.pb-325 {
  padding-bottom: 32.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-325 {
    padding-bottom: 11.7rem !important;
  }
}
.mt-330 {
  margin-top: 33rem !important;
}
@media screen and (max-width: 768px) {
  .mt-330 {
    margin-top: 11.88rem !important;
  }
}
.pt-330 {
  padding-top: 33rem !important;
}
@media screen and (max-width: 768px) {
  .pt-330 {
    padding-top: 11.88rem !important;
  }
}
.pb-330 {
  padding-bottom: 33rem !important;
}
@media screen and (max-width: 768px) {
  .pb-330 {
    padding-bottom: 11.88rem !important;
  }
}
.mt-335 {
  margin-top: 33.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-335 {
    margin-top: 12.06rem !important;
  }
}
.pt-335 {
  padding-top: 33.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-335 {
    padding-top: 12.06rem !important;
  }
}
.pb-335 {
  padding-bottom: 33.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-335 {
    padding-bottom: 12.06rem !important;
  }
}
.mt-340 {
  margin-top: 34rem !important;
}
@media screen and (max-width: 768px) {
  .mt-340 {
    margin-top: 12.24rem !important;
  }
}
.pt-340 {
  padding-top: 34rem !important;
}
@media screen and (max-width: 768px) {
  .pt-340 {
    padding-top: 12.24rem !important;
  }
}
.pb-340 {
  padding-bottom: 34rem !important;
}
@media screen and (max-width: 768px) {
  .pb-340 {
    padding-bottom: 12.24rem !important;
  }
}
.mt-345 {
  margin-top: 34.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-345 {
    margin-top: 12.42rem !important;
  }
}
.pt-345 {
  padding-top: 34.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-345 {
    padding-top: 12.42rem !important;
  }
}
.pb-345 {
  padding-bottom: 34.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-345 {
    padding-bottom: 12.42rem !important;
  }
}
.mt-350 {
  margin-top: 35rem !important;
}
@media screen and (max-width: 768px) {
  .mt-350 {
    margin-top: 12.6rem !important;
  }
}
.pt-350 {
  padding-top: 35rem !important;
}
@media screen and (max-width: 768px) {
  .pt-350 {
    padding-top: 12.6rem !important;
  }
}
.pb-350 {
  padding-bottom: 35rem !important;
}
@media screen and (max-width: 768px) {
  .pb-350 {
    padding-bottom: 12.6rem !important;
  }
}
.mt-355 {
  margin-top: 35.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-355 {
    margin-top: 12.78rem !important;
  }
}
.pt-355 {
  padding-top: 35.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-355 {
    padding-top: 12.78rem !important;
  }
}
.pb-355 {
  padding-bottom: 35.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-355 {
    padding-bottom: 12.78rem !important;
  }
}
.mt-360 {
  margin-top: 36rem !important;
}
@media screen and (max-width: 768px) {
  .mt-360 {
    margin-top: 12.96rem !important;
  }
}
.pt-360 {
  padding-top: 36rem !important;
}
@media screen and (max-width: 768px) {
  .pt-360 {
    padding-top: 12.96rem !important;
  }
}
.pb-360 {
  padding-bottom: 36rem !important;
}
@media screen and (max-width: 768px) {
  .pb-360 {
    padding-bottom: 12.96rem !important;
  }
}
.mt-365 {
  margin-top: 36.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-365 {
    margin-top: 13.14rem !important;
  }
}
.pt-365 {
  padding-top: 36.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-365 {
    padding-top: 13.14rem !important;
  }
}
.pb-365 {
  padding-bottom: 36.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-365 {
    padding-bottom: 13.14rem !important;
  }
}
.mt-370 {
  margin-top: 37rem !important;
}
@media screen and (max-width: 768px) {
  .mt-370 {
    margin-top: 13.32rem !important;
  }
}
.pt-370 {
  padding-top: 37rem !important;
}
@media screen and (max-width: 768px) {
  .pt-370 {
    padding-top: 13.32rem !important;
  }
}
.pb-370 {
  padding-bottom: 37rem !important;
}
@media screen and (max-width: 768px) {
  .pb-370 {
    padding-bottom: 13.32rem !important;
  }
}
.mt-375 {
  margin-top: 37.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-375 {
    margin-top: 13.5rem !important;
  }
}
.pt-375 {
  padding-top: 37.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-375 {
    padding-top: 13.5rem !important;
  }
}
.pb-375 {
  padding-bottom: 37.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-375 {
    padding-bottom: 13.5rem !important;
  }
}
.mt-380 {
  margin-top: 38rem !important;
}
@media screen and (max-width: 768px) {
  .mt-380 {
    margin-top: 13.68rem !important;
  }
}
.pt-380 {
  padding-top: 38rem !important;
}
@media screen and (max-width: 768px) {
  .pt-380 {
    padding-top: 13.68rem !important;
  }
}
.pb-380 {
  padding-bottom: 38rem !important;
}
@media screen and (max-width: 768px) {
  .pb-380 {
    padding-bottom: 13.68rem !important;
  }
}
.mt-385 {
  margin-top: 38.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-385 {
    margin-top: 13.86rem !important;
  }
}
.pt-385 {
  padding-top: 38.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-385 {
    padding-top: 13.86rem !important;
  }
}
.pb-385 {
  padding-bottom: 38.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-385 {
    padding-bottom: 13.86rem !important;
  }
}
.mt-390 {
  margin-top: 39rem !important;
}
@media screen and (max-width: 768px) {
  .mt-390 {
    margin-top: 14.04rem !important;
  }
}
.pt-390 {
  padding-top: 39rem !important;
}
@media screen and (max-width: 768px) {
  .pt-390 {
    padding-top: 14.04rem !important;
  }
}
.pb-390 {
  padding-bottom: 39rem !important;
}
@media screen and (max-width: 768px) {
  .pb-390 {
    padding-bottom: 14.04rem !important;
  }
}
.mt-395 {
  margin-top: 39.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-395 {
    margin-top: 14.22rem !important;
  }
}
.pt-395 {
  padding-top: 39.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-395 {
    padding-top: 14.22rem !important;
  }
}
.pb-395 {
  padding-bottom: 39.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-395 {
    padding-bottom: 14.22rem !important;
  }
}
.mt-400 {
  margin-top: 40rem !important;
}
@media screen and (max-width: 768px) {
  .mt-400 {
    margin-top: 14.4rem !important;
  }
}
.pt-400 {
  padding-top: 40rem !important;
}
@media screen and (max-width: 768px) {
  .pt-400 {
    padding-top: 14.4rem !important;
  }
}
.pb-400 {
  padding-bottom: 40rem !important;
}
@media screen and (max-width: 768px) {
  .pb-400 {
    padding-bottom: 14.4rem !important;
  }
}
.mt-405 {
  margin-top: 40.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-405 {
    margin-top: 14.58rem !important;
  }
}
.pt-405 {
  padding-top: 40.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-405 {
    padding-top: 14.58rem !important;
  }
}
.pb-405 {
  padding-bottom: 40.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-405 {
    padding-bottom: 14.58rem !important;
  }
}
.mt-410 {
  margin-top: 41rem !important;
}
@media screen and (max-width: 768px) {
  .mt-410 {
    margin-top: 14.76rem !important;
  }
}
.pt-410 {
  padding-top: 41rem !important;
}
@media screen and (max-width: 768px) {
  .pt-410 {
    padding-top: 14.76rem !important;
  }
}
.pb-410 {
  padding-bottom: 41rem !important;
}
@media screen and (max-width: 768px) {
  .pb-410 {
    padding-bottom: 14.76rem !important;
  }
}
.mt-415 {
  margin-top: 41.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-415 {
    margin-top: 14.94rem !important;
  }
}
.pt-415 {
  padding-top: 41.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-415 {
    padding-top: 14.94rem !important;
  }
}
.pb-415 {
  padding-bottom: 41.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-415 {
    padding-bottom: 14.94rem !important;
  }
}
.mt-420 {
  margin-top: 42rem !important;
}
@media screen and (max-width: 768px) {
  .mt-420 {
    margin-top: 15.12rem !important;
  }
}
.pt-420 {
  padding-top: 42rem !important;
}
@media screen and (max-width: 768px) {
  .pt-420 {
    padding-top: 15.12rem !important;
  }
}
.pb-420 {
  padding-bottom: 42rem !important;
}
@media screen and (max-width: 768px) {
  .pb-420 {
    padding-bottom: 15.12rem !important;
  }
}
.mt-425 {
  margin-top: 42.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-425 {
    margin-top: 15.3rem !important;
  }
}
.pt-425 {
  padding-top: 42.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-425 {
    padding-top: 15.3rem !important;
  }
}
.pb-425 {
  padding-bottom: 42.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-425 {
    padding-bottom: 15.3rem !important;
  }
}
.mt-430 {
  margin-top: 43rem !important;
}
@media screen and (max-width: 768px) {
  .mt-430 {
    margin-top: 15.48rem !important;
  }
}
.pt-430 {
  padding-top: 43rem !important;
}
@media screen and (max-width: 768px) {
  .pt-430 {
    padding-top: 15.48rem !important;
  }
}
.pb-430 {
  padding-bottom: 43rem !important;
}
@media screen and (max-width: 768px) {
  .pb-430 {
    padding-bottom: 15.48rem !important;
  }
}
.mt-435 {
  margin-top: 43.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-435 {
    margin-top: 15.66rem !important;
  }
}
.pt-435 {
  padding-top: 43.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-435 {
    padding-top: 15.66rem !important;
  }
}
.pb-435 {
  padding-bottom: 43.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-435 {
    padding-bottom: 15.66rem !important;
  }
}
.mt-440 {
  margin-top: 44rem !important;
}
@media screen and (max-width: 768px) {
  .mt-440 {
    margin-top: 15.84rem !important;
  }
}
.pt-440 {
  padding-top: 44rem !important;
}
@media screen and (max-width: 768px) {
  .pt-440 {
    padding-top: 15.84rem !important;
  }
}
.pb-440 {
  padding-bottom: 44rem !important;
}
@media screen and (max-width: 768px) {
  .pb-440 {
    padding-bottom: 15.84rem !important;
  }
}
.mt-445 {
  margin-top: 44.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-445 {
    margin-top: 16.02rem !important;
  }
}
.pt-445 {
  padding-top: 44.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-445 {
    padding-top: 16.02rem !important;
  }
}
.pb-445 {
  padding-bottom: 44.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-445 {
    padding-bottom: 16.02rem !important;
  }
}
.mt-450 {
  margin-top: 45rem !important;
}
@media screen and (max-width: 768px) {
  .mt-450 {
    margin-top: 16.2rem !important;
  }
}
.pt-450 {
  padding-top: 45rem !important;
}
@media screen and (max-width: 768px) {
  .pt-450 {
    padding-top: 16.2rem !important;
  }
}
.pb-450 {
  padding-bottom: 45rem !important;
}
@media screen and (max-width: 768px) {
  .pb-450 {
    padding-bottom: 16.2rem !important;
  }
}
.mt-455 {
  margin-top: 45.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-455 {
    margin-top: 16.38rem !important;
  }
}
.pt-455 {
  padding-top: 45.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-455 {
    padding-top: 16.38rem !important;
  }
}
.pb-455 {
  padding-bottom: 45.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-455 {
    padding-bottom: 16.38rem !important;
  }
}
.mt-460 {
  margin-top: 46rem !important;
}
@media screen and (max-width: 768px) {
  .mt-460 {
    margin-top: 16.56rem !important;
  }
}
.pt-460 {
  padding-top: 46rem !important;
}
@media screen and (max-width: 768px) {
  .pt-460 {
    padding-top: 16.56rem !important;
  }
}
.pb-460 {
  padding-bottom: 46rem !important;
}
@media screen and (max-width: 768px) {
  .pb-460 {
    padding-bottom: 16.56rem !important;
  }
}
.mt-465 {
  margin-top: 46.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-465 {
    margin-top: 16.74rem !important;
  }
}
.pt-465 {
  padding-top: 46.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-465 {
    padding-top: 16.74rem !important;
  }
}
.pb-465 {
  padding-bottom: 46.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-465 {
    padding-bottom: 16.74rem !important;
  }
}
.mt-470 {
  margin-top: 47rem !important;
}
@media screen and (max-width: 768px) {
  .mt-470 {
    margin-top: 16.92rem !important;
  }
}
.pt-470 {
  padding-top: 47rem !important;
}
@media screen and (max-width: 768px) {
  .pt-470 {
    padding-top: 16.92rem !important;
  }
}
.pb-470 {
  padding-bottom: 47rem !important;
}
@media screen and (max-width: 768px) {
  .pb-470 {
    padding-bottom: 16.92rem !important;
  }
}
.mt-475 {
  margin-top: 47.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-475 {
    margin-top: 17.1rem !important;
  }
}
.pt-475 {
  padding-top: 47.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-475 {
    padding-top: 17.1rem !important;
  }
}
.pb-475 {
  padding-bottom: 47.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-475 {
    padding-bottom: 17.1rem !important;
  }
}
.mt-480 {
  margin-top: 48rem !important;
}
@media screen and (max-width: 768px) {
  .mt-480 {
    margin-top: 17.28rem !important;
  }
}
.pt-480 {
  padding-top: 48rem !important;
}
@media screen and (max-width: 768px) {
  .pt-480 {
    padding-top: 17.28rem !important;
  }
}
.pb-480 {
  padding-bottom: 48rem !important;
}
@media screen and (max-width: 768px) {
  .pb-480 {
    padding-bottom: 17.28rem !important;
  }
}
.mt-485 {
  margin-top: 48.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-485 {
    margin-top: 17.46rem !important;
  }
}
.pt-485 {
  padding-top: 48.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-485 {
    padding-top: 17.46rem !important;
  }
}
.pb-485 {
  padding-bottom: 48.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-485 {
    padding-bottom: 17.46rem !important;
  }
}
.mt-490 {
  margin-top: 49rem !important;
}
@media screen and (max-width: 768px) {
  .mt-490 {
    margin-top: 17.64rem !important;
  }
}
.pt-490 {
  padding-top: 49rem !important;
}
@media screen and (max-width: 768px) {
  .pt-490 {
    padding-top: 17.64rem !important;
  }
}
.pb-490 {
  padding-bottom: 49rem !important;
}
@media screen and (max-width: 768px) {
  .pb-490 {
    padding-bottom: 17.64rem !important;
  }
}
.mt-495 {
  margin-top: 49.5rem !important;
}
@media screen and (max-width: 768px) {
  .mt-495 {
    margin-top: 17.82rem !important;
  }
}
.pt-495 {
  padding-top: 49.5rem !important;
}
@media screen and (max-width: 768px) {
  .pt-495 {
    padding-top: 17.82rem !important;
  }
}
.pb-495 {
  padding-bottom: 49.5rem !important;
}
@media screen and (max-width: 768px) {
  .pb-495 {
    padding-bottom: 17.82rem !important;
  }
}
.mt-500 {
  margin-top: 50rem !important;
}
@media screen and (max-width: 768px) {
  .mt-500 {
    margin-top: 18rem !important;
  }
}
.pt-500 {
  padding-top: 50rem !important;
}
@media screen and (max-width: 768px) {
  .pt-500 {
    padding-top: 18rem !important;
  }
}
.pb-500 {
  padding-bottom: 50rem !important;
}
@media screen and (max-width: 768px) {
  .pb-500 {
    padding-bottom: 18rem !important;
  }
}
.radius-20 {
  border-radius: 2rem 2rem 2rem 0;
}
.radius-30 {
  border-radius: 3rem 3rem 3rem 0;
}
.radius-40 {
  border-radius: 4rem 4rem 4rem 0;
}
.radius-20,
.radius-30,
.radius-40 {
  display: block;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .radius-20,
  .radius-30,
  .radius-40 {
    border-radius: 2rem 2rem 2rem 0;
  }
}
.bg-gray {
  background-color: #eefaff;
}
.bg-blue {
  background-color: #0599d9;
}
.bg-light-blue {
  background-color: #eefaff;
}
.align-center {
  text-align: center;
}
.hover-opacity {
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .hover-opacity:hover {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .hover-opacity:active {
    opacity: 0.6;
  }
}
.hover-overlay {
  background-color: #fff;
}
@media (hover: hover) {
  .hover-overlay:hover img {
    opacity: 0.5;
  }
}
@media (hover: none) {
  .hover-overlay:active img {
    opacity: 0.5;
  }
}
.hover-overlay img {
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
@media (hover: hover) {
  .hover-scale:hover img {
    scale: 1.05;
  }
}
@media (hover: none) {
  .hover-scale:active img {
    scale: 1.05;
  }
}
.hover-scale img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.hover-blue,
.hover-white {
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.hover-blue::before, .hover-blue::after,
.hover-white::before,
.hover-white::after {
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .hover-blue:hover {
    background-color: #fff !important;
    color: #0599d9 !important;
  }
  .hover-blue:hover::before, .hover-blue:hover::after {
    background-color: #0599d9 !important;
  }
}
@media (hover: none) {
  .hover-blue:active {
    background-color: #fff !important;
    color: #0599d9 !important;
  }
  .hover-blue:active::before, .hover-blue:active::after {
    background-color: #0599d9 !important;
  }
}
@media (hover: hover) {
  .hover-white:hover {
    background-color: #0599d9 !important;
    color: #fff !important;
  }
  .hover-white:hover::before, .hover-white:hover::after {
    background-color: #fff !important;
  }
}
@media (hover: none) {
  .hover-white:active {
    background-color: #0599d9 !important;
    color: #fff !important;
  }
  .hover-white:active::before, .hover-white:active::after {
    background-color: #fff !important;
  }
}
.hover-underline {
  position: relative;
  color: #0599d9;
  background-image: linear-gradient(90deg, #0599d9, #0599d9);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0 1px;
  transition: background-size 0.6s;
}
@media (hover: hover) {
  .hover-underline:hover {
    background-size: 100% 1px;
  }
}
@media (hover: none) {
  .hover-underline:active {
    background-size: 100% 1px;
  }
}
.slide-up {
  translate: 0 2.5rem;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.39, 0.575, 0.565, 1), translate 0.45s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.slide-up.is-inview {
  translate: 0;
  opacity: 1;
}