@charset "UTF-8";
/* ==========================================================================
Base
========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
/*!
 * @acab/reset.css
 */
*,
*::before,
*::after {
  box-sizing: border-box; /* もちろん、より直感的なbox-sizingに設定 */
  margin: 0; /* マージンは0に */
  padding: 0; /* パディングも常に0に */
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important; /* hiddenは非表示を意味します */
}

:where(html) {
  -webkit-text-size-adjust: none; /* iOSのランドスケープでテキストが調整されないようにする */
  color-scheme: dark light; /* ユーザーがダークテーマを好む場合、自動的にダークテーマになる */
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth; /* 何かにフォーカスがある場合のみスムーズスクロール */
  }
}
:where(body) {
  block-size: 100%; /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
}

:where(input, button, textarea, select) {
  color: inherit; /* カラーも継承 */
  font: inherit; /* フォーム コントロールは親フォントを継承 */
}

:where(textarea) {
  resize: vertical; /* テキストエリアの水平リサイズを無効に */
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer; /* インタラクティブなものにカーソルを合わせる */
}

:where(:disabled) {
  cursor: not-allowed; /* フォームコントロール無効時のカーソルを許可しない */
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed; /* ラベルにもカーソルを許可しない */
}

:where(button) {
  border-style: solid; /* ボタンのボーダーのスタイルを設定しやすくする */
}

:where(a) {
  text-underline-offset: 0.2ex; /* 下線の上にスペースを追加する */
}

:where(ul, ol) {
  list-style: none; /* ビュレットを削除、必要に応じて手動で追加する */
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block; /* 置換された要素をより予測可能にする */
}

:where(img, picture, svg) {
  block-size: auto; /* アスペクト比を保持 */
  max-inline-size: 100%; /* images should never overflow past the available space */
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word; /* 長い単語は改行 */
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem); /* 見出しの行の高さを減らす */
}

:where(hr) {
  block-size: 0;
  /* より一貫性のある、スタイリッシュなhr */
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  overflow: visible;
}

:where(:focus-visible) {
  /* より一貫性のある、カスタマイズ可能なフォーカスのアウトライン */
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

/* .visually-hiddenは後のカスケードレイヤーを上書きするために!importantを使用 */
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  border: 0 !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

:root {
  --clr-black: #001a27;
  --clr-black-02: #002233;
  --clr-white: #fff;
  --clr-primary-100: #0b9de3;
  --clr-primary-50: #a9b1cf;
  --clr-primary-30: #d3dcec;
  --clr-primary-10: #f0f2fa;
  --clr-secondary-100: #437bd9;
  --clr-red-01: #ff7171;
  --clr-red-02: #ffb9b9;
  --line-height-l: 2;
  --line-height-m: 1.6;
  --line-height-s: 1.4;
  --letter-spacing-l: 0.08em;
  --letter-spacing-m: 0.04em;
  --letter-spacing-s: 0;
  --leading-trim: calc((1em - 1lh) / 2);
}

/* Base
----------------------------------------------------------------- */
html {
  font-size: 62.5%;
  height: -webkit-fill-available;
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

body {
  background: var(--clr-white);
  color: var(--clr-black);
  font-family: "Yu Gothic", "游ゴシック", sans-serif;
  font-feature-settings: "palt" on, "pkna" on;
  font-feature-settings: "palt" on, "vkrn" on;
  font-size: 1.6rem;
  letter-spacing: var(--letter-spacing-l);
  line-height: var(--line-height-l);
  -webkit-font-smoothing: antialiased;
  padding-top: 17.6vw;
}
@media print, screen and (min-width:768px) {
  body {
    padding-top: clamp(39.4666666667px, 5.1388888889vw, 74px);
  }
}
body.home {
  padding-top: 0;
}
@media print, screen and (min-width:768px) {
  body.home {
    padding-top: 0;
  }
}

:where(a) {
  color: var(--clr-black-100);
  text-decoration: none;
}
:where(a):hover {
  text-decoration: none;
}
:where(ol),
:where(ul),
:where(dl) {
  list-style: none;
}

:where(em),
:where(i) {
  font-style: normal;
}

:where(h1),
:where(h2),
:where(h3),
:where(h4),
:where(h5),
:where(h6) {
  font-size: 1.6rem;
  font-weight: normal;
}

:where(p) {
  font-size: 4vw;
  font-weight: 400;
  line-height: var(--line-height-l);
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  :where(p) {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
:where(p).-center {
  text-align: center;
}

:where(img) {
  display: block;
  height: auto;
  width: 100%;
}

:where(button) {
  appearance: none;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  cursor: pointer;
}

:where(input) {
  appearance: none;
  background-color: var(--clr-white);
  border: 1px solid var(--clr-black-100);
}

:where(textarea) {
  appearance: none;
  background-color: var(--clr-white);
  border: 1px solid var(--clr-black-100);
}

@media print, screen and (max-width:767.98px) {
  .pc {
    display: none !important;
  }
}
@media print, screen and (min-width:768px) {
  .sp {
    display: none !important;
  }
}
/**
 * Swiper 11.0.7
 * 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: February 27, 2024
 */
@font-face {
  font-family: swiper-icons;
  font-style: normal;
  font-weight: 400;
  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");
}
:root {
  --swiper-theme-color:#007aff;
}

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

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

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

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

.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 {
  display: block;
  flex-shrink: 0;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%;
}

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

.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);
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

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

.swiper-3d {
  perspective: 1200px;
}

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

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.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 {
  height: var(--swiper-centered-offset-after);
  min-width: 1px;
  width: 100%;
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  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 {
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
  box-sizing: border-box;
  height: 42px;
  left: 50%;
  margin-left: -21px;
  margin-top: -21px;
  position: absolute;
  top: 50%;
  transform-origin: 50%;
  width: 42px;
  z-index: 10;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .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);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
}

.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 {
  height: var(--swiper-virtual-size);
  width: 1px;
}

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

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

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  cursor: auto;
  opacity: 0.35;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  cursor: auto;
  opacity: 0;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
  height: 100%;
  object-fit: contain;
  transform-origin: center;
  width: 100%;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev 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 {
  left: auto;
  right: var(--swiper-navigation-sides-offset, 10px);
}

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

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

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

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  left: auto;
  right: var(--swiper-navigation-sides-offset, 10px);
}

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

.swiper-pagination {
  position: absolute;
  text-align: center;
  transform: translate3d(0, 0, 0);
  transition: 0.3s opacity;
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  left: 0;
  top: var(--swiper-pagination-top, auto);
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  font-size: 0;
  overflow: hidden;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  position: relative;
  transform: scale(0.33);
}

.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 {
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  display: inline-block;
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
}

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

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

.swiper-pagination-bullet:only-child {
  display: none !important;
}

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

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  left: var(--swiper-pagination-left, auto);
  right: var(--swiper-pagination-right, 8px);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s 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: 0.2s transform, 0.2s left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.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));
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(0);
  transform-origin: left top;
  width: 100%;
}

.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-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
  width: 100%;
}

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

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

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

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  bottom: var(--swiper-scrollbar-bottom, 4px);
  height: var(--swiper-scrollbar-size, 4px);
  left: var(--swiper-scrollbar-sides-offset, 1%);
  position: absolute;
  top: var(--swiper-scrollbar-top, auto);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  z-index: 50;
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  left: var(--swiper-scrollbar-left, auto);
  position: absolute;
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  width: var(--swiper-scrollbar-size, 4px);
  z-index: 50;
}

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

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

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

.swiper-zoom-container {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  text-align: center;
  width: 100%;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

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

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

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

.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;
  backface-visibility: hidden;
  height: 100%;
  transform-origin: 0 0;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}

.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 {
  bottom: 0px;
  height: 100%;
  left: 0;
  opacity: 0.6;
  position: absolute;
  width: 100%;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  background: #000;
  bottom: 0;
  content: "";
  filter: blur(50px);
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.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, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  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;
}

.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, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}

p {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: var(--line-height-l);
  margin-top: 4vw;
}
p.has-text-align-right {
  text-align: right;
}
@media print, screen and (min-width:768px) {
  p {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
p.-note {
  font-size: 3.2vw;
  padding-left: 5.8666666667vw;
  position: relative;
}
p.-note::before {
  content: "※";
  left: 0;
  position: absolute;
  top: 0;
}
@media print, screen and (min-width:768px) {
  p.-note {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
p strong {
  font-weight: 700;
}
p .has-small-font-size {
  font-size: 3.2vw;
}
@media print, screen and (min-width:768px) {
  p .has-small-font-size {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}

a {
  color: var(--clr-primary-100);
  text-decoration: underline;
}
a[target=_blank]::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 5.3333333333vw;
  margin-left: 0.5333333333vw;
  margin-right: 0.5333333333vw;
  vertical-align: middle;
  width: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  a[target=_blank]::after {
    height: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-left: clamp(1.0666666667px, 0.1388888889vw, 2px);
    margin-right: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

ol ol,
ol ul,
ul ol,
ul ul {
  margin-bottom: 4.8vw;
  margin-top: 4.8vw;
}
@media print, screen and (min-width:768px) {
  ol ol,
  ol ul,
  ul ol,
  ul ul {
    margin-bottom: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(9.6px, 1.25vw, 18px);
  }
}

ul {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  ul {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
ul.-unstyled {
  margin-top: 0;
}
ul.-unstyled li {
  margin-top: 0;
  padding-left: 0;
}
ul.-unstyled li::before {
  content: none;
}
ul.big-circle, ul.small-circle {
  list-style: none !important;
  padding-left: 0 !important;
}
ul > li {
  font-size: 4.2666666667vw;
  font-weight: 500;
  margin-top: 4vw;
  padding-left: 5.3333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  ul > li {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(8px, 1.0416666667vw, 15px);
    padding-left: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
ul > li > ul {
  margin-bottom: 4.8vw;
  margin-top: 4.8vw;
}
@media print, screen and (min-width:768px) {
  ul > li > ul {
    margin-bottom: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(9.6px, 1.25vw, 18px);
  }
}
ul > li > ul li::before {
  background: #fff;
  border: 1px solid var(--clr-secondary-100);
}
ul > li > ul li > ul li::before {
  background: var(--clr-secondary-100);
  border-radius: unset;
  height: 0.2666666667vw;
  top: 4vw;
  width: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  ul > li > ul li > ul li::before {
    height: clamp(0.5333333333px, 0.0694444444vw, 1px);
    top: clamp(8px, 1.0416666667vw, 15px);
    width: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
ul > li::before {
  background: var(--clr-secondary-100);
  border-radius: 50%;
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 0;
  position: absolute;
  top: 2.9333333333vw;
  width: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  ul > li::before {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    top: clamp(7.4666666667px, 0.9722222222vw, 14px);
    width: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}

ol {
  counter-reset: num;
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  ol {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
ol.-unstyled {
  margin-top: 0;
}
ol.-unstyled li {
  margin-top: 0;
  padding-left: 0;
}
ol.-unstyled li::before {
  content: none;
}
ol.-unstyled li a {
  text-decoration: none;
}
ol:has(> li:nth-last-child(n+10)) > li {
  padding-left: 2em;
}
ol > li {
  counter-increment: num;
  font-size: 4.2666666667vw;
  margin-top: 4vw;
  padding-left: 1.5em;
  position: relative;
}
@media print, screen and (min-width:768px) {
  ol > li {
    font-size: clamp(9.6px, 1.25vw, 18px);
    font-weight: 500;
    margin-top: clamp(8px, 1.0416666667vw, 15px);
  }
}
ol > li > ol {
  counter-reset: num2;
  margin-bottom: 4.8vw;
  margin-top: 4.8vw;
}
@media print, screen and (min-width:768px) {
  ol > li > ol {
    margin-bottom: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(9.6px, 1.25vw, 18px);
  }
}
ol > li > ol:has(> li:nth-last-child(n+10)) > li {
  padding-left: 4em;
}
ol > li > ol > li {
  counter-increment: num2;
  padding-left: 3em;
}
ol > li > ol > li::before {
  content: counter(num) "-" counter(num2) ".";
  left: 0;
}
ol > li > ol > li > ol {
  counter-reset: num3;
}
ol > li > ol > li > ol:has(> li:nth-last-child(n+10)) > li {
  padding-left: 6em;
}
ol > li > ol > li > ol > li {
  counter-increment: num3;
  padding-left: 4em;
}
ol > li > ol > li > ol > li::before {
  content: counter(num) "-" counter(num2) "-" counter(num3) ".";
  left: 0;
}
ol > li::before {
  color: var(--color-00_key);
  content: counter(num) ".";
  left: 0;
  letter-spacing: 0.08em;
  line-height: 1;
  position: absolute;
  top: 1.3333333333vw;
  top: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  ol > li::before {
    top: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}

figure {
  margin-top: 21.3333333333vw;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  figure {
    margin-inline: auto;
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
    width: fit-content;
  }
}
figure img {
  max-width: 100%;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  figure img {
    margin: 0 auto;
    width: fit-content;
  }
}
figure.over a {
  display: block;
  transition: 200ms opacity;
}
@media (hover: hover) {
  figure.over a:hover {
    opacity: 0.7;
  }
}
figure.-noround {
  border-radius: 0;
}
figure.is-style-rounded {
  border-radius: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  figure.is-style-rounded {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
figure.-trimTop {
  margin-top: 0;
}
figure figcaption {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: var(--line-height-l);
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  figure figcaption {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
figure figcaption a {
  text-decoration: underline;
}

.wp-block-image img {
  border-radius: unset;
}

h1 {
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 26.6666666667vw;
}
@media print, screen and (min-width:768px) {
  h1 {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
h1 + * {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  h1 + * {
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}

h2 {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 26.6666666667vw;
  padding-left: 6.9333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  h2 {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
h2::before {
  background: var(--clr-secondary-100);
  border-radius: 4.2666666667vw;
  content: "";
  display: block;
  height: 7.4666666667vw;
  left: 0;
  position: absolute;
  top: 1.3333333333vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  h2::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

h3 {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  h3 {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}

h4 {
  font-size: 5.3333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  h4 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}

h5 {
  font-size: 5.3333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  h5 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}

h6 {
  font-size: 4.2666666667vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  h6 {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

.wp-block-table {
  margin-top: 6.4vw;
  overflow-x: scroll;
}
.wp-block-table.-color2 table {
  border-color: #dadada;
}
.wp-block-table.-color2 table tr th {
  background-color: #f0f0f0;
  border-color: #dadada;
}
.wp-block-table.-color2 table tr td {
  border-color: #dadada;
}
@media print, screen and (min-width:768px) {
  .wp-block-table {
    margin-top: clamp(25.6px, 3.3333333333vw, 48px);
    overflow-x: visible;
    width: 100%;
  }
}
.wp-block-table table {
  border: 1px solid #d4e0ed;
  border-collapse: collapse;
  min-width: 229.3333333333vw;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .wp-block-table table {
    min-width: unset;
    width: auto;
  }
}
.wp-block-table table tr th,
.wp-block-table table tr td {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .wp-block-table table tr th,
  .wp-block-table table tr td {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.wp-block-table table th {
  background: #f3f6f9;
  border: 1px solid #d4e0ed;
  font-size: 4.2666666667vw;
  padding: 5.3333333333vw 10.6666666667vw;
  text-align: left;
  vertical-align: top;
}
@media print, screen and (min-width:768px) {
  .wp-block-table table th {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.wp-block-table table td {
  border: 1px solid #d4e0ed;
  font-size: 3.7333333333vw;
  font-weight: 500;
  letter-spacing: var(--letter-spacing-l);
  line-height: var(--line-height-l);
  padding: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .wp-block-table table td {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(12.8px, 1.6666666667vw, 24px);
  }
}

.wp-block-columns {
  gap: 10.6666666667vw;
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .wp-block-columns {
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.wp-block-columns .wp-block-column > *:first-child {
  margin-top: 0 !important;
}
.wp-block-columns .wp-block-image + .wp-block-heading {
  margin-top: 4vw;
}
@media print, screen and (min-width:768px) {
  .wp-block-columns .wp-block-image + .wp-block-heading {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

figure.wp-block-flexible-table-block-table {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  figure.wp-block-flexible-table-block-table {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

.wp-block-flexible-table-block-table figure {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .wp-block-flexible-table-block-table figure {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
main.l-main .wp-block-flexible-table-block-table table tr th,
main.l-main .wp-block-flexible-table-block-table table tr td {
  border: 1px solid #d4e0ed;
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5;
  padding: 6.4vw;
}
@media print, screen and (min-width:768px) {
  main.l-main .wp-block-flexible-table-block-table table tr th,
  main.l-main .wp-block-flexible-table-block-table table tr td {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(12.8px, 1.6666666667vw, 24px);
  }
}

.wp-block-separator {
  border-top: 1px solid #aecede;
  margin: 8vw 0;
}
@media print, screen and (min-width:768px) {
  .wp-block-separator {
    margin: clamp(32px, 4.1666666667vw, 60px) 0;
  }
}

@media print, screen and (max-width:767.98px) {
  main.l-main #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy {
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width:768px) {
  main.l-main #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
main.l-main #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy a {
  text-underline-offset: 0.2em;
}
main.l-main #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy a[target=_blank]::after {
  content: none;
}
main.l-main #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy > * {
  line-height: 2;
}
main.l-main #onetrust-banner-sdk .ot-sdk-container,
main.l-main #onetrust-pc-sdk .ot-sdk-container,
main.l-main #ot-sdk-cookie-policy .ot-sdk-container {
  padding: 0;
  width: 100%;
}

/* ==========================================================================
Layout
========================================================================== */
.l-header {
  background: white;
  height: 19.7333333333vw;
  left: 0;
  position: fixed;
  top: 0;
  transition: background-color 400ms ease;
  width: 100%;
  z-index: 100;
}
@media print, screen and (min-width:768px) {
  .l-header {
    height: clamp(39.4666666667px, 5.1388888889vw, 74px);
  }
}
.l-header__inner {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: flex-start;
  margin: 0 auto;
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .l-header__inner {
    padding: 0 clamp(13.8666666667px, 1.8055555556vw, 26px) 0;
  }
}
.l-header__logo {
  flex-shrink: 0;
  height: auto;
  margin-right: auto;
  margin-top: 0;
  z-index: 102;
}
.l-header__logo a {
  align-items: center;
  display: flex;
  line-height: 1;
}
@media print, screen and (min-width:768px) {
  .l-header__logo a {
    background: #fff;
    border-radius: 0 0 clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px);
    padding: clamp(11.7333333333px, 1.5277777778vw, 22px) clamp(16px, 2.0833333333vw, 30px);
  }
}
.l-header__logo a img {
  display: block;
  width: 42.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-header__logo a img {
    width: clamp(80.5333333333px, 10.4861111111vw, 151px);
  }
}
.l-header__content {
  margin-top: 0 !important;
}
@media print, screen and (min-width:768px) {
  .l-header__nav {
    align-items: center;
    background: var(--clr-white);
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 50px);
    column-gap: clamp(17.0666666667px, 2.2222222222vw, 32px);
    display: flex;
    height: clamp(26.1333333333px, 3.4027777778vw, 49px);
    padding: 0 clamp(17.0666666667px, 2.2222222222vw, 32px) 0 clamp(14.9333333333px, 1.9444444444vw, 28px);
  }
  .l-header__nav a {
    text-decoration: none;
  }
  .l-header__nav__lang a {
    background-color: #00354f;
    border-radius: clamp(53.3333333333px, 6.9444444444vw, 100px);
    color: #fff;
    display: block;
    font-family: "Roboto", sans-serif;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-style: normal;
    font-weight: 300;
    font-weight: 500;
    line-height: 1;
    padding: clamp(2.1333333333px, 0.2777777778vw, 4px) clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
@media print and (hover: hover), screen and (min-width:768px) and (hover: hover) {
  .l-header__nav__lang a {
    transition: background-color 200ms;
  }
  .l-header__nav__lang a:hover {
    background-color: var(--clr-primary-100);
  }
}
@media print, screen and (min-width:768px) {
  .l-header__navList {
    column-gap: clamp(17.0666666667px, 2.2222222222vw, 32px);
    display: flex;
    height: 100%;
  }
  .l-header__navList > li {
    height: 100%;
    position: relative;
  }
  .l-header__navList > li.-current > a {
    color: var(--clr-primary-100);
  }
  .l-header__navList > li > ul {
    background: #fff;
    display: none;
    left: clamp(-40px, -2.7777777778vw, -21.3333333333px);
    padding: clamp(5.3333333333px, 0.6944444444vw, 10px) clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(10.6666666667px, 1.3888888889vw, 20px);
    position: absolute;
  }
  .l-header__navList > li > ul li {
    white-space: nowrap;
  }
  .l-header__navList > li > ul li a {
    color: var(--clr-black-02);
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
  }
}
@media print and (hover: hover), screen and (min-width:768px) and (hover: hover) {
  .l-header__navList > li > ul li a:hover {
    color: var(--clr-primary-100);
  }
}
@media print, screen and (min-width:768px) {
  .l-header__navList > li:has(ul) > a::after {
    background: url("../images/common/icon_accordion.svg") no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: clamp(3.7333333333px, 0.4861111111vw, 7px);
    width: clamp(5.8666666667px, 0.7638888889vw, 11px);
  }
  .l-header__navList > li:has(ul).is-hover > a::after {
    transform: rotate(180deg);
  }
  .l-header__navList > li > a {
    align-items: center;
    color: var(--clr-black-02);
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    display: flex;
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    font-weight: 700;
    height: 100%;
    transition: color 200ms ease;
    transition: color 200ms;
  }
}
@media print and (hover: hover), screen and (min-width:768px) and (hover: hover) {
  .l-header__navList > li > a:hover {
    color: var(--clr-primary-100);
  }
}
.l-header__submenu {
  display: none;
  margin: 0 auto;
  padding-top: clamp(3.7333333333px, 0.4861111111vw, 7px);
  position: absolute;
  right: 0;
  top: clamp(26.6666666667px, 3.4722222222vw, 50px);
}
.l-header__submenu__inner {
  background: var(--clr-white);
  border-radius: clamp(17.0666666667px, 2.2222222222vw, 32px);
  box-shadow: 0px 0px clamp(17.6px, 2.2916666667vw, 33px) 0px rgba(67, 123, 217, 0.3);
  display: flex;
  max-width: 1370px;
  overflow: hidden;
  width: clamp(730.6666666667px, 95.1388888889vw, 1370px);
}
.l-header__submenu__title {
  background: var(--clr-primary-10);
  flex-shrink: 0;
  padding: clamp(25.6px, 3.3333333333vw, 48px) 0 0 clamp(26.1333333333px, 3.4027777778vw, 49px);
  width: clamp(160.5333333333px, 20.9027777778vw, 301px);
}
.l-header__submenu__title h3 {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  font-weight: 700;
  margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
  margin-top: 0;
}
.l-header__submenu__title .c-button1 {
  width: clamp(103.4666666667px, 13.4722222222vw, 194px);
}
.l-header__submenu__contents {
  display: flex;
  flex-wrap: wrap;
  padding: clamp(25.6px, 3.3333333333vw, 48px) clamp(23.4666666667px, 3.0555555556vw, 44px) clamp(41.6px, 5.4166666667vw, 78px);
  row-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
}
.l-header__submenu__contents dl {
  width: 33.3333333333%;
}
.l-header__submenu__contents dl dt {
  align-items: center;
  column-gap: clamp(3.2px, 0.4166666667vw, 6px);
  display: flex;
  font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  font-weight: 700;
}
.l-header__submenu__contents dl dt::before {
  background: var(--clr-secondary-100);
  border: 3px solid #a8bbff;
  border-radius: 50%;
  content: "";
  display: block;
  height: clamp(9.6px, 1.25vw, 18px);
  width: clamp(9.6px, 1.25vw, 18px);
}
.l-header__submenu__contents dl dd ul {
  margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
}
.l-header__submenu__contents dl dd ul li a {
  align-items: center;
  color: var(--clr-primary-100);
  column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
  display: flex;
  font-weight: 700;
  transition: color 200ms;
}
@media print, screen and (min-width:768px) {
  .l-header__submenu__contents dl dd ul li a {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.l-header__submenu__contents dl dd ul li a span {
  transition: transform 200ms;
}
.l-header__submenu__contents dl dd ul li a span svg path {
  transition: fill 200ms;
}
@media (hover: hover) {
  .l-header__submenu__contents dl dd ul li a:hover {
    color: var(--clr-secondary-100);
  }
  .l-header__submenu__contents dl dd ul li a:hover span {
    transform: translateX(clamp(2.1333333333px, 0.2777777778vw, 4px));
  }
  .l-header__submenu__contents dl dd ul li a:hover span svg path {
    fill: var(--clr-secondary-100);
  }
}
.l-header__submenu__contents__list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(4.2666666667px, 0.5555555556vw, 8px) clamp(21.3333333333px, 2.7777777778vw, 40px);
}
.l-header__submenu__contents__list li {
  width: calc((100% - clamp(21.3333333333px, 2.7777777778vw, 40px) * 2) / 3);
}
.l-header__submenu__contents__list li a {
  align-items: center;
  color: var(--clr-primary-100);
  column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
  display: flex;
  font-weight: 700;
  transition: color 200ms;
}
@media print, screen and (min-width:768px) {
  .l-header__submenu__contents__list li a {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.l-header__submenu__contents__list li a span {
  transition: transform 200ms;
}
.l-header__submenu__contents__list li a span svg path {
  transition: fill 200ms;
}
@media (hover: hover) {
  .l-header__submenu__contents__list li a:hover {
    color: var(--clr-secondary-100);
  }
  .l-header__submenu__contents__list li a:hover span {
    transform: translateX(clamp(2.1333333333px, 0.2777777778vw, 4px));
  }
  .l-header__submenu__contents__list li a:hover span svg path {
    fill: var(--clr-secondary-100);
  }
}
.l-header__burgerButton {
  font-size: 2.6666666667vw;
  font-size: 2.9333333333vw;
  font-weight: 500;
  height: 13.6vw;
  line-height: 1;
  padding-top: 0.8vw;
  text-align: center;
  width: 9.6vw;
}
.l-header__burgerButton[aria-expanded=true] .l-header__burgerIcon > span:nth-child(1) {
  transform: translateY(0) rotate(-45deg);
}
.l-header__burgerButton[aria-expanded=true] .l-header__burgerIcon > span:nth-child(2) {
  transform: scale(0, 0);
}
.l-header__burgerButton[aria-expanded=true] .l-header__burgerIcon > span:nth-child(3) {
  transform: translateY(0) rotate(45deg);
}
.l-header__burgerIcon {
  display: block;
  height: 5.8666666667vw;
  margin: 0 auto 2.1333333333vw;
  position: relative;
  width: 9.6vw;
}
.l-header__burgerIcon span {
  background-color: var(--clr-secondary-100);
  display: block;
  height: 0.5333333333vw;
  left: 0;
  position: absolute;
  transition: transform 200ms;
  width: 9.6vw;
}
.l-header__burgerIcon span:nth-child(1) {
  top: 2.6666666667vw;
  transform: translateY(-2.6666666667vw);
}
.l-header__burgerIcon span:nth-child(2) {
  top: 2.6666666667vw;
}
.l-header__burgerIcon span:nth-child(3) {
  top: 2.6666666667vw;
  transform: translateY(2.6666666667vw);
}
.l-header__burgerTxt {
  line-height: 1;
}
.l-header__burgerTxt img {
  width: 9.6vw;
}

.l-footer {
  background: #dcf3ff;
  padding: 16vw 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-footer {
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0 clamp(12.8px, 1.6666666667vw, 24px);
  }
  .l-footer__inner {
    margin: 0 auto;
    max-width: 1200px;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
  .l-footer__wrap {
    column-gap: clamp(96px, 12.5vw, 180px);
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
  }
}
.l-footer__logo {
  margin-bottom: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__logo {
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
    width: clamp(153.0666666667px, 19.9305555556vw, 287px);
  }
}
.l-footer__logo dt {
  line-height: 1;
  margin-bottom: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__logo dt {
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.l-footer__logo dt img {
  width: 75.4666666667vw;
}
.l-footer__logo dd {
  font-size: 5.3333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:768px) {
  .l-footer__logo dd {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.l-footer__sns {
  column-gap: 2.1333333333vw;
  display: flex;
  margin-bottom: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__sns {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.l-footer__sns a {
  display: block;
  height: 8.5333333333vw;
  width: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__sns a {
    height: clamp(17.0666666667px, 2.2222222222vw, 32px);
    width: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.l-footer__sns a img {
  height: 100%;
  width: 100%;
}
@media (hover: hover) {
  .l-footer__sns a {
    transition: opacity 200ms ease;
  }
  .l-footer__sns a:hover {
    opacity: 0.7;
  }
}
.l-footer__sns a[target=_blank]::after {
  content: none;
}
.l-footer .c-button1 {
  display: none;
}
@media print, screen and (min-width:768px) {
  .l-footer .c-button1 {
    display: block;
  }
}
.l-footer .c-button1 a {
  font-size: 4.2666666667vw;
  padding: 2.1333333333vw 2.6666666667vw 2.1333333333vw 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-footer .c-button1 a {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-left: 0;
    padding: clamp(4.2666666667px, 0.5555555556vw, 8px) clamp(5.3333333333px, 0.6944444444vw, 10px) clamp(4.2666666667px, 0.5555555556vw, 8px) clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.l-footer .c-button1 a::after {
  height: 8.5333333333vw;
  width: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-footer .c-button1 a::after {
    height: clamp(17.0666666667px, 2.2222222222vw, 32px);
    width: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.l-footer__link.-unstyled {
  margin-top: 12.8vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__link.-unstyled {
    margin-top: clamp(25.6px, 3.3333333333vw, 48px);
  }
}
.l-footer__link.-unstyled li a {
  color: #3c3c3c;
  font-size: 3.2vw;
  font-weight: 500;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .l-footer__link.-unstyled li a {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
@media (hover: hover) {
  .l-footer__link.-unstyled li a {
    transition: color 200ms;
  }
  .l-footer__link.-unstyled li a:hover {
    color: var(--clr-primary-100);
  }
}
.l-footer__nav {
  column-gap: 5.3333333333vw;
  display: flex;
}
.l-footer__nav > ul {
  width: calc((100% - 5.3333333333vw) / 2);
}
.l-footer__nav > ul > li {
  margin-bottom: 3.7333333333vw;
}
.l-footer__nav > ul > li a {
  text-decoration: none;
}
.l-footer__nav > ul > li > a {
  color: #3c3c3c;
  font-size: 3.7333333333vw;
  font-weight: 700;
  text-decoration: none;
}
.l-footer__nav > ul > li dl dt a {
  color: #3c3c3c;
  font-size: 3.7333333333vw;
  font-weight: 700;
}
.l-footer__nav > ul > li dl dd {
  margin-top: 2.1333333333vw;
}
.l-footer__nav > ul > li dl dd ul.-unstyled {
  margin-bottom: 0;
}
.l-footer__nav > ul > li dl dd ul.-unstyled li {
  line-height: 1.2;
  margin-top: 4vw;
}
.l-footer__nav > ul > li dl dd ul.-unstyled li a {
  color: #3c3c3c;
  font-size: 3.2vw;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
}
.l-footer__nav > ul > li dl dd ul.-unstyled li a[target=_blank]::after {
  filter: brightness(0) opacity(0.5);
  height: 3.2vw;
  margin-top: -0.5333333333vw;
  width: 3.2vw;
}
.l-footer__grid.-unstyled {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 12.8vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled {
    gap: 0 clamp(21.3333333333px, 2.7777777778vw, 40px);
    grid-column: 2;
    grid-row: 1/3;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto auto auto 1fr auto 1fr;
    margin-top: 0;
  }
}
.l-footer__grid.-unstyled > li {
  margin-bottom: 3.7333333333vw;
}
.l-footer__grid.-unstyled > li a {
  text-decoration: none;
}
@media (hover: hover) {
  .l-footer__grid.-unstyled > li a {
    transition: color 200ms;
  }
  .l-footer__grid.-unstyled > li a:hover {
    color: var(--clr-primary-100);
  }
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled > li {
    margin-bottom: 0;
  }
  .l-footer__grid.-unstyled > li:first-child {
    grid-column: 1;
    grid-row: 1;
  }
  .l-footer__grid.-unstyled > li:nth-child(2) {
    grid-column: 2;
    grid-row: 1/5;
  }
  .l-footer__grid.-unstyled > li:nth-child(3) {
    grid-column: 3;
    grid-row: 1/5;
  }
  .l-footer__grid.-unstyled > li:nth-child(4) {
    grid-column: 1;
    grid-row: 2;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
  .l-footer__grid.-unstyled > li:nth-child(5) {
    grid-column: 1;
    grid-row: 3;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
  .l-footer__grid.-unstyled > li:nth-child(6) {
    grid-column: 1;
    grid-row: 4;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
  .l-footer__grid.-unstyled > li:nth-child(7) {
    grid-column: 1;
    grid-row: 5;
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
  .l-footer__grid.-unstyled > li:nth-child(8) {
    grid-column: 1;
    grid-row: 6;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
  .l-footer__grid.-unstyled > li:nth-child(9) {
    grid-column: 2/4;
    grid-row: 5/7;
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.l-footer__grid.-unstyled > li > a {
  color: #3c3c3c;
  font-size: 3.7333333333vw;
  font-weight: 700;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled > li > a {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.l-footer__grid.-unstyled > li dl dt a {
  color: #3c3c3c;
  font-size: 3.7333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled > li dl dt a {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
@media (hover: hover) {
  .l-footer__grid.-unstyled > li dl dt a {
    transition: color 200ms;
  }
  .l-footer__grid.-unstyled > li dl dt a:hover {
    color: var(--clr-primary-100);
  }
}
.l-footer__grid.-unstyled > li dl dd {
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled > li dl dd {
    margin-top: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.l-footer__grid.-unstyled > li dl dd ul.-unstyled {
  margin-bottom: 0;
}
.l-footer__grid.-unstyled > li dl dd ul.-unstyled li a {
  color: #3c3c3c;
  font-size: 3.2vw;
  font-weight: 500;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .l-footer__grid.-unstyled > li dl dd ul.-unstyled li a {
    font-size: clamp(8px, 1.0416666667vw, 15px);
  }
}
@media (hover: hover) {
  .l-footer__grid.-unstyled > li dl dd ul.-unstyled li a {
    transition: color 200ms;
  }
  .l-footer__grid.-unstyled > li dl dd ul.-unstyled li a:after {
    filter: brightness(0) opacity(0.5);
  }
  .l-footer__grid.-unstyled > li dl dd ul.-unstyled li a:hover {
    color: var(--clr-primary-100);
  }
  .l-footer__grid.-unstyled > li dl dd ul.-unstyled li a:hover[target=_blank]::after {
    filter: brightness(1) opacity(1);
  }
}
.l-footer__grid.-unstyled > li dl dd ul.-unstyled li a[target=_blank]::after {
  filter: brightness(0) opacity(0.5);
  height: clamp(8.5333333333px, 1.1111111111vw, 16px);
  margin-top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
  width: clamp(8.5333333333px, 1.1111111111vw, 16px);
}
.l-footer__copy {
  border-top: 1px solid #aecede;
  color: var(--clr-primary-100);
  font-size: 3.2vw;
  font-weight: 500;
  margin-top: 16vw;
  padding-top: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-footer__copy {
    font-size: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
    padding-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.l-main {
  background: #fff;
  overflow-x: hidden;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .l-main {
    background: #dcf3ff;
  }
}
.l-main .l-main__inner {
  padding: 0 8vw 16vw;
}
.l-main .l-main__inner > *:first-child {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__inner {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
  .l-main .l-main__inner.-narrow {
    max-width: 860px;
    width: clamp(458.6666666667px, 59.7222222222vw, 860px);
  }
}
.l-main .l-main__cta {
  background: #f2f7fa;
  padding: 8vw;
}
.l-main .l-main__cta .c-button1 {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__wrap {
    background: #fff;
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin: 0 clamp(14.9333333333px, 1.9444444444vw, 28px);
    padding-bottom: clamp(64px, 8.3333333333vw, 120px);
    padding-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.l-main .l-main__inner2 {
  padding: 0;
}
.l-main .l-main__inner2.-boxonly {
  margin-bottom: 17.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__inner2.-boxonly {
    margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__inner2 {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
.l-main .l-main__inner2 .l-main__box {
  padding: 6.4vw 5.3333333333vw 17.0666666667vw;
}
.l-main .l-main__inner2 .l-main__box > *:first-child {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__inner2 .l-main__box {
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) clamp(90.6666666667px, 11.8055555556vw, 170px) clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.l-main .l-main__box {
  background: var(--clr-white);
  border-radius: 8.5333333333vw;
  box-shadow: 0px 0px 12.5333333333vw 0px rgba(67, 123, 217, 0.15);
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__box {
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 50px);
    box-shadow: 0px 0px clamp(25.0666666667px, 3.2638888889vw, 47px) 0px rgba(67, 123, 217, 0.15);
  }
}
.l-main .p-home .l-main__box {
  position: relative;
}
.l-main .l-main__box2 {
  background: var(--clr-white);
  border-radius: 8.5333333333vw;
  box-shadow: 0px 0px 12.5333333333vw 0px rgba(67, 123, 217, 0.15);
  margin-bottom: 17.0666666667vw;
  padding-bottom: 6.4vw;
  padding-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-main .l-main__box2 {
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 50px);
    box-shadow: 0px 0px clamp(25.0666666667px, 3.2638888889vw, 47px) 0px rgba(67, 123, 217, 0.15);
    margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
    padding-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}

.l-contact {
  background: var(--color-00_black);
  padding-bottom: 5.3333333333vw;
  padding-top: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-contact {
    padding-bottom: clamp(80px, 10.4166666667vw, 150px);
    padding-top: clamp(80px, 10.4166666667vw, 150px);
  }
}
.l-contact__inner {
  padding: 0 8vw 0;
}
@media print, screen and (min-width:768px) {
  .l-contact__inner {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
@media print, screen and (min-width:768px) {
  .l-contact__txt {
    width: clamp(294.4px, 38.3333333333vw, 552px);
  }
}
.l-contact p {
  color: var(--color-01_white);
  font-size: 5.3333333333vw;
  line-height: var(--line-height-m);
  margin-bottom: 6.4vw;
  margin-top: var(--leading-trim);
}
@media print, screen and (min-width:768px) {
  .l-contact p {
    font-size: clamp(19.2px, 2.5vw, 36px);
    font-weight: 400;
    margin-bottom: 0;
    margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.l-contact .c-button1 {
  margin-bottom: 18.6666666667vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .l-contact .c-button1 {
    margin-bottom: 0;
  }
}
.l-contact .c-button1.-arrow a {
  padding: 4.8vw 8vw;
}
@media print, screen and (min-width:768px) {
  .l-contact .c-button1.-arrow a {
    padding: clamp(10.1333333333px, 1.3194444444vw, 19px) clamp(16px, 2.0833333333vw, 30px);
  }
}
.l-contact .c-button1.-arrow a span {
  column-gap: 8vw;
}
@media print, screen and (min-width:768px) {
  .l-contact .c-button1.-arrow a span {
    column-gap: clamp(16px, 2.0833333333vw, 30px);
  }
}
.l-contact figure {
  margin: 0 -5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-contact figure {
    margin: 0;
    width: clamp(298.6666666667px, 38.8888888889vw, 560px);
  }
}

.l-document {
  background: var(--color-02_gray);
  padding: 18.6666666667vw 0;
}
@media print, screen and (min-width:768px) {
  .l-document {
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0;
  }
}
.l-document .l-document__inner {
  padding: 0 8vw 0;
}
@media print, screen and (min-width:768px) {
  .l-document .l-document__inner {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
@media print, screen and (min-width:768px) {
  .l-document__grid {
    column-gap: clamp(67.2px, 8.75vw, 126px);
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.l-document h2 {
  font-size: 6.9333333333vw;
  margin-bottom: 4.8vw;
  margin-top: var(--leading-trim);
}
.l-document h2::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .l-document h2 {
    font-size: clamp(19.2px, 2.5vw, 36px);
    font-weight: 400;
    margin-bottom: clamp(16px, 2.0833333333vw, 30px);
  }
}
.l-document figure {
  margin-bottom: 4vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-document figure {
    grid-column: 2;
    grid-row: 1/3;
    margin-bottom: clamp(0px, 0vw, 0px);
  }
}
.l-document p {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
  margin-bottom: 6.4vw;
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-document p {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    font-weight: 500;
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: 0;
  }
}
.l-document .c-button1 {
  width: fit-content;
}
.l-document .c-button1.-primary a {
  padding: 3.4666666667vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-document .c-button1.-primary a {
    padding: clamp(7.4666666667px, 0.9722222222vw, 14px) clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.l-document .c-button1.-primary a span {
  column-gap: 4vw;
}
@media print, screen and (min-width:768px) {
  .l-document .c-button1.-primary a span {
    column-gap: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

.l-service {
  background: var(--color-00_white);
  padding: 18.6666666667vw 0;
}
@media print, screen and (min-width:768px) {
  .l-service {
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0;
  }
}
.l-service__inner {
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .l-service__inner {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
.l-service h2 {
  font-size: 6.9333333333vw;
  margin-bottom: 4.8vw;
  margin-top: 0;
}
.l-service h2::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .l-service h2 {
    font-size: clamp(19.2px, 2.5vw, 36px);
    font-weight: 400;
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
  }
}
@media print, screen and (min-width:768px) {
  .l-service ul {
    display: grid;
    gap: clamp(32px, 4.1666666667vw, 60px) clamp(32px, 4.1666666667vw, 60px);
    grid-template-columns: repeat(2, 1fr);
  }
}
.l-service ul li {
  margin-bottom: 10.6666666667vw;
}
.l-service ul li:last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width:768px) {
  .l-service ul li {
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
  }
}
.l-service ul li figure {
  margin-bottom: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-service ul li figure {
    margin-bottom: 0;
    overflow: hidden;
    width: clamp(112px, 14.5833333333vw, 210px);
  }
  .l-service ul li figure img {
    aspect-ratio: 1/1;
    object-fit: cover;
  }
}
@media print, screen and (min-width:768px) {
  .l-service__txt {
    width: clamp(165.3333333333px, 21.5277777778vw, 310px);
  }
}
.l-service__txt h3 {
  background: var(--color-00_black);
  border-radius: 1.0666666667vw;
  color: var(--color-01_white);
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 4.2666666667vw;
  line-height: var(--line-height-m);
  margin-bottom: 3.2vw;
  margin-top: 0;
  padding: 0.2666666667vw 2.6666666667vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .l-service__txt h3 {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding: 0 clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.l-service__title {
  font-size: 4.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-service__title {
    font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.l-service .c-button1 {
  margin-top: 4vw;
}
@media print, screen and (min-width:768px) {
  .l-service .c-button1 {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

/* ==========================================================================
Component
========================================================================== */
.c-burger-menu {
  background-color: var(--clr-white);
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  overflow-y: auto;
  overflow-y: scroll;
  overscroll-behavior: none;
  padding: 0;
  padding: 0;
  pointer-events: none;
  position: fixed;
  top: 19.7333333333vw;
  transition: opacity 200ms;
  width: 100%;
  z-index: 100;
}
.c-burger-menu[open] {
  pointer-events: auto;
}
.c-burger-menu__body {
  padding: 6.4vw 8vw 53.3333333333vw;
}
.c-burger-menu__list {
  border-top: 0.2666666667vw solid var(--clr-primary-100);
}
.c-burger-menu__list > li {
  border-bottom: 1px solid var(--clr-primary-100);
}
.c-burger-menu__list > li:has(ul).is-active::after {
  transform: rotate(180deg);
}
.c-burger-menu__list > li:has(ul)::after {
  background: url("../images/common/icon_accordion.svg") no-repeat;
  content: "";
  display: block;
  height: 1.8666666667vw;
  position: absolute;
  right: 2.6666666667vw;
  top: 8vw;
  width: 2.9333333333vw;
}
.c-burger-menu__list > li:has(.is-active)::after {
  transform: rotate(180deg);
}
.c-burger-menu__list > li ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5.3333333333vw;
  margin: 0 0 6.6666666667vw;
}
.c-burger-menu__list > li ul li {
  width: calc((100% - 5.3333333333vw) / 2);
}
.c-burger-menu__list > li ul li a {
  color: #3c3c3c;
  display: block;
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 160%;
}
.c-burger-menu__list > li ul li a.-narrow {
  letter-spacing: 0.01em;
  margin-right: -0.8em;
}
.c-burger-menu__list > li ul li a[target=_blank]::after {
  filter: brightness(0) opacity(0.5);
  height: 3.7333333333vw;
  margin-top: -0.5333333333vw;
  width: 3.7333333333vw;
}
.c-burger-menu__list > li ul.-contact li {
  width: 100%;
}
.c-burger-menu__list > li a {
  color: #00354f;
  text-decoration: none;
}
.c-burger-menu__list > li > a {
  display: block;
  font-size: 4.2666666667vw;
  font-weight: 700;
  padding: 4vw 0;
  position: relative;
}
.c-burger-menu__btn {
  margin-top: 9.0666666667vw;
}
.c-burger-menu__btn a {
  background: var(--clr-primary-100);
  border-radius: 26.6666666667vw;
  color: var(--clr-white);
  display: block;
  font-size: 4.2666666667vw;
  font-weight: 700;
  padding: 2.6666666667vw;
  text-align: center;
  text-decoration: none;
}
.c-burger-menu__lang.-unstyled {
  display: flex;
  justify-content: center;
  margin-top: 5.8666666667vw;
}
.c-burger-menu__lang.-unstyled li {
  color: #dadada;
  column-gap: 5.3333333333vw;
  display: flex;
  font-family: "Roboto", sans-serif;
  font-size: 3.7333333333vw;
  font-style: normal;
  font-weight: 500;
  font-weight: 300;
  position: relative;
}
.c-burger-menu__lang.-unstyled li:last-child::after {
  content: none;
}
.c-burger-menu__lang.-unstyled li::after {
  content: "/";
  display: block;
  margin-right: 5.3333333333vw;
}
.c-burger-menu__lang.-unstyled li a {
  font-size: 3.7333333333vw;
  font-weight: 500;
  text-decoration: none;
}
.c-burger-menu .js-accordion__body {
  display: none;
}

.c-link {
  font-weight: 700;
  margin-top: 9.0666666667vw;
}
.c-link.-right a {
  margin-left: auto;
}
@media print, screen and (min-width:768px) {
  .c-link {
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-link a {
  align-items: center;
  color: var(--clr-black);
  column-gap: 2.1333333333vw;
  display: flex;
  font-size: 4.2666666667vw;
  text-decoration: none;
  transition: color 200ms ease;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-link a {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
@media (hover: hover) {
  .c-link a::after {
    transition: background-position 200ms ease;
  }
  .c-link a:hover {
    color: var(--clr-primary-100);
  }
  .c-link a:hover::after {
    background-position: calc(50% + 0.5333333333vw) 50%;
  }
}
@media print and (hover: hover), screen and (hover: hover) and (min-width:768px) {
  .c-link a:hover::after {
    background-position: calc(50% + clamp(1.0666666667px, 0.1388888889vw, 2px)) 50%;
  }
}
.c-link a::after {
  background: var(--clr-primary-100) url("../images/common/icon_arrow.svg") no-repeat 50% 50%;
  background-size: 4.2666666667vw 4.2666666667vw;
  border-radius: 50%;
  content: "";
  display: block;
  height: 6.4vw;
  position: relative;
  width: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-link a::after {
    background-size: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px);
    height: clamp(12.8px, 1.6666666667vw, 24px);
    width: clamp(12.8px, 1.6666666667vw, 24px);
  }
}

.c-share {
  margin-top: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-share {
    margin-top: clamp(64px, 8.3333333333vw, 120px);
  }
}
.c-share dl {
  align-items: flex-start;
  column-gap: 5.3333333333vw;
  display: flex;
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-share dl {
    column-gap: clamp(16px, 2.0833333333vw, 30px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-share dt {
  white-space: nowrap;
}
.c-share dd ul {
  display: flex;
  flex-wrap: wrap;
  gap: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-share dd ul {
    gap: clamp(8px, 1.0416666667vw, 15px);
  }
}
.c-share dd ul img {
  height: 9.6vw;
  width: 9.6vw;
}
@media print, screen and (min-width:768px) {
  .c-share dd ul img {
    height: clamp(19.2px, 2.5vw, 36px);
    width: clamp(19.2px, 2.5vw, 36px);
  }
}

.c-info {
  border-top: 1px solid var(--color-01_gray);
  margin-top: 20vw;
  padding-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-info {
    margin-top: clamp(69.3333333333px, 9.0277777778vw, 130px);
    padding-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-info dl {
  border-bottom: 1px solid var(--color-01_gray);
  margin-bottom: 5.3333333333vw;
  padding-bottom: 5.3333333333vw;
}
.c-info dl:last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width:768px) {
  .c-info dl {
    column-gap: clamp(26.6666666667px, 3.4722222222vw, 50px);
    display: flex;
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-info dl dt {
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-info dl dt {
    flex-shrink: 0;
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    font-weight: 500;
    width: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
.c-info dl dd {
  font-size: 4.5333333333vw;
  font-weight: 500;
  margin-top: 3.2vw;
  word-break: break-all;
}
@media print, screen and (min-width:768px) {
  .c-info dl dd {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin-top: 0;
  }
}
.c-info dl dd a {
  text-decoration: underline;
}
.c-info dl dd a[target=_blank]::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 4.2666666667vw;
  margin-left: 0.5333333333vw;
  vertical-align: middle;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-info dl dd a[target=_blank]::after {
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-left: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

@media print, screen and (min-width:768px) {
  .c-anchor.-col3 ul li {
    width: 33.3333333333%;
  }
  .c-anchor.-col3 ul li:nth-child(4n+1)::before {
    content: none;
  }
  .c-anchor.-col3 ul li:nth-child(3n+1)::before {
    background: var(--clr-primary-30);
    content: "";
    display: block;
    height: clamp(12.8px, 1.6666666667vw, 24px);
    left: 0;
    position: absolute;
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(1.0666666667px, 0.1388888889vw, 2px);
  }
}
.c-anchor ul {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-anchor ul {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(2.1333333333px, 0.2777777778vw, 4px) 0;
  }
}
.c-anchor ul li {
  border-bottom: 2px solid var(--clr-primary-30);
  margin-top: 0;
  padding-left: 0;
}
.c-anchor ul li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-anchor ul li {
    border-bottom: none;
    position: relative;
    width: 25%;
  }
  .c-anchor ul li:nth-child(4n+1)::before {
    background: var(--clr-primary-30);
    content: "";
    display: block;
    height: clamp(12.8px, 1.6666666667vw, 24px);
    left: 0;
    position: absolute;
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(1.0666666667px, 0.1388888889vw, 2px);
  }
  .c-anchor ul li::after {
    background: var(--clr-primary-30);
    content: "";
    display: block;
    height: clamp(12.8px, 1.6666666667vw, 24px);
    position: absolute;
    right: 0;
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(1.0666666667px, 0.1388888889vw, 2px);
  }
}
.c-anchor ul li a {
  align-items: center;
  color: var(--clr-primary-100);
  display: flex;
  font-size: 3.2vw;
  font-weight: 700;
  justify-content: space-between;
  letter-spacing: var(--letter-spacing-m);
  padding: 1.6vw 4.2666666667vw;
  text-decoration: none;
  transition: color 200ms ease;
}
@media print, screen and (min-width:768px) {
  .c-anchor ul li a {
    column-gap: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(8px, 1.0416666667vw, 15px);
    justify-content: center;
    padding: clamp(4.2666666667px, 0.5555555556vw, 8px) 0;
  }
}
@media (hover: hover) {
  .c-anchor ul li a:hover {
    color: var(--clr-secondary-100);
  }
  .c-anchor ul li a:hover span svg path {
    fill: var(--clr-secondary-100);
  }
}
@media print, screen and (min-width:768px) {
  .c-anchor ul li a span svg {
    height: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-anchor ul li a span svg path {
  transition: fill 200ms ease;
}

.c-qa {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-qa {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-qa__title {
  font-size: 5.3333333333vw;
  letter-spacing: 0.04em;
  line-height: var(--line-height-m);
  margin-top: 6.4vw;
  padding-left: 5.8666666667vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-qa__title {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    font-weight: 500;
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
    padding-left: clamp(18.1333333333px, 2.3611111111vw, 34px);
  }
  .c-qa__title:first-child {
    margin-top: 0;
  }
}
.c-qa__title::before {
  color: var(--color-00_key);
  content: "Q.";
  font-family: "Roboto", sans-serif;
  font-size: 4.8vw;
  font-style: normal;
  font-weight: 300;
  left: 0;
  position: absolute;
  top: 0;
}
@media print, screen and (min-width:768px) {
  .c-qa__title::before {
    font-size: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: var(--leading-trim);
    top: clamp(2.6666666667px, 0.3472222222vw, 5px);
  }
}
.c-qa__answer {
  padding-left: 5.8666666667vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-qa__answer {
    padding-left: clamp(18.1333333333px, 2.3611111111vw, 34px);
  }
}
.c-qa__answer p.c-text {
  margin-top: clamp(6.4px, 0.8333333333vw, 12px);
}
@media print, screen and (min-width:768px) {
  .c-qa__answer p.c-text {
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-qa__answer::before {
  color: var(--color-00_gray);
  content: "A.";
  font-family: "Roboto", sans-serif;
  font-size: 4.2666666667vw;
  font-style: normal;
  font-weight: 300;
  left: 0;
  position: absolute;
  top: 0;
}
@media print, screen and (min-width:768px) {
  .c-qa__answer::before {
    font-size: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: var(--leading-trim);
    top: clamp(2.6666666667px, 0.3472222222vw, 5px);
  }
}

.c-numberTitle {
  counter-reset: numttl;
  margin-top: 8vw;
  padding-left: 5.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-numberTitle {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
    padding-left: 0;
  }
}
.c-numberTitle__title {
  counter-increment: numttl;
  font-size: 5.3333333333vw;
  letter-spacing: 0.04em;
  line-height: var(--line-height-m);
  margin-top: 6.4vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-numberTitle__title {
    font-size: clamp(16px, 2.0833333333vw, 30px);
    font-weight: 500;
    margin-top: clamp(32px, 4.1666666667vw, 60px);
    padding-left: clamp(18.6666666667px, 2.4305555556vw, 35px);
  }
}
.c-numberTitle__title::before {
  color: var(--color-00_key);
  content: "0" counter(numttl);
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 4.2666666667vw;
  font-style: normal;
  font-weight: 300;
  left: -5.8666666667vw;
  letter-spacing: 0;
  position: absolute;
  top: 0.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-numberTitle__title::before {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    left: 0;
    top: clamp(3.7333333333px, 0.4861111111vw, 7px);
  }
}
.c-numberTitle__title:first-child {
  margin-top: 0;
}
.c-numberTitle .c-text {
  line-height: var(--line-height-m);
}

#toc_container {
  border: 1px solid var(--color-01_gray);
  margin-top: 8vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  #toc_container {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
#toc_container .toc_title {
  font-size: 5.3333333333vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  #toc_container .toc_title {
    font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
#toc_container ul {
  counter-reset: number;
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul {
    font-weight: 400;
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
#toc_container ul li {
  counter-increment: number;
  font-size: 3.4666666667vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li {
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
  }
}
#toc_container ul li::before {
  background-color: transparent;
  border-radius: 0;
  color: var(--color-00_key);
  content: counter(number) ".";
  font-family: "Roboto", sans-serif;
  font-size: 4vw;
  font-style: normal;
  font-weight: 300;
  height: auto;
  left: 0;
  letter-spacing: 0.08em;
  margin-top: var(--leading-trim);
  position: absolute;
  top: 0.8vw;
  width: auto;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li::before {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    top: clamp(2.6666666667px, 0.3472222222vw, 5px);
  }
}
#toc_container ul li ul {
  counter-reset: number2;
}
#toc_container ul li ul li {
  counter-increment: number2;
  padding-left: 8vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li ul li {
    padding-left: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
#toc_container ul li ul li::before {
  border: none;
  content: counter(number) "-" counter(number2) ".";
  left: 0;
}
#toc_container ul li ul li ul {
  counter-reset: number4;
}
#toc_container ul li ul li ul li {
  counter-increment: number3;
  padding-left: 12vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li ul li ul li {
    padding-left: clamp(29.3333333333px, 3.8194444444vw, 55px);
  }
}
#toc_container ul li ul li ul li::before {
  border: none;
  content: counter(number) "-" counter(number2) "-" counter(number3) ".";
  left: 0;
}
#toc_container ul li ul li ul li ul {
  counter-reset: number4;
}
#toc_container ul li ul li ul li ul li {
  counter-increment: number4;
  padding-left: 14.6666666667vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li ul li ul li ul li {
    padding-left: clamp(40px, 5.2083333333vw, 75px);
  }
}
#toc_container ul li ul li ul li ul li::before {
  border: none;
  content: counter(number) "-" counter(number2) "-" counter(number3) "-" counter(number4) ".";
  left: 0;
}
#toc_container ul li ul li ul li ul li ul {
  counter-reset: number5;
}
#toc_container ul li ul li ul li ul li ul li {
  counter-increment: number5;
  padding-left: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  #toc_container ul li ul li ul li ul li ul li {
    padding-left: clamp(48px, 6.25vw, 90px);
  }
}
#toc_container ul li ul li ul li ul li ul li::before {
  border: none;
  content: counter(number) "-" counter(number2) "-" counter(number3) "-" counter(number4) "-" counter(number5) ".";
  left: 0;
}

.c-pagenate {
  align-items: center;
  column-gap: 1.0666666667vw;
  display: flex;
  justify-content: center;
}
@media print, screen and (min-width:768px) {
  .c-pagenate {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    margin-top: clamp(37.3333333333px, 4.8611111111vw, 70px);
  }
}
.c-pagenate li:not(.c-pagenate__prev, .c-pagenate__next) {
  margin-top: 0;
  padding-left: 0;
}
.c-pagenate li:not(.c-pagenate__prev, .c-pagenate__next)::before {
  content: none;
}
.c-pagenate li:not(.c-pagenate__prev, .c-pagenate__next).current a {
  background: var(--clr-secondary-100);
}
.c-pagenate li:not(.c-pagenate__prev, .c-pagenate__next) a {
  align-items: center;
  background: var(--clr-primary-100);
  border-radius: 50%;
  color: var(--clr-white);
  display: block;
  display: flex;
  font-family: "Roboto", sans-serif;
  font-size: 3.7333333333vw;
  font-style: normal;
  font-weight: 300;
  font-weight: 400;
  height: 8.5333333333vw;
  justify-content: center;
  line-height: 1;
  text-decoration: none;
  width: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li:not(.c-pagenate__prev, .c-pagenate__next) a {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    height: clamp(17.0666666667px, 2.2222222222vw, 32px);
    width: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.c-pagenate li.c-pagenate__prev,
.c-pagenate li.c-pagenate__next {
  margin-top: 0;
  padding-left: 0;
}
.c-pagenate li.c-pagenate__prev::before,
.c-pagenate li.c-pagenate__next::before {
  content: none;
}
.c-pagenate li.c-pagenate__prev a,
.c-pagenate li.c-pagenate__next a {
  font-size: 3.7333333333vw;
  font-weight: 500;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__prev a,
  .c-pagenate li.c-pagenate__next a {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
.c-pagenate li.c-pagenate__prev {
  margin-right: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__prev {
    margin-right: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-pagenate li.c-pagenate__prev a {
  align-items: center;
  column-gap: 1.6vw;
  display: flex;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__prev a {
    column-gap: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.c-pagenate li.c-pagenate__prev a::before {
  background: url(../images/common/icon_arrow_prev.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 1.8666666667vw;
  width: 5.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__prev a::before {
    height: clamp(3.7333333333px, 0.4861111111vw, 7px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}
.c-pagenate li.c-pagenate__next {
  margin-left: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__next {
    margin-left: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-pagenate li.c-pagenate__next a {
  align-items: center;
  column-gap: 1.6vw;
  display: flex;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__next a {
    column-gap: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.c-pagenate li.c-pagenate__next a::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 1.8666666667vw;
  width: 5.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagenate li.c-pagenate__next a::after {
    height: clamp(3.7333333333px, 0.4861111111vw, 7px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}

.c-taglist {
  display: flex;
  flex-wrap: wrap;
  gap: 1.0666666667vw;
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-taglist {
    gap: clamp(2.1333333333px, 0.2777777778vw, 4px);
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-taglist li {
  margin-top: 0;
  padding-left: 0;
}
.c-taglist li::before {
  content: none;
}
.c-taglist li a {
  background: var(--color-01_white);
  border-radius: 1.0666666667vw;
  display: block;
  font-size: 3.2vw;
  padding: 0.2666666667vw 1.6vw;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-taglist li a {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    padding: clamp(0.5333333333px, 0.0694444444vw, 1px) clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.c-companylist {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 8vw;
  row-gap: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-companylist {
    justify-content: center;
    margin-bottom: clamp(16px, 2.0833333333vw, 30px);
    row-gap: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-companylist li {
  position: relative;
  width: 33.3333333333%;
}
@media print, screen and (min-width:768px) {
  .c-companylist li {
    width: 14.2857142857%;
  }
}
.c-companylist li img {
  mix-blend-mode: multiply;
}
.c-companylist li::after {
  background: linear-gradient(86deg, #ffc1b8 0%, #d79bb9 100%);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
}
.c-companylist li:nth-child(3n)::after {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-companylist li:nth-child(3n)::after {
    content: "";
  }
}
@media print, screen and (min-width:768px) {
  .c-companylist li:nth-child(7n)::after {
    content: none;
  }
}
@media print, screen and (min-width:768px) {
  .c-companylist li:last-child::after {
    content: none;
  }
}

.l-main .c-service-header {
  margin-bottom: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .c-service-header {
    margin-bottom: 0;
  }
}
.l-main .c-service-header p {
  margin-bottom: 5.3333333333vw;
  margin-top: 2.6666666667vw;
}
.l-main .c-service-header p br {
  display: none;
}
@media print, screen and (min-width:768px) {
  .l-main .c-service-header p {
    margin-bottom: clamp(16px, 2.0833333333vw, 30px);
    margin-top: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
  .l-main .c-service-header p br {
    display: block;
  }
}
@media print, screen and (min-width:768px) {
  .l-main .c-service-header__btns {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    display: flex;
  }
}
.l-main .c-service-header__btns li {
  margin-bottom: 3.4666666667vw;
  width: 48.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-main .c-service-header__btns li {
    margin-bottom: 0;
    width: auto;
  }
}
.l-main .c-service-header__btns li:last-child {
  margin-bottom: 0;
}

.c-flow {
  counter-reset: num;
  margin-top: 0;
  padding-top: 10.1333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-flow {
    padding-top: clamp(48px, 6.25vw, 90px);
  }
}
.c-flow > li {
  border-bottom: 1px solid var(--color-00_gray);
  counter-increment: num;
  margin-bottom: 6.4vw;
  margin-top: 0;
  padding-bottom: 6.4vw;
  padding-left: 12.5333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-flow > li {
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
    padding-bottom: clamp(32px, 4.1666666667vw, 60px);
    padding-left: clamp(104px, 13.5416666667vw, 195px);
    padding-left: clamp(37.3333333333px, 4.8611111111vw, 70px);
  }
}
.c-flow > li:last-child {
  border-bottom: none;
}
.c-flow > li:last-child::after {
  content: none;
}
.c-flow > li::before {
  color: var(--color-00_red);
  content: "0" counter(num);
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 4.5333333333vw;
  font-style: normal;
  font-weight: 300;
  left: 0;
  position: absolute;
  top: 1.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-flow > li::before {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    left: clamp(13.3333333333px, 1.7361111111vw, 25px);
    top: 0;
  }
}
.c-flow > li::after {
  background: linear-gradient(rgba(215, 155, 185, 0) 0%, #ffc1b8 100%);
  content: "";
  display: block;
  height: calc(100% - 2.6666666667vw);
  left: 2.4vw;
  position: absolute;
  top: 0;
  transform: translateY(8vw);
  width: 1px;
}
@media print, screen and (min-width:768px) {
  .c-flow > li::after {
    height: calc(100% + clamp(8px, 1.0416666667vw, 15px));
    left: clamp(18.1333333333px, 2.3611111111vw, 34px);
    transform: translateY(clamp(16px, 2.0833333333vw, 30px));
  }
}
.c-flow > li h3 {
  font-size: 5.3333333333vw;
  line-height: var(--line-height-m);
  margin-bottom: 2.1333333333vw;
  margin-top: var(--leading-trim);
}
@media print, screen and (min-width:768px) {
  .c-flow > li h3 {
    font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
    font-weight: 500;
    margin-bottom: 0;
    padding-right: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
  body.home .c-flow > li h3 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-flow > li p {
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-flow > li p {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
  body.home .c-flow > li p {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
  }
}
.c-flow__box p {
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__box {
    width: clamp(421.3333333333px, 54.8611111111vw, 790px);
  }
}
.c-flow__box > *:first-child {
  line-height: var(--line-height-l);
}
@media print, screen and (min-width:768px) {
  .c-flow__box > *:first-child {
    margin-top: var(--leading-trim);
  }
}
.c-flow__item::before {
  background: url("../images/common/step_icon.png") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 18.6666666667vw;
  left: -6.8vw;
  position: absolute;
  top: -12vw;
  width: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__item::before {
    height: clamp(69.3333333333px, 9.0277777778vw, 130px);
    left: clamp(-30.5px, -2.1180555556vw, -16.2666666667px);
    top: clamp(-96px, -6.6666666667vw, -51.2px);
    width: clamp(69.3333333333px, 9.0277777778vw, 130px);
  }
}
@media print, screen and (min-width:768px) {
  .c-flow__item {
    display: grid;
    grid-template-columns: 1fr clamp(416px, 54.1666666667vw, 780px);
  }
}
.c-flow__check > li {
  counter-increment: none;
  font-size: 3.7333333333vw;
  list-style: none;
}
@media print, screen and (min-width:768px) {
  .c-flow__check > li {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.c-flow__check > li::before {
  background: url("../images/common/icon_check.svg") no-repeat;
  background-color: transparent;
  background-position: center;
  background-size: contain;
  color: transparent;
  content: "";
  height: 5.3333333333vw;
  left: 0;
  top: 0;
  transform: translateY(50%);
  width: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__check > li::before {
    height: clamp(8px, 1.0416666667vw, 15px);
    transform: translateY(100%);
    width: clamp(8px, 1.0416666667vw, 15px);
  }
}
.c-flow__check + .c-button1 {
  margin-top: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__check + .c-button1 {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-flow__check + .c-button1 a {
  text-decoration: none;
}

.c-secheader {
  margin-bottom: 8.5333333333vw;
  margin-top: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-secheader.-news {
    align-items: center;
    display: flex;
    justify-content: space-between;
  }
}
@media print, screen and (min-width:768px) {
  .c-secheader {
    margin-bottom: clamp(29.8666666667px, 3.8888888889vw, 56px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-secheader h1 {
  color: var(--clr-primary-100);
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:768px) {
  .c-secheader h1 {
    font-size: clamp(29.8666666667px, 3.8888888889vw, 56px);
  }
}
@media print, screen and (min-width:768px) {
  .c-secheader__wrap {
    align-items: center;
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: flex;
    justify-content: space-between;
    margin-top: clamp(45.3333333333px, 5.9027777778vw, 85px);
  }
}
.c-secheader h2 {
  font-size: 6.4vw;
  margin-top: 8.5333333333vw;
  padding-left: 0;
}
.c-secheader h2::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-secheader h2 {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: 0;
  }
}
.c-secheader figure {
  border-radius: 0;
  margin: 6.4vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-secheader figure {
    flex-shrink: 0;
    margin: 0;
    width: clamp(342.4px, 44.5833333333vw, 642px);
  }
}
.c-secheader__btns.-unstyled {
  display: flex;
  flex-wrap: wrap;
  gap: 2.1333333333vw;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-secheader__btns.-unstyled {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    margin-top: 0;
  }
}
.c-secheader__btns.-unstyled li {
  width: calc((100% - 2.1333333333vw) / 2);
}
@media print, screen and (min-width:768px) {
  .c-secheader__btns.-unstyled li {
    width: clamp(65.0666666667px, 8.4722222222vw, 122px);
  }
}
.c-secheader__btns.-unstyled li a {
  font-size: 3.7333333333vw;
  justify-content: center;
  width: auto;
}
@media print, screen and (min-width:768px) {
  .c-secheader__btns.-unstyled li a {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    padding: clamp(4.2666666667px, 0.5555555556vw, 8px) clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-secheader__btns.-unstyled li a.current {
  background-color: var(--clr-secondary-100);
}
.c-secheader__info {
  align-items: center;
  column-gap: 2.1333333333vw;
  display: flex;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-secheader__info {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-secheader__info dt time {
  color: var(--clr-primary-100);
  font-family: "Roboto", sans-serif;
  font-size: 3.7333333333vw;
  font-style: normal;
  font-weight: 300;
  font-weight: 400;
}
@media print, screen and (min-width:768px) {
  .c-secheader__info dt time {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-right: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.c-secheader__info dd {
  background: rgba(0, 21, 95, 0.15);
  border-radius: 13.3333333333vw;
  display: inline-block;
  font-size: 2.6666666667vw;
  font-weight: 500;
  margin-left: 2.1333333333vw;
  padding: 0.5333333333vw 6.4vw;
  vertical-align: middle;
}
@media print, screen and (min-width:768px) {
  .c-secheader__info dd {
    flex-shrink: 0;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-left: 0;
    margin-right: clamp(8.5333333333px, 1.1111111111vw, 16px);
    padding: clamp(1.0666666667px, 0.1388888889vw, 2px) clamp(5.3333333333px, 0.6944444444vw, 10px);
    text-align: center;
    width: clamp(74.6666666667px, 9.7222222222vw, 140px);
  }
}
.c-secheader__seminar {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-secheader__seminar {
    align-items: center;
    column-gap: 2.1333333333vw;
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
    display: flex;
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-secheader__seminar dl {
  color: var(--clr-primary-100);
  display: flex;
  font-size: 3.7333333333vw;
  font-weight: 400;
  margin-right: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-secheader__seminar dl {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-right: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-secheader__seminar dl dd ul {
  display: flex;
}
.c-secheader__seminar dl dd ul li {
  align-items: center;
  display: flex;
  font-size: 3.7333333333vw;
  font-weight: 400;
}
@media print, screen and (min-width:768px) {
  .c-secheader__seminar dl dd ul li {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-secheader__seminar dl dd ul li:first-child::before {
  content: none;
}
.c-secheader__seminar dl dd ul li::before {
  background: var(--clr-primary-50);
  border-radius: 0;
  content: "";
  display: block;
  height: 3.2vw;
  left: 0;
  margin: 0 1.6vw;
  position: relative;
  top: 0;
  width: 1px;
}
@media print, screen and (min-width:768px) {
  .c-secheader__seminar dl dd ul li::before {
    height: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin: 0 clamp(3.2px, 0.4166666667vw, 6px);
  }
}
@media print, screen and (min-width:768px) {
  .c-secheader__seminar .c-seminar-list__status {
    margin-top: 0;
  }
}

.c-pagelist {
  display: flex;
  flex-wrap: wrap;
  gap: 5.0666666667vw 4vw;
  margin: 6.4vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-pagelist {
    gap: clamp(34.1333333333px, 4.4444444444vw, 64px) clamp(14.4px, 1.875vw, 27px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-pagelist li {
  padding-left: 0;
  width: calc((100% - 4vw) / 2);
}
.c-pagelist li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-pagelist li {
    width: calc((100% - clamp(43.2px, 5.625vw, 81px)) / 4);
  }
}
.c-pagelist li a {
  text-decoration: none;
}
@media (hover: hover) {
  .c-pagelist li a:hover .c-pagelist__title {
    color: var(--clr-secondary-100);
    text-decoration: underline;
  }
  .c-pagelist li a:hover figure img {
    transform: scale(1.1);
  }
  .c-pagelist li a:hover span::before {
    transform: translateX(0);
  }
  .c-pagelist li a:hover span:after {
    transform: translateX(140%);
  }
}
.c-pagelist li figure {
  aspect-ratio: 160/80;
  border-radius: 1.3333333333vw;
  margin: 0;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-pagelist li figure {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-pagelist li figure img {
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
  width: 100%;
}
.c-pagelist li p {
  color: var(--clr-primary-100);
  font-size: 3.2vw;
  line-height: var(--line-height-m);
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-pagelist li p {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-pagelist__title {
  color: var(--clr-primary-100);
  font-size: 4.2666666667vw;
  font-weight: 700;
  margin-top: 4.2666666667vw;
  transition: color 200ms ease;
}
@media print, screen and (min-width:768px) {
  .c-pagelist__title {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-pagelist__title span {
  display: inline-block;
  margin-left: 1.3333333333vw;
  position: relative;
  top: -0.5333333333vw;
  vertical-align: middle;
}
@media print, screen and (min-width:768px) {
  .c-pagelist__title span {
    margin-left: clamp(4.2666666667px, 0.5555555556vw, 8px);
    top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
  }
}
.c-pagelist__title span svg {
  height: 1.6vw;
  width: 4vw;
}
@media print, screen and (min-width:768px) {
  .c-pagelist__title span svg {
    height: clamp(4px, 0.5208333333vw, 7.5px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}

.c-pagelist2 {
  display: flex;
  flex-wrap: wrap;
  gap: 4.2666666667vw 1.8666666667vw;
  margin: 6.4vw 0 17.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2 {
    gap: clamp(29.3333333333px, 3.8194444444vw, 55px) clamp(14.4px, 1.875vw, 27px);
    margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
    margin-top: clamp(29.3333333333px, 3.8194444444vw, 55px);
  }
}
.c-pagelist2 li {
  margin-top: 0;
  padding-left: 0;
  width: calc((100% - 1.8666666667vw) / 2);
}
.c-pagelist2 li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2 li {
    width: calc((100% - clamp(43.2px, 5.625vw, 81px)) / 4);
  }
}
.c-pagelist2 li a {
  text-decoration: none;
}
@media (hover: hover) {
  .c-pagelist2 li a:hover .c-pagelist2__title {
    color: var(--clr-secondary-100);
    text-decoration: underline;
  }
  .c-pagelist2 li a:hover figure img {
    transform: scale(1.1);
  }
  .c-pagelist2 li a:hover span::before {
    transform: translateX(0);
  }
  .c-pagelist2 li a:hover span:after {
    transform: translateX(140%);
  }
}
.c-pagelist2 li figure {
  aspect-ratio: 160/80;
  border-radius: 1.3333333333vw;
  margin: 0;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2 li figure {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-pagelist2 li figure img {
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
  width: 100%;
}
.c-pagelist2__title {
  color: var(--clr-primary-100);
  font-size: 4vw;
  font-weight: 700;
  margin-top: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2__title {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-pagelist2__title span {
  display: inline-block;
  margin-left: 1.3333333333vw;
  position: relative;
  top: -0.5333333333vw;
  vertical-align: middle;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2__title span {
    margin-left: clamp(4.2666666667px, 0.5555555556vw, 8px);
    top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
  }
}
.c-pagelist2__title span svg {
  height: 1.6vw;
  width: 4vw;
}
@media print, screen and (min-width:768px) {
  .c-pagelist2__title span svg {
    height: clamp(4px, 0.5208333333vw, 7.5px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}

.c-news-list.-unstyled {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled {
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-news-list.-unstyled li {
  border-top: 1px solid #aecede;
  margin-top: 5.3333333333vw;
  padding-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li {
    margin-top: clamp(6.4px, 0.8333333333vw, 12px);
    padding-top: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-news-list.-unstyled li:first-child {
  border-top: unset;
  margin-top: 0;
  padding-top: 0;
}
.c-news-list.-unstyled li a {
  display: block;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li a dl {
    column-gap: clamp(12.8px, 1.6666666667vw, 24px);
    display: flex;
  }
}
.c-news-list.-unstyled li a dl dt {
  align-items: center;
  column-gap: 3.2vw;
  display: flex;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li a dl dt {
    align-items: flex-start;
    column-gap: clamp(6.4px, 0.8333333333vw, 12px);
    flex-shrink: 0;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
.c-news-list.-unstyled li a dl dt .date {
  color: #5f7075;
  font-size: 3.7333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li a dl dt .date {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
.c-news-list.-unstyled li a dl dt .category {
  align-items: center;
  border: 1px solid var(--clr-primary-100);
  border-radius: 1.0666666667vw;
  color: var(--clr-primary-100);
  display: flex;
  font-size: 3.2vw;
  font-weight: 700;
  justify-content: center;
  line-height: 1;
  padding: 1.0666666667vw 3.2vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li a dl dt .category {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    padding: clamp(3.2px, 0.4166666667vw, 6px) clamp(4.2666666667px, 0.5555555556vw, 8px) clamp(2.1333333333px, 0.2777777778vw, 4px);
    width: clamp(58.6666666667px, 7.6388888889vw, 110px);
  }
}
.c-news-list.-unstyled li a dl dd {
  color: #001722;
  font-size: 3.7333333333vw;
  font-weight: 500;
}
@media print, screen and (min-width:768px) {
  .c-news-list.-unstyled li a dl dd {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
@media (hover: hover) {
  .c-news-list.-unstyled li a dl dd {
    transition: color 200ms ease;
  }
  .c-news-list.-unstyled li a:hover dl dd {
    color: var(--clr-primary-100);
  }
}
.c-news-list.-grid_3_1 {
  display: grid;
  gap: 3.2vw;
  grid-template-columns: repeat(1, 1fr);
}
@media print, screen and (min-width:768px) {
  .c-news-list.-grid_3_1 {
    gap: clamp(16px, 2.0833333333vw, 30px);
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-news-list.-grid_3_1 li {
  margin-top: 0;
  min-width: 0;
  padding-left: 0;
}
.c-news-list.-grid_3_1 li::before {
  content: none;
}

.c-company-block {
  border-bottom: 0.5333333333vw solid var(--clr-primary-30);
  margin-bottom: 6.4vw;
  padding-bottom: 3.2vw;
}
.c-company-block:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
@media print, screen and (min-width:768px) {
  .c-company-block {
    border-width: clamp(1.0666666667px, 0.1388888889vw, 2px);
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
    padding-bottom: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-company-block figure {
  border-radius: 0;
  margin: 4.2666666667vw 0 0;
  width: 34.4vw;
}
@media print, screen and (min-width:768px) {
  .c-company-block figure {
    flex-shrink: 0;
    margin-top: 0;
    width: clamp(68.8px, 8.9583333333vw, 129px);
  }
}
.c-company-block__content h4 {
  background: none;
  color: var(--clr-black-100);
  font-size: 3.7333333333vw;
  margin-top: 0;
  padding-left: 0;
}
.c-company-block__content h4::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-company-block__content h4 {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-company-block__content p {
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-company-block__content p {
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
@media print, screen and (min-width:768px) {
  .c-company-block__link {
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-company-block__link a {
  color: var(--clr-primary-100);
  text-decoration: underline;
}

.c-office-list {
  margin-top: 14.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-office-list {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(29.8666666667px, 3.8888888889vw, 56px);
  }
}
.c-office-list li {
  margin-top: 6.4vw;
  padding: 0;
}
.c-office-list li:first-child {
  margin-top: 0;
}
.c-office-list li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-office-list li {
    margin-top: 0;
    width: calc((100% - clamp(17.0666666667px, 2.2222222222vw, 32px)) / 2);
  }
}
.c-office-list li figure {
  aspect-ratio: 414/340;
  border-radius: 0;
  margin-top: 0;
}
.c-office-list li figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.c-office-list li dl {
  margin-top: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-office-list li dl {
    margin-top: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-office-list li dl dt {
  font-size: 4.8vw;
  font-weight: 700;
}
@media print, screen and (min-width:768px) {
  .c-office-list li dl dt {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-office-list li dl dd {
  font-size: 3.7333333333vw;
  font-weight: 400;
}
@media print, screen and (min-width:768px) {
  .c-office-list li dl dd {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}

.c-filter-btns.-unstyled {
  display: flex;
  flex-wrap: wrap;
  gap: 2.1333333333vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-filter-btns.-unstyled {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-bottom: clamp(34.1333333333px, 4.4444444444vw, 64px);
  }
}
.c-filter-btns.-unstyled li {
  width: calc((100% - 2.1333333333vw) / 2);
}
@media print, screen and (min-width:768px) {
  .c-filter-btns.-unstyled li {
    width: clamp(65.0666666667px, 8.4722222222vw, 122px);
  }
}
.c-filter-btns.-unstyled li a {
  font-size: 4.2666666667vw;
  font-weight: 700;
  justify-content: center;
  width: auto;
}
@media print, screen and (min-width:768px) {
  .c-filter-btns.-unstyled li a {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(12.2666666667px, 1.5972222222vw, 23px) clamp(14.9333333333px, 1.9444444444vw, 28px);
  }
}
.c-filter-btns.-unstyled li a.current {
  background-color: var(--clr-secondary-100);
}

@media print, screen and (min-width:768px) {
  .c-seminar-list {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(26.6666666667px, 3.4722222222vw, 50px) clamp(20.8px, 2.7083333333vw, 39px);
  }
}
.c-seminar-list > li {
  margin-top: 6.4vw;
}
.c-seminar-list > li:first-child {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list > li {
    margin-top: 0;
    width: calc((100% - clamp(41.6px, 5.4166666667vw, 78px)) / 3);
  }
}
@media (hover: hover) {
  .c-seminar-list > li a:hover .c-seminar-list__title {
    color: var(--clr-secondary-100);
    text-decoration: underline;
  }
  .c-seminar-list > li a:hover figure img {
    transform: scale(1.1);
  }
}
.c-seminar-list > li a[target=_blank]::after {
  content: none;
}
.c-seminar-list > li a[target=_blank] .c-seminar-list__title::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 3.2vw;
  margin-left: 1.3333333333vw;
  vertical-align: middle;
  width: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list > li a[target=_blank] .c-seminar-list__title::after {
    height: clamp(6.4px, 0.8333333333vw, 12px);
    margin-left: clamp(2.6666666667px, 0.3472222222vw, 5px);
    width: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
.c-seminar-list figure {
  aspect-ratio: 16/9;
  background: #e8edff;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list figure {
    margin-top: 0;
  }
}
.c-seminar-list figure img {
  height: 100%;
  object-fit: contain;
  transition: transform 400ms ease;
  width: 100%;
}
.c-seminar-list__status {
  background: #ffdcdd;
  border-radius: 13.3333333333vw;
  color: var(--clr-red-100);
  font-size: 3.2vw;
  font-weight: 500;
  letter-spacing: var(--letter-spacing-l);
  margin-top: 3.2vw;
  padding: 0.5333333333vw 4.2666666667vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list__status {
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 50px);
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-top: clamp(6.4px, 0.8333333333vw, 12px);
    padding: clamp(1.0666666667px, 0.1388888889vw, 2px) clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-seminar-list__status.-movie {
  background-color: #c3daff;
  color: var(--clr-primary-100);
}
.c-seminar-list__status.-end {
  background-color: var(--clr-primary-50);
  color: var(--clr-primary-100);
}
.c-seminar-list__title {
  background: none;
  display: block;
  font-size: 3.7333333333vw;
  margin-top: 2.1333333333vw;
  padding: 0;
  transition: color 200ms ease;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list__title {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.c-seminar-list__title::before {
  content: none;
}
.c-seminar-list dl {
  color: var(--clr-primary-100);
  display: flex;
  font-size: 3.2vw;
  font-weight: 400;
  margin-top: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list dl {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-top: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
  .c-seminar-list dl:last-child {
    margin-top: 0;
  }
}
.c-seminar-list dl dt {
  flex-shrink: 0;
}
.c-seminar-list dl dd {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
}
.c-seminar-list dl dd ul {
  display: flex;
  flex-wrap: wrap;
}
.c-seminar-list dl dd ul li {
  align-items: center;
  display: flex;
  font-size: inherit;
}
.c-seminar-list dl dd ul li:first-child::before {
  content: none;
}
.c-seminar-list dl dd ul li::before {
  background: var(--clr-primary-50);
  border-radius: 0;
  content: "";
  display: block;
  height: 3.2vw;
  left: 0;
  margin: 0 1.6vw;
  position: relative;
  top: 0;
  width: 1px;
}
@media print, screen and (min-width:768px) {
  .c-seminar-list dl dd ul li::before {
    height: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin: 0 clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.c-partner-list.-unstyled {
  display: flex;
  flex-wrap: wrap;
  gap: 6.4vw;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-partner-list.-unstyled {
    gap: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.c-partner-list.-unstyled li {
  border: 1px solid var(--clr-primary-50);
  border-radius: 1.0666666667vw;
  overflow: hidden;
  width: calc((100% - 6.4vw) / 2);
}
.c-partner-list.-unstyled li a {
  display: block;
  transition: 200ms opacity;
}
.c-partner-list.-unstyled li a::after {
  content: none;
}
@media (hover: hover) {
  .c-partner-list.-unstyled li a:hover {
    opacity: 0.7;
  }
}
@media print, screen and (min-width:768px) {
  .c-partner-list.-unstyled li {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    width: calc((100% - clamp(25.6px, 3.3333333333vw, 48px)) / 3);
  }
}

.c-recruit-list1 {
  display: flex;
  flex-wrap: wrap;
  gap: 5.0666666667vw 4vw;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1 {
    gap: clamp(14.4px, 1.875vw, 27px);
  }
}
.c-recruit-list1.-unstyled {
  margin: 6.4vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1.-unstyled {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1.-related {
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(14.4px, 1.875vw, 27px);
  }
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1.-related li {
    width: calc((100% - clamp(28.8px, 3.75vw, 54px)) / 3);
  }
}
.c-recruit-list1 li {
  padding-left: 0;
  width: calc((100% - 4vw) / 2);
}
.c-recruit-list1 li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1 li {
    width: calc((100% - clamp(14.4px, 1.875vw, 27px)) / 2);
  }
}
.c-recruit-list1 li a {
  text-decoration: none;
}
.c-recruit-list1 li a[target=_blank]::after {
  content: none;
}
.c-recruit-list1 li a[target=_blank] .c-recruit-list1__title::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 4.2666666667vw;
  margin-left: 0.5333333333vw;
  margin-left: 1.3333333333vw;
  order: 2;
  vertical-align: middle;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1 li a[target=_blank] .c-recruit-list1__title::after {
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-left: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
@media (hover: hover) {
  .c-recruit-list1 li a:hover .c-recruit-list1__title {
    color: var(--clr-secondary-100);
    text-decoration: underline;
  }
  .c-recruit-list1 li a:hover figure img {
    transform: scale(1.1);
  }
  .c-recruit-list1 li a:hover span::before {
    transform: translateX(0);
  }
  .c-recruit-list1 li a:hover span:after {
    transform: translateX(140%);
  }
}
.c-recruit-list1 li figure {
  aspect-ratio: 160/80;
  border-radius: 1.3333333333vw;
  margin: 0;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1 li figure {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-recruit-list1 li figure img {
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
  width: 100%;
}
.c-recruit-list1__title {
  align-items: center;
  color: var(--clr-primary-100);
  display: flex;
  font-size: 4.2666666667vw;
  font-weight: 700;
  margin-top: 2.6666666667vw;
  transition: color 200ms ease;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1__title {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-recruit-list1__title span {
  display: inline-block;
  margin-left: 1.3333333333vw;
  order: 3;
  position: relative;
  top: -0.5333333333vw;
  vertical-align: middle;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1__title span {
    margin-left: clamp(4.2666666667px, 0.5555555556vw, 8px);
    top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
  }
}
.c-recruit-list1__title span svg {
  height: 1.6vw;
  width: 4vw;
}
@media print, screen and (min-width:768px) {
  .c-recruit-list1__title span svg {
    height: clamp(4px, 0.5208333333vw, 7.5px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}

.c-office-figs {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-office-figs {
    display: grid;
    gap: clamp(16px, 2.0833333333vw, 30px);
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    margin-bottom: clamp(25.6px, 3.3333333333vw, 48px);
    margin-top: clamp(14.9333333333px, 1.9444444444vw, 28px);
  }
}
.c-office-figs figure {
  margin-top: 0;
  width: 100%;
}
.c-office-figs figure img {
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-office-figs figure:nth-child(1) {
    aspect-ratio: 414/590;
    grid-column: 1/2;
    grid-row: 1/3;
  }
  .c-office-figs figure:nth-child(1) img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
}
.c-office-figs figure:nth-child(2) {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-office-figs figure:nth-child(2) {
    aspect-ratio: 414/280;
    grid-column: 2/3;
    grid-row: 1/2;
    margin-top: 0;
  }
  .c-office-figs figure:nth-child(2) img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
}
.c-office-figs figure:nth-child(3) {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-office-figs figure:nth-child(3) {
    aspect-ratio: 414/280;
    grid-column: 2/3;
    grid-row: 2/3;
    margin-top: 0;
  }
  .c-office-figs figure:nth-child(3) img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
}

.c-column {
  margin: 8vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-column {
    margin: clamp(21.3333333333px, 2.7777777778vw, 40px) 0 0;
  }
}
.c-column__child > *:first-child {
  margin-top: 0;
}
.c-column__child figure {
  margin-left: -8vw;
  margin-right: -8vw;
}
@media print, screen and (min-width:768px) {
  .c-column__child figure {
    margin-inline: auto;
  }
}
.c-column__child figure figcaption {
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .c-column__child figure figcaption {
    padding: 0;
  }
}
.c-column__child h3,
.c-column__child h4 {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-column__child h3,
  .c-column__child h4 {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-column__child h3::before,
.c-column__child h4::before {
  content: none;
}
.c-column__child h3 + *,
.c-column__child h4 + * {
  margin-top: 5.3333333333vw !important;
}
@media print, screen and (min-width:768px) {
  .c-column__child h3 + *,
  .c-column__child h4 + * {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px) !important;
  }
}
.c-column.-column2 {
  margin: 8vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-column.-column2 {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin: clamp(21.3333333333px, 2.7777777778vw, 40px) 0 0;
  }
}
.c-column.-column2 .c-column__child {
  margin-top: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-column.-column2 .c-column__child {
    margin-top: 0;
    width: calc((100% - clamp(21.3333333333px, 2.7777777778vw, 40px)) / 2);
  }
}
.c-column.-column2 .c-column__child figure {
  margin-inline: 0;
}
.c-column.-column2 .c-column__child figure figcaption {
  padding-inline: 0;
}
@media print, screen and (min-width:768px) {
  .c-column.-column3 {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-column.-column3 .c-column__child {
  margin-top: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-column.-column3 .c-column__child {
    margin-top: 0;
    width: calc((100% - clamp(42.6666666667px, 5.5555555556vw, 80px)) / 3);
  }
}
.c-column.-column3 figure {
  margin-inline: 0;
}
.c-column.-column3 figure figcaption {
  padding-inline: 0;
}

.c-column2 {
  margin: 8vw 0 0;
}
@media print, screen and (min-width:768px) {
  .c-column2 {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin: clamp(21.3333333333px, 2.7777777778vw, 40px) 0 0;
  }
}
.c-column2__child {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-column2__child {
    margin-top: 0;
    width: calc((100% - clamp(42.6666666667px, 5.5555555556vw, 80px)) / 3);
  }
}
.c-column2__child a {
  border: 0.2666666667vw solid #aec6de;
  border-radius: 4.2666666667vw;
  color: var(--clr-black);
  display: block;
  padding: 4.2666666667vw 4.2666666667vw 6.4vw;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-column2__child a {
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    height: 100%;
    padding: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-column2__child a[target=_blank]::after {
  content: none;
}
@media (hover: hover) {
  .c-column2__child a {
    transition: background-color 200ms ease, border-color 200ms ease;
  }
  .c-column2__child a:hover {
    background-color: #f0f8ff;
    border-color: #0b9de3;
  }
}
.c-column2__img {
  aspect-ratio: 260/200;
  margin-top: 0;
  overflow: hidden;
}
.c-column2__img img {
  border-radius: 2.1333333333vw;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-column2__img img {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.c-column2__title {
  color: var(--clr-primary-100);
  font-size: 5.3333333333vw;
  font-weight: 700;
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-column2__title {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-column2__cat {
  border: 0.2666666667vw solid #aec6de;
  color: #aec6de;
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: 1;
  margin-top: 4.2666666667vw;
  padding: 1.6vw 5.3333333333vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-column2__cat {
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
    padding: clamp(3.2px, 0.4166666667vw, 6px) clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-column2__note {
  color: #002233;
  font-size: 4.2666666667vw;
  font-weight: 500;
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-column2__note {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.c-titleArea {
  background: #f2f7fa url("../images/common/titleArea_smp.webp") no-repeat 0 100%;
  background-size: 100% auto;
  padding: 26.6666666667vw 8vw 16vw;
}
@media print, screen and (min-width:768px) {
  .c-titleArea {
    background: #f2f7fa url("../images/common/titleArea.webp") no-repeat 0 100%;
    background-size: 100% auto;
    padding: clamp(42.6666666667px, 5.5555555556vw, 80px) clamp(16px, 2.0833333333vw, 30px) clamp(45.3333333333px, 5.9027777778vw, 85px);
  }
}
.c-titleArea.-recruit {
  background: url("../images/recruit/bg_titleArea_smp.webp") no-repeat 0 100%;
  background-size: 100% auto;
  padding: 10.6666666667vw 9.8666666667vw 72vw;
}
@media print, screen and (min-width:768px) {
  .c-titleArea.-recruit {
    background: url("../images/recruit/bg_titleArea.webp") no-repeat 0 0;
    background-size: cover;
    padding: clamp(117.3333333333px, 15.2777777778vw, 220px) clamp(42.6666666667px, 5.5555555556vw, 80px) clamp(120px, 15.625vw, 225px);
  }
  .c-titleArea.-recruit h1 {
    text-align: left;
  }
  .c-titleArea.-recruit h1 br {
    display: none;
  }
}
.c-titleArea__title {
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 26.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-titleArea__title {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
.c-titleArea__title,
.c-titleArea h1 {
  font-size: 8.5333333333vw;
  margin-top: 0;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-titleArea__title,
  .c-titleArea h1 {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-titleArea__list.-unstyled {
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-titleArea__list.-unstyled {
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: flex;
    justify-content: center;
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}
.c-titleArea__list.-unstyled li {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-titleArea__list.-unstyled li {
    margin-top: 0;
  }
}
.c-titleArea__list.-unstyled li a {
  width: auto;
}

.c-iconBlock {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-iconBlock.-column {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(32px, 4.1666666667vw, 60px);
  }
}
.c-iconBlock.-column .c-iconBlock__item {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-iconBlock.-column .c-iconBlock__item {
    margin-top: 0;
    width: calc((100% - clamp(32px, 4.1666666667vw, 60px)) / 2);
  }
}
@media print, screen and (min-width:768px) {
  .c-iconBlock {
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
.c-iconBlock__title {
  margin-top: 0;
}
.c-iconBlock__inner {
  margin-top: 8vw;
  padding-left: 11.7333333333vw;
}
.c-iconBlock__inner > *:first-child {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-iconBlock__inner {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
    padding-left: clamp(23.4666666667px, 3.0555555556vw, 44px);
  }
}

.c-voiceBlock__title {
  margin-top: clamp(32px, 4.1666666667vw, 60px);
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__inner {
    column-gap: clamp(32px, 4.1666666667vw, 60px);
    display: flex;
  }
}
.c-voiceBlock__inner figure {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__inner figure {
    width: clamp(213.3333333333px, 27.7777777778vw, 400px);
  }
}
.c-voiceBlock__contents {
  margin-top: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__contents {
    margin-top: 0;
    width: calc(100% - clamp(245.3333333333px, 31.9444444444vw, 460px));
  }
}
.c-voiceBlock__contents dl {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__contents dl {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
  .c-voiceBlock__contents dl:first-child {
    margin-top: 0;
  }
}
.c-voiceBlock__contents dl dt {
  column-gap: 4.8vw;
  display: flex;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: var(--line-height-m);
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__contents dl dt {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.c-voiceBlock__contents dl dt::before {
  background: var(--clr-secondary-100);
  border-radius: 0.5333333333vw;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 4.8vw;
  position: relative;
  top: 1.0666666667vw;
  width: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__contents dl dt::before {
    height: clamp(9.6px, 1.25vw, 18px);
    top: clamp(2.1333333333px, 0.2777777778vw, 4px);
    width: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
}
.c-voiceBlock__contents dl dd {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-voiceBlock__contents dl dd {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

.c-categoryBox {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(27.7333333333px, 3.6111111111vw, 52px) clamp(25.6px, 3.3333333333vw, 48px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-categoryBox__item {
  border: 0.2666666667vw solid #aec6de;
  border-radius: 1.0666666667vw;
  margin-top: 8vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__item {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    margin-top: 0;
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px);
    width: calc((100% - clamp(25.6px, 3.3333333333vw, 48px)) / 2);
  }
}
.c-categoryBox__title {
  align-items: center;
  column-gap: 5.3333333333vw;
  display: flex;
  font-size: 6.4vw;
  line-height: 1;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__title {
    column-gap: clamp(10.6666666667px, 1.3888888889vw, 20px);
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.c-categoryBox__title span {
  align-items: center;
  background: var(--clr-primary-100);
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  height: 16vw;
  justify-content: center;
  position: relative;
  width: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__title span {
    height: clamp(42.6666666667px, 5.5555555556vw, 80px);
    width: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}
.c-categoryBox__title span img {
  display: block;
  height: 60%;
  object-fit: contain;
  width: 60%;
}
.c-categoryBox__contents {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__contents {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-categoryBox__contents dl {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__contents dl {
    margin-top: clamp(18.6666666667px, 2.4305555556vw, 35px);
  }
  .c-categoryBox__contents dl:first-child {
    margin-top: 0;
  }
}
.c-categoryBox__contents dl dt {
  column-gap: 4.8vw;
  display: flex;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: var(--line-height-m);
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__contents dl dt {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.c-categoryBox__contents dl dt::before {
  background: var(--clr-secondary-100);
  border-radius: 0.5333333333vw;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 4.8vw;
  position: relative;
  top: 1.0666666667vw;
  width: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__contents dl dt::before {
    height: clamp(9.6px, 1.25vw, 18px);
    top: clamp(2.1333333333px, 0.2777777778vw, 4px);
    width: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
}
.c-categoryBox__contents dl dd {
  font-weight: 500;
  margin-top: 4.2666666667vw;
  padding-left: 6.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-categoryBox__contents dl dd {
    margin-top: clamp(8px, 1.0416666667vw, 15px);
    padding-left: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}

.c-footerCta {
  background: #f2f7fa;
  margin: 16vw -8vw -16vw;
}
@media print, screen and (min-width:768px) {
  .c-footerCta {
    margin: clamp(106.6666666667px, 13.8888888889vw, 200px) calc(50% - 50vw) clamp(-120px, -8.3333333333vw, -64px);
    width: 100vw;
  }
}
.c-footerCta__inner {
  padding: 16vw 8vw;
}
@media print, screen and (min-width:768px) {
  .c-footerCta__inner {
    margin: 0 auto;
    max-width: 1200px;
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
.c-footerCta__title {
  display: block;
  font-size: 6.4vw;
  margin-top: 0;
  padding-left: 0;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-footerCta__title {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
  .c-footerCta__title br {
    display: none;
  }
}
.c-footerCta__title::before {
  content: none;
}
.c-footerCta__text {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: var(--line-height-l);
  margin-top: 13.3333333333vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-footerCta__text {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
@media print, screen and (min-width:768px) {
  .c-footerCta .c-buttonWrap {
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}

.c-featureBlock {
  counter-reset: num;
}
.c-featureBlock__item {
  counter-increment: num;
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-featureBlock__item:nth-child(odd) {
    flex-direction: row-reverse;
  }
}
@media print, screen and (min-width:768px) {
  .c-featureBlock__item {
    column-gap: clamp(32px, 4.1666666667vw, 60px);
    display: flex;
    margin-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.c-featureBlock figure {
  border-radius: 2.1333333333vw;
  margin-top: 0;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-featureBlock figure {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(266.6666666667px, 34.7222222222vw, 500px);
  }
}
@media print, screen and (min-width:768px) {
  .c-featureBlock__text {
    padding-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
    width: clamp(341.3333333333px, 44.4444444444vw, 640px);
  }
}
.c-featureBlock__text h2 {
  margin-top: 8vw;
  padding-left: 17.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-featureBlock__text h2 {
    margin-top: 0;
    padding-left: clamp(64px, 8.3333333333vw, 120px);
  }
}
.c-featureBlock__text h2::before {
  background: unset;
  color: var(--clr-primary-100);
  content: "0" counter(num) ".";
  font-family: "Roboto", sans-serif;
  font-size: 12vw;
  font-style: normal;
  font-weight: 300;
  font-weight: 200;
  height: auto;
  top: -3.4666666667vw;
  width: auto;
}
@media print, screen and (min-width:768px) {
  .c-featureBlock__text h2::before {
    font-size: clamp(42.6666666667px, 5.5555555556vw, 80px);
    top: clamp(-50px, -3.4722222222vw, -26.6666666667px);
  }
}

.c-recruitBlock {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-recruitBlock {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
@media print, screen and (min-width:768px) {
  .c-recruitBlock.-col3 .c-recruitBlock__item {
    width: calc((100% - clamp(42.6666666667px, 5.5555555556vw, 80px)) / 3);
  }
}
.c-recruitBlock__item {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-recruitBlock__item {
    margin-top: 0;
    width: calc((100% - clamp(21.3333333333px, 2.7777777778vw, 40px)) / 2);
  }
}
.c-recruitBlock__item h4 {
  margin-top: 0;
}
.c-recruitBlock__item figure {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-recruitBlock__item figure {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

.c-slideBlock {
  background: #fff;
  margin: 21.3333333333vw -8vw 0;
  padding-block: 10.6666666667vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-slideBlock {
    margin: clamp(42.6666666667px, 5.5555555556vw, 80px) calc(50% - 50vw + clamp(14.9333333333px, 1.9444444444vw, 28px)) 0;
    padding-block: clamp(37.3333333333px, 4.8611111111vw, 70px);
  }
}
.c-slideBlock .splide__slide img {
  aspect-ratio: 3/2;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.c-slideBlock__btn {
  background: url("../images/home/icon_stop.svg") no-repeat;
  background-size: contain;
  border: var(--clr-primary-100) solid 1px;
  border-radius: 50%;
  bottom: -8vw;
  display: block;
  height: 5.3333333333vw;
  overflow: hidden;
  position: absolute;
  right: 4vw;
  text-indent: -999px;
  width: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-slideBlock__btn {
    bottom: clamp(-50px, -3.4722222222vw, -26.6666666667px);
    height: clamp(17.0666666667px, 2.2222222222vw, 32px);
    right: clamp(24.5333333333px, 3.1944444444vw, 46px);
    width: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.c-slideBlock__btn.is-stop {
  background-image: url("../images/home/icon_play.svg");
}

.c-achievements {
  background-color: #f5f0e0;
  margin-top: 8vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-achievements {
    margin-top: clamp(32px, 4.1666666667vw, 60px);
    padding: clamp(32px, 4.1666666667vw, 60px) clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-achievements__inner {
  display: grid;
  gap: 10.6666666667vw;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:768px) {
  .c-achievements__inner {
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    grid-template-columns: 1fr 1fr;
  }
}
.c-achievements__item {
  background-image: url("../images/common/background_achievements.svg");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  justify-content: center;
  min-height: 40vw;
}
@media print, screen and (min-width:768px) {
  .c-achievements__item {
    min-height: clamp(149.3333333333px, 19.4444444444vw, 280px);
  }
}
.c-achievements__content {
  display: grid;
  grid-template-areas: "title title" "number text";
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  margin: 0 auto;
  min-height: 32vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-achievements__content {
    min-height: clamp(122.6666666667px, 15.9722222222vw, 230px);
  }
}
.c-achievements__content.-company {
  grid-template-areas: "title" "number" "text";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto;
}
.c-achievements__content.-company .c-achievements__number {
  font-size: 18.6666666667vw;
  letter-spacing: -0.04em;
  line-height: 1;
}
@media print, screen and (min-width:768px) {
  .c-achievements__content.-company .c-achievements__number {
    font-size: clamp(67.2px, 8.75vw, 126px);
    margin-bottom: 0;
  }
}
.c-achievements__content.-company .c-achievements__text {
  font-size: 4.8vw;
  margin-bottom: 0;
  margin-top: -2.6666666667vw;
  text-align: right;
}
@media print, screen and (min-width:768px) {
  .c-achievements__content.-company .c-achievements__text {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(-30px, -2.0833333333vw, -16px);
  }
}
.c-achievements__content.-unit .c-achievements__text {
  font-size: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-achievements__content.-unit .c-achievements__text {
    font-size: clamp(42.6666666667px, 5.5555555556vw, 80px);
    margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.c-achievements__title {
  color: #605b47;
  font-size: clamp(16px, 2.0833333333vw, 30px);
  font-weight: 700;
  grid-area: title;
  line-height: 1.2;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-achievements__title {
    font-size: clamp(19.2px, 2.5vw, 36px);
  }
}
.c-achievements__number {
  align-self: end;
  color: var(--clr-black);
  font-family: "Roboto", sans-serif;
  font-size: 21.3333333333vw;
  font-weight: bold;
  grid-area: number;
  line-height: 1;
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}
@media print, screen and (min-width:768px) {
  .c-achievements__number {
    font-size: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
.c-achievements__text {
  align-self: end;
  color: var(--clr-black);
  font-size: 3.2vw;
  font-weight: bold;
  grid-area: text;
  line-height: 1.3;
  margin-bottom: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-achievements__text {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-achievements__note {
  color: var(--clr-black-02);
  font-size: 2.6666666667vw;
  font-weight: 500;
  margin: auto 0 0 0;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-achievements__note {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}

.c-title1 {
  color: var(--clr-primary-100);
  font-size: 5.3333333333vw;
  font-weight: 700;
  letter-spacing: var(--letter-spacing-l);
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-title1 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding-left: clamp(13.3333333333px, 1.7361111111vw, 25px);
  }
}
.c-title1::before {
  background: #ff7171;
  border: 1.0666666667vw solid #ffb9b9;
  border-radius: 50%;
  content: "";
  display: block;
  height: 4.2666666667vw;
  top: 2.1333333333vw;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-title1::before {
    border-width: clamp(2.1333333333px, 0.2777777778vw, 4px);
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    top: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.c-title2 {
  column-gap: 3.2vw;
  display: flex;
  font-size: 4.8vw;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-title2 {
    column-gap: clamp(6.4px, 0.8333333333vw, 12px);
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-title2::before {
  background: var(--clr-primary-100);
  border-radius: 2.1333333333vw;
  content: "";
  display: block;
  height: 6.6666666667vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .c-title2::before {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.c-title3 h2 {
  font-size: 5.3333333333vw;
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h2 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}
@media print, screen and (min-width:768px) {
  .c-title3 h2::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(1.6px, 0.2083333333vw, 3px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.c-title3 h3 {
  column-gap: 3.7333333333vw;
  display: flex;
  font-size: 5.3333333333vw;
  margin-top: 13.3333333333vw;
}
.c-title3 h3::before {
  background: url("../images/common/icon_check.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 8vw;
  position: relative;
  top: 1.0666666667vw;
  width: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h3::before {
    height: clamp(16px, 2.0833333333vw, 30px);
    top: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(16px, 2.0833333333vw, 30px);
  }
}
@media print, screen and (min-width:768px) {
  .c-title3 h3 {
    column-gap: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}
.c-title3 h4 {
  column-gap: 4.8vw;
  display: flex;
  font-size: 4.8vw;
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h4 {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-title3 h4::before {
  background: var(--clr-secondary-100);
  border-radius: 0.5333333333vw;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 4.8vw;
  position: relative;
  top: 1.0666666667vw;
  width: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h4::before {
    height: clamp(9.6px, 1.25vw, 18px);
    top: clamp(2.1333333333px, 0.2777777778vw, 4px);
    width: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
}
.c-title3 h5 {
  column-gap: 2.6666666667vw;
  display: flex;
  font-size: 4.8vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h5 {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.c-title3 h5::before {
  background: url("../images/common/icon_arrow_lightblue.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 2.9333333333vw;
  position: relative;
  top: 2.1333333333vw;
  width: 1.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-title3 h5::before {
    height: clamp(5.8666666667px, 0.7638888889vw, 11px);
    top: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(3.7333333333px, 0.4861111111vw, 7px);
  }
}

.c-headline1 {
  font-size: 6.9333333333vw;
  line-height: var(--line-height-m);
  margin-top: 18.6666666667vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-headline1 {
    font-size: clamp(19.2px, 2.5vw, 36px);
    font-weight: 400;
    margin-top: clamp(64px, 8.3333333333vw, 120px);
  }
}
.c-headline1 span {
  position: relative;
  z-index: 2;
}
.c-headline1::before {
  background: linear-gradient(86deg, #ffc1b8 0%, #d79bb9 100%);
  border-radius: 50%;
  content: "";
  display: block;
  filter: blur(5.8666666667vw);
  height: 13.3333333333vw;
  left: -6.6666666667vw;
  opacity: 0.7;
  position: absolute;
  top: -6.6666666667vw;
  width: 13.3333333333vw;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-headline1::before {
    filter: blur(clamp(11.7333333333px, 1.5277777778vw, 22px));
    height: clamp(48px, 6.25vw, 90px);
    left: clamp(-45px, -3.125vw, -24px);
    top: clamp(-45px, -3.125vw, -24px);
    width: clamp(48px, 6.25vw, 90px);
  }
}

.c-headline2 {
  font-size: 6.1333333333vw;
  line-height: var(--line-height-m);
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-headline2 {
    font-size: clamp(16px, 2.0833333333vw, 30px);
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}

.c-headline3 {
  font-size: 5.3333333333vw;
  line-height: var(--line-height-m);
  margin-top: 10.6666666667vw;
  padding-left: 8vw;
  position: relative;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-headline3 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    margin-top: clamp(32px, 4.1666666667vw, 60px);
    padding-left: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-headline3::before {
  background: url("../images/home/icon_title1.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 6.4vw;
  left: 0;
  position: absolute;
  top: 0.8vw;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-headline3::before {
    height: clamp(12.8px, 1.6666666667vw, 24px);
    top: clamp(3.7333333333px, 0.4861111111vw, 7px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.c-headline4 {
  font-size: 4.8vw;
  line-height: var(--line-height-m);
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-headline4 {
    font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
    font-weight: 500;
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}

.c-buttonWrap.-center {
  justify-content: center;
}
@media print, screen and (min-width:768px) {
  .c-buttonWrap {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}

.c-button1 {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-button1 {
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.c-button1.-center a {
  margin-inline: auto;
}
.c-button1.-mail a:hover::before {
  filter: grayscale(1) brightness(2);
}
.c-button1.-mail a::before {
  background: url("../images/common/icon_mail.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 6.4vw;
  transition: filter 200ms ease;
  width: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-button1.-mail a::before {
    height: clamp(12.8px, 1.6666666667vw, 24px);
    width: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-button1 a {
  align-items: center;
  background-color: var(--clr-white);
  border: 1px solid #aecede;
  border-radius: 13.3333333333vw;
  color: var(--clr-black);
  column-gap: 4.2666666667vw;
  display: flex;
  font-size: 4vw;
  font-weight: 700;
  justify-content: space-between;
  padding: 3.4666666667vw 3.2vw 3.4666666667vw 7.4666666667vw;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-button1 a {
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 50px);
    column-gap: clamp(8.5333333333px, 1.1111111111vw, 16px);
    font-size: clamp(9.6px, 1.25vw, 18px);
    min-width: clamp(140.2666666667px, 18.2638888889vw, 263px);
    padding: clamp(6.9333333333px, 0.9027777778vw, 13px) clamp(6.4px, 0.8333333333vw, 12px) clamp(6.9333333333px, 0.9027777778vw, 13px) clamp(14.9333333333px, 1.9444444444vw, 28px);
    width: fit-content;
  }
}
.c-button1 a span {
  content: "";
  display: block;
  flex-shrink: 0;
  height: 10.1333333333vw;
  width: 10.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-button1 a span {
    background-size: clamp(12.8px, 1.6666666667vw, 24px) clamp(12.8px, 1.6666666667vw, 24px);
    height: clamp(20.2666666667px, 2.6388888889vw, 38px);
    width: clamp(20.2666666667px, 2.6388888889vw, 38px);
  }
}
.c-button1 a span svg {
  height: 10.1333333333vw;
  width: 10.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-button1 a span svg {
    background-size: clamp(12.8px, 1.6666666667vw, 24px) clamp(12.8px, 1.6666666667vw, 24px);
    height: clamp(20.2666666667px, 2.6388888889vw, 38px);
    width: clamp(20.2666666667px, 2.6388888889vw, 38px);
  }
}
.c-button1 a span svg rect {
  transition: fill 200ms ease;
}
.c-button1 a span svg path {
  transition: fill 200ms ease;
}
.c-button1 a[target=_blank]::after {
  content: none;
}
.c-button1 a[target=_blank] span {
  background-color: var(--clr-primary-100);
  border-radius: 50%;
  position: relative;
}
.c-button1 a[target=_blank] span svg {
  display: none;
}
.c-button1 a[target=_blank] span::before {
  background-image: url("../images/common/icon_ext.svg");
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  filter: brightness(0) invert(1);
  height: 5.3333333333vw;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-button1 a[target=_blank] span::before {
    height: clamp(10.6666666667px, 1.3888888889vw, 20px);
    width: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
@media (hover: hover) {
  .c-button1 a {
    transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
  }
  .c-button1 a span svg rect {
    transition: fill 200ms ease;
  }
  .c-button1 a span svg path {
    transition: fill 200ms ease, transform 200ms ease;
  }
  .c-button1 a:hover {
    background-color: var(--clr-primary-100);
    border-color: var(--clr-primary-100) !important;
    color: #fff;
  }
  .c-button1 a:hover span svg rect {
    fill: #fff;
  }
  .c-button1 a:hover span svg path {
    fill: var(--clr-primary-100);
    transform: translateX(5%);
  }
  .c-button1 a[target=_blank] span {
    transition: background-color 200ms ease;
  }
  .c-button1 a[target=_blank] span::before {
    transition: filter 200ms ease;
  }
  .c-button1 a[target=_blank]:hover span {
    background-color: #fff;
  }
  .c-button1 a[target=_blank]:hover span::before {
    filter: brightness(1) invert(0);
  }
}

.c-breadcrumbs {
  margin-bottom: 5.0666666667vw;
  margin-top: 5.0666666667vw;
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .c-breadcrumbs {
    margin: clamp(15.4666666667px, 2.0138888889vw, 29px) clamp(14.9333333333px, 1.9444444444vw, 28px);
    padding: 0;
  }
}
.c-breadcrumbs ol {
  column-gap: 2.6666666667vw;
  display: flex;
  margin-top: 0 !important;
  min-width: 0;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-breadcrumbs ol {
    column-gap: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.c-breadcrumbs ol li {
  flex-shrink: 0;
  font-size: 3.2vw;
  font-weight: 500;
  margin-top: 0;
  overflow: hidden;
  padding-left: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.c-breadcrumbs ol li::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .c-breadcrumbs ol li {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-breadcrumbs ol li:last-child {
  flex-shrink: 1;
}
.c-breadcrumbs ol li a {
  align-items: center;
  color: var(--clr-secondary-100);
  column-gap: 2.1333333333vw;
  display: flex;
  font-weight: 500;
  text-decoration: none;
  transition: opacity 200ms;
}
@media (hover: hover) {
  .c-breadcrumbs ol li a:hover {
    opacity: 0.8;
  }
}
@media print, screen and (min-width:768px) {
  .c-breadcrumbs ol li a {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    display: flex;
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-breadcrumbs ol li a::after {
  background: url(../images/common/icon_breadcrumbs.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: block;
  height: 2.4vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .c-breadcrumbs ol li a::after {
    height: clamp(4.8px, 0.625vw, 9px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.c-iconExt {
  border: 1px solid #000;
  border-radius: 2.1333333333vw;
  display: inline-block;
  height: 3.7333333333vw;
  margin-left: 2.6666666667vw;
  position: relative;
  top: -0.5333333333vw;
  transition: 400ms backgorund ease;
  vertical-align: middle;
  width: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-iconExt {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
    height: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-left: clamp(5.3333333333px, 0.6944444444vw, 10px);
    top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
    width: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-iconExt__inner {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
}
.c-iconExt__inner svg {
  height: 1.5466666667vw;
  left: 2.6666666667vw;
  position: absolute;
  top: 0.8vw;
  width: 1.5466666667vw;
}
.c-iconExt__inner svg path {
  transition: 400ms fill ease;
}
@media print, screen and (min-width:768px) {
  .c-iconExt__inner svg {
    height: clamp(3.0933333333px, 0.4027777778vw, 5.8px);
    left: clamp(6.4px, 0.8333333333vw, 12px);
    top: clamp(1.6px, 0.2083333333vw, 3px);
    width: clamp(3.0933333333px, 0.4027777778vw, 5.8px);
  }
}

@media print, screen and (min-width:768px) {
  .c-example-list {
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}
.c-example-list li {
  margin-bottom: 16vw;
  padding-left: 0;
  padding-top: 2.6666666667vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-example-list li {
    margin-bottom: clamp(42.6666666667px, 5.5555555556vw, 80px);
    padding-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
.c-example-list li::before {
  background: linear-gradient(90deg, rgb(255, 193, 184) 0%, rgb(215, 155, 185) 100%);
  background-color: rgb(255, 193, 184);
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  top: 0;
  width: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list li::before {
    width: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
.c-example-list li::after {
  background: var(--color-01_key);
  content: "";
  display: block;
  height: 10.6666666667vw;
  left: 0;
  position: absolute;
  top: 0;
  width: 1px;
}
@media print, screen and (min-width:768px) {
  .c-example-list li::after {
    height: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-example-list li:last-child {
  margin-bottom: 0;
}
.c-example-list__inner {
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-example-list__inner {
    padding: 0 clamp(21.3333333333px, 2.7777777778vw, 40px) 0 clamp(22.9333333333px, 2.9861111111vw, 43px);
  }
  .c-example-list__inner::before {
    background: linear-gradient(90deg, rgb(215, 155, 185) 0%, rgb(255, 193, 184) 100%);
    background-color: rgb(255, 193, 184);
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    width: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
  .c-example-list__inner::after {
    background: var(--color-01_key);
    bottom: 0;
    content: "";
    display: block;
    height: clamp(21.3333333333px, 2.7777777778vw, 40px);
    position: absolute;
    right: 0;
    width: 1px;
  }
}
.c-example-list__title {
  column-gap: 3.4666666667vw;
  display: flex;
  margin-bottom: 2.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__title {
    column-gap: clamp(20.2666666667px, 2.6388888889vw, 38px);
    margin-bottom: clamp(26.6666666667px, 3.4722222222vw, 50px);
    width: clamp(352px, 45.8333333333vw, 660px);
  }
}
.c-example-list__title figure {
  flex-shrink: 0;
  padding: 5.0666666667vw 0 0 2.6666666667vw;
  width: 23.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__title figure {
    padding: clamp(9.6px, 1.25vw, 18px) 0 0;
    width: clamp(65.0666666667px, 8.4722222222vw, 122px);
  }
}
.c-example-list__title h3 {
  font-size: 4.5333333333vw;
  line-height: var(--line-height-m);
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-example-list__title h3 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
  }
}
@media print, screen and (min-width:768px) {
  .c-example-list__block {
    column-gap: clamp(64px, 8.3333333333vw, 120px);
    display: flex;
  }
}
.c-example-list__block__txt {
  margin-bottom: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__txt {
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    width: clamp(352px, 45.8333333333vw, 660px);
  }
}
.c-example-list__block__txt div {
  border-bottom: 1px solid var(--color-01_gray);
  margin-bottom: 5.3333333333vw;
  padding-bottom: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__txt div {
    column-gap: clamp(12.2666666667px, 1.5972222222vw, 23px);
    display: flex;
    margin-bottom: clamp(16px, 2.0833333333vw, 30px);
    padding-bottom: clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-example-list__block__txt div:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.c-example-list__block__txt div dt {
  color: var(--color-03_gray);
  font-size: 4vw;
  margin-bottom: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__txt div dt {
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
    margin-bottom: 0;
    text-align: center;
    width: clamp(74.6666666667px, 9.7222222222vw, 140px);
  }
}
.c-example-list__block__txt div dd {
  line-height: var(--line-height-l);
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__txt div dd {
    width: clamp(266.6666666667px, 34.7222222222vw, 500px);
  }
}
.c-example-list__block__txt div dd p {
  font-size: 3.7333333333vw;
  margin-top: 2.4vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__txt div dd p {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    font-weight: 500;
    margin-top: 0;
  }
  .c-example-list__block__txt div dd p + p {
    margin-top: clamp(2.6666666667px, 0.3472222222vw, 5px);
  }
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__fig {
    width: clamp(181.3333333333px, 23.6111111111vw, 340px);
  }
}
.c-example-list__block__fig figure {
  aspect-ratio: 340/186;
  margin-bottom: 4vw;
}
.c-example-list__block__fig figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__fig figure {
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-example-list__block__link {
  margin-top: 4vw;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__link {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-example-list__block__link a {
  font-size: 4vw;
  text-decoration: underline;
}
@media print, screen and (min-width:768px) {
  .c-example-list__block__link a {
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
  }
}
@media (hover: hover) {
  .c-example-list__block__link a:hover .c-iconExt {
    background: var(--color-00_black);
  }
  .c-example-list__block__link a:hover .c-iconExt svg path {
    fill: var(--color-01_white);
  }
}

.c-text {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
  margin-top: 8vw;
}
.c-text.-note {
  font-size: 3.2vw;
  padding-left: 5.8666666667vw;
  position: relative;
}
.c-text.-note::before {
  content: "※";
  left: 0;
  position: absolute;
  top: 0;
}
@media print, screen and (min-width:768px) {
  .c-text.-note {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.c-text a {
  text-decoration: underline;
}
.c-text a[target=_blank]::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 4.2666666667vw;
  margin-left: 0.5333333333vw;
  vertical-align: middle;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-text a[target=_blank]::after {
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-left: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-text strong {
  background: linear-gradient(86deg, rgba(255, 193, 184, 0.6) 0%, rgba(215, 155, 185, 0.6) 100%);
  font-weight: 300;
}
.c-text .has-big-font-size {
  font-size: 5.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-text .has-big-font-size {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
  }
}
.c-text .has-small-font-size {
  font-size: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-text .has-small-font-size {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
@media print, screen and (min-width:768px) {
  .c-text {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    font-weight: 500;
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

.c-figure1 {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-figure1 {
    margin-left: auto;
    margin-right: auto;
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
    width: fit-content;
  }
  .c-figure1 img {
    margin: 0 auto;
    width: auto;
  }
}
.c-figure1 figcaption {
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: var(--line-height-l);
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-figure1 figcaption {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-figure1 figcaption a {
  text-decoration: underline;
}

.c-list1 li {
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-list1 li {
    margin-top: 0;
  }
}
.c-list1 li a {
  color: #3c3c3c;
  column-gap: 2.6666666667vw;
  display: flex;
  font-size: 4vw;
  font-weight: 500;
  text-decoration: none;
  width: fit-content;
}
.c-list1 li a[target=_blank]::after {
  position: relative;
  top: 0.8vw;
}
@media print, screen and (min-width:768px) {
  .c-list1 li a[target=_blank]::after {
    top: clamp(1.6px, 0.2083333333vw, 3px);
  }
}
@media print, screen and (min-width:768px) {
  .c-list1 li a {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(8px, 1.0416666667vw, 15px);
  }
}
.c-list1 li a::before {
  background: url(../images/common/icon_breadcrumbs.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 2.4vw;
  position: relative;
  top: 2.6666666667vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .c-list1 li a::before {
    height: clamp(5.3333333333px, 0.6944444444vw, 10px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
@media (hover: hover) {
  .c-list1 li a {
    transition: color 200ms;
  }
  .c-list1 li a:hover {
    color: #0b9de3;
  }
}

@media print, screen and (min-width:768px) {
  .c-list2.-unstyled {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-list2.-unstyled li {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-list2.-unstyled li {
    margin-top: 0;
    width: calc((100% - clamp(25.6px, 3.3333333333vw, 48px)) / 3);
  }
}
.c-list2.-unstyled li a {
  background: #fff;
  border: 0.2666666667vw solid #fff;
  border-radius: 4.2666666667vw;
  color: var(--clr-black);
  display: block;
  padding: 6.4vw;
  text-decoration: none;
  transition: border-color 200ms ease;
}
@media print, screen and (min-width:768px) {
  .c-list2.-unstyled li a {
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    padding: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
@media print and (hover: hover), screen and (min-width:768px) and (hover: hover) {
  .c-list2.-unstyled li a::after {
    transition: background-position 200ms ease;
  }
  .c-list2.-unstyled li a:hover {
    border-color: var(--clr-primary-100);
  }
  .c-list2.-unstyled li a:hover dl dt {
    color: var(--clr-primary-100);
  }
  .c-list2.-unstyled li a:hover dl dt::after {
    background-position: calc(50% + 0.5333333333vw) 50%;
  }
}
@media print and (hover: hover), screen and (min-width:768px) and (hover: hover) and (min-width:768px) {
  .c-list2.-unstyled li a:hover dl dt::after {
    background-position: calc(50% + clamp(1.0666666667px, 0.1388888889vw, 2px)) 50%;
  }
}
.c-list2.-unstyled li a dl dt {
  border-bottom: 1px solid #aecede;
  display: flex;
  font-size: caclSp(18);
  font-weight: 700;
  justify-content: space-between;
  margin-bottom: 3.2vw;
  padding-bottom: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-list2.-unstyled li a dl dt {
    font-size: caclPc(18);
    margin-bottom: clamp(6.4px, 0.8333333333vw, 12px);
    padding-bottom: clamp(6.4px, 0.8333333333vw, 12px);
    transition: color 200ms ease;
  }
}
.c-list2.-unstyled li a dl dt::after {
  background: var(--clr-primary-100) url("../images/common/icon_arrow.svg") no-repeat 50% 50%;
  background-size: 4.2666666667vw 4.2666666667vw;
  border-radius: 50%;
  content: "";
  display: block;
  height: 6.4vw;
  position: relative;
  top: 0.5333333333vw;
  transition: background-position 200ms ease;
  width: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-list2.-unstyled li a dl dt::after {
    background-size: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px);
    height: clamp(12.8px, 1.6666666667vw, 24px);
    top: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-list2.-unstyled li a dl dd {
  font-size: 4.2666666667vw;
  font-weight: 500;
}
@media print, screen and (min-width:768px) {
  .c-list2.-unstyled li a dl dd {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.c-list3.-unstyled {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .c-list3.-unstyled {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
.c-list3.-unstyled li {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-list3.-unstyled li {
    margin-top: 0;
    width: calc((100% - clamp(10.6666666667px, 1.3888888889vw, 20px)) / 2);
  }
}
.c-list3.-unstyled li a {
  background-color: #f5f5f5;
  display: block;
  font-size: 4.8vw;
  font-weight: 700;
  padding: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(26.6666666667px, 3.4722222222vw, 50px);
  text-align: center;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .c-list3.-unstyled li a {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(26.6666666667px, 3.4722222222vw, 50px);
    text-align: left;
  }
}
@media (hover: hover) {
  .c-list3.-unstyled li a {
    transition: background-color 200ms ease;
  }
  .c-list3.-unstyled li a:hover {
    background-color: #f0f8ff;
  }
}

.c-box1 {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-box1.-small figure {
    flex-shrink: 0;
    width: clamp(140.8px, 18.3333333333vw, 264px);
  }
}
@media print, screen and (min-width:768px) {
  .c-box1 {
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: flex;
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-box1 figure {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-box1 figure {
    flex-shrink: 0;
    width: 33.3333333333%;
  }
}
.c-box1__inner {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-box1__inner {
    margin-top: var(--leading-trim);
  }
}
.c-box1__inner > *:first-child {
  margin-top: 0;
}
.c-box1__title {
  border-bottom: 0.2666666667vw solid #dde8f4;
  font-size: 6.4vw;
  font-weight: 700;
  padding: 0 0 8vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-box1__title {
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    padding: 0 0 clamp(16px, 2.0833333333vw, 30px);
  }
}
.c-box1__title::before {
  content: none;
}
.c-box1__title::after {
  background: var(--clr-primary-100);
  bottom: -0.2666666667vw;
  content: "";
  display: block;
  height: 0.2666666667vw;
  left: 0;
  position: absolute;
  width: 15.4666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-box1__title::after {
    bottom: clamp(-1px, -0.0694444444vw, -0.5333333333px);
    height: clamp(0.5333333333px, 0.0694444444vw, 1px);
    width: clamp(30.9333333333px, 4.0277777778vw, 58px);
  }
}
.c-box1 p {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-box1 p {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

@media print, screen and (min-width:768px) {
  .c-box2__list.-unstyled {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.c-box2__list.-unstyled li {
  border: 0.2666666667vw solid #aec6de;
  border-radius: 1.0666666667vw;
  margin-top: 8vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-box2__list.-unstyled li {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    margin-top: 0;
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(32px, 4.1666666667vw, 60px);
    width: calc((100% - clamp(21.3333333333px, 2.7777777778vw, 40px)) / 2);
  }
}
.c-box2__list.-unstyled li h4 {
  margin-top: 0;
}
.c-box2__list.-unstyled li .c-link {
  justify-content: flex-end;
}

.c-box3 {
  display: flex;
  flex-direction: column;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-box3 {
    align-items: flex-start;
    column-gap: clamp(17.0666666667px, 2.2222222222vw, 32px);
    flex-direction: row;
    margin-top: clamp(23.4666666667px, 3.0555555556vw, 44px);
  }
}
.c-box3 figure {
  aspect-ratio: 350/197;
  border-radius: 2.6666666667vw;
  margin: 6.4vw 0 0;
  order: 2;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-box3 figure {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-top: 0;
    order: unset;
    width: clamp(186.6666666667px, 24.3055555556vw, 350px);
  }
}
.c-box3 figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.c-box3 dl {
  margin-top: 2.1333333333vw;
  order: 1;
}
@media print, screen and (min-width:768px) {
  .c-box3 dl {
    margin-top: 0;
    order: unset;
    width: clamp(254.9333333333px, 33.1944444444vw, 478px);
  }
}
.c-box3 dl dt {
  background: var(--clr-primary-10);
  border-radius: 2.1333333333vw;
  color: var(--clr-primary-100);
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: var(--letter-spacing-l);
  line-height: 1;
  padding: 1.6vw 3.2vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-box3 dl dt {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
    font-size: clamp(8px, 1.0416666667vw, 15px);
    padding: clamp(3.2px, 0.4166666667vw, 6px) clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-box3 dl dd {
  font-size: 4.8vw;
  font-weight: 700;
  letter-spacing: var(--letter-spacing-m);
  line-height: var(--line-height-s);
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-box3 dl dd {
    font-size: clamp(12.8px, 1.6666666667vw, 24px);
    margin-top: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}

.c-box4 {
  background: var(--clr-primary-10);
  border-radius: 2.6666666667vw;
  margin-top: 6.4vw;
  overflow: hidden;
  padding: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-box4 {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-top: clamp(17.0666666667px, 2.2222222222vw, 32px);
    padding: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-box4 h4 {
  color: var(--clr-black-100);
  font-size: 4.8vw;
  font-weight: 400;
  margin-top: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .c-box4 h4 {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.c-box4 h4::before {
  content: none;
}
.c-box4 ul {
  margin-top: 0;
}
.c-box4 ul li {
  font-weight: 400;
  margin-top: 1.0666666667vw;
}
.c-box4 ul li::before {
  background: var(--clr-secondary-100);
  height: 2.1333333333vw;
  width: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-box4 ul li::before {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    top: clamp(6.9333333333px, 0.9027777778vw, 13px);
    width: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
@media print, screen and (min-width:768px) {
  .c-box4 ul li {
    margin-top: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
}

.c-box5 {
  background: #f0f2fa;
  border-radius: 2.6666666667vw;
  margin-top: 6.4vw;
  padding: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-box5 {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-top: clamp(23.4666666667px, 3.0555555556vw, 44px);
    padding: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-box5 > *:first-child {
  margin-top: 0;
}
.c-box5 .c-box3 dl dt {
  background-color: var(--clr-primary-30);
}

.c-quote {
  border: 1px solid var(--color-01_gray);
  margin-top: 8vw;
  padding: 8vw;
}
.c-quote::before {
  background: url("../images/common/bg_quote.svg") no-repeat center center;
  background-size: contain;
  content: "";
  display: block;
  height: 4.2666666667vw;
  width: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-quote::before {
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    width: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-quote::before + p {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-quote {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
    padding: clamp(16px, 2.0833333333vw, 30px) clamp(26.6666666667px, 3.4722222222vw, 50px) clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}
.c-quote .c-text:first-child {
  margin-top: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .c-quote .c-text:first-child {
    margin-top: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.c-quote__title {
  font-size: 5.3333333333vw;
  line-height: var(--line-height-m);
}
@media print, screen and (min-width:768px) {
  .c-quote__title {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    font-weight: 400;
  }
}
.c-quote__title + p.c-text {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-quote__title + p.c-text {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.c-quote cite {
  display: block;
  font-size: 3.2vw;
  font-style: normal;
  margin-top: 6.4vw;
  text-align: right;
}
@media print, screen and (min-width:768px) {
  .c-quote cite {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-weight: 500;
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

.c-table1 table {
  border-collapse: collapse;
  display: table;
  width: 100%;
}
.c-table1 table th,
.c-table1 table td {
  font-size: 3.7333333333vw;
  font-weight: 400;
  padding: 4vw 0;
  vertical-align: top;
}
@media print, screen and (min-width:768px) {
  .c-table1 table th,
  .c-table1 table td {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    padding: clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.c-table1 table th {
  border-bottom: 0.5333333333vw solid var(--clr-secondary-100);
  font-weight: 700;
  text-align: left;
  width: 26.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-table1 table th {
    border-bottom: clamp(1.0666666667px, 0.1388888889vw, 2px) solid var(--clr-secondary-100);
    width: clamp(106.6666666667px, 13.8888888889vw, 200px);
  }
}
.c-table1 table td {
  border-bottom: 0.5333333333vw solid var(--clr-primary-30);
}
@media print, screen and (min-width:768px) {
  .c-table1 table td {
    border-bottom: clamp(1.0666666667px, 0.1388888889vw, 2px) solid var(--clr-primary-30);
    width: calc(100% - clamp(106.6666666667px, 13.8888888889vw, 200px));
  }
}
@media print, screen and (min-width:768px) {
  .c-table1 table td p {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.c-table1 table td a {
  color: var(--clr-primary-100);
  text-decoration: underline;
  transition: color 200ms;
}
@media (hover: hover) {
  .c-table1 table td a:hover {
    color: var(--clr-secondary-100);
  }
}
.c-table1 table td a[target=_blank]::after {
  background: url("../images/common/icon_ext.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 4.2666666667vw;
  margin-left: 0.5333333333vw;
  vertical-align: middle;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-table1 table td a[target=_blank]::after {
    height: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-left: clamp(0.5333333333px, 0.0694444444vw, 1px);
    width: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.c-row {
  margin-top: 13.3333333333vw;
}
.c-row .c-col {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col {
    margin-top: 0;
  }
}
.c-row .c-col > *:first-child {
  margin-top: 0;
}
.c-row .c-col h3 {
  font-size: 6.1333333333vw;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col h3 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    font-weight: 500;
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.c-row .c-col h3 ~ * {
  margin-top: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col h3 ~ * {
    margin-top: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.c-row .c-col h4 {
  font-size: 5.3333333333vw;
  line-height: var(--line-height-m);
  margin-top: 6.4vw;
  padding-left: 8vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col h4 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
    padding-left: 0;
  }
}
.c-row .c-col h4::before {
  background: url("../images/home/icon_title1.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 6.4vw;
  left: 0;
  position: absolute;
  top: 0.8vw;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col h4::before {
    content: none;
  }
}
.c-row .c-col h4 ~ * {
  margin-top: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .c-row .c-col h4 ~ * {
    margin-top: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
@media print, screen and (min-width:768px) {
  .c-row {
    column-gap: clamp(32px, 4.1666666667vw, 60px);
    display: flex;
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
  .c-row:has(> :nth-child(3)) {
    flex-wrap: wrap;
    gap: clamp(26.6666666667px, 3.4722222222vw, 50px) clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
  .c-row:has(> :nth-child(3)) .c-col {
    width: calc((100% - clamp(42.6666666667px, 5.5555555556vw, 80px)) / 3);
  }
  .c-row:has(> :nth-child(4)) {
    flex-wrap: wrap;
    gap: clamp(16px, 2.0833333333vw, 30px);
  }
  .c-row:has(> :nth-child(4)) .c-col {
    width: calc((100% - clamp(48px, 6.25vw, 90px)) / 4);
  }
}

.c-row2 {
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .c-row2 {
    column-gap: clamp(42.6666666667px, 5.5555555556vw, 80px);
    display: flex;
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
  .c-row2.-narrow figure {
    width: 30%;
  }
  .c-row2.-narrow .c-row2__txt {
    width: 70%;
  }
}
.c-row2 > figure {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-row2 > figure {
    flex: 1 1 clamp(202.6666666667px, 26.3888888889vw, 380px);
    width: 100%;
  }
}
@media print, screen and (min-width:768px) {
  .c-row2__txt {
    flex: 0 1 calc(100% - 440px);
    width: 100%;
  }
  .c-row2__txt > *:first-child {
    margin-top: 0;
  }
}
.c-row2 h3 {
  font-size: 6.1333333333vw;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .c-row2 h3 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    font-weight: 500;
    margin-top: 0;
  }
}

.c-iframe-contact {
  border: 0;
  height: 1300px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.c-iframe-contact > iframe {
  border: 0;
  height: 100%;
  width: 100%;
}

/* ==========================================================================
Project
========================================================================== */
#sortable,
#flags {
  overflow: visible;
  position: relative;
}
@media print, screen and (min-width:768px) {
  #sortable,
  #flags {
    width: 60px !important;
  }
}

@media print, screen and (max-width:767.98px) {
  #sortable {
    display: flex;
    justify-content: center;
    margin-top: 5.8666666667vw;
  }
}

@media print, screen and (max-width:767.98px) {
  #flags {
    display: flex;
    justify-content: center;
    margin-top: 5.8666666667vw;
    width: 100% !important;
  }
}

#flags.size18 a.united-states[title=English],
a.single-language.united-states[title=English] span.size18,
#flags.size18 a[title=Japanese],
.tool-container .tool-items a[title=Japanese],
a.single-language[title=Japanese] span.size18 {
  background: none !important;
}

#flags.size18 a,
a.single-language span.size18,
#flags.size18 a[title=Japanese] {
  height: auto !important;
  width: auto !important;
}

#flags li {
  margin-top: 0 !important;
}
@media print, screen and (min-width:768px) {
  #flags li {
    font-size: 0 !important;
  }
}

@media print, screen and (max-width:767.98px) {
  #English a,
  #Japanese a {
    color: #0b9de3;
    font-size: 3.7333333333vw;
    font-weight: 500;
    text-decoration: none;
  }
}
@media print, screen and (min-width:768px) {
  #English a,
  #Japanese a {
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media print, screen and (min-width:768px) {
  #English a::after,
  #Japanese a::after {
    border-radius: clamp(53.3333333333px, 6.9444444444vw, 100px);
    color: #fff;
    display: block;
    font-family: "Roboto", sans-serif;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-style: normal;
    font-weight: 300;
    font-weight: 500;
    line-height: 1;
    padding: clamp(2.1333333333px, 0.2777777778vw, 4px) clamp(10.6666666667px, 1.3888888889vw, 20px);
    transition: background-color 200ms;
  }
}

#English a::after {
  content: "EN";
}
@media print, screen and (min-width:768px) {
  #English a::after {
    background-color: #00354f;
  }
}
@media (hover: hover) {
  #English a:hover::after {
    background-color: #0b9de3;
    transition: background-color 200ms;
  }
}

@media print, screen and (max-width:767.98px) {
  #English {
    color: #dadada;
    column-gap: 5.3333333333vw;
    display: flex;
    font-family: "Roboto", sans-serif;
    font-size: 3.7333333333vw;
    font-style: normal;
    font-weight: 300;
  }
}
@media print, screen and (max-width:767.98px) {
  #English::after {
    content: "/";
    display: block;
    margin-right: 5.3333333333vw;
  }
}

#Japanese a::after {
  content: "JP";
}
@media print, screen and (min-width:768px) {
  #Japanese a::after {
    background-color: #0b9de3;
  }
}
@media (hover: hover) {
  #Japanese a:hover::after {
    background-color: #00354f;
    transition: background-color 200ms;
  }
}

@media print, screen and (max-width:767.98px) {
  html[lang=en] #English a {
    color: #dadada;
    pointer-events: none;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] #English a {
    display: none;
    visibility: hidden;
  }
}
html[lang=en] .l-header__navList {
  column-gap: clamp(12.8px, 1.6666666667vw, 24px);
}
@media print, screen and (min-width:768px) {
  html[lang=en] .l-header__navList > li > a {
    line-height: 1.2;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .l-header__navList > li > a font {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
    width: min-content;
  }
}
html[lang=en] .p-home__ir__ja {
  display: none;
}
html[lang=en] .p-home__ir__en {
  display: block;
}
html[lang=en] .c-titleArea h1,
html[lang=en] .c-titleArea p {
  text-transform: uppercase;
}

@media print, screen and (max-width:767.98px) {
  html[lang=ja] #Japanese a,
  html[lang=auto] #Japanese a {
    color: #dadada;
    pointer-events: none;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=ja] #Japanese a,
  html[lang=auto] #Japanese a {
    display: none;
    visibility: hidden;
  }
}
html[lang=ja] .p-home__ir__ja,
html[lang=auto] .p-home__ir__ja {
  display: block;
}
html[lang=ja] .p-home__ir__en,
html[lang=auto] .p-home__ir__en {
  display: none;
}

@media print, screen and (min-width:768px) {
  .home .l-header {
    background: unset;
  }
}

.p-home {
  position: relative;
}
.p-home__news {
  background: #f2f7fa;
  padding-block: 10.6666666667vw 16vw;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width:768px) {
  .p-home__news {
    padding-block: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.p-home__news .l-main__inner {
  padding-bottom: 0;
  position: relative;
}
.p-home__news .c-link a {
  margin: 0 auto;
}
@media print, screen and (min-width:768px) {
  .p-home__news .c-link {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
}
.p-home__bg {
  background: #dcf3ff;
}
.p-home__about {
  background: url("../images/home/bg_about_smp.webp") no-repeat top 11.2vw left 0;
  background-size: 100% auto;
  overflow: hidden;
  padding-block: 16vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-home__about {
    background: unset;
    padding-block: clamp(73.6px, 9.5833333333vw, 138px) clamp(72px, 9.375vw, 135px);
  }
}
.p-home__about .l-main__inner {
  padding-bottom: 0;
}
@media print, screen and (min-width:768px) {
  .p-home__about .l-main__inner {
    position: relative;
  }
}
.p-home__about__title {
  color: var(--clr-black-02);
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__about__title {
    font-size: clamp(25.6px, 3.3333333333vw, 48px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
    position: relative;
    z-index: 2;
  }
}
@media print, screen and (min-width:768px) {
  .p-home__about__block {
    column-gap: clamp(60.8px, 7.9166666667vw, 114px);
    display: flex;
  }
}
.p-home__about__fig {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__about__fig {
    height: clamp(324.8px, 42.2916666667vw, 609px);
    left: clamp(353.6px, 46.0416666667vw, 663px);
    margin-top: 0;
    overflow: unset;
    position: absolute;
    top: clamp(14.4px, 1.875vw, 27px);
    width: clamp(335.4666666667px, 43.6805555556vw, 629px);
  }
  .p-home__about__fig img {
    position: relative;
    z-index: 2;
  }
  .p-home__about__fig::after {
    background: url("../images/home/about_after.webp") no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: clamp(822.4px, 107.0833333333vw, 1542px);
    left: clamp(-450px, -31.25vw, -240px);
    pointer-events: none;
    position: absolute;
    top: clamp(-470px, -32.6388888889vw, -250.6666666667px);
    width: clamp(813.3333333333px, 105.9027777778vw, 1525px);
    z-index: 1;
  }
}
.p-home__about__text {
  margin-top: 6.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__about__text {
    margin-top: 0;
    position: relative;
    width: clamp(293.3333333333px, 38.1944444444vw, 550px);
    z-index: 2;
  }
}
.p-home__about__text p {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 220%;
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__about__text p {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-home__about__text p + p {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__about__text p + p {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__about .c-button1 {
    width: clamp(140.2666666667px, 18.2638888889vw, 263px);
  }
}
.p-home__service {
  background: var(--clr-white);
  padding: 16vw 0;
}
@media print, screen and (min-width:768px) {
  .p-home__service {
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin: 0 clamp(13.8666666667px, 1.8055555556vw, 26px);
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0;
  }
}
.p-home__service .l-main__inner {
  padding-bottom: 0;
}
.p-home__service__title {
  color: var(--clr-black-02);
  font-size: 6.4vw;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--line-height-s);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__title {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-bottom: clamp(29.8666666667px, 3.8888888889vw, 56px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__service .c-title2 {
    margin-top: clamp(29.8666666667px, 3.8888888889vw, 56px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled {
    column-gap: clamp(12.8px, 1.6666666667vw, 24px);
    display: flex;
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled:has(li:nth-child(3)) li {
    display: block;
    padding-top: clamp(29.3333333333px, 3.8194444444vw, 55px);
  }
  .p-home__service__list.-unstyled:has(li:nth-child(3)) li h4 {
    width: auto;
  }
  .p-home__service__list.-unstyled:has(li:nth-child(3)) li h4 img {
    width: clamp(112.5333333333px, 14.6527777778vw, 211px);
  }
  .p-home__service__list.-unstyled:has(li:nth-child(3)) li p {
    margin-top: clamp(24px, 3.125vw, 45px);
  }
}
.p-home__service__list.-unstyled li {
  background: #f2f7fa;
  border-radius: 1.0666666667vw;
  margin-top: 6.4vw;
  padding: 10.6666666667vw 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li {
    align-items: center;
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    column-gap: clamp(25.6px, 3.3333333333vw, 48px);
    display: flex;
    margin-top: 0;
    padding: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.p-home__service__list.-unstyled li h4 {
  background: unset;
  display: block;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li h4 {
    flex-shrink: 0;
    width: clamp(128px, 16.6666666667vw, 240px);
  }
  .p-home__service__list.-unstyled li h4 img {
    width: clamp(91.7333333333px, 11.9444444444vw, 172px);
  }
}
.p-home__service__list.-unstyled li h4 img {
  margin: 0 auto;
}
.p-home__service__list.-unstyled li h4::before {
  content: none;
}
.p-home__service__list.-unstyled li h4.-ttl1 img {
  width: 45.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li h4.-ttl1 img {
    width: clamp(91.7333333333px, 11.9444444444vw, 172px);
  }
}
.p-home__service__list.-unstyled li h4.-ttl2 img {
  width: 58.9333333333vw;
}
.p-home__service__list.-unstyled li h4.-ttl3 img {
  width: 45.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li h4.-ttl3 img {
    width: clamp(91.7333333333px, 11.9444444444vw, 172px);
  }
}
.p-home__service__list.-unstyled li p {
  font-weight: 500;
  line-height: 200%;
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li p {
    margin-top: 0;
  }
}
.p-home__service__list.-unstyled li .c-link {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__list.-unstyled li .c-link {
    justify-content: flex-start;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.p-home__service__section {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-home__service__section {
    margin-top: clamp(29.8666666667px, 3.8888888889vw, 56px);
  }
}
.p-home__voice {
  background: url("../images/home/voice_bg_smp.webp") no-repeat 0 0;
  background-size: 100% auto;
  padding: 16vw 0;
}
@media print, screen and (min-width:768px) {
  .p-home__voice {
    background: url("../images/home/voice_bg.webp") no-repeat 0 0;
    background-size: 100% auto;
    padding: 0;
  }
}
.p-home__voice__title {
  color: var(--clr-black-02);
  font-size: 6.4vw;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__voice__title {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-home__voice__grid {
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .p-home__voice__grid {
    display: grid;
    gap: 0 clamp(28.2666666667px, 3.6805555556vw, 53px);
    grid-template-columns: clamp(273.6px, 35.625vw, 513px) auto;
    grid-template-rows: auto 1fr;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: clamp(640px, 83.3333333333vw, 1200px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__voice .-first {
    grid-column: 1;
    grid-row: 1;
    padding-top: clamp(68.2666666667px, 8.8888888889vw, 128px);
  }
}
@media print, screen and (min-width:768px) {
  .p-home__voice .-second {
    grid-column: 1;
    grid-row: 2;
  }
  .p-home__voice .-second .c-button1 a {
    margin-left: 0;
  }
}
.p-home__voice .-second p {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__voice .-second p {
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-home__voice__slide {
  margin: 11.2vw -8vw 0;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-home__voice__slide {
    column-gap: clamp(12.8px, 1.6666666667vw, 24px);
    display: flex;
    grid-column: 2;
    grid-row: 1/3;
    margin: 0;
  }
}
@media print, screen and (min-width:768px) {
  .p-home__voice__slide .splide {
    height: clamp(373.3333333333px, 48.6111111111vw, 700px);
    width: clamp(162.6666666667px, 21.1805555556vw, 305px);
  }
}
.p-home__voice__slide .splide.slide2 {
  margin-top: 4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__voice__slide .splide.slide2 {
    margin-top: 0;
  }
}
.p-home__voice__slide .splide li {
  border-radius: 1.0666666667vw;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .p-home__voice__slide .splide li {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
  }
}
.p-home__voice__slide .splide li img {
  aspect-ratio: 3/2;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.p-home__voice__slide__control {
  background: url("../images/home/icon_stop.svg") no-repeat;
  background-size: contain;
  bottom: -9.6vw;
  height: 6.9333333333vw;
  position: absolute;
  right: 2.6666666667vw;
  width: 6.9333333333vw;
}
.p-home__voice__slide__control.is-stop, .p-home__voice__slide__control:has(.is-stop) {
  background-image: url("../images/home/icon_play.svg");
}
@media print, screen and (min-width:768px) {
  .p-home__voice__slide__control {
    bottom: clamp(6.4px, 0.8333333333vw, 12px);
    height: clamp(16.5333333333px, 2.1527777778vw, 31px);
    right: clamp(-43px, -2.9861111111vw, -22.9333333333px);
    width: clamp(16.5333333333px, 2.1527777778vw, 31px);
  }
  .p-home__voice__slide__control button {
    cursor: pointer;
    display: block;
    height: 100%;
    width: 100%;
  }
}
.p-home__company {
  background: #fff;
}
@media print, screen and (min-width:768px) {
  .p-home__company {
    background: #fff url("../images/home/company_fig.webp") no-repeat 0 0;
    background-size: auto 100%;
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin: 0 clamp(13.8666666667px, 1.8055555556vw, 26px);
    overflow: hidden;
  }
}
.p-home__company .l-main__inner {
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .p-home__company figure {
    display: none;
  }
}
.p-home__company__inner {
  padding: 16vw 8vw 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__inner {
    margin-left: auto;
    padding: clamp(53.3333333333px, 6.9444444444vw, 100px) 0;
    width: clamp(305.6px, 39.7916666667vw, 573px);
  }
}
.p-home__company__title {
  color: var(--clr-black-02);
  font-size: 6.4vw;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__title {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-home__company__list.-unstyled {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__list.-unstyled {
    column-gap: clamp(17.0666666667px, 2.2222222222vw, 32px);
    display: flex;
    flex-wrap: wrap;
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-home__company__list.-unstyled li {
  border-bottom: 1px solid #aecede;
  margin-bottom: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__list.-unstyled li {
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    width: calc((100% - clamp(17.0666666667px, 2.2222222222vw, 32px)) / 2);
  }
}
.p-home__company__list.-unstyled li.small a {
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__list.-unstyled li.small a {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.p-home__company__list.-unstyled li a {
  align-items: center;
  color: var(--clr-black);
  display: flex;
  font-size: 4.8vw;
  font-weight: 700;
  justify-content: space-between;
  letter-spacing: 0.04em;
  line-height: 1;
  padding: 5.3333333333vw 0;
  text-decoration: none;
  transition: 200ms ease;
}
@media (hover: hover) {
  .p-home__company__list.-unstyled li a::after {
    transition: background-position 200ms ease;
  }
  .p-home__company__list.-unstyled li a:hover {
    color: var(--clr-primary-100);
  }
  .p-home__company__list.-unstyled li a:hover::after {
    background-position: calc(50% + 0.5333333333vw) 50%;
  }
}
@media print and (hover: hover), screen and (hover: hover) and (min-width:768px) {
  .p-home__company__list.-unstyled li a:hover::after {
    background-position: calc(50% + clamp(1.0666666667px, 0.1388888889vw, 2px)) 50%;
  }
}
@media print, screen and (min-width:768px) {
  .p-home__company__list.-unstyled li a {
    font-size: clamp(9.6px, 1.25vw, 18px);
    padding: clamp(10.6666666667px, 1.3888888889vw, 20px) 0;
  }
}
.p-home__company__list.-unstyled li a::after {
  background: var(--clr-primary-100) url("../images/common/icon_arrow.svg") no-repeat 50% 50%;
  background-size: 4.2666666667vw 4.2666666667vw;
  border-radius: 50%;
  content: "";
  display: block;
  height: 6.4vw;
  position: relative;
  top: -0.5333333333vw;
  transition: background-position 200ms ease;
  width: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__company__list.-unstyled li a::after {
    background-size: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px);
    height: clamp(12.8px, 1.6666666667vw, 24px);
    top: clamp(-2px, -0.1388888889vw, -1.0666666667px);
    width: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-home__ir {
  padding: 16vw 0;
}
.p-home__ir .l-main__inner {
  padding-bottom: 0;
}
.p-home__ir .c-link a {
  margin: 0 auto;
}
@media print, screen and (min-width:768px) {
  .p-home__ir {
    padding: clamp(42.6666666667px, 5.5555555556vw, 80px) 0 clamp(60.8px, 7.9166666667vw, 114px);
    position: relative;
  }
  .p-home__ir .l-main__inner {
    position: relative;
  }
  .p-home__ir .c-link {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
}
.p-home__recruit {
  background: #fff url("../images/home/recruit_bg_smp.webp") no-repeat;
  background-size: 100% auto;
  padding-block: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-home__recruit {
    background: url("../images/home/recruit_bg.webp") no-repeat 0 100%;
    background-color: #fff;
    background-position: center;
    background-size: 100% auto;
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    margin: 0 clamp(13.8666666667px, 1.8055555556vw, 26px);
    overflow: hidden;
    padding-block: clamp(53.3333333333px, 6.9444444444vw, 100px) clamp(80px, 10.4166666667vw, 150px);
  }
}
@media print and (max-width: 836px), screen and (min-width:768px) and (max-width: 836px) {
  .p-home__recruit {
    background-size: cover;
  }
}
.p-home__recruit .l-main__inner {
  padding-bottom: 0;
}
.p-home__recruit__title {
  color: var(--clr-black-02);
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__recruit__title {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-home__recruit__text {
  font-size: 4.2666666667vw;
  line-height: 220%;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-home__recruit__text {
    font-size: clamp(9.6px, 1.25vw, 18px);
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
    width: clamp(190.9333333333px, 24.8611111111vw, 358px);
  }
}
.p-home__recruit .c-button1 {
  margin-top: 61.8666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home__recruit .c-button1 {
    margin-top: clamp(29.8666666667px, 3.8888888889vw, 56px);
  }
}
.p-home__recruit .c-button1 a {
  border: 1px solid #aecede;
}
@media print, screen and (min-width:768px) {
  .p-home__recruit .c-button1 a {
    margin-left: 0;
  }
}

.p-hero {
  background-color: #fff;
  height: 177.8666666667vw;
  padding: 0;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .p-hero {
    height: 53.6111111111vw;
  }
}
.p-hero__background {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.p-hero__background-layer {
  opacity: 0;
  position: absolute;
  will-change: transform, opacity;
}
@media print, screen and (max-width:767.98px) {
  .p-hero__background-layer {
    background-size: 250.6666666667vw auto;
    height: 200%;
    left: -88vw;
    top: 10.6666666667vw;
    transform-origin: 140vw 112.8vw;
    width: 200%;
  }
}
@media print, screen and (min-width:768px) {
  .p-hero__background-layer {
    background-size: 106.9444444444vw 83.3333333333vw;
    height: 200%;
    left: 0.6944444444vw;
    top: -20.8333333333vw;
    transform-origin: 59.7222222222vw 47.9166666667vw;
    width: 100%;
  }
}
.p-hero__inner {
  height: 100%;
  padding: 0;
  position: relative;
  width: 100%;
}
.p-hero__text {
  color: #00354f;
  filter: drop-shadow(0px 0px 4px rgba(255, 255, 255, 0.8));
  font-size: 11.2vw;
  font-style: normal;
  font-weight: 700;
  font-weight: 700;
  left: 6.9333333333vw;
  letter-spacing: var(--letter-spacing-l);
  line-height: 1.2;
  margin: 0;
  position: absolute;
  top: 45.8666666667vw;
  z-index: 10;
}
@media print, screen and (min-width:768px) {
  .p-hero__text {
    font-size: 5vw;
    left: 6.25vw;
    line-height: 1.3;
    top: 12.2916666667vw;
  }
}
.p-hero__text > span {
  overflow: hidden;
}
.p-hero__text > span:nth-child(1) {
  display: inline-block;
}
@media print, screen and (min-width:768px) {
  .p-hero__text > span:nth-child(1) {
    display: block;
  }
}
.p-hero__text > span:nth-child(2) {
  display: inline-block;
}
@media print, screen and (min-width:768px) {
  .p-hero__text > span:nth-child(2) {
    display: inline-block;
  }
}
.p-hero__text > span:nth-child(3) {
  display: inline-block;
}
@media print, screen and (min-width:768px) {
  .p-hero__text > span:nth-child(3) {
    display: inline-block;
  }
}
.p-hero__photo {
  aspect-ratio: 1/1;
  background-color: #8fd7f2;
  border-radius: 50%;
  opacity: 0;
  position: absolute;
  will-change: transform, opacity;
  z-index: 1;
}
.p-hero__photo > span {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 50%;
  display: block;
  height: 95%;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 95%;
}
.p-hero__photo.-photo1 {
  left: 78.4vw;
  top: 25.6vw;
  width: 32vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo1 {
    left: 59.3055555556vw;
    top: 3.4722222222vw;
    width: 13.8888888889vw;
  }
}
.p-hero__photo.-photo1 > span {
  background-image: url("../images/home/hero_photo01.webp");
  transform: translate(-51%, -49%);
}
.p-hero__photo.-photo2 {
  left: 78.4vw;
  top: 90.6666666667vw;
  width: 26.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo2 {
    left: 90.7638888889vw;
    top: 11.0416666667vw;
    width: 10.625vw;
  }
}
.p-hero__photo.-photo2 > span {
  background-image: url("../images/home/hero_photo02.webp");
  transform: translate(-50%, -52%);
}
.p-hero__photo.-photo3 {
  left: -5.3333333333vw;
  top: 153.6vw;
  width: 26.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo3 {
    left: 21.5972222222vw;
    top: 29.4444444444vw;
    width: 11.8055555556vw;
  }
}
.p-hero__photo.-photo3 > span {
  background-image: url("../images/home/hero_photo03.webp");
  transform: translate(-51%, -49%);
}
.p-hero__photo.-photo4 {
  left: 32.5333333333vw;
  top: 134.4vw;
  width: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo4 {
    left: 4.1666666667vw;
    top: 41.1111111111vw;
    width: 14.1666666667vw;
  }
}
.p-hero__photo.-photo4 > span {
  background-image: url("../images/home/hero_photo04.webp");
  transform: translate(-50%, -52%);
}
.p-hero__photo.-photo5 {
  left: -3.7333333333vw;
  top: 99.2vw;
  width: 37.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo5 {
    left: 45.6944444444vw;
    top: 33.1944444444vw;
    width: 16.6666666667vw;
  }
}
.p-hero__photo.-photo5 > span {
  background-image: url("../images/home/hero_photo05.webp");
  transform: translate(-51%, -49%);
}
.p-hero__photo.-photo6 {
  left: 66.6666666667vw;
  top: 140.2666666667vw;
  width: 42.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-hero__photo.-photo6 {
    left: 76.7361111111vw;
    top: 27.0833333333vw;
    width: 25vw;
  }
}
.p-hero__photo.-photo6 > span {
  background-image: url("../images/home/hero_photo06.webp");
  transform: translate(-50%, -52%);
}
.p-hero__circle {
  aspect-ratio: 1/1;
  background-color: #000;
  background-color: #00d0ff;
  border-radius: 50%;
  opacity: 0;
  position: absolute;
  will-change: transform;
}
@media print, screen and (max-width:767.98px) {
  .p-hero__circle.-circle1 {
    background-color: #fff;
    left: 57.0666666667vw;
    opacity: 0.5;
    top: 171.7333333333vw;
    width: 5.3333333333vw;
  }
  .p-hero__circle.-circle2 {
    left: 92.2666666667vw;
    opacity: 0.2;
    top: 73.6vw;
    width: 5.3333333333vw;
  }
  .p-hero__circle.-circle3 {
    left: 29.3333333333vw;
    opacity: 0.8;
    top: 151.4666666667vw;
    width: 2.1333333333vw;
  }
  .p-hero__circle.-circle4 {
    left: 3.7333333333vw;
    opacity: 0.4;
    top: 26.6666666667vw;
    width: 2.6666666667vw;
  }
  .p-hero__circle.-circle5 {
    left: 72vw;
    opacity: 1;
    top: 43.2vw;
    width: 2.6666666667vw;
  }
  .p-hero__circle.-circle6 {
    left: 66.4vw;
    opacity: 0.8;
    top: 94.4vw;
    width: 1.6vw;
  }
  .p-hero__circle.-circle7 {
    left: 92.8vw;
    opacity: 0.4;
    top: 133.8666666667vw;
    width: 2.6666666667vw;
  }
  .p-hero__circle.-circle8 {
    background-color: #fff;
    left: 51.7333333333vw;
    opacity: 0.4;
    top: 172.8vw;
    width: 2.6666666667vw;
  }
  .p-hero__circle.-circle9 {
    left: 25.6vw;
    opacity: 0.4;
    top: 97.0666666667vw;
    width: 2.6666666667vw;
  }
  .p-hero__circle.-circle10 {
    left: 2.1333333333vw;
    opacity: 0.8;
    top: 143.4666666667vw;
    width: 1.6vw;
  }
  .p-hero__circle.-circle11 {
    left: 62.4vw;
    opacity: 0.4;
    top: 21.8666666667vw;
    width: 3.7333333333vw;
  }
}
@media print, screen and (min-width:768px) {
  .p-hero__circle.-circle1 {
    left: 41.875vw;
    opacity: 1;
    top: 6.9444444444vw;
    width: 1.3888888889vw;
  }
  .p-hero__circle.-circle2 {
    left: 97.9861111111vw;
    opacity: 1;
    top: 27.9166666667vw;
    width: 1.0416666667vw;
  }
  .p-hero__circle.-circle3 {
    left: 81.5972222222vw;
    opacity: 0.6;
    top: 16.9444444444vw;
    width: 1.0416666667vw;
  }
  .p-hero__circle.-circle4 {
    left: 25.5555555556vw;
    opacity: 1;
    top: 46.5277777778vw;
    width: 1.0416666667vw;
  }
  .p-hero__circle.-circle5 {
    left: 97.0833333333vw;
    opacity: 0.6;
    top: 24.375vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle6 {
    left: 40.6944444444vw;
    opacity: 0.4;
    top: 39.7916666667vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle7 {
    left: 98.6805555556vw;
    opacity: 0.4;
    top: 51.3888888889vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle8 {
    left: 76.5972222222vw;
    opacity: 1;
    top: 33.75vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle9 {
    left: 92.0138888889vw;
    opacity: 1;
    top: 4.7222222222vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle10 {
    left: 45.5555555556vw;
    opacity: 1;
    top: 52.6388888889vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle11 {
    left: 73.4722222222vw;
    opacity: 1;
    top: 51.3888888889vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle12 {
    left: 93.2638888889vw;
    opacity: 0.8;
    top: 6.3888888889vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle13 {
    left: 14.6527777778vw;
    opacity: 1;
    top: 34.7222222222vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle14 {
    left: 2.4305555556vw;
    opacity: 0.4;
    top: 6.3194444444vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle15 {
    left: 28.125vw;
    opacity: 0.4;
    top: 48.75vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle16 {
    left: 35.4166666667vw;
    opacity: 0.3;
    top: 10.4166666667vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle17 {
    left: 55.2777777778vw;
    opacity: 0.6;
    top: 14.375vw;
    width: 0.625vw;
  }
  .p-hero__circle.-circle18 {
    left: 10.1388888889vw;
    opacity: 0.4;
    top: 29.7222222222vw;
    width: 1.3888888889vw;
  }
  .p-hero__circle.-circle19 {
    background-color: #fff;
    left: 79.5833333333vw;
    opacity: 0.6;
    top: 50.2777777778vw;
    width: 1.3888888889vw;
  }
  .p-hero__circle.-circle20 {
    left: 71.5277777778vw;
    opacity: 0.2;
    top: 4.8611111111vw;
    width: 1.3888888889vw;
  }
}

.p-feature-background {
  padding-top: 266.6666666667vw;
  position: absolute;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .p-feature-background {
    padding-top: clamp(512px, 66.6666666667vw, 960px);
  }
}
.p-feature-background__inner {
  height: 320vw;
  overflow: hidden;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__inner {
    height: clamp(800px, 104.1666666667vw, 1500px);
  }
}
.p-feature-background__inner:before {
  aspect-ratio: 75/26;
  background-image: url("../images/common/background.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  filter: blur(24px);
  height: auto;
  left: calc(50% - 106.6666666667vw);
  position: absolute;
  top: 106.6666666667vw;
  transform: rotate(-15deg);
  width: 213.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__inner:before {
    left: -20px;
    top: clamp(266.6666666667px, 34.7222222222vw, 500px);
    transform: none;
    width: calc(100% + 40px);
  }
}
.p-feature-background__ball {
  background-color: #437bd9;
  border-radius: 50%;
  display: block;
  height: 0;
  position: absolute;
  transform-origin: center;
  width: 0;
}
.p-feature-background__ball.-ball1 {
  filter: blur(4px);
  height: 3.7333333333vw;
  left: calc(50% + 22.6666666667vw);
  opacity: 0.8;
  top: 10.6666666667vw;
  width: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball1 {
    filter: blur(20px);
    height: clamp(55.4666666667px, 7.2222222222vw, 104px);
    left: calc(50% - clamp(362.6666666667px, 47.2222222222vw, 680px));
    opacity: 0.8;
    top: clamp(192px, 25vw, 360px);
    width: clamp(55.4666666667px, 7.2222222222vw, 104px);
  }
}
.p-feature-background__ball.-ball2 {
  filter: blur(2px);
  height: 2.1333333333vw;
  left: calc(50% + 37.3333333333vw);
  opacity: 1;
  top: 24vw;
  width: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball2 {
    filter: blur(4px);
    height: clamp(9.0666666667px, 1.1805555556vw, 17px);
    left: calc(50% + clamp(282.6666666667px, 36.8055555556vw, 530px));
    opacity: 0.6;
    top: clamp(69.3333333333px, 9.0277777778vw, 130px);
    width: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.p-feature-background__ball.-ball3 {
  filter: blur(20px);
  height: 14.6666666667vw;
  left: calc(50% - 53.3333333333vw);
  opacity: 0.8;
  top: 88vw;
  width: 14.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball3 {
    filter: blur(2px);
    height: clamp(5.3333333333px, 0.6944444444vw, 10px);
    left: calc(50% + clamp(352px, 45.8333333333vw, 660px));
    opacity: 1;
    top: clamp(117.3333333333px, 15.2777777778vw, 220px);
    width: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.p-feature-background__ball.-ball4 {
  filter: blur(2px);
  height: 1.6vw;
  left: calc(50% - 42.6666666667vw);
  opacity: 1;
  top: 146.6666666667vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball4 {
    filter: blur(2px);
    height: clamp(5.3333333333px, 0.6944444444vw, 10px);
    left: calc(50% - clamp(352px, 45.8333333333vw, 660px));
    opacity: 1;
    top: clamp(405.3333333333px, 52.7777777778vw, 760px);
    width: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.p-feature-background__ball.-ball5 {
  filter: blur(4px);
  height: 3.7333333333vw;
  left: calc(50% - 32vw);
  opacity: 0.8;
  top: 157.3333333333vw;
  width: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball5 {
    filter: blur(4px);
    height: clamp(13.8666666667px, 1.8055555556vw, 26px);
    left: calc(50% - clamp(304px, 39.5833333333vw, 570px));
    opacity: 0.6;
    top: clamp(448px, 58.3333333333vw, 840px);
    width: clamp(13.8666666667px, 1.8055555556vw, 26px);
  }
}
.p-feature-background__ball.-ball6 {
  filter: blur(20px);
  height: 16vw;
  left: calc(50% + 37.3333333333vw);
  opacity: 0.8;
  top: 160vw;
  width: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-feature-background__ball.-ball6 {
    filter: blur(16px);
    height: clamp(48px, 6.25vw, 90px);
    left: calc(50% + clamp(298.6666666667px, 38.8888888889vw, 560px));
    opacity: 0.6;
    top: clamp(416px, 54.1666666667vw, 780px);
    width: clamp(48px, 6.25vw, 90px);
  }
}

.p-home-background {
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 0;
}
.p-home-background.-show {
  display: block;
}
.p-home-background:before {
  aspect-ratio: 75/26;
  background-image: url("../images/common/background.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  filter: blur(24px);
  height: auto;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 213.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-home-background:before {
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
    width: calc(100% + 40px);
  }
}
.p-home-background__ball {
  background-color: #437bd9;
  border-radius: 50%;
  display: block;
  height: 0;
  position: absolute;
  transform-origin: center;
  width: 0;
}
.p-home-background__ball.-ball1 {
  filter: blur(4px);
  height: 3.7333333333vw;
  left: calc(50% + 37.3333333333vw);
  opacity: 0.8;
  top: 37.3333333333vw;
  width: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-home-background__ball.-ball1 {
    filter: blur(20px);
    height: clamp(55.4666666667px, 7.2222222222vw, 104px);
    left: calc(50% - clamp(362.6666666667px, 47.2222222222vw, 680px));
    opacity: 0.5;
    top: clamp(192px, 25vw, 360px);
    width: clamp(55.4666666667px, 7.2222222222vw, 104px);
  }
}
.p-home-background__ball.-ball2 {
  filter: blur(2px);
  height: 2.1333333333vw;
  left: calc(50% + 24vw);
  opacity: 1;
  top: 45.3333333333vw;
  width: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-home-background__ball.-ball2 {
    filter: blur(4px);
    height: clamp(9.0666666667px, 1.1805555556vw, 17px);
    left: calc(50% + clamp(282.6666666667px, 36.8055555556vw, 530px));
    opacity: 0.6;
    top: clamp(69.3333333333px, 9.0277777778vw, 130px);
    width: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.p-home-background__ball.-ball3 {
  filter: blur(20px);
  height: 14.6666666667vw;
  left: calc(50% - 53.3333333333vw);
  opacity: 0.8;
  top: 74.6666666667vw;
  width: 14.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home-background__ball.-ball3 {
    filter: blur(2px);
    height: clamp(5.3333333333px, 0.6944444444vw, 10px);
    left: calc(50% + clamp(352px, 45.8333333333vw, 660px));
    opacity: 1;
    top: clamp(117.3333333333px, 15.2777777778vw, 220px);
    width: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.p-home-background__ball.-ball4 {
  bottom: 40vw;
  filter: blur(10px);
  height: 10.6666666667vw;
  left: calc(50% + 32vw);
  opacity: 0.4;
  width: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-home-background__ball.-ball4 {
    bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
    filter: blur(16px);
    height: clamp(42.6666666667px, 5.5555555556vw, 80px);
    left: calc(50% + clamp(293.3333333333px, 38.1944444444vw, 550px));
    opacity: 0.4;
    width: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}

.p-knowledge {
  padding: 0 8vw 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: clamp(618.6666666667px, 80.5555555556vw, 1160px);
    padding: 0 0 clamp(96px, 12.5vw, 180px);
  }
}
.p-knowledge__title {
  padding: 0 8vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__title {
    margin: 0 auto clamp(42.6666666667px, 5.5555555556vw, 80px);
    max-width: clamp(618.6666666667px, 80.5555555556vw, 1160px);
    padding: 0;
  }
}
@media print, screen and (min-width:768px) {
  .p-knowledge__main {
    width: clamp(437.3333333333px, 56.9444444444vw, 820px);
  }
}
@media print, screen and (min-width:768px) {
  .p-knowledge__main .c-caselist {
    margin-top: 0;
  }
  .p-knowledge__main .c-caselist__item {
    width: calc((100% - clamp(24px, 3.125vw, 45px)) / 2);
  }
}
.p-knowledge__sub {
  margin-top: 21.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub {
    margin-top: 0;
    width: clamp(138.6666666667px, 18.0555555556vw, 260px);
  }
}
.p-knowledge__sub__search {
  align-items: center;
  background: var(--color-01_white);
  border: 1px solid var(--color-01_gray);
  border-radius: 1.0666666667vw;
  display: flex;
  margin-bottom: 10.6666666667vw;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__search {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-knowledge__sub__search input {
  background: transparent;
  padding: 2.6666666667vw 5.3333333333vw;
  width: calc(100% - 9.6vw);
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__search input {
    padding: clamp(5.3333333333px, 0.6944444444vw, 10px) clamp(10.6666666667px, 1.3888888889vw, 20px);
    width: calc(100% - clamp(19.2px, 2.5vw, 36px));
  }
}
.p-knowledge__sub__search button {
  background: url(../images/knowledge/icon_search.svg) no-repeat center center;
  background-size: 3.2vw 3.2vw;
  height: 9.6vw;
  overflow: hidden;
  text-indent: -99999px;
  width: 9.6vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__search button {
    background-size: clamp(6.4px, 0.8333333333vw, 12px) clamp(6.4px, 0.8333333333vw, 12px);
    height: clamp(19.2px, 2.5vw, 36px);
    width: clamp(19.2px, 2.5vw, 36px);
  }
}
.p-knowledge__sub__section {
  margin-bottom: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__section {
    margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-knowledge__sub__title {
  font-size: 4.5333333333vw;
  margin-bottom: 2.1333333333vw;
  margin-top: 0;
}
.p-knowledge__sub__title::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__title {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    font-weight: 500;
    margin-bottom: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.p-knowledge__sub__recent li {
  margin-bottom: 4vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__recent li {
    margin-bottom: clamp(8px, 1.0416666667vw, 15px);
  }
}
.p-knowledge__sub__recent li:last-child {
  margin-bottom: 0;
}
.p-knowledge__sub__recent li a {
  column-gap: 6.1333333333vw;
  display: flex;
  min-height: 10.9333333333vw;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__recent li a {
    column-gap: clamp(12.2666666667px, 1.5972222222vw, 23px);
    min-height: clamp(21.8666666667px, 2.8472222222vw, 41px);
  }
}
.p-knowledge__sub__recent li a figure {
  flex: 0 1 31.2vw;
  margin-top: 0;
  overflow: hidden;
  width: 100%;
}
.p-knowledge__sub__recent li a figure img {
  aspect-ratio: 370/222;
  object-fit: cover;
  transition: transform 200ms ease;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__recent li a figure {
    flex: 0 1 auto;
  }
}
.p-knowledge__sub__recent li a p {
  flex: 0 1 46.6666666667vw;
  font-size: 3.7333333333vw;
  margin-top: var(--leading-trim);
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__recent li a p {
    flex: 0 1 46.6666666667vw;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-weight: 500;
  }
}
@media (hover: hover) {
  .p-knowledge__sub__recent li a:hover figure img {
    transform: scale(1.1);
  }
}
.p-knowledge__sub .c-taglist {
  margin-top: 0;
}
.p-knowledge__sub__category li {
  border-bottom: 1px solid var(--color-01_gray);
}
.p-knowledge__sub__category li a {
  display: block;
  font-size: 3.2vw;
  line-height: var(--line-height-m);
  padding: 4.2666666667vw 13.3333333333vw 4.2666666667vw 0;
  position: relative;
  text-decoration: none;
}
.p-knowledge__sub__category li a::after {
  background-image: linear-gradient(90deg, var(--color-00_black), var(--color-00_black));
  background-position: 100% 100%;
  background-repeat: no-repeat;
  background-size: 0 1px;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  transition: background-size 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  width: 100%;
}
@media (hover: hover) {
  .p-knowledge__sub__category li a:hover::after {
    background-position: 0 100%;
    background-size: 100% 1px;
  }
  .p-knowledge__sub__category li a:hover .c-iconExt {
    background: var(--color-00_black);
  }
  .p-knowledge__sub__category li a:hover .c-iconExt svg path {
    fill: var(--color-01_white);
  }
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__category li a {
    align-items: center;
    display: flex;
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    font-weight: 500;
    height: 100%;
    padding: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(26.6666666667px, 3.4722222222vw, 50px) clamp(8.5333333333px, 1.1111111111vw, 16px) 0;
  }
}
.p-knowledge__sub__category li .c-iconExt {
  border: 1px solid #000;
  border-radius: 2.1333333333vw;
  height: 3.7333333333vw;
  position: absolute;
  right: 0;
  top: calc(50% - 1.8666666667vw);
  transition: 400ms backgorund ease;
  width: 8vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__category li .c-iconExt {
    height: clamp(7.4666666667px, 0.9722222222vw, 14px);
    top: calc(50% - clamp(3.7333333333px, 0.4861111111vw, 7px));
    width: clamp(16px, 2.0833333333vw, 30px);
  }
}
.p-knowledge__sub__category li .c-iconExt svg {
  height: 2.1333333333vw;
  left: calc(50% - 1.0666666667vw);
  position: absolute;
  top: calc(50% - 1.0666666667vw);
  width: 2.1333333333vw;
}
.p-knowledge__sub__category li .c-iconExt svg path {
  transition: 400ms fill ease;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__category li .c-iconExt svg {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    left: calc(50% - clamp(2.1333333333px, 0.2777777778vw, 4px));
    top: calc(50% - clamp(2.1333333333px, 0.2777777778vw, 4px));
    width: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}
.p-knowledge__sub__archive > li {
  border-bottom: 1px solid var(--color-01_gray);
}
.p-knowledge__sub__archive > li details[open] summary::after {
  transform: rotate(0);
}
.p-knowledge__sub__archive > li details summary {
  font-size: 3.2vw;
  list-style: none;
  padding: 4vw 0;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__archive > li details summary {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    padding: clamp(8px, 1.0416666667vw, 15px) 0;
  }
}
.p-knowledge__sub__archive > li details summary::before {
  background: var(--color-00_gray);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  right: 0;
  top: 6.6666666667vw;
  width: 3.4666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__archive > li details summary::before {
    top: clamp(13.3333333333px, 1.7361111111vw, 25px);
    width: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}
.p-knowledge__sub__archive > li details summary::after {
  background: var(--color-00_gray);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  right: 0;
  top: 6.6666666667vw;
  transform: rotate(90deg);
  width: 3.4666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__archive > li details summary::after {
    top: clamp(13.3333333333px, 1.7361111111vw, 25px);
    width: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}
.p-knowledge__sub__archive > li details .accordion-content {
  padding: 0 0 5.3333333333vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__archive > li details .accordion-content {
    padding: 0 0 clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.p-knowledge__sub__archive > li details .accordion-content ul {
  margin-top: 0;
}
.p-knowledge__sub__archive > li details .accordion-content ul li {
  font-size: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__archive > li details .accordion-content ul li {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.p-knowledge__sub__about p {
  font-size: 3.2vw;
  line-height: var(--line-height-l);
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__about p {
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
  }
}
.p-knowledge__sub__about .c-share {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-knowledge__sub__about .c-share {
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}

.p-post .c-secheader h1 {
  font-size: 6.4vw;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:768px) {
  .p-post .c-secheader h1 {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-post .l-main__inner2 .l-main__box {
  padding-top: 17.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-post .l-main__inner2 .l-main__box {
    padding-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.p-post .l-main__inner2 .l-main__box h4 {
  background: none;
  color: var(--clr-black-100);
  padding: 0;
}
.p-post .l-main__inner2 .l-main__box h4::before {
  content: none;
}

@media print, screen and (min-width:768px) {
  .p-seminar .c-news-list {
    margin-top: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-seminar .c-button1 {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .p-seminar .c-button1 {
    margin-top: clamp(29.3333333333px, 3.8194444444vw, 55px);
  }
}

.l-main .p-services-list {
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list {
    margin-top: clamp(85.3333333333px, 11.1111111111vw, 160px);
  }
}
.l-main .p-services-list__item {
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__item {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.l-main .p-services-list__item:first-child {
  margin-top: 0;
}
.l-main .p-services-list__item figure {
  aspect-ratio: 315/149;
  margin-bottom: 5.3333333333vw;
}
.l-main .p-services-list__item figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__item figure {
    aspect-ratio: 380/300;
    margin: 0;
    width: 31.6666666667%;
  }
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__block {
    width: 61.6666666667%;
  }
}
.l-main .p-services-list__block h2 {
  background: var(--color-00_black);
  border-radius: 1.0666666667vw;
  color: var(--color-01_white);
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 4.2666666667vw;
  margin-bottom: 3.2vw;
  margin-top: 0;
  padding: 0.2666666667vw 2.6666666667vw;
  width: fit-content;
}
.l-main .p-services-list__block h2::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__block h2 {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding: 0 clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.l-main .p-services-list__title {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-m);
  margin-bottom: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__title {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    margin-bottom: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.l-main .p-services-list__grid {
  margin-top: 3.2vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__grid {
    align-items: start;
    column-gap: clamp(16px, 2.0833333333vw, 30px);
    display: grid;
    grid-template-columns: auto clamp(149.3333333333px, 19.4444444444vw, 280px);
    grid-template-rows: 1fr 1fr;
    margin-top: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.l-main .p-services-list__grid p {
  font-size: 3.7333333333vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__grid p {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
  }
}
.l-main .p-services-list__grid .c-button1 {
  margin-top: 5.3333333333vw;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__grid .c-button1 {
    grid-column: 1;
    grid-row: 2;
    margin-top: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.l-main .p-services-list__companys {
  background: var(--color-01_white);
  margin: 3.2vw 2.6666666667vw 0;
  padding: 4.2666666667vw 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__companys {
    grid-column: 2/3;
    grid-row: 1/3;
    margin: 0;
    padding: clamp(8px, 1.0416666667vw, 15px);
  }
}
.l-main .p-services-list__companys ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0;
  row-gap: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-list__companys ul {
    row-gap: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}
.l-main .p-services-list__companys ul li {
  position: relative;
  width: 50%;
}
.l-main .p-services-list__companys ul li::after {
  background: linear-gradient(86deg, #ffc1b8 0%, #d79bb9 100%);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
}
.l-main .p-services-list__companys ul li:nth-child(2n)::after {
  content: none;
}

.l-main .p-services-stafflist {
  margin-bottom: 18.6666666667vw;
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    margin-bottom: clamp(96px, 12.5vw, 180px);
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 50px);
  }
}
.l-main .p-services-stafflist li {
  margin-bottom: 8vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist li {
    flex: 0 1 calc((100% - clamp(21.3333333333px, 2.7777777778vw, 40px) * 2) / 3);
    margin-bottom: 0;
  }
}
.l-main .p-services-stafflist li:last-child {
  margin-bottom: 0;
}
.l-main .p-services-stafflist li figure {
  aspect-ratio: 374/231;
  margin: 0 0 5.8666666667vw 0;
}
.l-main .p-services-stafflist li figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist li figure {
    margin: 0 0 clamp(10.6666666667px, 1.3888888889vw, 20px) 0;
  }
}
.l-main .p-services-stafflist li h4 {
  font-size: 4vw;
  margin-bottom: 1.3333333333vw;
  margin-top: var(--leading-trim);
  padding-left: 0;
}
.l-main .p-services-stafflist li h4::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist li h4 {
    font-size: clamp(13.8666666667px, 1.8055555556vw, 26px);
    font-weight: 500;
    margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
}
.l-main .p-services-stafflist li dl {
  color: var(--color-00_black);
  column-gap: 2.1333333333vw;
  display: flex;
  font-size: 2.9333333333vw;
  font-weight: 300;
  margin-bottom: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist li dl {
    column-gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
    margin-bottom: clamp(8px, 1.0416666667vw, 15px);
  }
}
.l-main .p-services-stafflist li p {
  font-size: 2.9333333333vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-stafflist li p {
    font-size: clamp(8px, 1.0416666667vw, 15px);
    font-weight: 500;
  }
}

.l-main .p-services-typelist {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist {
    margin-top: clamp(37.3333333333px, 4.8611111111vw, 70px);
  }
}
.l-main .p-services-typelist li {
  margin-bottom: 13.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist li {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
  }
}
.l-main .p-services-typelist li figure {
  aspect-ratio: 315/180;
  margin: 0;
  margin-bottom: 3.2vw;
}
.l-main .p-services-typelist li figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist li figure {
    aspect-ratio: 280/240;
    margin-bottom: 0;
    width: clamp(149.3333333333px, 19.4444444444vw, 280px);
  }
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block {
    width: clamp(469.3333333333px, 61.1111111111vw, 880px);
  }
}
.l-main .p-services-typelist__block h3 {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block h3 {
    margin-top: var(--leading-trim);
  }
}
.l-main .p-services-typelist__block dl {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block dl {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.l-main .p-services-typelist__block dl div {
  border-bottom: 1px solid var(--color-01_gray);
  margin-bottom: 5.3333333333vw;
  padding-bottom: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block dl div {
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
  .l-main .p-services-typelist__block dl div:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
.l-main .p-services-typelist__block dl div dt {
  color: var(--color-03_gray);
  font-size: 4vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block dl div dt {
    font-size: clamp(8px, 1.0416666667vw, 15px);
    text-align: center;
    width: clamp(37.3333333333px, 4.8611111111vw, 70px);
  }
}
.l-main .p-services-typelist__block dl div dd {
  font-size: 3.7333333333vw;
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:768px) {
  .l-main .p-services-typelist__block dl div dd {
    font-size: clamp(9.0666666667px, 1.1805555556vw, 17px);
    margin-top: 0;
    width: clamp(394.6666666667px, 51.3888888889vw, 740px);
  }
}

.p-about-block {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-about-block {
    display: flex;
    justify-content: space-between;
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}
.p-about-block figure {
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-about-block figure {
    width: clamp(304px, 39.5833333333vw, 570px);
  }
}
@media print, screen and (min-width:768px) {
  .p-about-block__info {
    width: clamp(304px, 39.5833333333vw, 570px);
  }
}
.p-about-block__info .c-info {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-about-block__info .c-info {
    margin-top: 0;
  }
}
.p-about-block__access {
  margin-top: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-about-block__access {
    margin-top: clamp(64px, 8.3333333333vw, 120px);
  }
}
.p-about-block__access .c-headline1 {
  margin-top: 0;
}
.p-about-block__access__map {
  aspect-ratio: 1200/350;
}
.p-about-block__access__map iframe {
  height: 100%;
  width: 100%;
}

.p-about-access {
  margin-top: 18.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-about-access {
    margin-top: clamp(64px, 8.3333333333vw, 120px);
  }
}
.p-about-access h2 {
  margin-top: 0;
}
.p-about-access__map {
  aspect-ratio: 1200/350;
  margin-top: 8vw;
}
.p-about-access__map iframe {
  height: 100%;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-about-access__map {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

.p-contact h1.-download {
  font-size: 6.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-contact h1.-download {
    font-size: clamp(24px, 3.125vw, 45px);
  }
}
.p-contact__inner {
  background: #fff;
  margin-top: 16vw;
  padding: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-contact__inner {
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
    padding: clamp(42.6666666667px, 5.5555555556vw, 80px) clamp(80px, 10.4166666667vw, 150px);
  }
}
.p-contact__inner p {
  margin-bottom: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-contact__inner p {
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
  }
}
.p-contact .c-button1 {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .p-contact .c-button1 {
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}
@media print, screen and (min-width:768px) {
  .p-contact__wrap {
    display: flex;
    justify-content: space-between;
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
  }
}
.p-contact__block {
  margin-bottom: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-contact__block {
    margin-bottom: 0;
    width: clamp(266.6666666667px, 34.7222222222vw, 500px);
  }
}
@media print, screen and (min-width:768px) {
  .p-contact__block h2 {
    font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
    margin-top: 0;
  }
}
.p-contact__form {
  background: #fff;
  padding: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-contact__form {
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px);
    width: clamp(320px, 41.6666666667vw, 600px);
  }
}
.p-contact__document {
  display: flex;
  flex-wrap: wrap;
  gap: 3.4666666667vw 3.2vw;
}
@media print, screen and (min-width:768px) {
  .p-contact__document {
    gap: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-contact__document li {
  width: calc((100% - 3.2vw) / 2);
}
@media print, screen and (min-width:768px) {
  .p-contact__document li {
    width: calc((100% - clamp(10.6666666667px, 1.3888888889vw, 20px)) / 2);
  }
}

.p-news-search {
  margin-bottom: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-news-search {
    margin-bottom: clamp(25.6px, 3.3333333333vw, 48px);
  }
}

.p-news-search__title {
  margin-top: 0;
}
.p-news-search__title::before {
  top: 0.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-news-search__title::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(1.0666666667px, 0.1388888889vw, 2px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.p-news-search__category h2 {
  color: #001722;
  font-size: 4.8vw;
  font-weight: 700;
  margin-bottom: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-news-search__category h2 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
  }
}
.p-news-search__category .c-filter-btns.-unstyled li {
  width: calc((100% - 2.1333333333vw) / 2);
}
@media print, screen and (min-width:768px) {
  .p-news-search__category .c-filter-btns.-unstyled li {
    flex: 0 0 auto;
    width: auto;
  }
}
.p-news-search__category .c-filter-btns.-unstyled li a {
  align-items: center;
  background-color: #ffffff;
  border: 1px solid #aec6de;
  border-radius: 8.5333333333vw;
  color: #001722;
  display: flex;
  font-size: 3.7333333333vw;
  font-weight: 700;
  justify-content: center;
  padding: 2.1333333333vw 4.2666666667vw;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media print, screen and (min-width:768px) {
  .p-news-search__category .c-filter-btns.-unstyled li a {
    border-radius: clamp(17.0666666667px, 2.2222222222vw, 32px);
    font-size: clamp(9.6px, 1.25vw, 18px);
    min-width: 50.6666666667vw;
    min-width: clamp(101.3333333333px, 13.1944444444vw, 190px);
    padding: clamp(6.9333333333px, 0.9027777778vw, 13px) clamp(9.6px, 1.25vw, 18px);
  }
}
.p-news-search__category .c-filter-btns.-unstyled li a.current {
  background-color: #0b9de3;
  border-color: #0b9de3;
  color: #ffffff;
}
@media (hover: hover) {
  .p-news-search__category .c-filter-btns.-unstyled li a {
    transition: color 200ms, background-color 200ms, border-color 200ms;
  }
  .p-news-search__category .c-filter-btns.-unstyled li a:hover {
    background-color: var(--clr-primary-100);
    border-color: var(--clr-primary-100);
    color: var(--clr-white);
  }
}

.p-news-list-card {
  border: 1px solid #aec6de;
  border-radius: 4.2666666667vw;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 4.2666666667vw;
  height: 100%;
  overflow: hidden;
  padding: 4.2666666667vw 4.2666666667vw 6.4vw;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card {
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    gap: clamp(8.5333333333px, 1.1111111111vw, 16px);
    padding: clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(8.5333333333px, 1.1111111111vw, 16px) clamp(12.8px, 1.6666666667vw, 24px);
  }
}
@media (hover: hover) {
  .p-news-list-card {
    transition: color 200ms, background-color 200ms;
  }
  .p-news-list-card:hover {
    background-color: #f0f8ff;
    border-color: #0b9de3;
  }
}

.p-news-list-card__thumbnail {
  aspect-ratio: 1920/1080;
  overflow: hidden;
  width: 100%;
}
.p-news-list-card__thumbnail img {
  border-radius: 2.1333333333vw;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__thumbnail img {
    border-radius: clamp(4.2666666667px, 0.5555555556vw, 8px);
  }
}

.p-news-list-card__content {
  display: flex;
  flex-direction: column;
  gap: 4.2666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__content {
    gap: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.p-news-list-card__info {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: space-between;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__info {
    align-items: center;
    flex-direction: row;
    gap: 8px;
  }
}

.p-news-list-card__info__time {
  color: var(--clr-black-02);
  font-family: "Roboto", sans-serif;
  font-size: 3.2vw;
  font-style: normal;
  font-weight: 300;
  letter-spacing: var(--letter-spacing-l);
  line-height: 1.8;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__info__time {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}

.p-news-list-card__info__category {
  background-color: #ffffff;
  border: 1px solid #aec6de;
  color: #8a9fb5;
  display: inline-block;
  font-size: 3.2vw;
  line-height: 1;
  padding: 4px 8px;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__info__category {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    padding: 8px 12px;
  }
}

.p-news-list-card__title {
  color: #0b9de3;
  font-size: 4.2666666667vw;
  font-weight: 700;
  letter-spacing: var(--letter-spacing-m);
  line-height: 1.4;
}
@media print, screen and (min-width:768px) {
  .p-news-list-card__title {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}

.p-news-detail__header-meta {
  align-items: flex-start;
  align-items: center;
  display: flex;
  gap: 2.6666666667vw;
  justify-content: flex-start;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-meta {
    gap: clamp(16px, 2.0833333333vw, 30px);
  }
}
.p-news-detail__header-date {
  color: var(--clr-black-02);
  font-size: 3.7333333333vw;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-date {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.p-news-detail__header-categories {
  align-items: center;
  display: flex;
  gap: 2.6666666667vw;
  margin: -1.0666666667vw 0 0 0;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-categories {
    gap: clamp(16px, 2.0833333333vw, 30px);
    margin: clamp(-3px, -0.2083333333vw, -1.6px) 0 0 0;
  }
}
.p-news-detail__header-categories li {
  margin: 0;
  padding: 0;
}
.p-news-detail__header-categories li:before {
  content: none;
}
.p-news-detail__header-categories li a {
  background-color: #ffffff;
  border: 1px solid #aec6de;
  color: #8a9fb5;
  display: inline-block;
  font-size: 3.2vw;
  line-height: 1;
  padding: 4px 8px;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-categories li a {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    padding: 8px 12px;
  }
}
@media (hover: hover) {
  .p-news-detail__header-categories li a {
    transition: border-color 200ms ease, color 200ms ease;
  }
  .p-news-detail__header-categories li a:hover {
    border-color: var(--clr-primary-100);
    color: var(--clr-primary-100);
  }
}
.p-news-detail__header-title {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 5.3333333333vw;
  padding-left: 6.9333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-title {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.p-news-detail__header-title::before {
  background: var(--clr-secondary-100);
  border-radius: 4.2666666667vw;
  content: "";
  display: block;
  height: 7.4666666667vw;
  left: 0;
  position: absolute;
  top: 1.3333333333vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-title::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.p-news-detail__header-sns {
  align-items: center;
  display: flex;
  gap: 2.6666666667vw;
  justify-content: flex-start;
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-sns {
    gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-news-detail__header-sns a {
  height: 8.5333333333vw;
  width: 8.5333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header-sns a {
    height: clamp(17.0666666667px, 2.2222222222vw, 32px);
    width: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.p-news-detail__header-sns a[target=_blank]:after {
  content: none;
}
@media (hover: hover) {
  .p-news-detail__header-sns a {
    transition: opacity 200ms ease;
  }
  .p-news-detail__header-sns a:hover {
    opacity: 0.7;
  }
}
.p-news-detail__body {
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__body {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-news-detail__body *:first-child {
  margin-top: 0;
}
.p-news-detail__footer {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__footer {
    margin-top: clamp(53.3333333333px, 6.9444444444vw, 100px);
  }
}
.p-news-detail__footer .c-link {
  margin: 0 auto;
  width: fit-content;
}

.p-404 {
  background: #f2f7fa;
  padding: 0 8vw;
  padding-bottom: 40vw;
  padding-top: 26.6666666667vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .p-404 {
    padding: 0;
    padding-bottom: clamp(74.6666666667px, 9.7222222222vw, 140px);
    padding-top: clamp(74.6666666667px, 9.7222222222vw, 140px);
  }
}
.p-404 h1 {
  color: var(--clr-primary-100);
  font-family: "Roboto", sans-serif;
  font-size: 10.6666666667vw;
  font-style: normal;
  font-weight: 300;
  font-weight: 200;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .p-404 h1 {
    font-size: clamp(32px, 4.1666666667vw, 60px);
  }
}
.p-404 h2 {
  font-size: 4.8vw;
  font-weight: 500;
  margin-top: 0;
}
.p-404 h2::before {
  content: none;
}
@media print, screen and (min-width:768px) {
  .p-404 h2 {
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
  .p-404 h2 br {
    display: none;
  }
}
.p-404 p {
  margin-top: 21.3333333333vw;
  text-align: left;
}
.p-404 p br {
  display: none;
}
@media print, screen and (min-width:768px) {
  .p-404 p {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
    margin-top: clamp(42.6666666667px, 5.5555555556vw, 80px);
    text-align: center;
  }
  .p-404 p br {
    display: block;
  }
}

@media print, screen and (min-width:768px) {
  .p-ir__link {
    font-family: "Roboto", sans-serif;
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
    font-style: normal;
    font-weight: 300;
    font-weight: 400;
    text-align: center;
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__news {
    column-gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: clamp(22.9333333333px, 2.9861111111vw, 43px);
  }
}
.p-ir__news__block {
  background: #f2f7fa;
  border-radius: 1.0666666667vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__news__block {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(21.3333333333px, 2.7777777778vw, 40px) clamp(32px, 4.1666666667vw, 60px);
  }
}
@media print, screen and (max-width:767.98px) {
  .p-ir__news__block + .p-ir__news__block {
    margin-top: 8vw;
  }
}
.p-ir__news__block h4 {
  margin-top: 0;
}
.p-ir__news__block .c-news-list {
  border-bottom: 0.2666666667vw solid #aecede;
  border-top: 0.2666666667vw solid #aecede;
  padding-bottom: 5.3333333333vw;
  padding-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__news__block .c-news-list {
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1px);
    padding-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__news__block .eir {
    margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-ir__news__block .c-link a {
  margin-left: auto;
}
.p-ir__management h2 {
  column-gap: 4.8vw;
  font-size: 4.8vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__management h2 {
    column-gap: clamp(10.6666666667px, 1.3888888889vw, 20px);
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  }
}
.p-ir__management h2::before {
  border-radius: 0.5333333333vw;
  height: 4.8vw;
  top: 1.0666666667vw;
  width: 1.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__management h2::before {
    border-radius: clamp(1.0666666667px, 0.1388888889vw, 2px);
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}
.p-ir__management .c-box2 {
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__management .c-box2 {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__management .c-box2 h4 {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.p-ir__nav01 {
  margin-top: 16vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 {
    margin-top: clamp(32px, 4.1666666667vw, 60px);
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01.-col-2 > ul.-unstyled {
    column-gap: clamp(22.4px, 2.9166666667vw, 42px);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01.-center {
    margin-inline: clamp(59.2px, 7.7083333333vw, 111px);
  }
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled {
    column-gap: clamp(22.4px, 2.9166666667vw, 42px);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-ir__nav01 > ul.-unstyled > li {
  background: #f2f7fa;
  border-radius: 1.0666666667vw;
  margin-top: 8vw;
  padding: 8vw 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled > li {
    border-radius: clamp(8.5333333333px, 1.1111111111vw, 16px);
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    margin-top: 0;
    padding: clamp(21.3333333333px, 2.7777777778vw, 40px);
  }
}
.p-ir__nav01 > ul.-unstyled > li h3 {
  column-gap: 3.7333333333vw;
  display: flex;
  font-size: 4.8vw;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled > li h3 {
    align-items: center;
    column-gap: clamp(7.4666666667px, 0.9722222222vw, 14px);
    font-size: clamp(9.6px, 1.25vw, 18px);
  }
}
.p-ir__nav01 > ul.-unstyled > li h3::before {
  content: "";
  display: block;
  height: 9.6vw;
  position: relative;
  top: -0.8vw;
  width: 9.6vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled > li h3::before {
    height: clamp(19.2px, 2.5vw, 36px);
    top: 0;
    width: clamp(19.2px, 2.5vw, 36px);
  }
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon01::before {
  background: url("../images/ir/icon01.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon02::before {
  background: url("../images/ir/icon02.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon03::before {
  background: url("../images/ir/icon03.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon04::before {
  background: url("../images/ir/icon04.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon05::before {
  background: url("../images/ir/icon05.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon06::before {
  background: url("../images/ir/icon06.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon07::before {
  background: url("../images/ir/icon07.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li h3.-icon08::before {
  background: url("../images/ir/icon08.svg") no-repeat;
  background-size: contain;
}
.p-ir__nav01 > ul.-unstyled > li .c-list1 {
  margin-top: 5.3333333333vw !important;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled > li .c-list1 {
    margin-top: clamp(16px, 2.0833333333vw, 30px) !important;
  }
}
.p-ir__nav01 > ul.-unstyled > li p {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:768px) {
  .p-ir__nav01 > ul.-unstyled > li p {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 20px);
  }
}
.p-ir__nav01 > ul.-unstyled > li .c-link {
  justify-content: flex-end;
}
.p-ir__cta .c-button1 {
  margin-top: 0;
}

body.sitemap .l-main p a,
body.sitemap .l-main ul a {
  color: var(--clr-black);
  text-decoration: none;
}
body.sitemap .l-main p a:hover,
body.sitemap .l-main ul a:hover {
  color: var(--clr-primary-100);
}
body.sitemap .l-main p li::before,
body.sitemap .l-main ul li::before {
  background-color: var(--clr-black);
  transition: 0.2s background-color ease;
}
body.sitemap .l-main p li:has(a:hover):before,
body.sitemap .l-main ul li:has(a:hover):before {
  background-color: var(--clr-primary-100);
}

.privacy .l-main ul > li::before,
.privacypolicy .l-main ul > li::before,
.cloud_security .l-main ul > li::before,
.securitypolicy .l-main ul > li::before,
.cookie_policy .l-main ul > li::before,
.terms_of-use .l-main ul > li::before {
  background-color: var(--clr-black);
}
.privacy .l-main ul > li > ul > li::before,
.privacypolicy .l-main ul > li > ul > li::before,
.cloud_security .l-main ul > li > ul > li::before,
.securitypolicy .l-main ul > li > ul > li::before,
.cookie_policy .l-main ul > li > ul > li::before,
.terms_of-use .l-main ul > li > ul > li::before {
  border-color: var(--clr-black);
}
.privacy .l-main ul > li > ul > li > ul > li::before,
.privacypolicy .l-main ul > li > ul > li > ul > li::before,
.cloud_security .l-main ul > li > ul > li > ul > li::before,
.securitypolicy .l-main ul > li > ul > li > ul > li::before,
.cookie_policy .l-main ul > li > ul > li > ul > li::before,
.terms_of-use .l-main ul > li > ul > li > ul > li::before {
  background-color: var(--clr-black);
}

/* ==========================================================================
E-IR
========================================================================== */
/* --------------------------------------------------------
* 全体設定
* eirBlock
* eir年タイトル
* EIRリスト
* Year Controller
* Newstype Controller
* noDataText
* Note
* Governance
* IR Calendar
* share
* RSS
* Matrix
* Accordion
* サムネ専用構造用
* テキスト機能
* エリアカスタマイズ用
* -------------------------------------------------------*/
/* --------------------------------------------------------
* 全体設定
* -------------------------------------------------------*/
.eir *,
.eirTarget_zipDownload *,
.eirTarget_pdfNote *,
.eirTarget_pnexNote *,
.eirTarget_yuhoNote *,
.eirTarget_rss_59846 *,
.eirTarget_latestFiscalYm_eirSampleArea *,
.eirTarget_latestQuarter_eirSampleArea *,
.eir_controller_year *,
.eir_controller_newstype *,
.eirTarget_calendarImg * {
  box-sizing: border-box;
}

/* --------------------------------------------------------
* eirBlock
* -------------------------------------------------------*/
.s_eirBlock {
  display: block;
}

.s_eirBlock:last-child {
  padding-bottom: 0;
}

.s_eirBlock:first-child {
  margin-top: 0;
}

.s_eirQuarterBlock {
  margin-bottom: 16vw;
  margin-top: 8vw;
}
@media print, screen and (min-width:768px) {
  .s_eirQuarterBlock {
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
    margin-top: clamp(16px, 2.0833333333vw, 30px);
  }
}

.s_eirBlock:last-child .s_eirQuarterBlock {
  margin-bottom: 0;
}

/* --------------------------------------------------------
* eir年タイトル
* -------------------------------------------------------*/
.s_eirHeading {
  font-size: 6.4vw;
  font-weight: 700;
  padding-left: 6.9333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .s_eirHeading {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.s_eirHeading::before {
  background: var(--clr-secondary-100);
  border-radius: 4.2666666667vw;
  content: "";
  display: block;
  height: 7.4666666667vw;
  left: 0;
  position: absolute;
  top: 1.3333333333vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .s_eirHeading::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

/* --------------------------------------------------------
* EIRリスト
* -------------------------------------------------------*/
/*　EIRリスト > アイテム
--------------------------------------------------------*/
.s_eirList {
  list-style: none;
  margin: 0;
  padding: 0;
}

.s_eirList li {
  list-style: none;
}
.s_eirList li:before {
  content: none;
}

.s_eirList_item {
  border-top: 1px solid #aecede;
  padding-left: 0;
}

.s_eirList_item:first-child {
  border: 0;
  margin-top: 0;
  padding-top: 0;
}

/* オールリンク用 */
.s_eirItem {
  display: flex;
  padding: 20px 0;
}

@media print, screen and (max-width:767.98px) {
  .s_eirItem {
    flex-wrap: wrap;
  }
}
/* テキストリンク用 */
.s_eirList_item {
  display: flex;
  margin-top: 20px;
  padding-top: 20px;
}

.s_eirList_item {
  display: flex;
}

.s_eirList_item-all_link {
  display: block;
}

@media print, screen and (max-width:767.98px) {
  .s_eirList_item {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
/*　EIRリスト > アイテム（訂正）
--------------------------------------------------------*/
.eirItem_child {
  border-top: 0;
  margin-top: 0;
}
.eirItem_child:has(.s_eirItem) {
  border-top: 1px solid #aecede;
}
.eirItem_child .eirItem_head {
  visibility: hidden;
}
.eirItem_child .s_eirModule_titleBox {
  margin-left: 20px;
  padding-left: 20px;
  position: relative;
}
.eirItem_child .s_eirModule_titleBox::before {
  border: 1px solid #000;
  border-right: none;
  border-top: none;
  content: "";
  display: inline-block;
  height: 0.4em;
  left: 0;
  position: absolute;
  top: 0.2rem;
  width: 0.5em;
}

@media print, screen and (max-width:767.98px) {
  .eirItem_child .eirItem_head {
    display: none;
  }
  .eirItem_child .s_eirModule_titleBox {
    margin: 0;
  }
}
/*　EIRリスト > アイテム　付与クラス一覧
--------------------------------------------------------*/
/*
.cat-news-tanshin,
.cat-news-yuho,
.cat-news-press,
.cat-news-pr,
.cat-news-announcement,
.cat-news-ir_material,
.cat-news-ir_material_for_fiscal_ym,
.cat-news-cgr_ds,
.cat-news-cgr_do,
.cat-news-gms,
.cat-news-custom_type {
}
.cat-sub-announcement,
.cat-sub-ir_material,
.cat-sub-ir_material_for_fiscal_ym,
.cat-sub-custom_type1,
.cat-sub-id0 {
}
.cat-num-1,
.cat-num-2,
.cat-num-3,
.cat-num-4 {
}
.s_eirList_item-url,
.s_eirList_item-pdf,
.s_eirList_item-xlsx,
.s_eirList_item-xls,
.s_eirList_item-docx,
.s_eirList_item-doc,
.s_eirList_item-pptx,
.s_eirList_item-ppt,
.s_eirList_item-zip,
.s_eirList_item-space {
}
.s_eirList_item-q_100,
.s_eirList_item-q_30,
.s_eirList_item-q_20,
.s_eirList_item-q_10,
.s_eirList_item-q_0 {
}
.s_eirList_item-thum_true,
.s_eirList_item-thum_false {
}
*/
/*　EIRリスト > 日付
--------------------------------------------------------*/
.s_eirModule_date {
  color: #5f7075;
  flex-shrink: 0;
  font-size: 3.7333333333vw;
  font-weight: 700;
  white-space: nowrap;
  width: 11em;
}
@media print, screen and (min-width:768px) {
  .s_eirModule_date {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}

/*　EIRリスト > サムネイル
--------------------------------------------------------*/
.s_eirModule_thumbnail {
  flex-shrink: 0;
  margin: 0 20px 0 0;
  padding: 0;
  width: 200px;
}

.s_eirModule_thumbnail_img {
  border: 1px solid #aecede;
  height: auto;
  margin: 0;
  width: 100%;
}

@media print, screen and (max-width:767.98px) {
  .s_eirModule_thumbnail {
    margin: 10px 0 0;
    width: 100%;
  }
}
/*　EIRリスト > カテゴリアイコン
--------------------------------------------------------*/
.s_eirModule_category {
  flex-shrink: 0;
}
@media print, screen and (max-width:767.98px) {
  .s_eirModule_category {
    align-items: center;
    display: flex;
  }
}
@media print, screen and (min-width:768px) {
  .s_eirModule_category {
    align-items: flex-start;
    display: flex;
    margin-right: 1.2em;
  }
}

.s_eirModule_category_icon {
  border: 1px solid var(--clr-primary-100);
  border-radius: 1.0666666667vw;
  color: var(--clr-primary-100);
  display: inline-block;
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 1;
  padding: 1.0666666667vw 3.2vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .s_eirModule_category_icon {
    border-radius: clamp(2.1333333333px, 0.2777777778vw, 4px);
    font-size: clamp(6.4px, 0.8333333333vw, 12px);
    margin-top: clamp(1.6px, 0.2083333333vw, 3px);
    padding: clamp(2.1333333333px, 0.2777777778vw, 4px) clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(55.4666666667px, 7.2222222222vw, 104px);
  }
}

/* ニュースタイプ */
/* .cat-news-●● .s_eirModule_category_icon {
    background-color: #000;
} */
/* サブタイプ */
/* .cat-sub-●● .s_eirModule_category_icon {
    background-color: #000;
} */
/*　EIRリスト > カテゴリアイコン（画像）
--------------------------------------------------------*/
.s_eirModule_category_image {
  display: none;
}

/*　EIRリスト > タイトルBOX
--------------------------------------------------------*/
.s_eirModule_titleBox {
  display: block;
  flex-grow: 1;
  font-size: 3.7333333333vw;
  font-weight: 500;
}
@media print, screen and (min-width:768px) {
  .s_eirModule_titleBox {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}

@media print, screen and (max-width:767.98px) {
  .s_eirModule_titleBox {
    margin-top: 10px;
    width: 100%;
  }
}
.s_titleBox_title {
  /* display: inline;
  display: none; */
}

/*　EIRリスト > タイトル（書類名）
--------------------------------------------------------*/
.s_eirModule_title {
  display: inline;
}

/*　EIRリスト > 固定文言
--------------------------------------------------------*/
.s_eirModule_title_static {
  display: inline;
  /*display: none;*/
}

.s_eirModule_title_static::before {
  content: "";
  display: inline;
}

/*　EIRリスト > アイテムタイプアイコン
--------------------------------------------------------*/
/* CSSアイコン */
.s_eirModule_type_icon {
  display: inline-block;
}

.s_eirModule_type_figure {
  display: none;
}

/* 画像アイコン */
/* .s_eirModule_type_icon {
    display: none;
}
.s_eirModule_type_figure {
    display: inline-block;
} */
.s_eirModule_type_icon {
  color: #fff;
  font-size: 10px;
  line-height: 15px;
  margin-left: 5px;
  padding: 0px 10px;
  vertical-align: middle;
}

/*　EIRリスト > アイテムタイプアイコン（CSS）
--------------------------------------------------------*/
.s_eirModule_type_icon-pdf {
  background-color: #ee3d23;
}

.s_eirModule_type_icon-url {
  background-color: #2196f3;
  display: none;
}

.s_eirModule_type_icon-doc,
.s_eirModule_type_icon-docx {
  background-color: #3f51b5;
  display: none;
}

.s_eirModule_type_icon-xls,
.s_eirModule_type_icon-xlsx {
  background-color: #4caf50;
  display: none;
}

.s_eirModule_type_icon-ppt,
.s_eirModule_type_icon-pptx {
  background-color: #ff5722;
  display: none;
}

.s_eirModule_type_icon-zip {
  background-color: #607d8b;
  display: none;
}

.s_eirModule_type_icon-space {
  display: none;
}

/*　EIRリスト > アイテムタイプアイコン（画像）
--------------------------------------------------------*/
.s_eirModule_type_figure {
  margin: 0;
}

.s_eirModule_type_figure_image {
  height: 15px;
  margin-left: 5px;
  vertical-align: middle;
}

.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-doc),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-docx),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-xls),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-xlsx),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-ppt),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-pptx),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-zip),
.s_eirModule_type_figure:has(.s_eirModule_type_figure_image-space) {
  display: none;
}

/* 疑似要素アイコン表示 */
/*
.s_eirList_item-url .s_eirModule_type_figure::before {
}
.s_eirList_item-pdf .s_eirModule_type_figure::before {
}
*/
/*　EIRリスト > サイズ表示（KB）
--------------------------------------------------------*/
/*　EIRリスト > NEWアイコン
--------------------------------------------------------*/
.s_eirModule_new_icon {
  align-items: center;
  background-color: #f90;
  color: #fff;
  display: inline-flex;
  font-size: 10px;
  justify-content: center;
  line-height: 15px;
  padding: 0px 10px;
  text-align: center;
  vertical-align: middle;
}

/*　EIRリスト > NEWアイコン（画像）
--------------------------------------------------------*/
.s_eirModule_new_image {
  display: none;
}

/*　EIRリスト > テキスト
--------------------------------------------------------*/
/*　EIRリスト > コメント
--------------------------------------------------------*/
.s_eirModule_comment {
  font-size: 80%;
  margin-top: 10px;
}

/*　基本パターン（タイトルBOX内を表示）
--------------------------------------------------------*/
.s_titleBox_type,
.s_titleBox_size,
.s_titleBox_page_num,
.s_titleBox_new {
  display: inline;
}

.s_titleBox_text,
.s_titleBox_comment {
  display: block;
}

.s_titleBox_title_link_static,
.s_titleBox_title_text_static {
  display: none;
}

.s_eirList_item_type,
.s_eirList_item_size,
.s_eirList_item_page_num,
.s_eirList_item_new,
.s_eirList_item_text,
.s_eirList_item_comment {
  display: none;
}

/* EIRリスト > 表示順変更
* -------------------------------------------------------*/
.s_eirList_item_date {
  order: 1;
}

.s_eirList_item_thumbnail {
  order: 2;
}

.s_eirList_item_category {
  order: 3;
}

.s_eirList_item_category_second {
  order: 4;
}

.s_eirList_item_titleBox {
  order: 5;
}

.s_eirList_item_type {
  order: 6;
}

.s_eirList_item_size {
  order: 7;
}

.s_eirList_item_page_num {
  order: 8;
}

.s_eirList_item_new {
  order: 9;
}

.s_eirList_item_text {
  order: 10;
}

.s_eirList_item_comment {
  order: 11;
}

/* --------------------------------------------------------
* Year Controller
* -------------------------------------------------------*/
/* プルダウン
* -------------------------------------------------------*/
.s_yearController {
  border: 1px solid #d4e0ed;
  border-radius: 4px;
  position: relative;
  width: fit-content;
}
@media print, screen and (max-width:767.98px) {
  .s_yearController {
    margin-bottom: 8vw;
    margin-top: 8vw;
  }
}
@media print, screen and (min-width:768px) {
  .s_yearController {
    margin-bottom: clamp(16px, 2.0833333333vw, 30px);
  }
}
.s_yearController::before {
  background: url(../images/common/icon_accordion.svg) no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 11px;
}

.s_eirSelect {
  appearance: none;
  background-color: transparent;
  border: none;
  max-width: 100%;
  padding: 10px 40px 10px 10px;
}

/* アンカー
* -------------------------------------------------------*/
.s_eirAnchor {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.s_eirAnchor a::before {
  border: 5px solid transparent;
  border-top: 5px solid #333;
  content: "";
  display: inline-block;
  margin-right: 5px;
}

@media print, screen and (max-width:767.98px) {
  .s_eirAnchor {
    gap: 10px 20px;
    width: 100%;
  }
  .s_eirAnchor li {
    width: calc((100% - 60px) / 4);
  }
  .s_eirAnchor li a {
    width: auto;
  }
}
/* --------------------------------------------------------
* Newstype Controller
* -------------------------------------------------------*/
.s_newsTypeController {
  margin-bottom: 8vw;
}
@media print, screen and (min-width:768px) {
  .s_newsTypeController {
    margin-bottom: clamp(32px, 4.1666666667vw, 60px);
  }
}

.s_eirTab {
  display: flex;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.s_eirTab li {
  margin: 0;
  padding: 0;
  width: 100%;
}
.s_eirTab li:before {
  content: none;
}
.s_eirTab li:not(:last-child) {
  border-right: none;
}
.s_eirTab li a {
  background-color: #fff;
  border: 1px solid var(--clr-primary-100);
  border-radius: 100px;
  color: var(--clr-black-02);
  cursor: pointer;
  display: block;
  font-size: 3.7333333333vw;
  font-weight: bold;
  height: 100%;
  line-height: 1.5;
  outline: none;
  overflow: hidden;
  padding: 10px 10px;
  text-align: center;
  text-decoration: none;
  transition: color 200ms ease, background-color 200ms ease;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .s_eirTab li a {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 16px);
  }
}
.s_eirTab li.active a, .s_eirTab li:hover a {
  background-color: var(--clr-primary-100);
  color: var(--clr-white);
}

@media print, screen and (max-width:767.98px) {
  .s_eirTab {
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    width: 100%;
  }
  .s_eirTab li {
    width: calc((100% - 10px) / 2);
  }
}
/* --------------------------------------------------------
* noDataText
* -------------------------------------------------------*/
.noDataText {
  display: block;
}

/* --------------------------------------------------------
* Note
* -------------------------------------------------------*/
.eir_pdfNote p,
.eir_pnexNote p,
.eir_yuhoNote p {
  font-size: 2.9333333333vw;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .eir_pdfNote p,
  .eir_pnexNote p,
  .eir_yuhoNote p {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}

.eir_pdfNote_item,
.eir_pnexNote_item,
.eir_yuhoNote_item {
  font-size: 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .eir_pdfNote_item,
  .eir_pnexNote_item,
  .eir_yuhoNote_item {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}
.eir_pdfNote_item a[target=_blank]::after,
.eir_pnexNote_item a[target=_blank]::after,
.eir_yuhoNote_item a[target=_blank]::after {
  content: none;
}
.eir_pdfNote_item a:has(img),
.eir_pnexNote_item a:has(img),
.eir_yuhoNote_item a:has(img) {
  width: fit-content;
}

.eir_pdfNote img,
.eir_pnexNote img {
  vertical-align: bottom;
  width: auto;
}

/* PDF注記
* -------------------------------------------------------*/
.eir_pdfNote {
  align-items: center;
  display: flex;
  gap: 20px;
  margin-top: 50px;
}
.eir_pdfNote p {
  font-size: 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .eir_pdfNote p {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}

/* PNEX注記
* -------------------------------------------------------*/
.eir_pnexNote {
  margin-top: 30px;
}

.eir_pnexNote_item-right {
  text-align: right;
}
.eir_pnexNote_item-right a:has(img) {
  display: block;
  margin: 0 0 0 auto;
  width: fit-content;
}

/* 外部リンクアイコン*/
/* 有報注記
* -------------------------------------------------------*/
.eir_yuhoNote {
  margin-top: 30px;
}

@media print, screen and (max-width:767.98px) {
  .eir_pdfNote {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}
/* --------------------------------------------------------
* Governance
* -------------------------------------------------------*/
.eir[class*=area_governance] .noDataText {
  display: none;
}
.eir[class*=area_governance] .s_eirList_item {
  display: block;
  margin-bottom: 40px; /*資料無しの場合消えるアキ*/
  text-align: right;
}
.eir[class*=area_governance] .s_eirModule_titleBox {
  width: 100%;
}

@media print, screen and (max-width:767.98px) {
  .eir[class*=area_governance] .s_eirList_item {
    text-align: left;
  }
}
/* --------------------------------------------------------
* IR Calendar
* -------------------------------------------------------*/
.eirCalendar_figure {
  display: flex;
  flex-wrap: nowrap;
  gap: 2px;
  justify-content: center;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.eirCalendarNote {
  margin: 30px 0 0;
}

.eirCalendar_image {
  width: 50%;
}

@media print, screen and (max-width:767.98px) {
  .eirCalendar_figure {
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }
  .eirCalendar_image {
    width: 100%;
  }
}
/* --------------------------------------------------------
* share
* -------------------------------------------------------*/
.s_eir_MoreBtn_link a {
  background-color: #fff;
  border: 2px solid #333;
  color: #333;
  display: block;
  margin-top: 30px;
  outline: none;
  padding: 15px;
  text-align: center;
  text-decoration: none;
}

.s_eir_MoreBtn_link a:hover {
  background-color: #333;
  color: #fff;
  text-decoration: none;
}

/* --------------------------------------------------------
* RSS
* -------------------------------------------------------*/
.eir_rss {
  text-align: right;
}

.eir_rss_image {
  width: 16px;
}

/* --------------------------------------------------------
* Matrix
* -------------------------------------------------------*/
.s_eirMatrix_table {
  border-collapse: collapse;
  width: 100%;
}

.s_eirMatrix_th,
.s_eirMatrix_td {
  border: 1px solid #d9d9d9;
  padding: 10px;
  width: 20%;
}

.s_eirMatrix_th {
  background-color: #eee;
}

.s_eirMatrix_item + .s_eirMatrix_item {
  margin-top: 10px;
}

.s_eirMatrix_item_link_el-date,
.s_eirMatrix_item_link_el-comment,
.s_eirMatrix_item_link_icon {
  display: none;
}

.s_eirMatrix_item_link_image {
  height: 15px;
}

.s_eirMatrix_item_el:not(:has(.s_eirMatrix_item_link_image-pdf)) .s_eirMatrix_item_link_image {
  display: none;
}

.s_eirMatrix_item_el:not(:has(.s_eirMatrix_item_link_image-pdf)) .s_eirMatrix_item_link_el-typeFigure::before {
  background: url(../img/filetype_icon/url.png) no-repeat center/cover;
  content: "";
  display: inline-block;
  height: 15px;
  width: 15px;
}

/* タイトル表示時は削除 */
.s_eirMatrix_item_link {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}

.s_eirMatrix_item_link_el-title {
  display: none;
}

.eirItem_child .s_eirMatrix_item_link::before {
  content: "訂正資料";
  display: block;
  text-align: center;
}

/* ここまで　タイトル表示時は削除 */
@media print, screen and (max-width:767.98px) {
  .s_eirMatrix_table {
    width: 100%;
  }
  .s_eirMatrix_th,
  .s_eirMatrix_td {
    word-break: break-all;
  }
}
/* --------------------------------------------------------
* Accordion
* -------------------------------------------------------*/
.s_eirList_item_date_hidden {
  visibility: hidden;
}

.eirAccordionTrigger {
  background-color: #2a855c;
  background-image: none;
  color: #fff;
  cursor: pointer;
  margin: 0 0 20px;
  padding: 5px;
  position: relative;
}

.eirAccordionTrigger::after {
  content: "＋";
  display: block;
  position: absolute;
  right: 10px;
  top: 2px;
}

.eirAccordionTrigger-open::after {
  content: "－";
}

.eirAccordionWrapper {
  display: none;
}

.eirAccordionWrapper-open {
  display: block;
}

/* --------------------------------------------------------
* サムネ専用構造用
* -------------------------------------------------------*/
.s_eirThumbnailGroup {
  display: flex;
}

.s_eirThumbnailImgBlock {
  flex-shrink: 0;
  margin-right: 50px;
  width: 200px;
}

.s_eirThumbnailImgBlock .s_eirThumbnail_item {
  margin: 0 0 30px;
}

.s_eirThumnailEntireTitle {
  margin-top: 0;
}

.s_eirThumnailEntire + .s_eirList_item,
.s_eirThumnailSection + .s_eirList_item {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.s_eirThumnailSection {
  margin-top: 20px;
}

@media print, screen and (max-width:767.98px) {
  .s_eirThumbnailGroup {
    flex-wrap: wrap;
  }
  .s_eirThumbnailImgBlock {
    width: 100%;
  }
}
/* --------------------------------------------------------
* テキスト機能
* -------------------------------------------------------*/
.s_eirText + .s_eirList {
  margin-top: 30px;
}

/* --------------------------------------------------------
* 1ページ複数エリア 注記削除
* -------------------------------------------------------*/
/*
.エリアclass {
    & .eir_pdfNote,
    & .eir_yuhoNote,
    & .eir_pnexNote {
        display: none;
    }
}
*/
/* --------------------------------------------------------
* カレンダー注記削除
* -------------------------------------------------------*/
/*
.エリアclass {
    & .eirCalendarNote {
        display: none;
    }
}
*/
/* --------------------------------------------------------
* エリアカスタマイズ用
* -------------------------------------------------------*/
/*
.エリアclass {}
@media screen and (max-width: 768px) {
    .エリアclass {}
}
*/
/* QIR */
/*---------------------------------
  BASE SETTING
-----------------------------------*/
.qir ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.qirArea {
  max-width: 100%;
}

.qirSection_wrapper {
  gap: 50px;
}

.qirContent {
  margin-top: 0;
}

@media print, screen and (min-width:768px) {
  .qirArea-twocolumn .qirContent {
    width: calc((100% - 50px) / 2) !important;
  }
}
@media print, screen and (max-width:767.98px) {
  .qirArea-twocolumn .qirContent {
    width: 100% !important;
  }
}
.qirArea-twocolumn .qirContent.qirContent-together {
  margin-top: 0;
}

/*---------------------------------
  指標名、単位
-----------------------------------*/
.qirContent_label:before {
  content: none;
}

.qirContent_label_item {
  display: block;
  font-size: 5.3333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  padding-left: 6.9333333333vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .qirContent_label_item {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 20px);
    padding-left: clamp(11.7333333333px, 1.5277777778vw, 22px);
  }
}
.qirContent_label_item::before {
  background: var(--clr-secondary-100);
  border-radius: 4.2666666667vw;
  content: "";
  display: block;
  height: 7.4666666667vw;
  left: 0;
  position: absolute;
  top: 1.3333333333vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .qirContent_label_item::before {
    height: clamp(14.9333333333px, 1.9444444444vw, 28px);
    top: clamp(1.6px, 0.2083333333vw, 3px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.qirContent_unit_item {
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:768px) {
  .qirContent_unit_item {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 14px);
  }
}

/*---------------------------------
  遡及修正削除
-----------------------------------*/
/* .qirBox_carefulNote_list_item-retrospective {
	display: none;
} */
/*---------------------------------
  注記
-----------------------------------*/
.qirArea_wrapper + .qirBox,
.qirBox + .qirArea_wrapper {
  margin-top: 50px;
}

.qirBox_carefulNote_title {
  margin-bottom: 10px;
}

.pnexIcon {
  margin-top: 1em;
}
.pnexIcon a {
  display: inline-block;
}
.pnexIcon a[target=_blank]::after {
  content: none;
}

/*　 PNEX注記：外部リンクアイコン
-----------------------------------*/
/*---------------------------------
  凡例
-----------------------------------*/
.qirContent_legend_list {
  gap: 10px;
}
.qirContent_legend_list span {
  margin: 0;
}

.qirContent_legend_list_item {
  margin: 0;
  padding: 0;
}
.qirContent_legend_list_item:before {
  content: none;
}

.qirContent_legend_label {
  align-items: center;
  display: flex;
  gap: 5px;
}
.qirContent_legend_label::after {
  display: none;
}

.qirContent_legend_label_shape {
  margin-top: 0;
}

.qirContent_legend_label_checkbox {
  appearance: none !important;
  background-color: #f3f6f9;
  border: 1px solid var(--clr-primary-100);
  border-radius: 2px;
  cursor: pointer;
  height: 20px;
  margin: 0;
  position: relative;
  transition: background-color 200ms ease;
  width: 20px;
}
.qirContent_legend_label_checkbox:checked {
  background-color: var(--clr-primary-100);
}
.qirContent_legend_label_checkbox:checked::before {
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  content: "";
  display: block;
  height: 6px;
  left: 2px;
  position: absolute;
  top: 2px;
  transform: rotate(135deg);
  transform-origin: center;
  width: 8px;
}

/*---------------------------------
  テーブル
-----------------------------------*/
.qirContent_table {
  overflow-x: auto;
}

.qirArea-responsive .qirScrollTable .qirTable {
  min-width: 600px;
}

.qirContent_table {
  margin-top: 10px;
}
.qirContent_table table, .qirContent_table th, .qirContent_table td {
  border-color: #d4e0ed;
}
.qirContent_table table {
  margin-top: 0;
}
.qirContent_table table th, .qirContent_table table td {
  padding: 10px 4px;
}
.qirContent_table table td {
  white-space: nowrap;
}
.qirContent_table table thead th {
  background-color: #f3f6f9;
  font-weight: bold;
}
.qirContent_table table tbody th {
  background-color: #f3f6f9;
  font-weight: bold;
}

@media print, screen and (max-width:767.98px) {
  .qirArea-responsive .qirContentWrapper {
    display: block;
    margin-top: 40px;
  }
  .qirArea-responsive .qirContent {
    width: 100%;
  }
  .qirArea-responsive .qirScrollTable {
    overflow-y: scroll;
    width: 100%;
  }
}
/*---------------------------------
  凡例個別設定
-----------------------------------*/
.qirArea-twocolumn .qirContent.qirContent-id201,
.qirArea-twocolumn .qirContent.qirContent-id202 {
  width: 100%;
}

.qirContent-id101 .qirContent_legend {
  visibility: hidden;
}

.qirContent-id102 .qirContent_legend,
.qirContent-id122 .qirContent_legend {
  display: none;
}

@media print, screen and (max-width:767.98px) {
  .qirContent-id101 .qirContent_legend {
    display: none;
  }
}
/* 円グラフ
-----------------------------------*/
.qirContent_type-pie .qirContent_legend_list_item {
  pointer-events: none;
}
.qirContent_type-pie .qirContent_legend_label_checkbox {
  display: none;
}

/*---------------------------------
  配当
-----------------------------------*/
.qir[class*=area_dividend] .qirContent_table {
  margin-top: 0;
}

/* --------------------------------------------------------
* 1ページ複数エリア 注記削除
* -------------------------------------------------------*/
/*
.エリアclass {
    & .qirBox {
      display: none;
    }
}
*/
/*---------------------------------
コーポレート・ガバナンス
-----------------------------------*/
@media print, screen and (min-width:768px) {
  .eir[class*=area_governance] .s_eirList_item {
    text-align: center;
  }
}

.qirBox_asteriskNote_item {
  font-size: 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .qirBox_asteriskNote_item {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}
.qirBox_asteriskNote_item:before {
  background-color: transparent;
  border-radius: 0;
  left: auto;
  position: relative;
  top: auto;
}

.qirBox_carefulNote_list_item {
  font-size: 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .qirBox_carefulNote_list_item {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}
.qirBox_carefulNote_list_item:before {
  content: "" !important;
  height: 1.6vw;
  text-indent: 0 !important;
  top: 2.1333333333vw;
  width: 1.6vw;
}
@media print, screen and (min-width:768px) {
  .qirBox_carefulNote_list_item:before {
    height: clamp(3.2px, 0.4166666667vw, 6px);
    top: clamp(5.3333333333px, 0.6944444444vw, 10px);
    width: clamp(3.2px, 0.4166666667vw, 6px);
  }
}

.qirBox_pnexNote_text {
  font-size: 2.9333333333vw;
}
@media print, screen and (min-width:768px) {
  .qirBox_pnexNote_text {
    font-size: clamp(6.9333333333px, 0.9027777778vw, 13px);
  }
}

@media print, screen and (min-width:768px) {
  body.ir .s_eirList_item {
    display: grid;
    grid-template-areas: "head titleBox" "category titleBox";
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
  }
  body.ir .s_eirList_item > .eirItem_head {
    grid-area: head;
  }
  body.ir .s_eirList_item > .eirItem_category {
    align-items: flex-start;
    display: flex;
    grid-area: category;
  }
  body.ir .s_eirList_item > .s_eirModule_titleBox {
    grid-area: titleBox;
  }
  body.ir .s_eirList_item > .s_eirModule_type {
    position: absolute;
  }
  body.ir .s_eirList_item > .s_eirModule_size {
    position: absolute;
  }
}
/* ==========================================================================
Utility
========================================================================== */
.u-arrow {
  display: block;
  height: 2.1333333333vw;
  overflow: hidden;
  position: relative;
  width: 5.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .u-arrow {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}
.u-arrow::before {
  background: url(../images/common/icon_arrow_lightblue.svg) no-repeat left 0 top 0;
  background-size: contain;
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 0;
  position: absolute;
  top: 0;
  transform: translateX(-140%);
  transition: 200ms transform ease;
  width: 5.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .u-arrow::before {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}
.u-arrow::after {
  background: url(../images/common/icon_arrow.svg) no-repeat left 0 top 0;
  background-size: contain;
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 0;
  position: absolute;
  top: 0;
  transition: 200ms transform ease;
  width: 5.0666666667vw;
}
@media print, screen and (min-width:768px) {
  .u-arrow::after {
    height: clamp(4.2666666667px, 0.5555555556vw, 8px);
    width: clamp(10.1333333333px, 1.3194444444vw, 19px);
  }
}