@charset "UTF-8";
/* spacing */
/* margin directions */
/* =========================
   Base（SP）
========================= */
.u-mt-sm {
  -webkit-margin-before: 16px;
          margin-block-start: 16px;
}

.u-mt-md {
  -webkit-margin-before: 32px;
          margin-block-start: 32px;
}

.u-mt-lg {
  -webkit-margin-before: 48px;
          margin-block-start: 48px;
}

.u-mt-xl {
  -webkit-margin-before: 64px;
          margin-block-start: 64px;
}

.u-mt-2xl {
  -webkit-margin-before: 80px;
          margin-block-start: 80px;
}

.u-mt-3xl {
  -webkit-margin-before: 96px;
          margin-block-start: 96px;
}

.u-mt-4xl {
  -webkit-margin-before: 112px;
          margin-block-start: 112px;
}

.u-mt-5xl {
  -webkit-margin-before: 128px;
          margin-block-start: 128px;
}

.u-mt-6xl {
  -webkit-margin-before: 144px;
          margin-block-start: 144px;
}

.u-mt-7xl {
  -webkit-margin-before: 160px;
          margin-block-start: 160px;
}

.u-mr-sm {
  -webkit-margin-end: 16px;
          margin-inline-end: 16px;
}

.u-mr-md {
  -webkit-margin-end: 32px;
          margin-inline-end: 32px;
}

.u-mr-lg {
  -webkit-margin-end: 48px;
          margin-inline-end: 48px;
}

.u-mr-xl {
  -webkit-margin-end: 64px;
          margin-inline-end: 64px;
}

.u-mr-2xl {
  -webkit-margin-end: 80px;
          margin-inline-end: 80px;
}

.u-mr-3xl {
  -webkit-margin-end: 96px;
          margin-inline-end: 96px;
}

.u-mr-4xl {
  -webkit-margin-end: 112px;
          margin-inline-end: 112px;
}

.u-mr-5xl {
  -webkit-margin-end: 128px;
          margin-inline-end: 128px;
}

.u-mr-6xl {
  -webkit-margin-end: 144px;
          margin-inline-end: 144px;
}

.u-mr-7xl {
  -webkit-margin-end: 160px;
          margin-inline-end: 160px;
}

.u-mb-sm {
  -webkit-margin-after: 16px;
          margin-block-end: 16px;
}

.u-mb-md {
  -webkit-margin-after: 32px;
          margin-block-end: 32px;
}

.u-mb-lg {
  -webkit-margin-after: 48px;
          margin-block-end: 48px;
}

.u-mb-xl {
  -webkit-margin-after: 64px;
          margin-block-end: 64px;
}

.u-mb-2xl {
  -webkit-margin-after: 80px;
          margin-block-end: 80px;
}

.u-mb-3xl {
  -webkit-margin-after: 96px;
          margin-block-end: 96px;
}

.u-mb-4xl {
  -webkit-margin-after: 112px;
          margin-block-end: 112px;
}

.u-mb-5xl {
  -webkit-margin-after: 128px;
          margin-block-end: 128px;
}

.u-mb-6xl {
  -webkit-margin-after: 144px;
          margin-block-end: 144px;
}

.u-mb-7xl {
  -webkit-margin-after: 160px;
          margin-block-end: 160px;
}

.u-ml-sm {
  -webkit-margin-start: 16px;
          margin-inline-start: 16px;
}

.u-ml-md {
  -webkit-margin-start: 32px;
          margin-inline-start: 32px;
}

.u-ml-lg {
  -webkit-margin-start: 48px;
          margin-inline-start: 48px;
}

.u-ml-xl {
  -webkit-margin-start: 64px;
          margin-inline-start: 64px;
}

.u-ml-2xl {
  -webkit-margin-start: 80px;
          margin-inline-start: 80px;
}

.u-ml-3xl {
  -webkit-margin-start: 96px;
          margin-inline-start: 96px;
}

.u-ml-4xl {
  -webkit-margin-start: 112px;
          margin-inline-start: 112px;
}

.u-ml-5xl {
  -webkit-margin-start: 128px;
          margin-inline-start: 128px;
}

.u-ml-6xl {
  -webkit-margin-start: 144px;
          margin-inline-start: 144px;
}

.u-ml-7xl {
  -webkit-margin-start: 160px;
          margin-inline-start: 160px;
}

.u-mx-sm {
  margin-inline: 16px;
}

.u-mx-md {
  margin-inline: 32px;
}

.u-mx-lg {
  margin-inline: 48px;
}

.u-mx-xl {
  margin-inline: 64px;
}

.u-mx-2xl {
  margin-inline: 80px;
}

.u-mx-3xl {
  margin-inline: 96px;
}

.u-mx-4xl {
  margin-inline: 112px;
}

.u-mx-5xl {
  margin-inline: 128px;
}

.u-mx-6xl {
  margin-inline: 144px;
}

.u-mx-7xl {
  margin-inline: 160px;
}

.u-my-sm {
  margin-block: 16px;
}

.u-my-md {
  margin-block: 32px;
}

.u-my-lg {
  margin-block: 48px;
}

.u-my-xl {
  margin-block: 64px;
}

.u-my-2xl {
  margin-block: 80px;
}

.u-my-3xl {
  margin-block: 96px;
}

.u-my-4xl {
  margin-block: 112px;
}

.u-my-5xl {
  margin-block: 128px;
}

.u-my-6xl {
  margin-block: 144px;
}

.u-my-7xl {
  margin-block: 160px;
}

.u-pt-sm {
  -webkit-padding-before: 16px;
          padding-block-start: 16px;
}

.u-pt-md {
  -webkit-padding-before: 32px;
          padding-block-start: 32px;
}

.u-pt-lg {
  -webkit-padding-before: 48px;
          padding-block-start: 48px;
}

.u-pt-xl {
  -webkit-padding-before: 64px;
          padding-block-start: 64px;
}

.u-pt-2xl {
  -webkit-padding-before: 80px;
          padding-block-start: 80px;
}

.u-pt-3xl {
  -webkit-padding-before: 96px;
          padding-block-start: 96px;
}

.u-pt-4xl {
  -webkit-padding-before: 112px;
          padding-block-start: 112px;
}

.u-pt-5xl {
  -webkit-padding-before: 128px;
          padding-block-start: 128px;
}

.u-pt-6xl {
  -webkit-padding-before: 144px;
          padding-block-start: 144px;
}

.u-pt-7xl {
  -webkit-padding-before: 160px;
          padding-block-start: 160px;
}

.u-pr-sm {
  -webkit-padding-end: 16px;
          padding-inline-end: 16px;
}

.u-pr-md {
  -webkit-padding-end: 32px;
          padding-inline-end: 32px;
}

.u-pr-lg {
  -webkit-padding-end: 48px;
          padding-inline-end: 48px;
}

.u-pr-xl {
  -webkit-padding-end: 64px;
          padding-inline-end: 64px;
}

.u-pr-2xl {
  -webkit-padding-end: 80px;
          padding-inline-end: 80px;
}

.u-pr-3xl {
  -webkit-padding-end: 96px;
          padding-inline-end: 96px;
}

.u-pr-4xl {
  -webkit-padding-end: 112px;
          padding-inline-end: 112px;
}

.u-pr-5xl {
  -webkit-padding-end: 128px;
          padding-inline-end: 128px;
}

.u-pr-6xl {
  -webkit-padding-end: 144px;
          padding-inline-end: 144px;
}

.u-pr-7xl {
  -webkit-padding-end: 160px;
          padding-inline-end: 160px;
}

.u-pb-sm {
  -webkit-padding-after: 16px;
          padding-block-end: 16px;
}

.u-pb-md {
  -webkit-padding-after: 32px;
          padding-block-end: 32px;
}

.u-pb-lg {
  -webkit-padding-after: 48px;
          padding-block-end: 48px;
}

.u-pb-xl {
  -webkit-padding-after: 64px;
          padding-block-end: 64px;
}

.u-pb-2xl {
  -webkit-padding-after: 80px;
          padding-block-end: 80px;
}

.u-pb-3xl {
  -webkit-padding-after: 96px;
          padding-block-end: 96px;
}

.u-pb-4xl {
  -webkit-padding-after: 112px;
          padding-block-end: 112px;
}

.u-pb-5xl {
  -webkit-padding-after: 128px;
          padding-block-end: 128px;
}

.u-pb-6xl {
  -webkit-padding-after: 144px;
          padding-block-end: 144px;
}

.u-pb-7xl {
  -webkit-padding-after: 160px;
          padding-block-end: 160px;
}

.u-pl-sm {
  -webkit-padding-start: 16px;
          padding-inline-start: 16px;
}

.u-pl-md {
  -webkit-padding-start: 32px;
          padding-inline-start: 32px;
}

.u-pl-lg {
  -webkit-padding-start: 48px;
          padding-inline-start: 48px;
}

.u-pl-xl {
  -webkit-padding-start: 64px;
          padding-inline-start: 64px;
}

.u-pl-2xl {
  -webkit-padding-start: 80px;
          padding-inline-start: 80px;
}

.u-pl-3xl {
  -webkit-padding-start: 96px;
          padding-inline-start: 96px;
}

.u-pl-4xl {
  -webkit-padding-start: 112px;
          padding-inline-start: 112px;
}

.u-pl-5xl {
  -webkit-padding-start: 128px;
          padding-inline-start: 128px;
}

.u-pl-6xl {
  -webkit-padding-start: 144px;
          padding-inline-start: 144px;
}

.u-pl-7xl {
  -webkit-padding-start: 160px;
          padding-inline-start: 160px;
}

.u-px-sm {
  padding-inline: 16px;
}

.u-px-md {
  padding-inline: 32px;
}

.u-px-lg {
  padding-inline: 48px;
}

.u-px-xl {
  padding-inline: 64px;
}

.u-px-2xl {
  padding-inline: 80px;
}

.u-px-3xl {
  padding-inline: 96px;
}

.u-px-4xl {
  padding-inline: 112px;
}

.u-px-5xl {
  padding-inline: 128px;
}

.u-px-6xl {
  padding-inline: 144px;
}

.u-px-7xl {
  padding-inline: 160px;
}

.u-py-sm {
  padding-block: 16px;
}

.u-py-md {
  padding-block: 32px;
}

.u-py-lg {
  padding-block: 48px;
}

.u-py-xl {
  padding-block: 64px;
}

.u-py-2xl {
  padding-block: 80px;
}

.u-py-3xl {
  padding-block: 96px;
}

.u-py-4xl {
  padding-block: 112px;
}

.u-py-5xl {
  padding-block: 128px;
}

.u-py-6xl {
  padding-block: 144px;
}

.u-py-7xl {
  padding-block: 160px;
}

/* =========================
   Responsive（settings参照）
========================= */
@media (min-width: 476px) {
  .sm\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .sm\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .sm\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .sm\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .sm\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .sm\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .sm\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .sm\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .sm\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .sm\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .sm\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .sm\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .sm\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .sm\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .sm\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .sm\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .sm\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .sm\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .sm\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .sm\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .sm\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .sm\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .sm\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .sm\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .sm\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .sm\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .sm\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .sm\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .sm\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .sm\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .sm\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .sm\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .sm\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .sm\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .sm\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .sm\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .sm\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .sm\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .sm\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .sm\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .sm\:u-mx-sm {
    margin-inline: 16px;
  }
  .sm\:u-mx-md {
    margin-inline: 32px;
  }
  .sm\:u-mx-lg {
    margin-inline: 48px;
  }
  .sm\:u-mx-xl {
    margin-inline: 64px;
  }
  .sm\:u-mx-2xl {
    margin-inline: 80px;
  }
  .sm\:u-mx-3xl {
    margin-inline: 96px;
  }
  .sm\:u-mx-4xl {
    margin-inline: 112px;
  }
  .sm\:u-mx-5xl {
    margin-inline: 128px;
  }
  .sm\:u-mx-6xl {
    margin-inline: 144px;
  }
  .sm\:u-mx-7xl {
    margin-inline: 160px;
  }
  .sm\:u-my-sm {
    margin-block: 16px;
  }
  .sm\:u-my-md {
    margin-block: 32px;
  }
  .sm\:u-my-lg {
    margin-block: 48px;
  }
  .sm\:u-my-xl {
    margin-block: 64px;
  }
  .sm\:u-my-2xl {
    margin-block: 80px;
  }
  .sm\:u-my-3xl {
    margin-block: 96px;
  }
  .sm\:u-my-4xl {
    margin-block: 112px;
  }
  .sm\:u-my-5xl {
    margin-block: 128px;
  }
  .sm\:u-my-6xl {
    margin-block: 144px;
  }
  .sm\:u-my-7xl {
    margin-block: 160px;
  }
}
@media (min-width: 576px) {
  .md\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .md\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .md\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .md\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .md\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .md\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .md\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .md\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .md\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .md\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .md\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .md\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .md\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .md\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .md\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .md\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .md\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .md\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .md\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .md\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .md\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .md\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .md\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .md\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .md\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .md\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .md\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .md\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .md\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .md\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .md\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .md\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .md\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .md\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .md\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .md\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .md\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .md\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .md\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .md\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .md\:u-mx-sm {
    margin-inline: 16px;
  }
  .md\:u-mx-md {
    margin-inline: 32px;
  }
  .md\:u-mx-lg {
    margin-inline: 48px;
  }
  .md\:u-mx-xl {
    margin-inline: 64px;
  }
  .md\:u-mx-2xl {
    margin-inline: 80px;
  }
  .md\:u-mx-3xl {
    margin-inline: 96px;
  }
  .md\:u-mx-4xl {
    margin-inline: 112px;
  }
  .md\:u-mx-5xl {
    margin-inline: 128px;
  }
  .md\:u-mx-6xl {
    margin-inline: 144px;
  }
  .md\:u-mx-7xl {
    margin-inline: 160px;
  }
  .md\:u-my-sm {
    margin-block: 16px;
  }
  .md\:u-my-md {
    margin-block: 32px;
  }
  .md\:u-my-lg {
    margin-block: 48px;
  }
  .md\:u-my-xl {
    margin-block: 64px;
  }
  .md\:u-my-2xl {
    margin-block: 80px;
  }
  .md\:u-my-3xl {
    margin-block: 96px;
  }
  .md\:u-my-4xl {
    margin-block: 112px;
  }
  .md\:u-my-5xl {
    margin-block: 128px;
  }
  .md\:u-my-6xl {
    margin-block: 144px;
  }
  .md\:u-my-7xl {
    margin-block: 160px;
  }
}
@media (min-width: 768px) {
  .lg\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .lg\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .lg\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .lg\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .lg\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .lg\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .lg\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .lg\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .lg\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .lg\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .lg\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .lg\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .lg\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .lg\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .lg\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .lg\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .lg\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .lg\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .lg\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .lg\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .lg\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .lg\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .lg\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .lg\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .lg\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .lg\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .lg\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .lg\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .lg\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .lg\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .lg\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .lg\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .lg\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .lg\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .lg\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .lg\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .lg\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .lg\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .lg\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .lg\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .lg\:u-mx-sm {
    margin-inline: 16px;
  }
  .lg\:u-mx-md {
    margin-inline: 32px;
  }
  .lg\:u-mx-lg {
    margin-inline: 48px;
  }
  .lg\:u-mx-xl {
    margin-inline: 64px;
  }
  .lg\:u-mx-2xl {
    margin-inline: 80px;
  }
  .lg\:u-mx-3xl {
    margin-inline: 96px;
  }
  .lg\:u-mx-4xl {
    margin-inline: 112px;
  }
  .lg\:u-mx-5xl {
    margin-inline: 128px;
  }
  .lg\:u-mx-6xl {
    margin-inline: 144px;
  }
  .lg\:u-mx-7xl {
    margin-inline: 160px;
  }
  .lg\:u-my-sm {
    margin-block: 16px;
  }
  .lg\:u-my-md {
    margin-block: 32px;
  }
  .lg\:u-my-lg {
    margin-block: 48px;
  }
  .lg\:u-my-xl {
    margin-block: 64px;
  }
  .lg\:u-my-2xl {
    margin-block: 80px;
  }
  .lg\:u-my-3xl {
    margin-block: 96px;
  }
  .lg\:u-my-4xl {
    margin-block: 112px;
  }
  .lg\:u-my-5xl {
    margin-block: 128px;
  }
  .lg\:u-my-6xl {
    margin-block: 144px;
  }
  .lg\:u-my-7xl {
    margin-block: 160px;
  }
}
@media (min-width: 992px) {
  .xl\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .xl\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .xl\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .xl\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .xl\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .xl\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .xl\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .xl\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .xl\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .xl\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .xl\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .xl\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .xl\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .xl\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .xl\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .xl\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .xl\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .xl\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .xl\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .xl\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .xl\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .xl\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .xl\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .xl\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .xl\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .xl\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .xl\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .xl\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .xl\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .xl\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .xl\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .xl\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .xl\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .xl\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .xl\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .xl\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .xl\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .xl\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .xl\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .xl\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .xl\:u-mx-sm {
    margin-inline: 16px;
  }
  .xl\:u-mx-md {
    margin-inline: 32px;
  }
  .xl\:u-mx-lg {
    margin-inline: 48px;
  }
  .xl\:u-mx-xl {
    margin-inline: 64px;
  }
  .xl\:u-mx-2xl {
    margin-inline: 80px;
  }
  .xl\:u-mx-3xl {
    margin-inline: 96px;
  }
  .xl\:u-mx-4xl {
    margin-inline: 112px;
  }
  .xl\:u-mx-5xl {
    margin-inline: 128px;
  }
  .xl\:u-mx-6xl {
    margin-inline: 144px;
  }
  .xl\:u-mx-7xl {
    margin-inline: 160px;
  }
  .xl\:u-my-sm {
    margin-block: 16px;
  }
  .xl\:u-my-md {
    margin-block: 32px;
  }
  .xl\:u-my-lg {
    margin-block: 48px;
  }
  .xl\:u-my-xl {
    margin-block: 64px;
  }
  .xl\:u-my-2xl {
    margin-block: 80px;
  }
  .xl\:u-my-3xl {
    margin-block: 96px;
  }
  .xl\:u-my-4xl {
    margin-block: 112px;
  }
  .xl\:u-my-5xl {
    margin-block: 128px;
  }
  .xl\:u-my-6xl {
    margin-block: 144px;
  }
  .xl\:u-my-7xl {
    margin-block: 160px;
  }
}
@media (min-width: 1200px) {
  .xxl\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .xxl\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .xxl\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .xxl\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .xxl\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .xxl\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .xxl\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .xxl\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .xxl\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .xxl\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .xxl\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .xxl\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .xxl\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .xxl\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .xxl\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .xxl\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .xxl\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .xxl\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .xxl\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .xxl\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .xxl\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .xxl\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .xxl\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .xxl\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .xxl\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .xxl\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .xxl\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .xxl\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .xxl\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .xxl\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .xxl\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .xxl\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .xxl\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .xxl\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .xxl\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .xxl\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .xxl\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .xxl\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .xxl\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .xxl\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .xxl\:u-mx-sm {
    margin-inline: 16px;
  }
  .xxl\:u-mx-md {
    margin-inline: 32px;
  }
  .xxl\:u-mx-lg {
    margin-inline: 48px;
  }
  .xxl\:u-mx-xl {
    margin-inline: 64px;
  }
  .xxl\:u-mx-2xl {
    margin-inline: 80px;
  }
  .xxl\:u-mx-3xl {
    margin-inline: 96px;
  }
  .xxl\:u-mx-4xl {
    margin-inline: 112px;
  }
  .xxl\:u-mx-5xl {
    margin-inline: 128px;
  }
  .xxl\:u-mx-6xl {
    margin-inline: 144px;
  }
  .xxl\:u-mx-7xl {
    margin-inline: 160px;
  }
  .xxl\:u-my-sm {
    margin-block: 16px;
  }
  .xxl\:u-my-md {
    margin-block: 32px;
  }
  .xxl\:u-my-lg {
    margin-block: 48px;
  }
  .xxl\:u-my-xl {
    margin-block: 64px;
  }
  .xxl\:u-my-2xl {
    margin-block: 80px;
  }
  .xxl\:u-my-3xl {
    margin-block: 96px;
  }
  .xxl\:u-my-4xl {
    margin-block: 112px;
  }
  .xxl\:u-my-5xl {
    margin-block: 128px;
  }
  .xxl\:u-my-6xl {
    margin-block: 144px;
  }
  .xxl\:u-my-7xl {
    margin-block: 160px;
  }
}
@media (min-width: 1400px) {
  .xxxl\:u-mt-sm {
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
  .xxxl\:u-mt-md {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
  .xxxl\:u-mt-lg {
    -webkit-margin-before: 48px;
            margin-block-start: 48px;
  }
  .xxxl\:u-mt-xl {
    -webkit-margin-before: 64px;
            margin-block-start: 64px;
  }
  .xxxl\:u-mt-2xl {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
  .xxxl\:u-mt-3xl {
    -webkit-margin-before: 96px;
            margin-block-start: 96px;
  }
  .xxxl\:u-mt-4xl {
    -webkit-margin-before: 112px;
            margin-block-start: 112px;
  }
  .xxxl\:u-mt-5xl {
    -webkit-margin-before: 128px;
            margin-block-start: 128px;
  }
  .xxxl\:u-mt-6xl {
    -webkit-margin-before: 144px;
            margin-block-start: 144px;
  }
  .xxxl\:u-mt-7xl {
    -webkit-margin-before: 160px;
            margin-block-start: 160px;
  }
  .xxxl\:u-mr-sm {
    -webkit-margin-end: 16px;
            margin-inline-end: 16px;
  }
  .xxxl\:u-mr-md {
    -webkit-margin-end: 32px;
            margin-inline-end: 32px;
  }
  .xxxl\:u-mr-lg {
    -webkit-margin-end: 48px;
            margin-inline-end: 48px;
  }
  .xxxl\:u-mr-xl {
    -webkit-margin-end: 64px;
            margin-inline-end: 64px;
  }
  .xxxl\:u-mr-2xl {
    -webkit-margin-end: 80px;
            margin-inline-end: 80px;
  }
  .xxxl\:u-mr-3xl {
    -webkit-margin-end: 96px;
            margin-inline-end: 96px;
  }
  .xxxl\:u-mr-4xl {
    -webkit-margin-end: 112px;
            margin-inline-end: 112px;
  }
  .xxxl\:u-mr-5xl {
    -webkit-margin-end: 128px;
            margin-inline-end: 128px;
  }
  .xxxl\:u-mr-6xl {
    -webkit-margin-end: 144px;
            margin-inline-end: 144px;
  }
  .xxxl\:u-mr-7xl {
    -webkit-margin-end: 160px;
            margin-inline-end: 160px;
  }
  .xxxl\:u-mb-sm {
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
  .xxxl\:u-mb-md {
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
  .xxxl\:u-mb-lg {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
  .xxxl\:u-mb-xl {
    -webkit-margin-after: 64px;
            margin-block-end: 64px;
  }
  .xxxl\:u-mb-2xl {
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
  .xxxl\:u-mb-3xl {
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
  .xxxl\:u-mb-4xl {
    -webkit-margin-after: 112px;
            margin-block-end: 112px;
  }
  .xxxl\:u-mb-5xl {
    -webkit-margin-after: 128px;
            margin-block-end: 128px;
  }
  .xxxl\:u-mb-6xl {
    -webkit-margin-after: 144px;
            margin-block-end: 144px;
  }
  .xxxl\:u-mb-7xl {
    -webkit-margin-after: 160px;
            margin-block-end: 160px;
  }
  .xxxl\:u-ml-sm {
    -webkit-margin-start: 16px;
            margin-inline-start: 16px;
  }
  .xxxl\:u-ml-md {
    -webkit-margin-start: 32px;
            margin-inline-start: 32px;
  }
  .xxxl\:u-ml-lg {
    -webkit-margin-start: 48px;
            margin-inline-start: 48px;
  }
  .xxxl\:u-ml-xl {
    -webkit-margin-start: 64px;
            margin-inline-start: 64px;
  }
  .xxxl\:u-ml-2xl {
    -webkit-margin-start: 80px;
            margin-inline-start: 80px;
  }
  .xxxl\:u-ml-3xl {
    -webkit-margin-start: 96px;
            margin-inline-start: 96px;
  }
  .xxxl\:u-ml-4xl {
    -webkit-margin-start: 112px;
            margin-inline-start: 112px;
  }
  .xxxl\:u-ml-5xl {
    -webkit-margin-start: 128px;
            margin-inline-start: 128px;
  }
  .xxxl\:u-ml-6xl {
    -webkit-margin-start: 144px;
            margin-inline-start: 144px;
  }
  .xxxl\:u-ml-7xl {
    -webkit-margin-start: 160px;
            margin-inline-start: 160px;
  }
  .xxxl\:u-mx-sm {
    margin-inline: 16px;
  }
  .xxxl\:u-mx-md {
    margin-inline: 32px;
  }
  .xxxl\:u-mx-lg {
    margin-inline: 48px;
  }
  .xxxl\:u-mx-xl {
    margin-inline: 64px;
  }
  .xxxl\:u-mx-2xl {
    margin-inline: 80px;
  }
  .xxxl\:u-mx-3xl {
    margin-inline: 96px;
  }
  .xxxl\:u-mx-4xl {
    margin-inline: 112px;
  }
  .xxxl\:u-mx-5xl {
    margin-inline: 128px;
  }
  .xxxl\:u-mx-6xl {
    margin-inline: 144px;
  }
  .xxxl\:u-mx-7xl {
    margin-inline: 160px;
  }
  .xxxl\:u-my-sm {
    margin-block: 16px;
  }
  .xxxl\:u-my-md {
    margin-block: 32px;
  }
  .xxxl\:u-my-lg {
    margin-block: 48px;
  }
  .xxxl\:u-my-xl {
    margin-block: 64px;
  }
  .xxxl\:u-my-2xl {
    margin-block: 80px;
  }
  .xxxl\:u-my-3xl {
    margin-block: 96px;
  }
  .xxxl\:u-my-4xl {
    margin-block: 112px;
  }
  .xxxl\:u-my-5xl {
    margin-block: 128px;
  }
  .xxxl\:u-my-6xl {
    margin-block: 144px;
  }
  .xxxl\:u-my-7xl {
    margin-block: 160px;
  }
}
.u-bgLightblue {
  background-color: rgb(243, 246, 249);
}

.u-border {
  border: 1px solid rgb(219, 219, 219);
}

/* reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
input, textarea, button, header {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  -webkit-text-size-adjust: 100%;
  max-block-size: 999999px;
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: none;
}

button:focus {
  outline: 0;
}

ol, ul {
  list-style: none;
}

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
  text-decoration: none;
  outline: none;
}

img {
  inline-size: 100%;
  block-size: auto;
  vertical-align: bottom;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.938rem, 0.826rem + 0.23vw, 1rem);
  font-weight: 400;
  color: rgb(0, 0, 0);
  line-height: 1.8;
  position: relative;
}
body.js-open {
  position: fixed;
}

a {
  font-weight: 500;
  color: rgb(0, 0, 0);
}

/* header */
.c-header {
  display: block flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  inline-size: 100%;
  block-size: 80px;
  padding-inline: 4vw;
  background-color: rgb(20, 9, 86);
  position: sticky;
  top: 0;
  left: 0;
  z-index: 50;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .c-header {
    padding-inline: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .c-header {
    block-size: 100px;
  }
}
@media screen and (min-width: 1200px) {
  .c-header {
    block-size: 120px;
  }
}

@media screen and (min-width: 992px) {
  .js-scrolled .c-header {
    block-size: 80px;
  }
  .js-scrolled .c-header .c-header__logo-link {
    inline-size: 70px;
  }
  .js-scrolled .c-header .c-header-entry {
    block-size: 50px;
  }
}
@media screen and (min-width: 1200px) {
  .js-scrolled .c-header {
    block-size: 90px;
  }
  .js-scrolled .c-header .c-header__logo-link {
    inline-size: 90px;
  }
  .js-scrolled .c-header .c-header-entry {
    block-size: 70px;
  }
}

.c-header__logo-link {
  display: block flex;
  inline-size: 60px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-header__logo-link:hover {
  opacity: 0.7;
}
@media screen and (min-width: 768px) {
  .c-header__logo-link {
    inline-size: 80px;
  }
}
@media screen and (min-width: 992px) {
  .c-header__logo-link {
    inline-size: 100px;
  }
}
@media screen and (min-width: 1200px) {
  .c-header__logo-link {
    inline-size: 115px;
  }
}

.c-header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}
@media screen and (min-width: 576px) {
  .c-header__nav {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .c-header__nav {
    -webkit-column-gap: 1.5rem;
       -moz-column-gap: 1.5rem;
            column-gap: 1.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .c-header__nav {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 1400px) {
  .c-header__nav {
    -webkit-column-gap: 3.5rem;
       -moz-column-gap: 3.5rem;
            column-gap: 3.5rem;
  }
}

.c-nav {
  display: none;
}
@media screen and (min-width: 992px) {
  .c-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 1.5rem;
       -moz-column-gap: 1.5rem;
            column-gap: 1.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .c-nav {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 1400px) {
  .c-nav {
    -webkit-column-gap: 3.5rem;
       -moz-column-gap: 3.5rem;
            column-gap: 3.5rem;
  }
}

.c-nav__link {
  padding-inline: 0.5rem;
  padding-block: 0.5rem;
  font-size: clamp(1rem, 0.848rem + 0.32vw, 1.125rem);
  color: rgb(255, 255, 255);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-nav__link:hover {
  opacity: 0.5;
}

.c-header-entry {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 160px;
  block-size: 50px;
  font-size: clamp(1rem, 0.66rem + 0.96vw, 1.5rem);
  font-weight: bold;
  color: rgb(20, 9, 86);
  border: 2px solid rgb(255, 255, 255);
  background-color: rgb(255, 255, 255);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
}
.c-header-entry:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
@media screen and (min-width: 992px) {
  .c-header-entry {
    inline-size: 180px;
    block-size: 60px;
  }
}
@media screen and (min-width: 1200px) {
  .c-header-entry {
    inline-size: 200px;
    block-size: 80px;
  }
}

.c-hamburger {
  display: block grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  inline-size: 50px;
  aspect-ratio: 1;
  opacity: 100;
  z-index: 100;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 992px) {
  .c-hamburger {
    display: none;
  }
}

.menu-open .c-hamburger {
  opacity: 0;
}

.c-hamburger__button {
  display: block grid;
  grid-template-rows: 3px;
  grid-template-columns: 2.5rem;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  aspect-ratio: 1;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 50%;
  background: none;
  position: relative;
}
@media screen and (min-width: 576px) {
  .c-hamburger__button {
    grid-template-rows: 4px;
    grid-template-columns: 3.375rem;
  }
}

.c-hamburger__button-icon {
  display: block grid;
  grid-template-areas: "stack";
  align-self: stretch;
  border-radius: 4px;
  background-color: rgb(255, 255, 255);
}
.c-hamburger__button-icon::before, .c-hamburger__button-icon::after {
  content: "";
  background-color: inherit;
  grid-area: stack;
  border-radius: 4px;
}
.c-hamburger__button-icon::before {
  translate: 0 14px;
}
.c-hamburger__button-icon::after {
  translate: 0 -14px;
}
@media screen and (min-width: 576px) {
  .c-hamburger__button-icon::before {
    translate: 0 16px;
  }
  .c-hamburger__button-icon::after {
    translate: 0 -16px;
  }
}

.c-hamburger__text {
  display: none;
}

.c-hamburger__button-text {
  font-size: 0.875rem;
  font-weight: 500;
}

.c-megamenu {
  display: block;
  inline-size: 100%;
  block-size: unset;
  max-inline-size: unset;
  max-block-size: unset;
  margin: unset;
  padding: unset;
  border: unset;
  background-color: rgba(255, 255, 255, 0);
  position: fixed;
  inset: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%); /* スライドアウト */
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  outline: 0;
  z-index: 80;
}
.c-megamenu .c-megamenu[open] {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.c-megamenu .c-megamenu::-ms-backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.c-megamenu .c-megamenu::backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.c-megamenu .c-header-entry {
  position: absolute;
  top: 0.875rem;
  right: calc(48px + 4vw + 1rem);
}
@media screen and (min-width: 576px) {
  .c-megamenu .c-header-entry {
    right: calc(48px + 4vw + 2rem);
  }
}
@media screen and (min-width: 768px) {
  .c-megamenu .c-header-entry {
    top: 0.875rem;
    right: 7rem;
  }
}

.c-megamenu__inner {
  display: block flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 100%;
  max-inline-size: 300px;
  block-size: 100%;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-padding-before: 4rem;
          padding-block-start: 4rem;
  padding-inline: 1.25rem;
  background-color: rgba(20, 9, 86, 0.8);
  position: relative;
  z-index: 20;
}

.c-megamenu__button {
  display: block flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 80px;
  aspect-ratio: 1;
  position: absolute;
  top: 0rem;
  right: 0;
}
@media screen and (min-width: 768px) {
  .c-megamenu__button {
    right: 1rem;
  }
}

.c-megamenu__close {
  inline-size: 42px;
  block-size: 34px;
  position: relative;
  cursor: pointer;
}
.c-megamenu__close::before, .c-megamenu__close::after {
  content: "";
  inline-size: 46px;
  block-size: 3px;
  border-radius: 4px;
  background-color: rgb(255, 255, 255);
  position: absolute;
  left: 0.25rem;
}
.c-megamenu__close::before {
  top: 0;
  rotate: 44deg;
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
.c-megamenu__close::after {
  bottom: 0;
  rotate: -44deg;
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
}
@media screen and (min-width: 576px) {
  .c-megamenu__close {
    inline-size: 48px;
    block-size: 40px;
  }
  .c-megamenu__close::before, .c-megamenu__close::after {
    content: "";
    inline-size: 56px;
    block-size: 4px;
  }
  .c-megamenu__close::before {
    rotate: 40deg;
  }
  .c-megamenu__close::after {
    rotate: -40deg;
  }
}

.c-megamenu__text {
  display: none;
}

.c-megamenu__body {
  inline-size: 100%;
  margin-inline: auto;
}

.c-megamenu__main {
  display: block flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-inline: auto;
  padding-block: 3rem 2rem;
}
@media screen and (min-width: 576px) {
  .c-megamenu__main {
    gap: 2rem;
  }
}

.c-megamenu__link {
  display: block grid;
  inline-size: 100%;
  padding-block: 0.5rem;
  padding-inline: 1rem;
  font-size: clamp(1.375rem, 0.798rem + 1.6vw, 2rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  line-height: 1.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-megamenu__link:hover {
  color: rgba(255, 255, 255, 0.8);
}

.c-megamenu__bg {
  inline-size: 100%;
  block-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.c-megamenu__bg img {
  -o-object-fit: cover;
     object-fit: cover;
  inline-size: 100%;
  block-size: 100%;
}

/* footer */
.c-footer {
  padding-block: 3rem;
  padding-inline: 1rem;
  background-color: rgb(20, 9, 86);
  position: relative;
  z-index: 10;
}

.c-footer__inner {
  display: block flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 1rem;
  margin-inline: auto;
}

.c-footer__nav {
  display: block flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 0.5rem;
  margin-inline: auto;
  position: relative;
  z-index: 20;
}
@media screen and (min-width: 576px) {
  .c-footer__nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-column-gap: 2.5rem;
       -moz-column-gap: 2.5rem;
            column-gap: 2.5rem;
  }
}

.c-footer__nav-link {
  font-size: clamp(0.875rem, 0.653rem + 0.46vw, 1rem);
  font-weight: 500;
  color: rgb(255, 255, 255);
  text-decoration: none;
  position: relative;
}
@media screen and (min-width: 576px) {
  .c-footer__nav-link:hover {
    text-decoration: underline;
  }
  .c-footer__nav-link:not(:last-of-type)::after {
    content: "|";
    position: absolute;
    top: 0;
    right: -1.25rem;
  }
}

.c-footer__copy {
  font-size: clamp(0.875rem, 0.653rem + 0.46vw, 1rem);
  color: rgb(255, 255, 255);
  text-align: center;
  position: relative;
  z-index: 20;
}

/* component */
.c-contents {
  container-type: inline-size;
}

.c-innner {
  max-inline-size: 980px;
  margin-inline: auto;
  padding-inline: 4vw;
  -webkit-box-sizing: revert;
          box-sizing: revert;
  position: relative;
  z-index: 40;
}
@media screen and (min-width: 576px) {
  .c-innner {
    padding-inline: 2rem;
  }
}

.c-headline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}

.c-headline-en {
  padding-inline: 0.75rem;
  padding-block: 0.75rem;
  font-size: clamp(1.125rem, 0.742rem + 1.08vw, 1.688rem);
  line-height: 1;
  letter-spacing: 0.1em;
  color: white;
  text-transform: uppercase;
  background-color: rgb(20, 9, 86);
}

.c-headline-jp {
  padding-inline: 0.875rem;
  padding-block: 0.875rem;
  font-size: clamp(2rem, 1.064rem + 2.64vw, 3.375rem);
  line-height: 1;
  border: 3px solid black;
  background-color: rgb(255, 255, 255);
}

.p-hero {
  container-type: inline-size;
  position: relative;
}

.p-hero__main {
  position: absolute;
  bottom: 2rem;
  left: 1rem;
}
@media screen and (min-width: 576px) {
  .p-hero__main {
    top: 20cqb;
    right: 1.5rem;
    bottom: unset;
    left: unset;
  }
}
@media screen and (min-width: 768px) {
  .p-hero__main {
    top: 22cqb;
    right: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .p-hero__main {
    top: 22cqb;
    right: calc(50cqi - 420px);
  }
}
@media screen and (min-width: 1200px) {
  .p-hero__main {
    top: 24cqb;
    right: calc(50cqi - 460px);
  }
}

.p-hero-copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 0.625rem;
  -webkit-margin-after: 1rem;
          margin-block-end: 1rem;
}
.p-hero-copy span {
  padding-inline: 0.625rem;
  padding-block: 0.625rem;
  font-size: 9vw;
  line-height: 1;
  border: 3px solid black;
  background-color: rgb(255, 255, 255);
}
@media screen and (min-width: 576px) {
  .p-hero-copy span {
    padding-inline: 0.875rem;
    padding-block: 0.875rem;
    font-size: clamp(2rem, 1.064rem + 2.64vw, 3.375rem);
  }
}

.p-hero-companyname,
.p-hero-sitename {
  inline-size: -webkit-max-content;
  inline-size: -moz-max-content;
  inline-size: max-content;
  padding-inline: 0.625rem;
  padding-block: 0.625rem;
  font-size: 4vw;
  color: rgb(255, 255, 255);
  line-height: 1.2;
  background-color: rgb(85, 1, 43);
}
@media screen and (min-width: 576px) {
  .p-hero-companyname,
  .p-hero-sitename {
    padding-inline: 0.875rem;
    padding-block: 0.875rem;
    font-size: clamp(1rem, 0.544rem + 0.95vw, 1.375rem);
  }
}

.p-hero-companyname {
  -webkit-margin-after: 0.625rem;
          margin-block-end: 0.625rem;
}

.p-hero-bg {
  block-size: calc(100svh - 80px);
}
.p-hero-bg img {
  -o-object-fit: cover;
     object-fit: cover;
  inline-size: 100%;
  block-size: 100%;
}
@media screen and (min-width: 576px) {
  .p-hero-bg {
    block-size: 600px;
  }
}
@media screen and (min-width: 768px) {
  .p-hero-bg {
    block-size: 650px;
  }
}
@media screen and (min-width: 992px) {
  .p-hero-bg {
    block-size: 700px;
  }
}
@media screen and (min-width: 1200px) {
  .p-hero-bg {
    block-size: auto;
  }
}

.p-aboutus {
  background-color: rgb(85, 1, 43);
}

.p-aboutus-main {
  padding-block: 10rem 6rem;
}

.p-aboutus-main__inner {
  display: grid;
  row-gap: 2rem;
  max-inline-size: 450px;
  margin-inline: auto;
  padding-inline: 4vw;
  background-color: white;
}
.p-aboutus-main__inner .c-headline {
  -webkit-margin-before: -6rem;
          margin-block-start: -6rem;
}
.p-aboutus-main__inner .spbr {
  display: none;
}
@media screen and (min-width: 576px) {
  .p-aboutus-main__inner {
    padding-inline: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus-main__inner {
    max-inline-size: 100%;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "title fig" "detail fig";
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
    row-gap: 1.5rem;
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
  }
  .p-aboutus-main__inner .c-headline {
    grid-area: title;
    -webkit-margin-before: -5.25rem;
            margin-block-start: -5.25rem;
  }
  .p-aboutus-main__inner .spbr {
    display: revert;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-main__inner {
    row-gap: 2rem;
    -webkit-padding-start: 3rem;
            padding-inline-start: 3rem;
  }
  .p-aboutus-main__inner .c-headline {
    -webkit-margin-before: -5.5rem;
            margin-block-start: -5.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-main__inner {
    row-gap: 3rem;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
  .p-aboutus-main__inner .c-headline {
    -webkit-margin-before: -6rem;
            margin-block-start: -6rem;
  }
}

.p-aboutus__detail {
  -webkit-padding-after: 2rem;
          padding-block-end: 2rem;
  font-size: clamp(1rem, 0.544rem + 0.95vw, 1.375rem);
  font-weight: 500;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-aboutus__detail {
    grid-area: detail;
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus__detail {
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
    -webkit-padding-after: 4rem;
            padding-block-end: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .p-aboutus__fig {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    margin-inline: -5vw;
    -webkit-margin-after: -2rem;
            margin-block-end: -2rem;
  }
}
@media screen and (min-width: 576px) {
  .p-aboutus__fig {
    margin-inline: -2.5rem -3rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus__fig {
    margin-inline: 0;
    grid-area: fig;
  }
}

@media screen and (min-width: 768px) {
  .p-aboutus__fig-top {
    -webkit-margin-end: -3rem;
            margin-inline-end: -3rem;
    margin-block: -1rem 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus__fig-top {
    -webkit-margin-end: -4.5rem;
            margin-inline-end: -4.5rem;
    margin-block: -2.5rem 2rem;
  }
}

.p-aboutus__fig-center {
  -webkit-margin-end: -3vw;
          margin-inline-end: -3vw;
  position: relative;
}
@media screen and (min-width: 576px) {
  .p-aboutus__fig-center {
    -webkit-margin-end: -1rem;
            margin-inline-end: -1rem;
    -webkit-margin-before: -3rem;
            margin-block-start: -3rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus__fig-center {
    -webkit-margin-end: 0;
            margin-inline-end: 0;
    -webkit-margin-before: 0;
            margin-block-start: 0;
    right: -2rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus__fig-center {
    right: -4rem;
  }
}

.p-aboutus__fig-botom {
  -webkit-margin-before: 3vw;
          margin-block-start: 3vw;
}
@media screen and (min-width: 576px) {
  .p-aboutus__fig-botom {
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus__fig-botom {
    margin-inline: -2rem 1rem;
    margin-block: 0 -1rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus__fig-botom {
    margin-inline: -4rem 1.5rem;
    margin-block: -0.75rem -3rem;
  }
}
@media screen and (min-width: 1400px) {
  .p-aboutus__fig-botom {
    margin-block: -0.75rem -5rem;
  }
}

.p-aboutus-point {
  margin-inline: calc(50% - 50cqi);
  padding-inline: 4vw;
  padding-block: 6rem 5.5rem;
  background-color: rgb(245, 241, 232);
  position: relative;
}
.p-aboutus-point::before {
  content: "";
  inline-size: 16px;
  block-size: 96%;
  background-image: url(../img/aboutus-fig-08.png);
  background-repeat: space;
  background-size: 100%;
  position: absolute;
  top: 50%;
  left: 0.5rem;
  translate: 0 -50%;
}
.p-aboutus-point::after {
  content: "";
  inline-size: 86%;
  block-size: 94%;
  background-image: url(../img/aboutus-fig-09.png);
  background-size: 600px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -45% -50%;
  opacity: 0.3;
}
@media screen and (min-width: 576px) {
  .p-aboutus-point {
    padding-inline: 2rem;
  }
  .p-aboutus-point::before {
    inline-size: 20px;
    background-size: 20px;
  }
  .p-aboutus-point::after {
    inline-size: 88%;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus-point::before {
    inline-size: 20px;
    left: 1rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-point::before {
    inline-size: 24px;
    left: 1.25rem;
  }
  .p-aboutus-point::after {
    background-size: 800px;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-point::before {
    inline-size: 32px;
    block-size: 96%;
    left: 2.5rem;
  }
  .p-aboutus-point::after {
    inline-size: 86%;
    background-size: 1200px;
  }
}

.p-aboutus-point__inner {
  max-inline-size: 450px;
  margin-inline: auto;
  position: relative;
  z-index: 20;
}
@media screen and (min-width: 768px) {
  .p-aboutus-point__inner {
    max-inline-size: 880px;
  }
}

.p-aboutus-point__title {
  padding-block: 1rem;
  font-size: clamp(1.375rem, -0.958rem + 4.86vw, 2.688rem);
  font-weight: 800;
  line-height: 1.4;
  text-align: center;
  border-top: 3px solid rgb(0, 0, 0);
  position: relative;
}
.p-aboutus-point__title::after {
  content: "";
  inline-size: 32px;
  block-size: 3px;
  background-color: rgb(0, 0, 0);
  position: absolute;
  bottom: 0;
  left: 50%;
  rotate: -40deg;
  translate: -50% 0;
  -webkit-transform-origin: right top;
          transform-origin: right top;
}
.p-aboutus-point__title span {
  display: block;
  inline-size: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.p-aboutus-point__title span::before, .p-aboutus-point__title span::after {
  content: "";
  inline-size: calc((100% - 32px) / 2);
  block-size: 3px;
  background-color: rgb(0, 0, 0);
  position: absolute;
  bottom: 0;
}
.p-aboutus-point__title span::before {
  left: 0;
}
.p-aboutus-point__title span::after {
  right: 0;
}
.p-aboutus-point__title[data-point=charm] {
  -webkit-margin-after: 3rem;
          margin-block-end: 3rem;
  translate: -0.25rem 0;
  rotate: -4deg;
}
.p-aboutus-point__title[data-point=other] {
  -webkit-margin-after: 3rem;
          margin-block-end: 3rem;
  translate: 0.25rem 0;
  rotate: 4deg;
}
@media screen and (min-width: 476px) {
  .p-aboutus-point__title br {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutus-point__title {
    padding-block: 1rem;
  }
  .p-aboutus-point__title::after {
    inline-size: 48px;
  }
  .p-aboutus-point__title span::before, .p-aboutus-point__title span::after {
    content: "";
    inline-size: calc((100% - 48px) / 2);
  }
  .p-aboutus-point__title[data-point=charm] {
    -webkit-margin-after: 6rem;
            margin-block-end: 6rem;
    translate: -0.75rem 0;
  }
  .p-aboutus-point__title[data-point=other] {
    -webkit-margin-after: 3.875rem;
            margin-block-end: 3.875rem;
    translate: 0.75rem 0;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-point__title {
    padding-block: 1.5rem;
  }
  .p-aboutus-point__title[data-point=charm] {
    translate: -2rem 0;
  }
  .p-aboutus-point__title[data-point=other] {
    translate: 2rem 0;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-point__title {
    padding-block: 2rem;
  }
  .p-aboutus-point__title[data-point=charm] {
    -webkit-margin-after: 8rem;
            margin-block-end: 8rem;
    translate: -6rem 0;
  }
  .p-aboutus-point__title[data-point=other] {
    -webkit-margin-after: 5rem;
            margin-block-end: 5rem;
    translate: 6rem 0;
  }
}

.p-aboutus-charm {
  display: grid;
  grid-template-areas: "title" "detail" "fig";
  -webkit-margin-after: 4rem;
          margin-block-end: 4rem;
  padding-block: 1rem 0;
  border: 3px solid rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
  position: relative;
}
.p-aboutus-charm::before {
  content: "";
  inline-size: 100%;
  block-size: 100%;
  border-right: 2px solid rgb(0, 0, 0);
  border-bottom: 2px solid rgb(0, 0, 0);
  position: absolute;
  right: -0.625rem;
  bottom: -0.625rem;
}
@media screen and (min-width: 768px) {
  .p-aboutus-charm {
    grid-template-rows: auto 1fr;
    grid-template-areas: "title fig" "detail fig";
    -webkit-margin-after: 5.5rem;
            margin-block-end: 5.5rem;
    padding-block: 1rem;
  }
  .p-aboutus-charm:first-of-type {
    grid-template-areas: "fig title" "fig detail";
  }
  .p-aboutus-charm:first-of-type .p-aboutus-charm__fig {
    margin-inline: -1rem 0;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-charm {
    padding-block: 2rem;
  }
  .p-aboutus-charm:first-of-type .p-aboutus-charm__fig {
    margin-inline: -1.5rem 0;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-charm {
    padding-block: 3rem;
  }
  .p-aboutus-charm:first-of-type .p-aboutus-charm__fig {
    margin-inline: -3rem 0;
  }
}

.p-aboutus-charm__title {
  grid-area: title;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
  -webkit-padding-start: 1rem;
          padding-inline-start: 1rem;
  padding-block: 0.75rem;
  font-size: clamp(1.125rem, 0.458rem + 1.39vw, 1.5rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  line-height: 1.6;
  background-color: rgb(20, 9, 86);
}
@media screen and (min-width: 768px) {
  .p-aboutus-charm__title {
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
    -webkit-padding-start: 2rem;
            padding-inline-start: 2rem;
    padding-block: 0.75rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-charm__title {
    padding-block: 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-charm__title {
    -webkit-padding-start: 3.625rem;
            padding-inline-start: 3.625rem;
    padding-block: 1.5rem;
  }
}

.p-aboutus-charm__detail {
  grid-area: detail;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
  padding-inline: 1rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
}
@media screen and (min-width: 768px) {
  .p-aboutus-charm__detail {
    padding-inline: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-charm__detail {
    padding-inline: 3.75rem 3rem;
  }
}

.p-aboutus-charm__fig {
  grid-area: fig;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .p-aboutus-charm__fig {
    -webkit-margin-end: -1rem;
            margin-inline-end: -1rem;
    -webkit-margin-before: -4rem;
            margin-block-start: -4rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-charm__fig {
    -webkit-margin-end: -1.5rem;
            margin-inline-end: -1.5rem;
    -webkit-margin-before: -5rem;
            margin-block-start: -5rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutus-charm__fig {
    -webkit-margin-end: -3rem;
            margin-inline-end: -3rem;
    -webkit-margin-before: -6rem;
            margin-block-start: -6rem;
  }
}

.p-aboutus-other {
  display: grid;
  row-gap: 2rem;
}
@media screen and (min-width: 768px) {
  .p-aboutus-other {
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-other {
    -webkit-column-gap: 4rem;
       -moz-column-gap: 4rem;
            column-gap: 4rem;
  }
}

.p-aboutus-other__box {
  padding-inline: 1rem 1.5rem;
  padding-block: 1rem;
  border: 3px solid rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
  position: relative;
}
.p-aboutus-other__box::before {
  content: "";
  inline-size: 100%;
  block-size: 100%;
  border-right: 2px solid rgb(0, 0, 0);
  border-bottom: 2px solid rgb(0, 0, 0);
  position: absolute;
  right: -0.625rem;
  bottom: -0.625rem;
}
@media screen and (min-width: 768px) {
  .p-aboutus-other__box {
    padding-inline: 1.5rem;
    padding-block: 1.5rem 1rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutus-other__box {
    padding-inline: 2rem;
    padding-block: 2rem 1.75rem;
  }
}

.p-aboutus-other__title {
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
  -webkit-padding-start: 0.25rem;
          padding-inline-start: 0.25rem;
  padding-block: 0.5rem;
  border-left: 30px solid rgb(253, 222, 71);
  background-color: rgb(253, 229, 110);
  position: relative;
}
.p-aboutus-other__title span {
  font-size: clamp(1.125rem, 0.458rem + 1.39vw, 1.5rem);
  position: relative;
  z-index: 15;
}
.p-aboutus-other__title::before {
  content: "";
  inline-size: 48px;
  block-size: 100%;
  background-image: url(../img/aboutus-fig-06.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-aboutus-other__title {
    padding-block: 0.75rem;
    border-left: 40px solid rgb(253, 222, 71);
  }
}

.p-aboutus-other__detail {
  padding-inline: 0.5rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
  line-height: 2;
}

.p-aboutjob {
  -webkit-padding-before: 4rem;
          padding-block-start: 4rem;
}
@media screen and (min-width: 768px) {
  .p-aboutjob {
    -webkit-padding-before: 6rem;
            padding-block-start: 6rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob {
    -webkit-padding-before: 8rem;
            padding-block-start: 8rem;
  }
}

.p-aboutjob__inner {
  max-inline-size: 450px;
  -webkit-padding-after: 5rem;
          padding-block-end: 5rem;
  position: relative;
}
.p-aboutjob__inner::before {
  content: "";
  inline-size: calc(100cqi - 2vw);
  block-size: calc(100% - 72px);
  background-color: rgb(254, 237, 171);
  position: absolute;
  bottom: 0;
  left: calc(50% - 50cqi);
}
.p-aboutjob__inner .c-headline {
  -webkit-margin-after: 2rem;
          margin-block-end: 2rem;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__inner::before {
    inline-size: calc(100cqi - 16px);
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob__inner {
    max-inline-size: 980px;
    -webkit-padding-after: 8rem;
            padding-block-end: 8rem;
  }
  .p-aboutjob__inner::before {
    block-size: calc(100% - 80px);
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob__inner {
    -webkit-padding-after: 12rem;
            padding-block-end: 12rem;
  }
  .p-aboutjob__inner .c-headline {
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
    position: relative;
    z-index: 10;
  }
  .p-aboutjob__inner::before {
    inline-size: calc(100cqi - 16px);
    block-size: calc(100% - 88px);
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob__inner {
    -webkit-padding-after: 16rem;
            padding-block-end: 16rem;
  }
  .p-aboutjob__inner::before {
    inline-size: calc(100% + 50cqi - 50% + 5%);
    block-size: calc(100% - 96px);
  }
}
@media screen and (min-width: 1400px) {
  .p-aboutjob__inner::before {
    inline-size: calc(100% + 50cqi - 50% + 12%);
  }
}

.p-aboutjob__intro {
  -webkit-margin-after: 2.5rem;
          margin-block-end: 2.5rem;
  font-size: clamp(1rem, 0.333rem + 1.39vw, 1.375rem);
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__intro {
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob__intro {
    -webkit-margin-after: 4rem;
            margin-block-end: 4rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob__intro {
    -webkit-margin-after: 4.5rem;
            margin-block-end: 4.5rem;
  }
}

.paboutjob__main {
  display: grid;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-column-gap: 3.5rem;
     -moz-column-gap: 3.5rem;
          column-gap: 3.5rem;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .paboutjob__main {
    grid-template-columns: 140px 1fr;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .paboutjob__main {
    -webkit-column-gap: 3rem;
       -moz-column-gap: 3rem;
            column-gap: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .paboutjob__main {
    -webkit-column-gap: 3.5rem;
       -moz-column-gap: 3.5rem;
            column-gap: 3.5rem;
  }
}

.p-aboutjob__nav {
  display: grid;
  grid-template-columns: repeat(2, 130px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  -webkit-margin-after: 3rem;
          margin-block-end: 3rem;
  position: relative;
}
.p-aboutjob__nav::after {
  content: "お仕事名クリックで表示を切り替えられます。";
  inline-size: 100%;
  font-size: 0.875rem;
  line-height: 1.4;
  text-align: center;
  position: absolute;
  left: 0;
  bottom: 0;
  translate: 0 150%;
}
@media screen and (min-width: 768px) {
  .p-aboutjob__nav {
    grid-template-columns: 1fr;
  }
  .p-aboutjob__nav::after {
    content: "お仕事名クリックで\a表示を切り替えられ\aます。";
    white-space: pre;
    -webkit-padding-start: 0.75rem;
            padding-inline-start: 0.75rem;
    -webkit-padding-before: 1rem;
            padding-block-start: 1rem;
    text-align: left;
    position: relative;
    left: auto;
    bottom: auto;
    translate: none;
  }
}

.p-aboutjob__nav-item {
  text-align: left;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-aboutjob__nav-item:not(:last-of-type) {
    -webkit-padding-after: 4rem;
            padding-block-end: 4rem;
  }
  .p-aboutjob__nav-item:not(:last-of-type)::before {
    content: "";
    inline-size: 2px;
    block-size: calc(100% - 22px - 6px);
    background-color: rgb(20, 9, 86);
    position: absolute;
    right: 0.625rem;
    top: 1.5rem;
  }
}

.p-aboutjob__nav-num {
  -webkit-margin-after: 0.5rem;
          margin-block-end: 0.5rem;
  -webkit-padding-start: 0.75rem;
          padding-inline-start: 0.75rem;
  -webkit-padding-before: 0.0625rem;
          padding-block-start: 0.0625rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
  font-weight: bold;
  color: rgb(139, 133, 172);
  position: relative;
  cursor: pointer;
}
.p-aboutjob__nav-num::after {
  content: "";
  inline-size: 16px;
  block-size: 16px;
  clip-path: circle(50% at 50% 50%);
  background-color: rgb(139, 133, 172);
  position: absolute;
  top: 0.125rem;
  right: 0.1875rem;
}

.js_tab_stat1 .p-aboutjob__nav-item[data-number="1"] .p-aboutjob__nav-num,
.js_tab_stat2 .p-aboutjob__nav-item[data-number="2"] .p-aboutjob__nav-num {
  color: rgb(85, 1, 43);
}
.js_tab_stat1 .p-aboutjob__nav-item[data-number="1"] .p-aboutjob__nav-num::before,
.js_tab_stat2 .p-aboutjob__nav-item[data-number="2"] .p-aboutjob__nav-num::before {
  content: "";
  inline-size: 100%;
  block-size: 22px;
  color: rgb(85, 1, 43);
  border-radius: 18px;
  background-color: rgb(255, 255, 255);
  position: absolute;
  top: -0.0625rem;
  left: 0;
  z-index: -1;
}
.js_tab_stat1 .p-aboutjob__nav-item[data-number="1"] .p-aboutjob__nav-num::after,
.js_tab_stat2 .p-aboutjob__nav-item[data-number="2"] .p-aboutjob__nav-num::after {
  inline-size: 16px;
  block-size: 14px;
  background-color: rgb(85, 1, 43);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  top: 0.1875rem;
  right: 0.375rem;
}
.js_tab_stat1 .p-aboutjob__nav-item[data-number="1"] .p-aboutjob__nav-label,
.js_tab_stat2 .p-aboutjob__nav-item[data-number="2"] .p-aboutjob__nav-label {
  color: rgb(85, 1, 43);
}
@media screen and (min-width: 768px) {
  .js_tab_stat1 .p-aboutjob__nav-item[data-number="1"] .p-aboutjob__nav-num::after,
  .js_tab_stat2 .p-aboutjob__nav-item[data-number="2"] .p-aboutjob__nav-num::after {
    inline-size: 14px;
    block-size: 16px;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    top: 0.125rem;
    right: 0.1875rem;
  }
}

.p-aboutjob__nav-item:hover .p-aboutjob__nav-num {
  color: rgb(85, 1, 43);
}
.p-aboutjob__nav-item:hover .p-aboutjob__nav-num::after {
  background-color: rgb(85, 1, 43);
}
.p-aboutjob__nav-item:hover .p-aboutjob__nav-label {
  color: rgb(85, 1, 43);
}

.p-aboutjob__nav-num {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-aboutjob__nav-num::after {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-aboutjob__nav-label {
  -webkit-padding-start: 0.75rem;
          padding-inline-start: 0.75rem;
  font-size: clamp(1.25rem, 0.806rem + 0.93vw, 1.5rem);
  font-weight: bold;
  color: rgb(139, 133, 172);
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.js_tab_stat1 .p-aboutjob__block #aboutjob01,
.js_tab_stat2 .p-aboutjob__block #aboutjob02 {
  display: block;
}

.p-aboutjob__box {
  display: none;
  border: 3px solid rgb(85, 1, 43);
  background-color: rgb(255, 255, 255);
}

#aboutjob02.p-aboutjob__box {
  border: 3px solid rgb(20, 9, 86);
}

.p-aboutjob__box-inner {
  display: grid;
  grid-template-areas: "num" "detail" "fig" "point";
  -webkit-column-gap: 1.5rem;
     -moz-column-gap: 1.5rem;
          column-gap: 1.5rem;
  padding-inline: 1.5rem;
  -webkit-padding-after: 2rem;
          padding-block-end: 2rem;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__box-inner {
    grid-template-columns: 250px 1fr;
    grid-template-rows: auto 1fr auto;
    grid-template-areas: "num fig" "detail fig" "point point";
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob__box-inner {
    grid-template-columns: 250px 1fr;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
    padding-inline: 2rem;
    -webkit-padding-after: 3rem;
            padding-block-end: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob__box-inner {
    grid-template-columns: 290px 1fr;
    -webkit-column-gap: 3rem;
       -moz-column-gap: 3rem;
            column-gap: 3rem;
    padding-inline: 3rem;
    -webkit-padding-after: 3.5rem;
            padding-block-end: 3.5rem;
  }
}

#aboutjob02 .p-aboutjob__box-inner {
  grid-template-areas: "num" "detail" "fig" "point" "video";
}
@media screen and (min-width: 576px) {
  #aboutjob02 .p-aboutjob__box-inner {
    grid-template-rows: auto 1fr auto auto;
    grid-template-areas: "num fig" "detail fig" "point point" "video video";
  }
}

.p-aboutjob__num {
  grid-area: num;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  max-inline-size: 250px;
  -webkit-margin-start: -1.5rem;
          margin-inline-start: -1.5rem;
  -webkit-margin-after: 1.25rem;
          margin-block-end: 1.25rem;
  -webkit-padding-start: 1.5rem;
          padding-inline-start: 1.5rem;
  padding-block: 0.5rem 0.625rem;
  font-size: clamp(1.5rem, 0.611rem + 1.85vw, 2rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  line-height: 1;
  border-bottom-right-radius: 33px;
  background-color: rgb(85, 1, 43);
}
.p-aboutjob__num span {
  font-size: 0.75em;
}
@media screen and (min-width: 768px) {
  .p-aboutjob__num {
    max-inline-size: 100%;
    -webkit-margin-after: 1.5rem;
            margin-block-end: 1.5rem;
    padding-block: 1.25rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob__num {
    -webkit-margin-start: -2rem;
            margin-inline-start: -2rem;
    -webkit-padding-start: 2rem;
            padding-inline-start: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob__num {
    -webkit-margin-start: -3rem;
            margin-inline-start: -3rem;
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
    -webkit-padding-start: 3rem;
            padding-inline-start: 3rem;
  }
}

#aboutjob02 .p-aboutjob__num {
  background-color: rgb(20, 9, 86);
}

.p-aboutjob__detail {
  grid-area: detail;
  -webkit-margin-after: 1.25rem;
          margin-block-end: 1.25rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
  line-height: 2;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__detail {
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob__detail {
    -webkit-margin-after: 4rem;
            margin-block-end: 4rem;
  }
}

.p-aboutjob__fig {
  grid-area: fig;
  -webkit-margin-after: 3rem;
          margin-block-end: 3rem;
}
.p-aboutjob__fig img {
  -o-object-fit: cover;
     object-fit: cover;
  inline-size: 100%;
  block-size: 100%;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__fig {
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
    -webkit-padding-before: 2rem;
            padding-block-start: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob__fig {
    -webkit-margin-after: 4rem;
            margin-block-end: 4rem;
    -webkit-padding-before: 3rem;
            padding-block-start: 3rem;
  }
}

.p-aboutjob-point {
  grid-area: point;
  border-radius: 20px;
  padding-inline: 1rem;
  -webkit-padding-after: 1rem;
          padding-block-end: 1rem;
  background-color: rgb(237, 228, 225);
}
@media screen and (min-width: 992px) {
  .p-aboutjob-point {
    padding-inline: 1.5rem;
    -webkit-padding-after: 1.5rem;
            padding-block-end: 1.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob-point {
    padding-inline: 2rem;
    -webkit-padding-after: 2rem;
            padding-block-end: 2rem;
  }
}

.p-aboutjob-point__title {
  max-inline-size: 315px;
  margin-inline: auto;
  margin-block: -1.25rem 1rem;
  padding-block: 0.625rem;
  font-size: clamp(1.125rem, 0.903rem + 0.46vw, 1.25rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  line-height: 1;
  text-align: center;
  border-radius: 30px;
  background-color: rgb(152, 102, 127);
}
@media screen and (min-width: 768px) {
  .p-aboutjob-point__title {
    margin-block: -1.25rem 1.5rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob-point__title {
    margin-block: -1.25rem 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob-point__title {
    margin-block: -1.25rem 2.5rem;
  }
}

#aboutjob02 .p-aboutjob-point__title {
  background-color: rgb(89, 82, 136);
}

.p-aboutjob-point__list {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.5rem;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-aboutjob-point__list {
    grid-template-columns: repeat(4, auto);
    gap: 0.5rem 1rem;
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob-point__list {
    gap: 0.75rem 1.5rem;
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob-point__list {
    gap: 1rem 2rem;
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
  }
}

.p-aboutjob-point__list-item {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  -webkit-padding-start: 0.8em;
          padding-inline-start: 0.8em;
  font-size: clamp(1rem, 0.111rem + 1.85vw, 1.5rem);
  font-weight: bold;
  color: rgb(85, 1, 43);
  position: relative;
}
.p-aboutjob-point__list-item::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .p-aboutjob-point__list-item {
    gap: 0;
  }
}

#aboutjob02 .p-aboutjob-point__list-item {
  color: rgb(20, 9, 86);
}

.p-aboutjob-point__note {
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
}

.p-aboutjob-point__video {
  grid-area: video;
  -webkit-padding-before: 1.25rem;
          padding-block-start: 1.25rem;
}
@media screen and (min-width: 576px) {
  .p-aboutjob-point__video {
    -webkit-padding-before: 2rem;
            padding-block-start: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob-point__video {
    -webkit-padding-before: 2.5rem;
            padding-block-start: 2.5rem;
  }
}

.p-aboutjob-point__video-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 100%;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  max-inline-size: 514px;
  block-size: 50px;
  margin-inline: auto;
  font-size: clamp(1rem, 0.556rem + 0.93vw, 1.25rem);
  font-weight: bold;
  color: rgb(20, 9, 86);
  border: 3px solid rgb(20, 9, 86);
  border-radius: 30px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-aboutjob-point__video-link::after {
  content: "";
  inline-size: 28px;
  block-size: 100%;
  background-image: url(../img/aboutjob-fig-03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}
.p-aboutjob-point__video-link:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
.p-aboutjob-point__video-link:hover::after {
  background-image: url(../img/aboutjob-fig-04.png);
}
@media screen and (min-width: 768px) {
  .p-aboutjob-point__video-link {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
    block-size: 60px;
  }
  .p-aboutjob-point__video-link::after {
    content: "";
    inline-size: 34px;
  }
}

.p-aboutjob__deco01 {
  inline-size: 180px;
  position: absolute;
  left: 0rem;
  bottom: -4rem;
  z-index: 10;
}
@media screen and (min-width: 576px) {
  .p-aboutjob__deco01 {
    inline-size: 160px;
    bottom: -2rem;
    left: 1rem;
    translate: -30% 0;
  }
}
@media screen and (min-width: 768px) {
  .p-aboutjob__deco01 {
    inline-size: 200px;
    translate: none;
  }
}
@media screen and (min-width: 992px) {
  .p-aboutjob__deco01 {
    inline-size: 220px;
  }
}
@media screen and (min-width: 1200px) {
  .p-aboutjob__deco01 {
    inline-size: 250px;
    left: -3rem;
  }
}

.p-staffsvoice {
  padding-block: 5rem;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice {
    padding-block: 7rem;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice {
    padding-block: 11rem 9.25rem;
  }
}

.p-staffsvoice__inner {
  max-inline-size: 450px;
  -webkit-padding-after: 3.5rem;
          padding-block-end: 3.5rem;
  position: relative;
}
.p-staffsvoice__inner::before {
  content: "";
  inline-size: calc(100% + 50cqi - 50% + 12%);
  block-size: calc(100% - 48px);
  background-color: rgb(85, 1, 43);
  background-image: url(../img/staffsvoice-fig-08.png);
  background-size: 40px;
  position: absolute;
  bottom: 0;
  right: calc(50% - 50cqi);
}
.p-staffsvoice__inner .c-headline {
  -webkit-margin-after: 3rem;
          margin-block-end: 3rem;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__inner {
    max-inline-size: 980px;
  }
  .p-staffsvoice__inner::before {
    background-size: 55px;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice__inner::before {
    background-size: 70px;
  }
}

.p-staffsvoice__main {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 2rem;
  max-inline-size: 250px;
  margin-inline: auto;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__main {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    max-inline-size: 100%;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice__main {
    -webkit-column-gap: 1.5rem;
       -moz-column-gap: 1.5rem;
            column-gap: 1.5rem;
  }
}

.p-staffsvoice__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-staffsvoice__box:nth-of-type(2) .p-staffsvoice__bubble-detail {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
}

.p-staffsvoice__bubble {
  max-inline-size: 220px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__bubble {
    max-inline-size: 253px;
  }
}

.p-staffsvoice__bubble-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  block-size: 100%;
  inline-size: 100%;
  -webkit-padding-after: 1.5rem;
          padding-block-end: 1.5rem;
  font-size: clamp(0.938rem, 0.604rem + 0.69vw, 1.125rem);
  font-weight: bold;
  color: rgb(85, 1, 43);
  position: absolute;
  top: 0;
  left: 0;
}

.p-staffsvoice__fig {
  -webkit-margin-before: -1rem;
          margin-block-start: -1rem;
  padding-inline: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__fig {
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
}

.p-staffsvoice__info {
  display: grid;
  grid-template-columns: 90px auto;
  grid-template-areas: "name note" "data data";
  inline-size: 100%;
  margin-block: -4rem 1rem;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__info {
    margin-block: -2.25rem 1rem;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice__info {
    grid-template-columns: 105px auto;
  }
}

.p-staffsvoice-name {
  grid-area: name;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  block-size: 36px;
  font-size: clamp(1.125rem, 0.903rem + 0.46vw, 1.25rem);
  font-weight: 500;
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}

.p-staffsvoice-note {
  grid-area: note;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: clamp(0.75rem, 0.528rem + 0.46vw, 0.875rem);
  font-weight: 500;
  color: rgb(255, 255, 255);
}

.p-staffsvoice-data {
  grid-area: data;
  padding-inline: 0.75rem;
  padding-block: 0.625rem;
  font-size: clamp(0.875rem, 0.653rem + 0.46vw, 1rem);
  font-weight: 500;
  border: 3px solid rgb(20, 9, 86);
  background-color: rgb(255, 255, 255);
}
@media screen and (min-width: 768px) {
  .p-staffsvoice-data {
    padding-block: 0.75rem;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice-data {
    padding-inline: 1rem;
    padding-block: 1rem;
  }
}

.p-staffsvoice__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 100%;
  max-inline-size: 184px;
  block-size: 40px;
  margin-inline: auto;
  font-weight: 500;
  color: rgb(20, 9, 86);
  border-radius: 20px;
  background-color: rgb(255, 255, 255);
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-staffsvoice__button::after {
  content: "";
  inline-size: 9px;
  block-size: 100%;
  background-image: url(../img/staffsvoice-fig-09.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  right: 1.25rem;
}
.p-staffsvoice__button:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
.p-staffsvoice__button:hover::after {
  background-image: url(../img/staffsvoice-fig-10.png);
}

.p-staffsvoice__deco01 {
  max-inline-size: 350px;
  position: absolute;
  top: 3rem;
  left: -12%;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__deco01 {
    max-inline-size: 600px;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice__deco01 {
    max-inline-size: 725px;
  }
}

.p-staffsvoice__deco02 {
  max-inline-size: 240px;
  position: absolute;
  right: calc(50% - 50cqi);
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-staffsvoice__deco02 {
    max-inline-size: 320px;
  }
}
@media screen and (min-width: 992px) {
  .p-staffsvoice__deco02 {
    max-inline-size: 440px;
  }
}

.p-jobsearch {
  background-color: rgb(247, 246, 245);
}

.p-jobsearch__inner {
  max-inline-size: 450px;
  padding-block: 4rem;
  position: relative;
}
.p-jobsearch__inner .c-headline {
  -webkit-margin-after: 4rem;
          margin-block-end: 4rem;
}
@media screen and (min-width: 768px) {
  .p-jobsearch__inner {
    max-inline-size: 980px;
    padding-block: 6rem;
  }
}
@media screen and (min-width: 992px) {
  .p-jobsearch__inner {
    padding-block: 8rem;
  }
}

.p-jobsearch__title {
  display: grid;
  grid-template-columns: 32px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  -webkit-margin-after: 2rem;
          margin-block-end: 2rem;
  font-size: clamp(1.375rem, 0.708rem + 1.39vw, 1.75rem);
  font-weight: bold;
}
.p-jobsearch__title::before {
  content: "";
  block-size: 2px;
  background-color: rgb(0, 0, 0);
}
@media screen and (min-width: 576px) {
  .p-jobsearch__title {
    grid-template-columns: 48px 1fr;
  }
}
@media screen and (min-width: 768px) {
  .p-jobsearch__title {
    grid-template-columns: 64px 1fr;
  }
}
@media screen and (min-width: 992px) {
  .p-jobsearch__title {
    grid-template-columns: 80px 1fr;
  }
}

.p-jobsearch__list {
  display: grid;
  gap: 1rem;
  -webkit-margin-after: 2rem;
          margin-block-end: 2rem;
}
@media screen and (min-width: 476px) {
  .p-jobsearch__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .p-jobsearch__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
  }
}
@media screen and (min-width: 992px) {
  .p-jobsearch__list {
    gap: 2.5rem;
    -webkit-margin-after: 4rem;
            margin-block-end: 4rem;
  }
}

.p-jobsearch__box {
  padding-inline: 0.625rem;
  padding-block: 0.625rem 1rem;
  border: 2px solid rgb(20, 9, 86);
  background-color: rgb(255, 255, 255);
}
.p-jobsearch__box * {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-jobsearch__box:hover * {
  opacity: 0.5;
}

.p-jobsearch-fig {
  -webkit-margin-after: 0.75rem;
          margin-block-end: 0.75rem;
}

.p-jobsearch-name {
  -webkit-margin-after: 0.75rem;
          margin-block-end: 0.75rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
  border-radius: 20px;
  background-color: rgb(251, 234, 166);
  text-align: center;
}

.p-jobsearch-info {
  padding-inline: 0.625rem;
  line-height: 1.6;
}

.p-jobsearch-type {
  display: grid;
  row-gap: 2rem;
}
@media screen and (min-width: 768px) {
  .p-jobsearch-type {
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .p-jobsearch-type {
    -webkit-column-gap: 3rem;
       -moz-column-gap: 3rem;
            column-gap: 3rem;
  }
}

.p-jobsearch-type__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  block-size: 50px;
  font-size: clamp(1.125rem, 0.903rem + 0.46vw, 1.25rem);
  font-weight: bold;
  color: rgb(20, 9, 86);
  border: 3px solid rgb(20, 9, 86);
  border-radius: 30px;
  background-color: rgb(255, 255, 255);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-jobsearch-type__button::after {
  content: "";
  inline-size: 10px;
  block-size: 100%;
  background-image: url(../img/jobsearch-fig-07.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}
.p-jobsearch-type__button:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
.p-jobsearch-type__button:hover::after {
  background-image: url(../img/jobsearch-fig-08.png);
}
@media screen and (min-width: 768px) {
  .p-jobsearch-type__button {
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
    block-size: 60px;
  }
  .p-jobsearch-type__button::after {
    content: "";
    inline-size: 14px;
  }
}

.p-jobsearch__deco01 {
  inline-size: 200px;
  position: absolute;
  top: -4rem;
  right: 0;
}
@media screen and (min-width: 576px) {
  .p-jobsearch__deco01 {
    inline-size: 260px;
    top: -3rem;
  }
}
@media screen and (min-width: 768px) {
  .p-jobsearch__deco01 {
    inline-size: 300px;
    top: -2rem;
  }
}
@media screen and (min-width: 992px) {
  .p-jobsearch__deco01 {
    inline-size: 360px;
    top: -1rem;
  }
}

.l-modal .modal_inner {
  inline-size: 100%;
  max-inline-size: 900px;
  margin: 0;
  margin-inline: 4vw;
  margin-block: 2rem;
}
@media screen and (min-width: 768px) {
  .l-modal .modal_inner {
    margin-inline: 2rem;
  }
}

.p-modal {
  -webkit-padding-after: 3.5rem;
          padding-block-end: 3.5rem;
  background-color: rgb(85, 1, 43);
  position: relative;
}

.p-modal__label {
  padding-inline: 1rem;
  font-size: clamp(1.25rem, 0.472rem + 1.62vw, 1.688rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  letter-spacing: 0.1em;
  background-color: rgb(20, 9, 86);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
}

.p-modal___head {
  position: relative;
  padding-inline: 4vw;
  -webkit-padding-before: 4rem;
          padding-block-start: 4rem;
}
.p-modal___head::before {
  content: "";
  inline-size: 100%;
  block-size: 100%;
  background-color: rgb(85, 1, 43);
  background-image: url(../img/staffsvoice-fig-08.png);
  background-size: 40px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .p-modal___head {
    padding-inline: 2rem;
  }
  .p-modal___head::before {
    background-size: 45px;
  }
}
@media screen and (min-width: 992px) {
  .p-modal___head::before {
    background-size: 55px;
  }
}

.p-modal___head-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-inline-size: 740px;
  margin-inline: auto;
  position: relative;
  z-index: 20;
}
@media screen and (min-width: 576px) {
  .p-modal___head-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-voicemodal__fig {
  inline-size: 200px;
  -webkit-padding-start: 0.75rem;
          padding-inline-start: 0.75rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-voicemodal__fig {
    inline-size: 38%;
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
  }
}

.p-voicemodal__fig-note {
  font-size: 0.875rem;
  color: rgb(255, 255, 255);
  position: absolute;
  bottom: 0;
  left: 0;
}

.p-voicemodal__detail {
  padding-block: 1rem;
}

.p-voicemodal__copy {
  -webkit-margin-after: 2rem;
          margin-block-end: 2rem;
  font-size: clamp(1.25rem, 0.558rem + 1.92vw, 1.75rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
}
.p-voicemodal__copy span {
  border-bottom: 4px solid rgb(252, 200, 0);
}
@media screen and (min-width: 576px) {
  .p-voicemodal__copy {
    -webkit-margin-start: -2rem;
            margin-inline-start: -2rem;
  }
}

.p-voicemodal__info {
  max-inline-size: 320px;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}

.p-voicemodal-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 105px;
  block-size: 36px;
  font-size: clamp(1.125rem, 0.903rem + 0.46vw, 1.25rem);
  font-weight: 500;
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}

.p-voicemodal-data {
  padding-inline: 0.625rem;
  padding-block: 0.625rem;
  font-size: clamp(0.875rem, 0.653rem + 0.46vw, 1rem);
  font-weight: 500;
  border: 3px solid rgb(20, 9, 86);
  background-color: rgb(255, 255, 255);
}
@media screen and (min-width: 768px) {
  .p-voicemodal-data {
    padding-inline: 1rem;
    padding-block: 1rem;
  }
}

.p-voicemodal__deco01 {
  max-inline-size: 210px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .p-voicemodal__deco01 {
    max-inline-size: 250px;
  }
}
@media screen and (min-width: 992px) {
  .p-voicemodal__deco01 {
    max-inline-size: 285px;
  }
}

.p-voicemodal__deco02 {
  max-inline-size: 200px;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-voicemodal__deco02 {
    max-inline-size: 230px;
  }
}
@media screen and (min-width: 992px) {
  .p-voicemodal__deco02 {
    max-inline-size: 270px;
  }
}

.p-voicemoda-faq {
  display: grid;
  row-gap: 2rem;
  counter-reset: number 0;
  padding-inline: 4vw;
  -webkit-margin-after: 3.5rem;
          margin-block-end: 3.5rem;
}
@media screen and (min-width: 768px) {
  .p-voicemoda-faq {
    padding-inline: 2rem;
  }
}

.p-voicemoda-faq__box {
  inline-size: 100%;
  max-inline-size: 740px;
  margin-inline: auto;
  background-color: rgb(255, 255, 255);
}

.p-voicemoda-faq__head {
  display: grid;
  grid-template-columns: 50px 1fr;
  border: 3px solid rgb(20, 9, 86);
}
.p-voicemoda-faq__head span {
  padding-inline: 0.75rem;
  padding-block: 0.75rem;
  font-size: clamp(1rem, 0.889rem + 0.23vw, 1.063rem);
  font-weight: bold;
}
.p-voicemoda-faq__head::before {
  counter-increment: number 1;
  content: "Q" counter(number);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 100%;
  block-size: 100%;
  font-size: clamp(1.25rem, 0.806rem + 0.93vw, 1.5rem);
  font-weight: bold;
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
@media screen and (min-width: 576px) {
  .p-voicemoda-faq__head span {
    padding-inline: 0.875rem;
    padding-block: 0.875rem;
  }
}
@media screen and (min-width: 768px) {
  .p-voicemoda-faq__head {
    grid-template-columns: 60px 1fr;
  }
  .p-voicemoda-faq__head span {
    padding-inline: 1rem;
    padding-block: 1rem;
  }
}

.p-voicemoda-faq__body {
  padding-inline: 1rem;
  padding-block: 1rem;
  font-size: clamp(1rem, 0.778rem + 0.46vw, 1.125rem);
  background-color: rgb(255, 255, 255);
}
@media screen and (min-width: 576px) {
  .p-voicemoda-faq__body {
    padding-inline: 1.5rem;
    padding-block: 1.25rem;
  }
}
@media screen and (min-width: 768px) {
  .p-voicemoda-faq__body {
    padding-inline: 1.75rem;
    padding-block: 1.5rem;
  }
}

.p-modalmenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 1rem;
}
@media screen and (min-width: 576px) {
  .p-modalmenu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}

.p-modalmenu__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 100%;
  max-inline-size: 184px;
  block-size: 40px;
  font-weight: 500;
  color: rgb(20, 9, 86);
  border-radius: 20px;
  background-color: rgb(255, 255, 255);
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-modalmenu__link::after {
  content: "";
  inline-size: 9px;
  block-size: 100%;
  background-image: url(../img/staffsvoice-fig-09.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  right: 1.25rem;
}
.p-modalmenu__link:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
.p-modalmenu__link:hover::after {
  background-image: url(../img/staffsvoice-fig-10.png);
}

.p-modalmenu__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  inline-size: 184px;
  block-size: 40px;
  font-size: 1rem;
  font-weight: 500;
  color: rgb(20, 9, 86);
  border-radius: 20px;
  background-color: rgb(255, 255, 255);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-modalmenu__button span {
  display: block;
  inline-size: 16px;
  block-size: 16px;
  position: relative;
}
.p-modalmenu__button span::before, .p-modalmenu__button span::after {
  content: "";
  inline-size: 2px;
  block-size: 20px;
  border-radius: 2px;
  background-color: rgb(20, 9, 86);
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-modalmenu__button span::before {
  rotate: 45deg;
}
.p-modalmenu__button span::after {
  rotate: -45deg;
}
.p-modalmenu__button:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(20, 9, 86);
}
.p-modalmenu__button:hover span::before, .p-modalmenu__button:hover span::after {
  background-color: rgb(255, 255, 255);
}