/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-duration: initial;
      --tw-content: "";
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --color-white: #fff;
    --spacing: 1rem;
    --text-sm: calc(1.4rem * var(--font-scale));
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: calc(1.6rem * var(--font-scale));
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: calc(1.8rem * var(--font-scale));
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: calc(2.2rem * var(--font-scale));
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: calc(2.6rem * var(--font-scale));
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-wide: .025em;
    --leading-normal: 1.5;
    --radius-3xl: 1.5rem;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary: #1fddcd;
    --color-secondary: #fff836;
    --color-1day: #ffd16c;
    --color-1day-secondary: #fff836;
    --color-light-orange: #fddf9c;
    --color-cyan: #99efe8;
    --color-body: #4c4948;
    --color-light-gray: #ccc;
    --color-gray: #707070;
    --color-red: #d80f17;
    --font-jost: "Jost", sans-serif;
    --font-noto-sans: "Noto Sans JP", sans-serif;
    --font-scale: 1;
    --radius-default: 2rem;
    --border-width-1: max(1px, .1rem);
    --border-width-2: max(2px, .2rem);
    --border-width-3: max(3px, .3rem);
  }
}

@layer base {
  svg {
    max-width: 100%;
    height: auto;
  }

  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

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

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer default, parts;

@layer utilities {
  .\@container {
    container-type: inline-size;
  }

  .pointer-events-none {
    pointer-events: none;
  }

  .absolute {
    position: absolute;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .-top-5\.5 {
    top: calc(var(--spacing) * -5.5);
  }

  .top-1\/2 {
    top: 50%;
  }

  .top-\[8\.5cqw\] {
    top: 8.5cqw;
  }

  .top-\[171cqw\] {
    top: 171cqw;
  }

  .top-full {
    top: 100%;
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .right-1 {
    right: calc(var(--spacing) * 1);
  }

  .right-2 {
    right: calc(var(--spacing) * 2);
  }

  .-bottom-0\.5 {
    bottom: calc(var(--spacing) * -.5);
  }

  .-bottom-1 {
    bottom: calc(var(--spacing) * -1);
  }

  .bottom-1 {
    bottom: calc(var(--spacing) * 1);
  }

  .-left-1\.5 {
    left: calc(var(--spacing) * -1.5);
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .left-1 {
    left: calc(var(--spacing) * 1);
  }

  .left-1\/2 {
    left: 50%;
  }

  .left-2 {
    left: calc(var(--spacing) * 2);
  }

  .z-0 {
    z-index: 0;
  }

  .z-1 {
    z-index: 1;
  }

  .z-10 {
    z-index: 10;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 768px) {
    .container {
      max-width: 768px;
    }
  }

  @media (min-width: 1480px) {
    .container {
      max-width: 1480px;
    }
  }

  .m-0 {
    margin: calc(var(--spacing) * 0);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-1\.5 {
    margin-block: calc(var(--spacing) * 1.5);
  }

  .my-4 {
    margin-block: calc(var(--spacing) * 4);
  }

  .-mt-1 {
    margin-top: calc(var(--spacing) * -1);
  }

  .-mt-3 {
    margin-top: calc(var(--spacing) * -3);
  }

  .-mt-8 {
    margin-top: calc(var(--spacing) * -8);
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }

  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }

  .mt-3\.5 {
    margin-top: calc(var(--spacing) * 3.5);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }

  .mt-7\.5 {
    margin-top: calc(var(--spacing) * 7.5);
  }

  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }

  .mt-\[2cqw\] {
    margin-top: 2cqw;
  }

  .mt-\[64cqw\] {
    margin-top: 64cqw;
  }

  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }

  .mb-0\.5 {
    margin-bottom: calc(var(--spacing) * .5);
  }

  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }

  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }

  .mb-3\.5 {
    margin-bottom: calc(var(--spacing) * 3.5);
  }

  .ml-auto {
    margin-left: auto;
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .inline-grid {
    display: inline-grid;
  }

  .aspect-2\/1 {
    aspect-ratio: 2;
  }

  .aspect-29\/20 {
    aspect-ratio: 29 / 20;
  }

  .aspect-square {
    aspect-ratio: 1;
  }

  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }

  .size-\[1em\] {
    width: 1em;
    height: 1em;
  }

  .h-\[1\.1em\] {
    height: 1.1em;
  }

  .h-\[85\%\] {
    height: 85%;
  }

  .h-full {
    height: 100%;
  }

  .min-h-\[4em\] {
    min-height: 4em;
  }

  .min-h-\[6em\] {
    min-height: 6em;
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-15 {
    width: calc(var(--spacing) * 15);
  }

  .w-29 {
    width: calc(var(--spacing) * 29);
  }

  .w-32 {
    width: calc(var(--spacing) * 32);
  }

  .w-\[3px\] {
    width: 3px;
  }

  .w-\[85\%\] {
    width: 85%;
  }

  .w-\[89cqw\] {
    width: 89cqw;
  }

  .w-fit {
    width: fit-content;
  }

  .w-full {
    width: 100%;
  }

  .max-w-30 {
    max-width: calc(var(--spacing) * 30);
  }

  .max-w-90 {
    max-width: calc(var(--spacing) * 90);
  }

  .max-w-\[18em\] {
    max-width: 18em;
  }

  .max-w-\[60\.6rem\] {
    max-width: 60.6rem;
  }

  .max-w-fit {
    max-width: fit-content;
  }

  .max-w-full {
    max-width: 100%;
  }

  .min-w-8\.5 {
    min-width: calc(var(--spacing) * 8.5);
  }

  .min-w-32 {
    min-width: calc(var(--spacing) * 32);
  }

  .min-w-\[10em\] {
    min-width: 10em;
  }

  .min-w-\[13em\] {
    min-width: 13em;
  }

  .flex-grow, .grow {
    flex-grow: 1;
  }

  .border-collapse {
    border-collapse: collapse;
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .scale-100 {
    --tw-scale-x: 100%;
    --tw-scale-y: 100%;
    --tw-scale-z: 100%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .scale-110 {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .list-disc {
    list-style-type: disc;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-\[1\.3em_1fr\] {
    grid-template-columns: 1.3em 1fr;
  }

  .grid-cols-\[1\.4em_1fr\] {
    grid-template-columns: 1.4em 1fr;
  }

  .grid-cols-\[1fr_auto_1fr\] {
    grid-template-columns: 1fr auto 1fr;
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .content-center {
    align-content: center;
  }

  .items-center {
    align-items: center;
  }

  .items-start {
    align-items: flex-start;
  }

  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-5\.5 {
    gap: calc(var(--spacing) * 5.5);
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }

  :where(.space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
  }

  .gap-y-5 {
    row-gap: calc(var(--spacing) * 5);
  }

  .self-center {
    align-self: center;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }

  .rounded-default {
    border-radius: var(--radius-default);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-t-default {
    border-top-left-radius: var(--radius-default);
    border-top-right-radius: var(--radius-default);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .border-1 {
    border-style: var(--tw-border-style);
    border-width: var(--border-width-1);
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2);
  }

  .border-3 {
    border-style: var(--tw-border-style);
    border-width: var(--border-width-3);
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-body {
    border-color: var(--color-body);
  }

  .border-gray {
    border-color: var(--color-gray);
  }

  .border-light-gray {
    border-color: var(--color-light-gray);
  }

  .border-primary {
    border-color: var(--color-primary);
  }

  .border-secondary {
    border-color: var(--color-secondary);
  }

  .bg-1day {
    background-color: var(--color-1day);
  }

  .bg-1day-secondary\/20 {
    background-color: #fff83633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-1day-secondary\/20 {
      background-color: color-mix(in oklab, var(--color-1day-secondary) 20%, transparent);
    }
  }

  .bg-\[\#FDDF9C\] {
    background-color: #fddf9c;
  }

  .bg-body {
    background-color: var(--color-body);
  }

  .bg-cyan {
    background-color: var(--color-cyan);
  }

  .bg-gray {
    background-color: var(--color-gray);
  }

  .bg-light-orange {
    background-color: var(--color-light-orange);
  }

  .bg-primary {
    background-color: var(--color-primary);
  }

  .bg-primary\/10 {
    background-color: #1fddcd1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary\/10 {
      background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
    }
  }

  .bg-primary\/12 {
    background-color: #1fddcd1f;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary\/12 {
      background-color: color-mix(in oklab, var(--color-primary) 12%, transparent);
    }
  }

  .bg-primary\/30 {
    background-color: #1fddcd4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary\/30 {
      background-color: color-mix(in oklab, var(--color-primary) 30%, transparent);
    }
  }

  .bg-primary\/50 {
    background-color: #1fddcd80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary\/50 {
      background-color: color-mix(in oklab, var(--color-primary) 50%, transparent);
    }
  }

  .bg-red {
    background-color: var(--color-red);
  }

  .bg-secondary {
    background-color: var(--color-secondary);
  }

  .bg-tint-primary\/90 {
    background-color: color-mix(in srgb, #1fddcd, white calc(90 * 1%));
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-tint-primary\/90 {
      background-color: color-mix(in srgb, var(--color-primary), white calc(90 * 1%));
    }
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .mask-\[url\(\/csp\/lp\/media\/images\/common\/icon-question1\.svg\)\] {
    -webkit-mask-image: url("/csp/lp/media/images/common/icon-question1.svg");
    mask-image: url("/csp/lp/media/images/common/icon-question1.svg");
  }

  .mask-contain {
    -webkit-mask-size: contain;
    mask-size: contain;
  }

  .mask-repeat {
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
  }

  .fill-secondary {
    fill: var(--color-secondary);
  }

  .object-contain {
    object-fit: contain;
  }

  .p-0 {
    padding: calc(var(--spacing) * 0);
  }

  .p-1 {
    padding: calc(var(--spacing) * 1);
  }

  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-\[0\.2\] {
    padding: .2px;
  }

  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }

  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-7\.5 {
    padding-block: calc(var(--spacing) * 7.5);
  }

  .py-12\.5 {
    padding-block: calc(var(--spacing) * 12.5);
  }

  .pt-2\.5 {
    padding-top: calc(var(--spacing) * 2.5);
  }

  .pt-7\.5 {
    padding-top: calc(var(--spacing) * 7.5);
  }

  .pr-\[3\.3\] {
    padding-right: 3.3px;
  }

  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }

  .pb-12\.5 {
    padding-bottom: calc(var(--spacing) * 12.5);
  }

  .pl-\[1\.8rem\] {
    padding-left: 1.8rem;
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .align-top {
    vertical-align: top;
  }

  .font-jost {
    font-family: var(--font-jost);
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-\[1\.3rem\] {
    font-size: 1.3rem;
  }

  .text-\[1\.4rem\] {
    font-size: 1.4rem;
  }

  .text-\[1\.6rem\] {
    font-size: 1.6rem;
  }

  .text-\[3rem\] {
    font-size: 3rem;
  }

  .text-\[4\.75cqw\] {
    font-size: 4.75cqw;
  }

  .text-\[11\.5cqw\] {
    font-size: 11.5cqw;
  }

  .text-size-2 {
    font-size: calc(2 * 1rem * var(--font-scale));
  }

  .text-size-4 {
    font-size: calc(4 * 1rem * var(--font-scale));
  }

  .text-size-\[1\.5\] {
    font-size: calc(1.5 * 1rem * var(--font-scale));
  }

  .text-size-\[2\.4\] {
    font-size: calc(2.4 * 1rem * var(--font-scale));
  }

  .text-size-\[2\] {
    font-size: calc(2 * 1rem * var(--font-scale));
  }

  .text-size-\[3\] {
    font-size: calc(3 * 1rem * var(--font-scale));
  }

  .leading-\[1\.3\] {
    --tw-leading: 1.3;
    line-height: 1.3;
  }

  .leading-\[1\.5\] {
    --tw-leading: 1.5;
    line-height: 1.5;
  }

  .leading-\[1\.45\] {
    --tw-leading: 1.45;
    line-height: 1.45;
  }

  .leading-\[2\] {
    --tw-leading: 2;
    line-height: 2;
  }

  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-\[-0\.075em\] {
    --tw-tracking: -.075em;
    letter-spacing: -.075em;
  }

  .text-nowrap {
    text-wrap: nowrap;
  }

  .text-primary {
    color: var(--color-primary);
  }

  .text-red {
    color: var(--color-red);
  }

  .text-secondary {
    color: var(--color-secondary);
  }

  .text-white {
    color: var(--color-white);
  }

  .underline {
    text-decoration-line: underline;
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .before\:text-white:before {
    content: var(--tw-content);
    color: var(--color-white);
  }

  .before\:content-\[\'\'\]:before {
    --tw-content: "";
    content: var(--tw-content);
  }

  @media not all and (min-width: 768px) {
    .max-md\:-left-0\.5 {
      left: calc(var(--spacing) * -.5);
    }

    .max-md\:ml-\[3\.5cqw\] {
      margin-left: 3.5cqw;
    }

    .max-md\:ml-\[4cqw\] {
      margin-left: 4cqw;
    }

    .max-md\:hidden {
      display: none;
    }

    .max-md\:items-center {
      align-items: center;
    }

    .max-md\:px-2 {
      padding-inline: calc(var(--spacing) * 2);
    }

    .max-md\:pl-\[7cqw\] {
      padding-left: 7cqw;
    }

    .max-md\:leading-\[1\.3\] {
      --tw-leading: 1.3;
      line-height: 1.3;
    }

    .max-md\:tracking-wide {
      --tw-tracking: var(--tracking-wide);
      letter-spacing: var(--tracking-wide);
    }
  }

  @media (min-width: 768px) {
    .md\:top-\[7\.1cqw\] {
      top: 7.1cqw;
    }

    .md\:top-\[44\.5cqw\] {
      top: 44.5cqw;
    }

    .md\:-right-8 {
      right: calc(var(--spacing) * -8);
    }

    .md\:bottom-0 {
      bottom: calc(var(--spacing) * 0);
    }

    .md\:-left-3 {
      left: calc(var(--spacing) * -3);
    }

    .md\:-mt-3\.75 {
      margin-top: calc(var(--spacing) * -3.75);
    }

    .md\:-mt-7\.5 {
      margin-top: calc(var(--spacing) * -7.5);
    }

    .md\:-mt-11\.25 {
      margin-top: calc(var(--spacing) * -11.25);
    }

    .md\:mt-5 {
      margin-top: calc(var(--spacing) * 5);
    }

    .md\:mt-7\.5 {
      margin-top: calc(var(--spacing) * 7.5);
    }

    .md\:mt-8 {
      margin-top: calc(var(--spacing) * 8);
    }

    .md\:mt-12\.5 {
      margin-top: calc(var(--spacing) * 12.5);
    }

    .md\:mt-\[1\.7cqw\] {
      margin-top: 1.7cqw;
    }

    .md\:-mr-12 {
      margin-right: calc(var(--spacing) * -12);
    }

    .md\:mb-3 {
      margin-bottom: calc(var(--spacing) * 3);
    }

    .md\:ml-auto {
      margin-left: auto;
    }

    .md\:flex {
      display: flex;
    }

    .md\:grid {
      display: grid;
    }

    .md\:hidden {
      display: none;
    }

    .md\:w-1\/2 {
      width: 50%;
    }

    .md\:w-\[11rem\] {
      width: 11rem;
    }

    .md\:w-\[18\.3rem\] {
      width: 18.3rem;
    }

    .md\:w-\[18\.4rem\] {
      width: 18.4rem;
    }

    .md\:max-w-94 {
      max-width: calc(var(--spacing) * 94);
    }

    .md\:max-w-\[49\.6rem\] {
      max-width: 49.6rem;
    }

    .md\:min-w-\[6em\] {
      min-width: 6em;
    }

    .md\:min-w-\[8\.5em\] {
      min-width: 8.5em;
    }

    .md\:min-w-\[13\.5em\] {
      min-width: 13.5em;
    }

    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:gap-2 {
      gap: calc(var(--spacing) * 2);
    }

    .md\:gap-4\.5 {
      gap: calc(var(--spacing) * 4.5);
    }

    .md\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }

    .md\:gap-x-5 {
      column-gap: calc(var(--spacing) * 5);
    }

    .md\:overflow-x-auto {
      overflow-x: auto;
    }

    .md\:border {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }

    .md\:border-3 {
      border-style: var(--tw-border-style);
      border-width: var(--border-width-3);
    }

    .md\:p-2\.5 {
      padding: calc(var(--spacing) * 2.5);
    }

    .md\:px-2\.5 {
      padding-inline: calc(var(--spacing) * 2.5);
    }

    .md\:px-3 {
      padding-inline: calc(var(--spacing) * 3);
    }

    .md\:px-4 {
      padding-inline: calc(var(--spacing) * 4);
    }

    .md\:px-\[2em\] {
      padding-inline: 2em;
    }

    .md\:py-1 {
      padding-block: calc(var(--spacing) * 1);
    }

    .md\:pt-7 {
      padding-top: calc(var(--spacing) * 7);
    }

    .md\:pt-12\.5 {
      padding-top: calc(var(--spacing) * 12.5);
    }

    .md\:pb-15 {
      padding-bottom: calc(var(--spacing) * 15);
    }

    .md\:pb-25 {
      padding-bottom: calc(var(--spacing) * 25);
    }

    .md\:text-\[1\.7cqw\] {
      font-size: 1.7cqw;
    }

    .md\:text-\[3\.9cqw\] {
      font-size: 3.9cqw;
    }

    .md\:text-size-2 {
      font-size: calc(2 * 1rem * var(--font-scale));
    }

    .md\:text-size-4 {
      font-size: calc(4 * 1rem * var(--font-scale));
    }

    .md\:text-size-\[2\.2\] {
      font-size: calc(2.2 * 1rem * var(--font-scale));
    }

    .md\:text-size-\[2\.4\] {
      font-size: calc(2.4 * 1rem * var(--font-scale));
    }

    .md\:leading-\[1\.35\] {
      --tw-leading: 1.35;
      line-height: 1.35;
    }
  }

  @media (min-width: 1480px) {
    .lg\:mr-0 {
      margin-right: calc(var(--spacing) * 0);
    }
  }

  .border-1 {
    border-width: max(1px, .1rem);
  }

  .border-2 {
    border-width: max(2px, .2rem);
  }

  .border-3 {
    border-width: max(3px, .3rem);
  }

  .border-4 {
    border-width: max(4px, .4rem);
  }

  .border-5 {
    border-width: max(5px, .5rem);
  }

  .border-6 {
    border-width: max(6px, .6rem);
  }
}

@layer override, components;

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-content {
  syntax: "*";
  inherits: false;
  initial-value: "";
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-font-weight: initial;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
    }
  }
}

:root {
  --header-height: 12rem;
  --true-100vw: 100vw;
  --true-container-inner-width: 1280px;
  --bg-dot-size: 1rem 1rem;
  --container-width: 132rem;
  --narrow-container-width: 128rem;
  --container-gutter: 2rem;
  --extend-container-width: 132rem;
}

@media (max-width: 767.98px) {
  :root {
    --font-scale: .9;
    --header-height: 11.5rem;
    --bg-dot-size: .9rem .9rem;
    --rounded-default: 1.5rem;
    --container-width: 39rem;
    --extend-container-width: 39rem;
  }
}

@media (min-width: 768px) and (not (min-width: 768px)) {
  :root {
    --extend-container-width: 50rem;
  }
}

@keyframes opa {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@layer utilities {
  .container {
    max-width: var(--container-width);
    padding-inline: var(--container-gutter);
    margin-inline: auto;
  }

  .container:not(.limited-container) {
    max-width: var(--extend-container-width);
  }

  .container-narrow {
    box-sizing: content-box;
    max-width: var(--narrow-container-width);
    padding-inline: var(--container-gutter);
    margin-inline: auto;
  }
}

@layer base {
  :where(button, [type="button"], [type="reset"], [type="submit"]) {
    touch-action: manipulation;
  }

  body {
    color: var(--color-body);
    line-height: 1.75;
    font-size: var(--text-base);
  }

  main {
    z-index: 1;
    margin-top: var(--header-height);
    position: relative;
  }

  circle, g, path, rect {
    transition: stroke .2s, fill .4s, opacity .4s;
  }

  .font-jost-italic {
    font-family: var(--font-jost);
    font-style: italic;
  }
}

html {
  scroll-behavior: smooth;
  font-size: 10px;
  font-family: var(--font-noto-sans);
  background: #fff;
  scroll-padding-top: 2rem;
  font-weight: 400;
}

@media (min-width: 768px) {
  html {
    scroll-padding-top: 3rem;
  }
}

html {
  font-size: min(2.5641vw, 15px);
}

@media (min-width: 768px) {
  html {
    font-size: min(.675676vw, 10px);
  }
}

@media (min-width: 1536px) {
  html {
    font-size: .651042vw;
  }
}

body {
  font-size: 1.6rem;
}

@layer default {
  .heading1 {
    text-align: center;
    --tw-font-weight: var(--font-weight-semibold, 600);
    font-size: 3rem;
    font-weight: var(--font-weight-semibold, 600);
  }

  @media (min-width: 768px) {
    .heading1 {
      font-size: calc(4 * 1rem * var(--font-scale));
    }
  }

  .heading1 {
    margin-bottom: .8em;
    line-height: 1.5;
  }

  .heading1 .heading1__en {
    margin-bottom: calc(var(--spacing, 1rem) * 1);
    font-family: var(--font-jost, "Jost", sans-serif);
    font-size: var(--text-lg, calc(1.8rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-lg--line-height, calc(1.75 / 1.125)));
    --tw-font-weight: var(--font-weight-bold, 700);
    font-weight: var(--font-weight-bold, 700);
    color: var(--color-primary, #1fddcd);
    letter-spacing: .075em;
    display: block;
  }

  .balloon-heading1 {
    margin-bottom: calc(var(--spacing, 1rem) * 3.5);
    border-radius: var(--radius-3xl, 1.5rem);
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2, max(2px, .2rem));
    border-color: var(--color-body, #4c4948);
    background-color: var(--color-primary, #1fddcd);
    width: fit-content;
    padding-inline: calc(var(--spacing, 1rem) * 3);
    padding-block: calc(var(--spacing, 1rem) * 2);
    font-size: var(--text-xl, calc(2.2rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-xl--line-height, calc(1.75 / 1.25)));
    --tw-font-weight: var(--font-weight-bold, 700);
    font-weight: var(--font-weight-bold, 700);
    color: var(--color-white, #fff);
    position: relative;
  }

  @media (min-width: 768px) {
    .balloon-heading1 {
      font-size: var(--text-3xl, calc(3rem * var(--font-scale)));
      line-height: var(--tw-leading, var(--text-3xl--line-height, calc(2.25 / 1.875)));
    }
  }

  .balloon-heading1:before {
    content: "";
    background-color: var(--color-body, #4c4948);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 0);
    width: 3.6rem;
    height: 2.3rem;
    position: absolute;
    top: 100%;
    left: 20%;
  }

  .attention-heading1 {
    margin-bottom: calc(var(--spacing, 1rem) * 1.5);
    text-align: center;
    font-size: calc(2 * 1rem * var(--font-scale));
    --tw-font-weight: var(--font-weight-medium, 500);
    font-weight: var(--font-weight-medium, 500);
  }

  .attention-heading1__main {
    align-items: center;
    gap: calc(var(--spacing, 1rem) * 2);
    width: fit-content;
    font-size: calc(3 * 1rem * var(--font-scale));
    --tw-leading: 1.5;
    grid-template-columns: 1fr auto 1fr;
    margin-inline: auto;
    line-height: 1.5;
    display: grid;
  }

  .attention-heading1__main:before, .attention-heading1__main:after {
    content: "";
    background-color: var(--color-gray, #707070);
    border-radius: 3.40282e38px;
    width: 3px;
    height: 1.1em;
    display: block;
  }

  .attention-heading1__main:before {
    rotate: -30deg;
  }

  .attention-heading1__main:after {
    rotate: 30deg;
  }

  .text-marker {
    --marker-color: var(--color-secondary);
    background-image: linear-gradient(to top, var(--marker-color) 35%, transparent 35%);
  }

  .q-list {
    --bg-dot-offset: -2rem;
    position: relative;
  }

  @media (max-width: 767.98px) {
    .q-list {
      --bg-dot-offset: -1.2rem;
    }
  }

  .q-list:before {
    content: "";
    width: 100%;
    height: 100%;
    left: var(--bg-dot-offset, -1.5rem);
    bottom: var(--bg-dot-offset, -1.5rem);
    background: url("/csp/lp/media/images/common/bg-dot.svg");
    background-size: var(--bg-dot-size);
    z-index: 0;
    border-radius: var(--bg-dot-radius, 2rem);
    position: absolute;
  }

  .q-list ul {
    z-index: 1;
    background: #fff;
    border-radius: 2rem;
    position: relative;
    overflow: hidden;
  }

  .q-list li + li {
    border-top-style: var(--tw-border-style);
    border-top-width: var(--border-width-1, max(1px, .1rem));
    border-color: var(--color-body, #4c4948);
  }

  .q-item {
    background: #fff;
    font-size: 1.4rem;
  }

  .q-item__link {
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 1px;
    min-height: 10rem;
    padding: 2rem;
    display: grid;
  }

  .q-item__link:before, .q-item__link:after {
    speak: none;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    grid-area: 1 / -2 / 2 / -1;
    place-content: center end;
    width: 1em;
    height: 1em;
    font-family: icon;
    font-size: 3.8rem;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    position: relative;
  }

  .q-item__link:before {
    content: "";
    color: #fff;
    z-index: 1;
  }

  .q-item__link:after {
    content: "";
    color: var(--color-body, #4c4948);
  }

  .faq-list {
    --bg-dot-offset: -1.5rem;
    position: relative;
  }

  @media (max-width: 767.98px) {
    .faq-list {
      --bg-dot-offset: -1.2rem;
    }
  }

  .faq-list ul {
    z-index: 1;
    border-style: var(--tw-border-style);
    border-width: var(--border-width-1, max(1px, .1rem));
    border-color: var(--color-body, #4c4948);
    background: #fff;
    border-radius: 2rem;
    position: relative;
    overflow: hidden;
  }

  .faq-list li + li {
    border-top-style: var(--tw-border-style);
    border-top-width: var(--border-width-1, max(1px, .1rem));
    border-color: var(--color-body, #4c4948);
  }

  .faq-item {
    font-size: var(--text-base, calc(1.6rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-base--line-height, calc(1.5 / 1)));
    background: #fff;
  }

  .faq-item dt, .faq-item dd {
    align-items: center;
    gap: calc(var(--spacing, 1rem) * 1);
    padding-inline: calc(var(--spacing, 1rem) * 1.5);
    padding-block: calc(var(--spacing, 1rem) * 1.5);
    --tw-leading: 1.5;
    line-height: 1.5;
    display: grid;
  }

  @media (min-width: 768px) {
    .faq-item dt, .faq-item dd {
      padding-inline: calc(var(--spacing, 1rem) * 3);
    }
  }

  .faq-item dt, .faq-item dd {
    min-height: 5.5em;
  }

  .faq-item dt > div, .faq-item dd > div {
    gap: calc(var(--spacing, 1rem) * 1);
    padding-left: calc(var(--spacing, 1rem) * 2.5);
    position: relative;
  }

  .faq-item dt > div:before, .faq-item dd > div:before {
    top: calc(var(--spacing, 1rem) * -.5);
    left: calc(var(--spacing, 1rem) * 0);
    font-family: var(--font-jost);
    font-size: 150%;
    font-style: normal;
    position: absolute;
  }

  .faq-item dt {
    background-color: #fff83633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .faq-item dt {
      background-color: color-mix(in oklab, var(--color-secondary, #fff836) 20%, transparent);
    }
  }

  .faq-item dt > div:before {
    content: "Q";
  }

  .faq-item dd {
    border-top-style: var(--tw-border-style);
    border-top-width: var(--border-width-1, max(1px, .1rem));
    border-color: var(--color-body, #4c4948);
  }

  .faq-item dd > div:before {
    content: "A";
  }

  .modal_open {
    height: 100%;
    overflow: hidden;
  }

  .modal {
    z-index: 10000;
    background-color: #000c;
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
  }

  .modal img {
    height: auto;
  }

  .modal .modal_wrap {
    z-index: 1100;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: fixed;
    left: 0;
    transform: translateY(-30px);
  }

  .modal .modal_wrap .modal_content {
    width: 100%;
    max-width: 700px;
    height: 40%;
    margin: 0 auto;
    position: relative;
  }

  .modal .modal_wrap .modal_content .modal_area {
    background-color: #fff;
    height: 100%;
    padding: 50px 60px;
    overflow-y: auto;
  }

  .modal .modal_wrap .modal_content .modal_area .cont_set + .cont_set {
    margin-top: 30px;
  }

  .modal .modal_wrap .modal_content .modal_area h2 {
    border-bottom: 1px solid #d9d9d6;
    margin-bottom: 14px;
    padding-bottom: 8px;
    font-size: 20px;
    font-weight: bold;
  }

  .modal .modal_wrap .modal_content .modal_area dl dt {
    font-weight: bold;
  }

  .modal .modal_wrap .modal_content .modal_area dl dd {
    padding-left: 2em;
  }

  .modal .modal_wrap .modal_content .modal_area dl + p {
    margin-top: 1em;
  }

  .modal .modal_wrap .modal_content .modal_area p.sup {
    font-size: 14px;
  }

  .modal .modal_wrap .modal_close.btn {
    cursor: pointer;
    text-align: right;
    z-index: 1000;
    width: 56px;
    height: 56px;
    position: absolute;
    top: -68px;
    right: -36px;
  }

  @media (max-width: 736px) {
    .modal .modal_wrap {
      width: auto;
      max-width: 100%;
      padding: 0 15px;
      transform: translateY(-40px);
    }

    .modal .modal_wrap .modal_content {
      max-width: 100%;
      height: 70%;
    }

    .modal .modal_wrap .modal_content .modal_area {
      padding: 30px 20px;
    }

    .modal .modal_wrap .modal_content .modal_area h2 {
      font-size: 16px;
    }

    .modal .modal_wrap .modal_content .modal_area dl {
      font-size: 13px;
    }

    .modal .modal_wrap .modal_content .modal_area p.sup {
      font-size: 11px;
    }

    .modal .modal_wrap .modal_close.btn {
      cursor: pointer;
      text-align: right;
      z-index: 1000;
      width: 45px;
      height: 45px;
      position: absolute;
      top: -58px;
      right: 0;
    }
  }

  .modal .modal_wrap p.modal_close {
    color: #fff;
    cursor: pointer;
    text-align: center;
    width: 100%;
    padding: 22px 0;
    font-size: 16px;
    font-weight: bold;
    top: 100%;
  }

  .modal .modal_wrap .modal_content .modal_area .modal_close img {
    width: 100%;
    display: block;
  }

  @media (max-height: 450px) {
    .modal .modal_wrap .modal_content {
      height: 60%;
    }
  }

  .btn1 {
    align-items: center;
    gap: calc(var(--spacing, 1rem) * 1.5);
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2, max(2px, .2rem));
    border-color: var(--color-secondary, #fff836);
    background-color: var(--color-secondary, #fff836);
    text-align: left;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));
    transition-duration: var(--tw-duration, var(--default-transition-duration, .15s));
    --tw-duration: .3s;
    border-radius: 3.40282e38px;
    padding: .2px;
    font-size: 1.6rem;
    transition-duration: .3s;
    display: inline-grid;
  }

  @media (min-width: 768px) {
    .btn1 {
      border-style: var(--tw-border-style);
      border-width: var(--border-width-3, max(3px, .3rem));
      font-size: 1.8rem;
    }
  }

  .btn1 {
    grid-template-columns: 1fr auto;
    line-height: 1.5;
  }

  .btn1:before, .btn1:after {
    speak: none;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    grid-row: 1 / 2;
    font-family: icon;
    font-size: 5rem;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
  }

  @media (max-width: 767.98px) {
    .btn1:before, .btn1:after {
      font-size: 3.4rem;
    }
  }

  .btn1:not(.--back) {
    padding-left: 1.8rem;
  }

  @media (min-width: 768px) {
    .btn1:not(.--back) {
      padding-left: 2.2rem;
    }
  }

  .btn1:not(.--back):before, .btn1:not(.--back):after {
    grid-column: 2 / 3;
  }

  .btn1:before {
    color: #fff;
    content: "";
    z-index: 1;
  }

  .btn1:after {
    content: "";
    color: #fff;
  }

  .btn1:hover {
    background: #fff;
  }

  @media (min-width: 768px) {
    .btn1.--wide-default {
      min-width: 24.3rem;
    }
  }

  .btn1.--back {
    padding-right: 3.3px;
  }

  @media (min-width: 768px) {
    .btn1.--back {
      padding-right: 3.2px;
    }
  }

  .btn1.--back {
    text-align: center;
    grid-template-columns: auto 1fr;
    gap: 1rem;
  }

  .btn1.--back:before, .btn1.--back:after {
    grid-column: 1 / 2;
  }

  .btn1.--back:before {
    content: "";
  }

  .btn1.--down:before {
    content: "";
    z-index: 1;
  }

  .btn1.--primary {
    border-color: var(--color-primary, #1fddcd);
    background-color: var(--color-primary, #1fddcd);
    color: var(--color-white, #fff);
  }

  .btn1.--primary:before {
    content: "";
    color: #fff;
  }

  .btn1.--primary:after {
    color: var(--color-body, #4c4948);
  }

  .btn1.--primary:hover {
    background-color: var(--color-white, #fff);
    color: var(--color-primary, #1fddcd);
  }

  @media (min-width: 768px) {
    .btn1.--low {
      padding-block: .6rem;
    }

    .btn1.--low:before, .btn1.--low:after {
      font-size: 4.25rem;
      line-height: .8;
    }
  }

  .link-icon {
    --text-color: currentColor;
    --hover-text-color: currentColor;
    --icon-color: var(--text-color);
    --hover-icon-color: var(--hover-text-color);
    --icon-bg-color: #fff;
    --hover-icon-bg-color: #fff;
    --hover-opacity: .8;
    color: var(--text-color);
    grid-template-columns: auto 1fr;
    grid-template-areas: "text icon";
    align-items: center;
    gap: .5px;
    transition: color .3s, background-color .3s, opacity .3s;
    display: inline-grid;
  }

  .link-icon:hover {
    opacity: var(--hover-opacity);
    color: var(--hover-text-color);
  }

  .link-icon:hover:before {
    color: var(--hover-icon-bg-color);
  }

  .link-icon:hover:after {
    color: var(--hover-icon-color);
  }

  .link-icon:before, .link-icon:after {
    speak: none;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    grid-area: icon;
    margin-top: -.1em;
    margin-bottom: -.2em;
    font-family: icon;
    font-size: 140%;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    transition: color .3s;
  }

  .link-icon:before {
    color: var(--icon-bg-color);
  }

  .link-icon:after {
    color: var(--icon-color);
  }

  .link-icon:not([target="_blank"]):not(.--external):before, .link-icon.--arrow:before {
    content: "";
  }

  .link-icon:not([target="_blank"]):not(.--external):after, .link-icon.--arrow:after {
    content: "";
  }

  .link-icon[target="_blank"]:not(.--arrow):after, .link-icon.--external:after {
    content: "";
  }

  .link-icon.--no-icon:before, .link-icon.--no-icon:after {
    display: none !important;
  }

  .link-icon.--pill {
    --bg-color: #ffd16c;
    --hover-bg-color: #fee5ab;
    --hover-opacity: 1;
    background-color: var(--bg-color);
    border-radius: 50px;
    padding: .5em 1em;
  }

  .link-icon.--pill:hover {
    background-color: var(--hover-bg-color);
  }

  .dot-box {
    --bg-dot-radius: 2rem;
    --bg-dot-offset: -1.5rem;
    position: relative;
  }

  .dot-box:before {
    content: "";
    width: 100%;
    height: 100%;
    left: var(--bg-dot-offset, -1.5rem);
    bottom: var(--bg-dot-offset, -1.5rem);
    background: url("/csp/lp/media/images/common/bg-dot.svg");
    background-size: var(--bg-dot-size);
    z-index: 0;
    border-radius: var(--bg-dot-radius, 2rem);
    position: absolute;
  }

  @media (max-width: 767.98px) {
    .dot-box {
      --bg-dot-offset: -1rem;
    }
  }

  .dot-box__container {
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2, max(2px, .2rem));
    border-color: var(--color-body, #4c4948);
    padding: calc(var(--spacing, 1rem) * 3);
    position: relative;
  }

  @media (min-width: 768px) {
    .dot-box__container {
      padding: calc(var(--spacing, 1rem) * 5);
    }
  }

  .dot-box__container {
    border-radius: var(--bg-dot-radius);
    z-index: 1;
    background: #fff;
  }

  .box1 {
    border-radius: var(--radius-default, 2rem);
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2, max(2px, .2rem));
    border-color: var(--color-body, #4c4948);
    background-color: var(--color-white, #fff);
    position: relative;
  }

  .box1.box1--arrow-bottom:before {
    content: "";
    aspect-ratio: 2;
    width: calc(var(--spacing, 1rem) * 6);
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    background-color: var(--color-body, #4c4948);
    position: absolute;
    top: 100%;
    left: 50%;
  }

  @media (min-width: 768px) {
    .box1.box1--arrow-bottom:before {
      width: calc(var(--spacing, 1rem) * 10);
    }
  }

  .box1.box1--arrow-bottom:before {
    clip-path: polygon(0 0, 100% 0, 50% 100%, 0 0);
  }

  .notice {
    --tw-leading: 1.5;
    text-indent: -1em;
    padding-left: 1em;
    font-size: 1.4rem;
    line-height: 1.5;
  }

  :where(.list-check > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(.65em * var(--tw-space-y-reverse));
    margin-block-end: calc(.65em * calc(1 - var(--tw-space-y-reverse)));
  }

  .list-check li {
    align-items: flex-start;
    gap: calc(var(--spacing, 1rem) * 1);
    --tw-leading: 1.5;
    grid-template-columns: 1.4em 1fr;
    line-height: 1.5;
    display: grid;
  }

  .list-check li:before {
    content: "";
    background-color: var(--color-primary);
    width: 1.4em;
    height: 1.4em;
    margin-top: calc(.5lh - .7em);
    display: block;
    -webkit-mask-image: url("/csp/lp/media/images/common/icon-check1.svg");
    mask-image: url("/csp/lp/media/images/common/icon-check1.svg");
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  .list-default {
    padding-left: 1.5em;
    list-style-type: disc;
  }

  .list-notice li {
    --tw-leading: 1.5;
    text-indent: -1em;
    padding-left: 1em;
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .list-notice li + li {
    margin-top: .25em;
  }

  .list-circle1 li {
    padding-left: 1.5em;
  }

  .list-circle1 li:before {
    content: "◯";
    width: 1.5em;
    margin-left: -1.5em;
    display: inline-block;
    scale: 1.2;
  }

  :where(.list-disc2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing, 1rem) * .5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing, 1rem) * .5) * calc(1 - var(--tw-space-y-reverse)));
  }

  .list-disc2 li {
    grid-template-columns: 1.3em 1fr;
    align-items: flex-start;
    display: grid;
  }

  .list-disc2 li:before {
    aspect-ratio: 1;
    background-color: var(--color-primary, #1fddcd);
    content: "";
    border-radius: 3.40282e38px;
    width: .9em;
    margin-top: calc(.5lh - .35em);
  }

  :where(.list-disc2--inline > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing, 1rem) * 2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing, 1rem) * 2) * calc(1 - var(--tw-space-x-reverse)));
  }

  @media (min-width: 768px) {
    :where(.list-disc2--inline > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing, 1rem) * 3) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing, 1rem) * 3) * calc(1 - var(--tw-space-x-reverse)));
    }
  }

  .list-disc2--inline li {
    display: inline-grid;
  }

  .table-default {
    border-collapse: collapse;
    width: 100%;
  }

  .table-default thead {
    background-color: #1fddcd33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .table-default thead {
      background-color: color-mix(in oklab, var(--color-primary, #1fddcd) 20%, transparent);
    }
  }

  .table-default tbody {
    background-color: var(--color-white, #fff);
  }

  .table-default tr > :not(:first-child) {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .table-default tr > :not(:last-child) {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .table-default th, .table-default td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-light-gray, #ccc);
    padding: .5em .75em;
  }

  .table-default th {
    font-weight: 400;
  }

  .table-schedule {
    border-collapse: collapse;
    width: 100%;
  }

  .table-schedule thead {
    background-color: #1fddcd33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .table-schedule thead {
      background-color: color-mix(in oklab, var(--color-primary, #1fddcd) 20%, transparent);
    }
  }

  .table-schedule tbody {
    background-color: var(--color-white, #fff);
  }

  .table-schedule tr > :not(:first-child) {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .table-schedule tr > :not(:last-child) {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .table-schedule th, .table-schedule td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-light-gray, #ccc);
    padding-inline: calc(var(--spacing, 1rem) * 1.5);
    padding-block: calc(var(--spacing, 1rem) * 1);
    text-align: center;
  }

  @media (min-width: 768px) {
    .table-schedule th, .table-schedule td {
      padding-inline: 2em;
      padding-block: calc(var(--spacing, 1rem) * 1.5);
    }
  }

  .table-schedule th {
    font-weight: 400;
  }

  .table-schedule__date {
    display: inline-block;
  }

  @media (min-width: 768px) {
    .table-schedule__date {
      text-align: left;
      min-width: 8.5em;
    }
  }

  .table-schedule__time {
    display: inline-block;
  }

  @media (min-width: 768px) {
    .table-schedule__time {
      text-align: left;
      min-width: 6em;
    }
  }

  .table-style1 {
    border-collapse: collapse;
    width: 100%;
  }

  .table-style1 tbody {
    background-color: var(--color-white, #fff);
  }

  .table-style1 th, .table-style1 td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-light-gray, #ccc);
    padding-inline: calc(var(--spacing, 1rem) * 1.5);
    padding-block: calc(var(--spacing, 1rem) * 1);
  }

  @media (min-width: 768px) {
    .table-style1 th, .table-style1 td {
      padding-block: 1.25em;
      padding-inline: 2em;
    }
  }

  .table-style1 th {
    background-color: #1fddcd4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .table-style1 th {
      background-color: color-mix(in oklab, var(--color-primary, #1fddcd) 30%, transparent);
    }
  }

  .table-style1 th {
    text-align: left;
    vertical-align: top;
    font-weight: 400;
  }

  .table-style2 {
    width: 100%;
    font-size: var(--text-sm, calc(1.4rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));
  }

  @media (min-width: 768px) {
    .table-style2 {
      font-size: calc(2 * 1rem * var(--font-scale));
    }
  }

  .table-style2 {
    border-collapse: collapse;
  }

  .table-style2 th, .table-style2 td {
    padding-inline: calc(var(--spacing, 1rem) * 1.5);
    padding-block: calc(var(--spacing, 1rem) * 1);
  }

  @media (min-width: 768px) {
    .table-style2 th, .table-style2 td {
      padding-inline: calc(var(--spacing, 1rem) * 4);
      padding-block: calc(var(--spacing, 1rem) * 3);
    }
  }

  .table-style2 thead th {
    font-size: var(--text-base, calc(1.6rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-base--line-height, calc(1.5 / 1)));
    --tw-font-weight: var(--font-weight-bold, 700);
    font-weight: var(--font-weight-bold, 700);
  }

  @media (min-width: 768px) {
    .table-style2 thead th {
      font-size: calc(2.4 * 1rem * var(--font-scale));
      padding-block: 2.75rem;
    }
  }

  .table-style2 thead th {
    text-align: center;
  }

  .table-style2 tbody {
    background-color: var(--color-white, #fff);
  }

  .table-style2 tbody th {
    text-align: left;
    vertical-align: top;
    --tw-font-weight: var(--font-weight-medium, 500);
    font-weight: var(--font-weight-medium, 500);
    background: #f0f0f0;
  }

  .table-style2 tbody th, .table-style2 tbody td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .table-style2 tbody td {
    text-align: center;
    --tw-font-weight: var(--font-weight-bold, 700);
    font-weight: var(--font-weight-bold, 700);
  }

  .table-style2 tbody td:not(:last-child) {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-color: var(--color-light-gray, #ccc);
  }

  .step-slider {
    --marker-color: #fffdc3;
    position: relative;
    container-type: inline-size;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .step-slider {
      --marker-color: color-mix(in srgb, var(--color-secondary) 30%, #fff);
    }
  }

  .step-slider {
    background-image: linear-gradient(to top, var(--marker-color) 50%, transparent 50%);
  }

  .step-slider__container {
    padding-top: calc(var(--spacing, 1rem) * 2.5);
    padding-bottom: calc(var(--spacing, 1rem) * 5);
    display: flex;
  }

  @media (min-width: 768px) {
    .step-slider__container {
      padding-top: calc(var(--spacing, 1rem) * 7);
      padding-bottom: calc(var(--spacing, 1rem) * 10);
      overflow-x: auto;
    }
  }

  .step-slider__container {
    padding-inline: max((100cqw - var(--narrow-container-width)) / 2, var(--container-gutter));
  }

  .step-slider__items {
    gap: calc(var(--spacing, 1rem) * 5.5);
    display: flex;
  }

  @media not all and (min-width: 768px) {
    .step-slider__items {
      flex-direction: column;
    }
  }

  .step-slider__item {
    flex: 1;
    position: relative;
  }

  .step-slider__item:not(:last-child):after {
    background-color: var(--color-body, #4c4948);
    content: "";
    position: absolute;
  }

  @media (min-width: 768px) {
    .step-slider__item:not(:last-child):after {
      clip-path: polygon(0 0, 100% 50%, 0 100%);
      width: 2rem;
      height: 4rem;
      margin: auto 0;
      top: 0;
      bottom: 0;
      left: calc(100% + 1.2rem);
    }
  }

  @media not all and (min-width: 768px) {
    .step-slider__item:not(:last-child):after {
      clip-path: polygon(0 0, 100% 0%, 50% 100%);
      width: 4rem;
      height: 2rem;
      margin: 0 auto;
      top: calc(100% + 2rem);
      left: 0;
      right: 0;
    }
  }

  .voice-items {
    gap: calc(var(--spacing, 1rem) * 3);
    grid-template-columns: repeat(1, minmax(0, 1fr));
    display: grid;
  }

  @media (min-width: 768px) {
    .voice-items {
      column-gap: calc(var(--spacing, 1rem) * 5);
      row-gap: calc(var(--spacing, 1rem) * 6.5);
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */

@layer default {
  .is-drawer-open .l-footer {
    z-index: 20;
  }

  .l-footer {
    border-top: 1px solid rgb(var(--color-gray));
    z-index: 100;
    background: #fff;
    position: relative;
  }

  .l-footer__body {
    max-width: 1288px;
    margin: 0 auto;
    padding: 0 40px;
  }

  @media screen and (min-width: 768px) and (max-width: 991px) {
    .l-footer__body {
      padding: 0 30px;
    }
  }

  @media screen and (max-width: 767px) {
    .l-footer__body {
      padding: 0 20px;
    }
  }

  .l-footer__sns {
    background: #fff;
    border-bottom: 1px solid #bbb;
    padding: 20px 0;
    position: relative;
  }

  .l-footer__sns .l-footer__body {
    justify-content: flex-end;
    align-items: center;
    gap: 0 30px;
    display: flex;
  }

  .l-footer__sns .ft-banner {
    justify-content: flex-end;
    gap: 0 30px;
    display: flex;
  }

  .l-footer__sns .ft-banner a {
    transition: opacity .3s;
  }

  .l-footer__sns .ft-banner a:hover, .l-footer__sns .ft-banner a:focus {
    opacity: .7;
  }

  .l-footer__sns .snslist {
    justify-content: flex-end;
    gap: 0 30px;
    display: flex;
  }

  .l-footer__sns .snslist a {
    transition: opacity .3s;
  }

  .l-footer__sns .snslist a:hover, .l-footer__sns .snslist a:focus {
    opacity: .7;
  }

  .l-footer__sns .snslist li {
    width: 40px;
    line-height: 0;
  }

  .l-footer__sns .snslist li img {
    width: 100%;
    height: auto;
  }

  @media screen and (max-width: 767px) {
    .l-footer__sns .l-footer__body {
      display: block;
    }

    .l-footer__sns .ft-banner {
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 10px 0;
      margin-bottom: 30px;
    }

    .l-footer__sns .snslist {
      justify-content: center;
      gap: 0 20px;
    }

    .l-footer__sns .snslist li {
      width: 30px;
    }
  }

  .l-footer__top {
    align-items: center;
    gap: 80px;
    max-width: 1288px;
    margin: 0 auto;
    padding: 20px 40px;
    display: flex;
  }

  @media screen and (min-width: 768px) and (max-width: 991px) {
    .l-footer__top {
      gap: 40px;
      padding: 10px 30px;
    }
  }

  @media screen and (max-width: 767px) {
    .l-footer__top {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
      padding: 10px 20px;
    }
  }

  .l-footer__top__logo {
    width: 190px;
  }

  @media screen and (max-width: 767px) {
    .l-footer__top__logo {
      margin-top: 10px;
    }
  }

  .l-footer__top__nav {
    font-size: 14px;
  }

  @media screen and (max-width: 767px) {
    .l-footer__top__nav {
      font-size: 13px;
    }
  }

  .l-footer__top__nav ul {
    flex-wrap: wrap;
    display: flex;
  }

  .l-footer__top__nav li:not(:last-child):after {
    content: " ｜ ";
  }

  .l-footer__bottom {
    background-color: #97999b;
    padding: 30px 0;
  }

  .l-footer__bottom .l-footer__flex {
    justify-content: space-between;
    display: flex;
  }

  .l-footer__bottom .l-footer__flex .l-footer__item--vision {
    padding-top: 6px;
  }

  .l-footer__bottom .l-footer__flex .l-footer__item--vision .l-footer__media {
    pointer-events: none;
  }

  .l-footer__bottom .l-footer__flex .l-footer__link {
    transition: opacity .3s;
    display: block;
  }

  .l-footer__bottom .l-footer__flex .l-footer__link:hover {
    opacity: .6;
  }

  .l-footer__copyright {
    color: #54565a;
    text-align: center;
    padding: 10px;
    font-size: min(1.2rem, 12px);
  }

  @media screen and (max-width: 767px) {
    .l-footer__bottom {
      padding: 24px 0;
    }

    .l-footer__bottom .l-footer__flex .l-footer__item--logo {
      width: 108px;
    }

    .l-footer__bottom .l-footer__flex .l-footer__item--vision {
      width: 136px;
      padding-top: 4px;
    }

    .l-footer__bottom .l-footer__flex .l-footer__media {
      width: 100%;
    }

    .l-footer__copyright {
      padding: 5px;
      font-size: min(1rem, 10px);
    }
  }

  @media print {
    .l-footer__top, .l-footer__middle, .l-footer__pagetop {
      display: none;
    }
  }
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */

@layer default {
  .is-drawer-open .drawer {
    visibility: visible;
    opacity: 1;
    transition: transform .4s, opacity .4s, visibility .4s;
  }

  .is-drawer-open .drawer__body {
    transition: transform .4s;
    transform: translateY(0);
  }

  .drawer {
    background-color: #fff83699;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .drawer {
      background-color: color-mix(in oklab, var(--color-secondary, #fff836) 60%, transparent);
    }
  }

  .drawer {
    visibility: hidden;
    opacity: 0;
    z-index: 45;
    --bottom-space: 11rem;
    width: 100%;
    height: 100dvh;
    transition: transform .3s, opacity .3s, visibility .3s;
    position: fixed;
    top: 0;
    left: 0;
  }

  @media (min-width: 768px) {
    .drawer {
      padding-top: calc(var(--header-height)  + 1rem);
    }
  }

  @media (max-width: 767.98px) {
    .drawer {
      padding-bottom: var(--bottom-space);
      flex-direction: column;
      justify-content: flex-end;
      display: flex;
    }
  }

  .drawer__body {
    width: fit-content;
    margin-left: auto;
    transition: transform .3s;
  }

  @media (min-width: 768px) {
    .drawer__body {
      --bg-dot-offset: -1.5rem;
      --bg-dot-radius: 2.5rem;
      margin-top: 4rem;
      position: relative;
      transform: translateY(-100%);
    }

    .drawer__body:before {
      content: "";
      width: 100%;
      height: 100%;
      left: var(--bg-dot-offset, -1.5rem);
      bottom: var(--bg-dot-offset, -1.5rem);
      background: url("/csp/lp/media/images/common/bg-dot.svg");
      background-size: var(--bg-dot-size);
      z-index: 0;
      border-radius: var(--bg-dot-radius, 2rem);
      position: absolute;
    }
  }

  @media (max-width: 767.98px) {
    .drawer__body {
      transform: translateY(100%);
    }
  }

  .drawer__inner {
    border: max(1px, .1rem) solid var(--color-gray);
    --triangle-size: 3.3rem;
    background: #fff;
    border-radius: 2.5rem;
    position: relative;
  }

  .drawer__inner:before, .drawer__inner:after {
    content: "";
    pointer-events: none;
    border: solid #0000;
    width: 0;
    height: 0;
    position: absolute;
  }

  .drawer__inner:before {
    border-color: #0000;
    border-top-width: var(--triangle-size);
    border-bottom-width: var(--triangle-size);
    border-left-width: var(--triangle-size);
    border-right-width: 0;
    margin-right: calc(-1rem - 1px);
  }

  .drawer__inner:after {
    border-color: #0000;
    border-top-width: var(--triangle-size);
    border-bottom-width: var(--triangle-size);
    border-left-width: var(--triangle-size);
    border-right-width: 0;
    margin-right: -1rem;
  }

  @media (min-width: 768px) {
    .drawer__inner:before, .drawer__inner:after {
      bottom: 100%;
      right: 6.5rem;
    }

    .drawer__inner:before {
      border-bottom-color: var(--color-gray);
    }

    .drawer__inner:after {
      border-bottom-color: #fff;
      margin-bottom: -2px;
    }
  }

  @media (max-width: 767.98px) {
    .drawer__inner:before, .drawer__inner:after {
      top: 100%;
      right: 5.5rem;
    }

    .drawer__inner:before {
      border-top-color: var(--color-gray);
    }

    .drawer__inner:after {
      border-top-color: #fff;
      margin-top: -2px;
    }
  }

  @media (min-width: 768px) {
    .drawer__content {
      flex-wrap: wrap;
      justify-content: space-evenly;
      gap: 5rem;
      padding: 8rem 9rem;
      display: flex;
    }
  }

  @media (max-width: 767.98px) {
    .drawer__content {
      max-height: calc(100dvh - var(--bottom-space)  - 2rem);
      overscroll-behavior: contain;
      padding: 3rem 2.5rem 2.5rem;
      overflow: auto;
    }
  }

  .drawer__row {
    flex-direction: column;
    justify-content: space-between;
    display: flex;
  }

  @media (min-width: 768px) {
    .drawer__row {
      gap: 3rem;
    }
  }

  @media (max-width: 767.98px) {
    .drawer__row {
      gap: 1rem;
      margin-bottom: 1rem;
    }
  }

  .drawer__page-title {
    font-size: 1.8rem;
    font-weight: 600;
  }

  .drawer__page-title a:hover {
    color: rgb(var(--color-primary));
  }

  .drawer__page-title em {
    font-family: var(--font-jost);
    font-size: 1.6rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1;
    display: block;
  }

  @media (max-width: 767.98px) {
    .drawer__page-title {
      font-size: 1.6rem;
    }

    .drawer__page-title a {
      display: inline-block;
    }

    .drawer__page-title a:after {
      speak: none;
      font-variant: normal;
      text-transform: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "";
      vertical-align: -20%;
      color: #97999b;
      font-family: icon;
      font-size: 160%;
      font-style: normal;
      font-weight: normal;
      line-height: 1;
    }

    .drawer__page-title em {
      font-size: 1.4rem;
    }
  }

  .drawer__group ul {
    white-space: nowrap;
  }

  @media (max-width: 767.98px) {
    .drawer__group ul {
      font-size: 1.4rem;
    }
  }

  .drawer__group ul li {
    margin-top: 1rem;
  }

  @media (max-width: 767.98px) {
    .drawer__group ul li {
      margin-top: .4rem;
    }
  }

  .drawer__group ul a {
    padding-left: .75em;
    line-height: 1.5;
    display: inline-block;
    position: relative;
  }

  .drawer__group ul a:before {
    content: "";
    border-top: .1rem solid;
    width: .5rem;
    position: absolute;
    top: .75em;
    left: 0;
  }

  .drawer__group ul a:hover {
    color: rgb(var(--color-primary));
  }

  .drawer__cta {
    position: relative;
  }

  @media (max-width: 767.98px) {
    .drawer__cta {
      margin-top: 1.5rem;
      padding-left: 5.75rem;
    }
  }

  @media (min-width: 768px) {
    .drawer__cta {
      padding-right: 9rem;
    }
  }

  .drawer__cta__btn {
    display: block;
    position: relative;
  }

  .drawer__cta__btn span {
    border: max(1px, .1rem) solid rgb(var(--color-body));
    text-align: center;
    border-radius: .6rem;
    width: 28rem;
    padding: 1.35rem 2rem;
    transition: all .3s;
    display: block;
    position: relative;
  }

  @media (max-width: 767.98px) {
    .drawer__cta__btn span {
      width: auto;
      padding: .75rem 2rem;
    }
  }

  .drawer__cta__btn:hover span {
    border-color: rgb(var(--color-primary));
    color: rgb(var(--color-primary));
  }

  .drawer__cta__btn:hover:before {
    opacity: 0;
  }

  .drawer__cta__btn.--primary {
    color: #fff;
  }

  .drawer__cta__btn.--primary:before {
    content: "";
    background: rgb(var(--color-primary));
    border-radius: .6rem;
    width: 100%;
    height: 100%;
    transition: opacity .3s;
    position: absolute;
    top: .5rem;
    left: .5rem;
  }

  @media (max-width: 767.98px) {
    .drawer__cta__btn.--primary:before {
      top: .3rem;
      left: .3rem;
    }
  }

  .drawer__cta__btn + .drawer__cta__btn {
    margin-top: 1.5rem;
  }

  @media (max-width: 767.98px) {
    .drawer__cta__btn + .drawer__cta__btn {
      margin-top: 1.25rem;
    }
  }

  .drawer__cta__illust {
    pointer-events: none;
    width: 17.1rem;
    position: absolute;
    bottom: -2.5rem;
    right: -3.5rem;
  }

  .drawer__cta__illust_sp {
    pointer-events: none;
    width: 11.2rem;
    position: absolute;
    bottom: -1rem;
    left: -1.5rem;
  }
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-border-style: solid;
      --tw-duration: initial;
    }
  }
}

@layer default {
  .is-drawer-open .g-header {
    z-index: 20;
  }

  .g-header {
    border-color: var(--color-gray, #707070);
  }

  @media (min-width: 768px) {
    .g-header {
      border-style: var(--tw-border-style);
      background-color: var(--color-white, #fff);
      border-width: 1px;
    }
  }

  .g-header {
    z-index: 60;
    border-radius: 2rem;
    align-items: center;
    row-gap: .75rem;
    width: 100%;
    max-width: 122rem;
    margin: 2rem auto 0;
    padding-inline: 2rem;
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
  }

  .g-header.--first {
    animation-duration: 0s !important;
  }

  .g-header.--up {
    animation: .5s forwards UpAnime;
  }

  @keyframes UpAnime {
    from {
      opacity: 1;
      transform: translateY(0);
    }

    to {
      opacity: 0;
      transform: translateY(calc(var(--header-height) * -1.1));
    }
  }

  .g-header.--down {
    animation: .5s forwards DownAnime;
  }

  @keyframes DownAnime {
    from {
      opacity: 0;
      transform: translateY(calc(var(--header-height) * -1.1));
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @media (max-width: 767.98px) {
    .g-header {
      transform-origin: 0 0;
      background: none;
      margin: 0;
      padding: 2rem;
      transition: scale .3s;
    }

    .g-header.--scrolled {
      scale: .8;
    }
  }

  .g-header__logo {
    align-self: flex-start;
    height: 100%;
    margin-right: auto;
    padding: 1.65rem 1rem 1.8rem 2rem;
    line-height: 1;
  }

  .g-header__logo img {
    max-width: inherit;
    width: 17.3rem;
  }

  .g-header__logo p {
    margin-top: 1.1rem;
    font-size: .9rem;
  }

  @media (max-width: 767.98px) {
    .g-header__logo {
      background: #ffffffe6;
      border-radius: 2rem;
      padding: 1rem 2rem;
    }
  }

  .g-header__schedule-btn {
    background: var(--color-body);
    color: #fff;
    padding: .5rem;
    border-radius: 4em;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-left: 2rem;
    padding-left: 2rem;
    font-size: 1.5rem;
    transition: all .3s;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .g-header__schedule-btn > * {
    z-index: 1;
    position: relative;
  }

  @media (max-width: 767.98px) {
    .g-header__schedule-btn {
      font-size: 2rem;
      display: none;
    }
  }

  .g-header__schedule-btn:after {
    background-color: var(--color-primary, #1fddcd);
    content: "";
    opacity: 0;
    pointer-events: none;
    z-index: -1;
    z-index: 0;
    border-radius: 50%;
    width: 100%;
    height: 0;
    margin: auto;
    padding-top: 100%;
    transition: opacity .5s, transform 0s .3s;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%)scale(.1);
  }

  .g-header__schedule-btn .overlap-circle-icon {
    font-size: 4.4rem;
  }

  .g-header__schedule-btn .overlap-circle-icon:before {
    color: var(--color-body);
  }

  .g-header__schedule-btn .overlap-circle-icon:after {
    color: var(--color-secondary, #fff836);
  }

  .g-header__schedule-btn:hover {
    color: #fff;
  }

  .g-header__schedule-btn:hover .overlap-circle-icon:before, .g-header__schedule-btn:hover .overlap-circle-icon:after {
    transition-delay: .2s !important;
  }

  .g-header__schedule-btn:hover .overlap-circle-icon:before {
    color: var(--color-primary, #1fddcd);
  }

  .g-header__schedule-btn:hover .overlap-circle-icon:after {
    color: #fff;
  }

  .g-header__schedule-btn:hover:after {
    opacity: 1;
    transition: opacity .7s, transform .5s ease-in-out;
    transform: translateY(-50%)scale(1.1);
  }

  .g-header__nav {
    text-align: right;
    flex-grow: 2;
    margin-left: auto;
  }

  @media (max-width: 767.98px) {
    .g-header__nav {
      display: none;
    }
  }

  .g-header__nav__menu {
    white-space: nowrap;
    display: flex;
  }

  .g-header__nav__menu li:not(:last-child) {
    border-right: 1px solid #707070;
  }

  .g-header__nav__menu li {
    text-align: center;
    flex: 1;
  }

  .g-header__nav__menu a {
    text-align: center;
    align-content: center;
    height: 100%;
    padding: 0 2rem;
    font-size: 1.7rem;
    line-height: 1.5;
    transition: opacity .3s;
    display: block;
    position: relative;
  }

  .g-header__nav__menu a:hover {
    opacity: .7;
  }

  .g-header__nav__menu__en {
    font-family: var(--font-jost);
    font-size: 1.6rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1;
  }

  .floating-g-header {
    z-index: 50;
    pointer-events: none;
    justify-content: space-between;
    width: 100%;
    max-width: 122rem;
    margin: 0 auto;
    display: none;
    position: fixed;
    top: 2.2rem;
    left: 0;
    right: 0;
  }

  .floating-g-header > * {
    pointer-events: auto;
  }

  .floating-g-header__logo {
    opacity: 1;
    padding-right: 3rem;
  }

  @media (max-width: 767.98px) {
    .floating-g-header__logo {
      display: none;
    }
  }

  .floating-g-header__cta-btn {
    display: none;
  }

  @media (max-width: 767.98px) {
    .floating-g-header {
      transition-property: all;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));
      transition-duration: var(--tw-duration, var(--default-transition-duration, .15s));
      --tw-duration: .3s;
      top: inherit;
      width: calc(var(--extend-container-width)  - 4rem);
      justify-content: space-between;
      margin: auto;
      transition-duration: .3s;
      display: flex;
      bottom: 1.5rem;
      left: 0;
      right: 0;
    }

    .floating-g-header:before {
      content: "";
      z-index: 0;
      background: linear-gradient(#fff0 0%, #fff 80%);
      position: absolute;
      inset: -2rem calc(16.3rem - 50vw) -1.5rem;
    }

    .floating-g-header.--disable {
      pointer-events: none;
      opacity: 0;
      transform: translateY(100%);
    }

    .floating-g-header.--first {
      opacity: 0;
      transition-duration: 0s !important;
    }

    .floating-g-header > * {
      z-index: 1;
    }

    .floating-g-header__cta-btn {
      color: #fff;
      flex-grow: 1;
      align-items: center;
      font-size: 1.5rem;
      display: flex;
    }

    .floating-g-header__cta-btn img {
      width: 5.6rem;
      position: relative;
    }
  }

  .drawer__toggler {
    aspect-ratio: 1;
    z-index: 100;
    --border-width: round(max(3px, .2rem), 1px);
    border: none;
    border: var(--border-width) solid var(--color-body);
    background: #fff;
    border-radius: 100%;
    height: 4.6rem;
    display: block;
    position: relative;
    top: 2.4rem;
    right: .35rem;
  }

  @media (max-width: 767.98px) {
    .drawer__toggler {
      height: 5.6rem;
      top: 0;
    }
  }

  .drawer__toggler:focus {
    outline-width: 0;
  }

  .drawer__toggler:focus-visible {
    outline-width: 1px;
  }

  .drawer__toggler span {
    width: 47%;
    margin: auto;
    display: block;
    position: absolute;
    top: 48%;
    left: 0;
    right: 0;
  }

  .drawer__toggler span, .drawer__toggler span:before, .drawer__toggler span:after {
    height: var(--border-width);
    background: var(--color-body);
    transform-origin: 50%;
    border-radius: 5px;
    transition: all .3s;
  }

  .drawer__toggler span:before, .drawer__toggler span:after {
    content: "";
    width: 100%;
    position: absolute;
    left: 0;
  }

  .drawer__toggler span:before {
    top: round(-.9rem, 1px);
  }

  .drawer__toggler span:after {
    bottom: round(-.9rem, 1px);
  }

  .drawer__toggler.is-open span {
    rotate: -220deg;
  }

  .drawer__toggler.is-open span:before {
    opacity: 0;
    top: 0;
  }

  .drawer__toggler.is-open span:after {
    bottom: 0;
    rotate: 80deg;
  }

  @supports not (width: round(1rem, 1px)) {
    .drawer__toggler {
      --border-width: max(3px, .2rem);
    }

    .drawer__toggler span:before {
      top: -.9rem;
    }

    .drawer__toggler span:after {
      bottom: -.9rem;
    }
  }
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
    }
  }
}

@layer parts {
  .cta-apply1 {
    position: relative;
  }

  .cta-apply1:before {
    content: "";
    width: 100%;
    height: 100%;
    left: var(--bg-dot-offset, -1.5rem);
    bottom: var(--bg-dot-offset, -1.5rem);
    background: url("/csp/lp/media/images/common/bg-dot.svg");
    background-size: var(--bg-dot-size);
    z-index: 0;
    border-radius: var(--bg-dot-radius, 2rem);
    position: absolute;
  }

  .cta-apply1__container {
    gap: calc(var(--spacing, 1rem) * 2);
    border-style: var(--tw-border-style);
    border-width: var(--border-width-3, max(3px, .3rem));
    border-color: var(--color-body, #4c4948);
  }

  @media (min-width: 768px) {
    .cta-apply1__container {
      gap: calc(var(--spacing, 1rem) * 8);
      border-style: var(--tw-border-style);
      border-width: var(--border-width-6, max(4px, .6rem));
    }
  }

  .cta-apply1__container {
    background-color: color-mix(in oklab, var(--color-secondary, #fff836) 30%, #fff);
    --rounded: 2rem;
    border-radius: var(--rounded);
    z-index: 1;
    grid-template-columns: 1fr auto 1fr;
    padding: 3.5rem 1rem 1.5rem;
    display: grid;
    position: relative;
  }

  @media (max-width: 767.98px) {
    .cta-apply1__container {
      grid-template-columns: 11rem auto;
      gap: .5rem;
      padding: 1.5rem 1rem 1rem;
    }
  }

  .cta-apply1__bg-dot-grad {
    inset: calc(var(--spacing, 1rem) * 0);
    z-index: 0;
    opacity: .75;
    border-radius: var(--rounded);
    position: absolute;
    overflow: hidden;
  }

  .cta-apply1__bg-dot-grad:before, .cta-apply1__bg-dot-grad:after {
    content: "";
    z-index: 0;
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    -webkit-mask-size: 110%;
    mask-size: 110%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  .cta-apply1__bg-dot-grad:before {
    background-image: linear-gradient(to right, var(--color-secondary) 50%, transparent);
    -webkit-mask-image: url("/csp/lp/media/images/common/bg-dot-grad1.svg");
    mask-image: url("/csp/lp/media/images/common/bg-dot-grad1.svg");
    -webkit-mask-position: 100%;
    mask-position: 100%;
  }

  .cta-apply1__bg-dot-grad:after {
    background-image: linear-gradient(to left, var(--color-secondary) 50%, transparent);
    right: 0;
    -webkit-mask-image: url("/csp/lp/media/images/common/bg-dot-grad2.svg");
    mask-image: url("/csp/lp/media/images/common/bg-dot-grad2.svg");
    -webkit-mask-position: 0;
    mask-position: 0;
  }

  .cta-apply1__main {
    text-align: center;
  }

  @media not all and (min-width: 768px) {
    .cta-apply1__main {
      text-align: left;
    }
  }

  .cta-apply1__title {
    z-index: 1;
    margin-bottom: calc(var(--spacing, 1rem) * 0);
    font-size: calc(2 * 1rem * var(--font-scale));
    --tw-leading: 1.5;
    --tw-font-weight: var(--font-weight-bold, 700);
    line-height: 1.5;
    font-weight: var(--font-weight-bold, 700);
    position: relative;
  }

  @media (min-width: 768px) {
    .cta-apply1__title {
      margin-bottom: calc(var(--spacing, 1rem) * 2);
      font-size: calc(2.2 * 1rem * var(--font-scale));
    }
  }

  .cta-apply1__btn {
    background-color: var(--color-body, #4c4948);
    font-size: calc(2 * 1rem * var(--font-scale));
    --tw-font-weight: var(--font-weight-bold, 700);
    font-weight: var(--font-weight-bold, 700);
    color: var(--color-secondary, #fff836);
    grid-template-columns: 1fr auto 1fr;
    display: flex;
    position: relative;
  }

  @media not all and (min-width: 768px) {
    .cta-apply1__btn {
      --tw-leading: 1.3;
      line-height: 1.3;
    }
  }

  @media (min-width: 768px) {
    .cta-apply1__btn {
      width: 55.2rem;
      display: grid;
    }
  }

  .cta-apply1__btn {
    z-index: 1;
    border-radius: 50vh;
    align-items: center;
    gap: 2.75rem;
    margin: 1.5rem auto 2.5rem;
    padding: 1rem 1.3rem 1rem 3rem;
    transition: color .3s, background-color .3s;
  }

  .cta-apply1__btn > * {
    z-index: 1;
    position: relative;
  }

  .cta-apply1__btn:before {
    content: "";
  }

  @media (max-width: 767.98px) {
    .cta-apply1__btn {
      gap: .75rem;
      margin: 1rem 0 0;
      padding: .8rem .8rem .8rem 1.5rem;
    }
  }

  .cta-apply1__btn__text {
    text-align: center;
    flex: 1;
    margin-top: -.25rem;
  }

  .cta-apply1__btn img {
    width: 9.6rem;
    margin-top: -2.5rem;
  }

  @media (max-width: 767.98px) {
    .cta-apply1__btn img {
      width: 4.7rem;
      margin-top: -1rem;
    }
  }

  .cta-apply1__btn .overlap-circle-icon {
    margin-left: auto;
    font-size: 4.8rem;
  }

  @media (max-width: 767.98px) {
    .cta-apply1__btn .overlap-circle-icon {
      font-size: 3rem;
    }
  }

  .cta-apply1__btn .overlap-circle-icon:before {
    color: var(--color-body, #4c4948);
  }

  .cta-apply1__btn .overlap-circle-icon:after {
    color: var(--color-secondary, #fff836);
  }

  .cta-apply1__btn__action {
    inset: calc(var(--spacing, 1rem) * 0);
    z-index: 0;
    border-radius: 3.40282e38px;
    position: absolute;
    overflow: hidden;
  }

  .cta-apply1__btn__action:after {
    background-color: var(--color-secondary, #fff836);
    content: "";
    opacity: 0;
    pointer-events: none;
    z-index: -1;
    border-radius: 50%;
    width: 100%;
    height: 0;
    margin: auto;
    padding-top: 100%;
    transition: opacity .5s, transform 0s .3s;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%)scale(.1);
  }

  .cta-apply1__btn:hover {
    color: var(--color-body, #4c4948);
  }

  .cta-apply1__btn:hover .overlap-circle-icon:before, .cta-apply1__btn:hover .overlap-circle-icon:after {
    transition-delay: .2s !important;
  }

  .cta-apply1__btn:hover .overlap-circle-icon:after {
    color: #fff;
  }

  .cta-apply1__btn:hover .cta-apply1__btn__action:after {
    opacity: 1;
    transition: opacity .7s, transform .5s ease-in-out;
    transform: translateY(-50%)scale(1.1);
  }
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-duration: initial;
      --tw-space-y-reverse: 0;
      --tw-leading: initial;
      --tw-font-weight: initial;
    }
  }
}

@layer default {
  .card-nav__card {
    max-width: calc(var(--spacing, 1rem) * 29);
    --bg-dot-radius: 2rem;
    --bg-dot-offset: -1.5rem;
    display: block;
    position: relative;
    height: auto !important;
  }

  @media (max-width: 767.98px) {
    .card-nav__card {
      --bg-dot-radius: 1.5rem;
      --bg-dot-offset: -1rem;
    }
  }

  .card-nav__card:before {
    content: "";
    width: 100%;
    height: 100%;
    left: var(--bg-dot-offset, -1.5rem);
    bottom: var(--bg-dot-offset, -1.5rem);
    background: url("/csp/lp/media/images/common/bg-dot.svg");
    background-size: var(--bg-dot-size);
    z-index: 0;
    border-radius: var(--bg-dot-radius, 2rem);
    position: absolute;
  }

  .card-nav__card__inner {
    background-color: var(--color-white, #fff);
    z-index: 1;
    border-radius: var(--bg-dot-radius);
    flex-direction: column;
    height: 100%;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .card-nav__card__img {
    aspect-ratio: 29 / 20;
    align-content: center;
    overflow: hidden;
  }

  .card-nav__card__img img {
    --tw-scale-x: 100%;
    --tw-scale-y: 100%;
    --tw-scale-z: 100%;
    width: 85%;
    height: 85%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    object-fit: contain;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));
    transition-duration: var(--tw-duration, var(--default-transition-duration, .15s));
    --tw-duration: .2s;
    margin-inline: auto;
    transition-duration: .2s;
  }

  .card-nav__card__body {
    flex-grow: 1;
    position: relative;
  }

  :where(.card-nav__card__body > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing, 1rem) * 1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing, 1rem) * 1) * calc(1 - var(--tw-space-y-reverse)));
  }

  .card-nav__card__body {
    padding: calc(var(--spacing, 1rem) * 1);
    padding-bottom: calc(var(--spacing, 1rem) * 5);
  }

  @media (min-width: 768px) {
    .card-nav__card__body {
      padding-inline: calc(var(--spacing, 1rem) * 3);
      padding-top: calc(var(--spacing, 1rem) * 2.5);
    }
  }

  .card-nav__card__body:after {
    right: calc(var(--spacing, 1rem) * 1);
    bottom: calc(var(--spacing, 1rem) * 1);
    text-align: right;
    font-size: calc(4 * 1rem * var(--font-scale));
    speak: none;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    font-family: icon;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    display: block;
    position: absolute;
  }

  .card-nav__card__title {
    --tw-leading: 1.5;
    --tw-font-weight: var(--font-weight-semibold, 600);
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: var(--font-weight-semibold, 600);
  }

  @media (min-width: 768px) {
    .card-nav__card__title {
      font-size: 2rem;
    }
  }

  .card-nav__card__desc {
    font-size: var(--text-sm, calc(1.4rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));
    --tw-leading: 1.75;
    line-height: 1.75;
  }

  .card-nav__card:hover .card-nav__card__img img {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    --tw-duration: .5s;
    transition-duration: .5s;
  }
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
    }
  }
}

@layer default {
  .card-nav {
    padding-inline: max((100vw - var(--narrow-container-width)) / 2, var(--container-gutter)) !important;
  }

  .card-nav--centered .swiper-wrapper {
    justify-content: center;
  }
}

.card-nav-button-prev, .card-nav-button-next {
  z-index: 10;
  width: calc(var(--spacing, 1rem) * 3);
  height: calc(var(--spacing, 1rem) * 3);
  --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  cursor: pointer;
  background-color: var(--color-body, #4c4948);
  border-radius: 3.40282e38px;
  align-content: center;
  position: absolute;
  top: 50%;
}

@media (min-width: 768px) {
  .card-nav-button-prev, .card-nav-button-next {
    width: calc(var(--spacing, 1rem) * 5);
    height: calc(var(--spacing, 1rem) * 5);
  }
}

.card-nav-button-prev:after, .card-nav-button-next:after {
  background-color: var(--color-white, #fff);
  content: "";
  clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
  width: 44%;
  height: 40%;
  display: block;
}

.card-nav-button-prev.swiper-button-disabled, .card-nav-button-next.swiper-button-disabled {
  opacity: .5;
  cursor: default;
}

.card-nav-button-prev {
  left: calc(var(--spacing, 1rem) * 1);
}

@media (min-width: 768px) {
  .card-nav-button-prev {
    left: calc(var(--spacing, 1rem) * 2);
  }
}

.card-nav-button-prev:after {
  margin-left: 25%;
  rotate: 180deg;
}

.card-nav-button-next {
  right: calc(var(--spacing, 1rem) * 1);
}

@media (min-width: 768px) {
  .card-nav-button-next {
    right: calc(var(--spacing, 1rem) * 2);
  }
}

.card-nav-button-next:after {
  margin-left: 35%;
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-border-style: solid;
      --tw-leading: initial;
    }
  }
}

@layer default {
  .voice-item__box {
    height: 100%;
  }

  .voice-item__box__container {
    gap: calc(var(--spacing, 1rem) * 2);
    border-style: var(--tw-border-style);
    border-width: var(--border-width-2, max(2px, .2rem));
    border-color: var(--color-primary, #1fddcd);
    background-color: var(--color-white, #fff);
    height: 100%;
    padding: calc(var(--spacing, 1rem) * 2);
    display: flex;
  }

  @media (min-width: 768px) {
    .voice-item__box__container {
      gap: calc(var(--spacing, 1rem) * 4.5);
      padding-inline: calc(var(--spacing, 1rem) * 4);
      padding-block: calc(var(--spacing, 1rem) * 5);
    }
  }

  .voice-item__box__container figure {
    margin-top: calc(var(--spacing, 1rem) * 1);
    min-width: calc(var(--spacing, 1rem) * 8.5);
    text-align: center;
  }

  @media (min-width: 768px) {
    .voice-item__box__container figure {
      min-width: 12.8rem;
    }
  }

  .voice-item__box__container figure img {
    margin-inline: auto;
    margin-bottom: calc(var(--spacing, 1rem) * .5);
    background-color: var(--color-primary, #1fddcd);
    border-radius: 3.40282e38px;
    width: 100%;
  }

  @media (min-width: 768px) {
    .voice-item__box__container figure img {
      margin-bottom: calc(var(--spacing, 1rem) * 1);
    }
  }

  .voice-item__box__container figure figcaption {
    --tw-leading: 1.5;
    line-height: 1.5;
  }

  @media not all and (min-width: 768px) {
    .voice-item__box__container figure figcaption {
      font-size: var(--text-sm, calc(1.4rem * var(--font-scale)));
      line-height: var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));
    }
  }

  .voice-item__box__container p {
    font-size: var(--text-base, calc(1.6rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-base--line-height, calc(1.5 / 1)));
    --tw-leading: 2;
    flex-grow: 1;
    align-self: center;
    line-height: 2;
  }
}
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-border-style: solid;
    }
  }
}

@font-face {
  font-family: icon;
  src: url("/csp/lp/fonts/icon.ttf?spqdhk") format("truetype"), url("/csp/lp/fonts/icon.woff?spqdhk") format("woff"), url("/csp/lp/fonts/icon.svg?spqdhk#icon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  speak: never;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  font-family: icon !important;
}

.icon-arrow1-b:before {
  content: "";
}

.icon-arrow1-l:before {
  content: "";
}

.icon-arrow1-r:before {
  content: "";
}

.icon-arrow1-t:before {
  content: "";
}

.icon-arrow2-b:before {
  content: "";
}

.icon-arrow2-l:before {
  content: "";
}

.icon-arrow2-r:before {
  content: "";
}

.icon-arrow2-t:before {
  content: "";
}

.icon-arrow3-b:before {
  content: "";
}

.icon-arrow3-l:before {
  content: "";
}

.icon-arrow3-r:before {
  content: "";
}

.icon-arrow3-t:before {
  content: "";
}

.icon-arrow4-b:before {
  content: "";
}

.icon-arrow4-l:before {
  content: "";
}

.icon-arrow4-r:before {
  content: "";
}

.icon-arrow4-t:before {
  content: "";
}

.icon-circle:before {
  content: "";
}

.icon-newwindow:before {
  content: "";
}

.icon-pdf:before {
  content: "";
}

.icon-adjust-70:before {
  font-size: 70%;
}

.icon-adjust-75:before {
  font-size: 75%;
}

.icon-adjust-80:before {
  font-size: 80%;
}

.icon-adjust-85:before {
  font-size: 85%;
}

.icon-adjust-90:before {
  font-size: 90%;
}

.icon-adjust-95:before {
  font-size: 95%;
}

.icon-adjust-100:before {
  font-size: 100%;
}

.icon-adjust-105:before {
  font-size: 105%;
}

.icon-adjust-110:before {
  font-size: 110%;
}

.icon-adjust-115:before {
  font-size: 115%;
}

.icon-adjust-120:before {
  font-size: 120%;
}

.icon-adjust-125:before {
  font-size: 125%;
}

.icon-adjust-130:before {
  font-size: 130%;
}

.icon-adjust-135:before {
  font-size: 135%;
}

.icon-adjust-140:before {
  font-size: 140%;
}

.icon-adjust-145:before {
  font-size: 145%;
}

.overlap-icon, .overlap-circle-icon {
  width: 1em;
  height: 1em;
  line-height: 1;
  position: relative;
}

.overlap-icon:before, .overlap-circle-icon:before, .overlap-icon:after, .overlap-circle-icon:after {
  transition: color .3s;
  position: absolute;
  left: 0;
}

.overlap-icon:before, .overlap-circle-icon:before {
  z-index: 1;
}

.overlap-circle-icon:after {
  speak: none;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  font-family: icon;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
}

:host {
  --output-file-name-important: workshop-style. css;
}

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

@media (min-width: 768px) {
  .fv {
    padding-inline: 3vw;
  }
}

.fv__container {
  top: 8.5cqw;
  right: calc(var(--spacing, 1rem) * 0);
  left: calc(var(--spacing, 1rem) * 0);
  max-width: 100%;
  margin-inline: auto;
  position: absolute;
}

@media not all and (min-width: 768px) {
  .fv__container {
    padding-left: 7cqw;
  }
}

@media (min-width: 768px) {
  .fv__container {
    width: 75.5cqw;
    top: 7.1cqw;
  }
}

.fv__title {
  --tw-leading: 1.3;
  --tw-font-weight: var(--font-weight-semibold, 600);
  font-size: 11.5cqw;
  line-height: 1.3;
  font-weight: var(--font-weight-semibold, 600);
  --tw-tracking: -.075em;
  letter-spacing: -.075em;
  color: var(--color-white, #fff);
}

@media not all and (min-width: 768px) {
  .fv__title {
    margin-left: 3.5cqw;
  }
}

@media (min-width: 768px) {
  .fv__title {
    --tw-leading: 1.35;
    --tw-tracking: var(--tracking-tight, -.025em);
    letter-spacing: var(--tracking-tight, -.025em);
    font-size: 3.9cqw;
    line-height: 1.35;
  }
}

.fv__title {
  -webkit-text-stroke: max(.3cqw, 1px) var(--color-body);
  text-stroke: max(.3cqw, 1px) var(--color-body);
  paint-order: stroke;
}

@media not all and (min-width: 768px) {
  .fv__title {
    -webkit-text-stroke: max(.8cqw, 1px) var(--color-body);
    text-stroke: max(.8cqw, 1px) var(--color-body);
  }
}

.fv__text {
  --tw-leading: 1.5;
  --tw-font-weight: var(--font-weight-bold, 700);
  font-size: 4.75cqw;
  line-height: 1.5;
  font-weight: var(--font-weight-bold, 700);
  margin-top: 2cqw;
}

@media not all and (min-width: 768px) {
  .fv__text {
    --tw-tracking: var(--tracking-wide, .025em);
    letter-spacing: var(--tracking-wide, .025em);
    margin-left: 4cqw;
  }
}

@media (min-width: 768px) {
  .fv__text {
    --tw-leading: 1.4;
    margin-top: 1.7cqw;
    font-size: 1.7cqw;
    line-height: 1.4;
  }
}

.fv__feature {
  width: 89cqw;
  max-width: 100%;
  margin-top: 64cqw;
}

@media (min-width: 768px) {
  .fv__feature {
    width: 31.5cqw;
    margin-top: 1.7cqw;
  }
}

.fv__news {
  top: 171cqw;
  right: calc(var(--spacing, 1rem) * 2);
  left: calc(var(--spacing, 1rem) * 2);
  border-style: var(--tw-border-style);
  border-width: var(--border-width-1, max(1px, .1rem));
  border-color: var(--color-body, #4c4948);
  background-color: var(--color-white, #fff);
  max-width: fit-content;
  padding-inline: calc(var(--spacing, 1rem) * 1);
  padding-block: calc(var(--spacing, 1rem) * .5);
  text-align: center;
  font-size: var(--text-sm, calc(1.4rem * var(--font-scale)));
  line-height: var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));
  border-radius: 3.40282e38px;
  margin-inline: auto;
  position: absolute;
}

@media (min-width: 768px) {
  .fv__news {
    max-width: calc(var(--spacing, 1rem) * 94);
    padding-inline: calc(var(--spacing, 1rem) * 2.5);
    padding-block: calc(var(--spacing, 1rem) * 1);
    font-size: var(--text-base, calc(1.6rem * var(--font-scale)));
    line-height: var(--tw-leading, var(--text-base--line-height, calc(1.5 / 1)));
    top: 44.5cqw;
  }
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
