/*!
Theme Name: キズナガーデン
Author: キズナガーデン
*/

/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/scss/main.scss ***!
  \***********************************************************************************************************************************************************************************/
@charset "UTF-8";
/*
  レイヤ優先順位（強い順）:
  pages > utils > components > base > destyle
*/
@layer destyle, base, components, utils, pages;
@layer destyle {
  /*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
  /* Reset box-model and set borders */
  /* ============================================ */
  *,
  ::before,
  ::after {
    border-style: solid;
    border-width: 0;
    box-sizing: border-box;
    min-width: 0;
  }
  /* Document */
  /* ============================================ */
  /**
   * 1. Correct the line height in all browsers.
   * 2. Prevent adjustments of font size after orientation changes in iOS.
   * 3. Remove gray overlay on links for iOS.
   */
  html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -webkit-tap-highlight-color: transparent; /* 3*/
  }
  /* Sections */
  /* ============================================ */
  /**
   * Remove the margin in all browsers.
   */
  body {
    margin: 0;
  }
  /**
   * Render the `main` element consistently in IE.
   */
  main {
    display: block;
  }
  /* Vertical rhythm */
  /* ============================================ */
  p,
  table,
  blockquote,
  address,
  pre,
  iframe,
  form,
  figure,
  dl {
    margin: 0;
  }
  /* Headings */
  /* ============================================ */
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
  }
  /* Lists (enumeration) */
  /* ============================================ */
  ul,
  ol {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  /* Lists (definition) */
  /* ============================================ */
  dt {
    font-weight: bold;
  }
  dd {
    margin-left: 0;
  }
  /* Grouping content */
  /* ============================================ */
  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
  hr {
    border-top-width: 1px;
    box-sizing: content-box; /* 1 */
    clear: both;
    color: inherit;
    height: 0; /* 1 */
    margin: 0;
    overflow: visible; /* 2 */
  }
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  pre {
    font-family: monospace, monospace; /* 1 */
    font-size: inherit; /* 2 */
  }
  address {
    font-style: inherit;
  }
  /* Text-level semantics */
  /* ============================================ */
  /**
   * Remove the gray background on active links in IE 10.
   */
  a {
    background-color: transparent;
    color: inherit;
    text-decoration: none;
  }
  /**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
  abbr[title] {
    -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted; /* 2 */
  }
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
  b,
  strong {
    font-weight: bolder;
  }
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  code,
  kbd,
  samp {
    font-family: monospace, monospace; /* 1 */
    font-size: inherit; /* 2 */
  }
  /**
   * Add the correct font size in all browsers.
   */
  small {
    font-size: 80%;
  }
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  /* Replaced content */
  /* ============================================ */
  /**
   * Prevent vertical alignment issues.
   */
  svg,
  img,
  embed,
  object,
  iframe {
    vertical-align: bottom;
  }
  /* Forms */
  /* ============================================ */
  /**
   * Reset form fields to make them styleable.
   * 1. Make form elements stylable across systems iOS especially.
   * 2. Inherit text-transform from parent.
   */
  button,
  input,
  optgroup,
  select,
  textarea {
    -webkit-appearance: none; /* 1 */
    -moz-appearance: none;
         appearance: none;
    background: transparent;
    border-radius: 0;
    color: inherit;
    font: inherit;
    margin: 0;
    padding: 0;
    text-align: inherit;
    text-transform: inherit; /* 2 */
    vertical-align: middle;
  }
  /**
   * Correct cursors for clickable elements.
   */
  button,
  [type=button],
  [type=reset],
  [type=submit] {
    cursor: pointer;
  }
  button:disabled,
  [type=button]:disabled,
  [type=reset]:disabled,
  [type=submit]:disabled {
    cursor: default;
  }
  /**
   * Improve outlines for Firefox and unify style with input elements & buttons.
   */
  :-moz-focusring {
    outline: auto;
  }
  select:disabled {
    opacity: inherit;
  }
  /**
   * Remove padding
   */
  option {
    padding: 0;
  }
  /**
   * Reset to invisible
   */
  fieldset {
    margin: 0;
    min-width: 0;
    padding: 0;
  }
  legend {
    padding: 0;
  }
  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  progress {
    vertical-align: baseline;
  }
  /**
   * Remove the default vertical scrollbar in IE 10+.
   */
  textarea {
    overflow: auto;
  }
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
  [type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button {
    height: auto;
  }
  /**
   * Correct the outline style in Safari.
   */
  [type=search] {
    outline-offset: -2px; /* 1 */
  }
  /**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Fix font inheritance.
   */
  ::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
  }
  /**
   * Fix appearance for Firefox
   */
  [type=number] {
    -moz-appearance: textfield;
  }
  /**
   * Clickable labels
   */
  label[for] {
    cursor: pointer;
  }
  /* Interactive */
  /* ============================================ */
  /*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
  details {
    display: block;
  }
  /*
   * Add the correct display in all browsers.
   */
  summary {
    display: list-item;
  }
  /*
   * Remove outline for editable content.
   */
  [contenteditable]:focus {
    outline: auto;
  }
  /* Tables */
  /* ============================================ */
  /**
  1. Correct table border color inheritance in all Chrome and Safari.
  */
  table {
    border-collapse: collapse;
    border-color: inherit; /* 1 */
  }
  caption {
    text-align: left;
  }
  td,
  th {
    padding: 0;
    vertical-align: top;
  }
  th {
    font-weight: bold;
    text-align: left;
  }
}
@layer base {
  html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
       -moz-text-size-adjust: 100%;
            text-size-adjust: 100%;
  }
  :root {
    --form-border: #aaa;
    --form-focus: #4d90fe;
    --form-disabled-opacity: 0.6;
    --form-placeholder-opacity: 0.6;
    --focus-ring: var(--form-focus);
    --focus-ring-width: 2px;
    --focus-ring-offset: 2px;
    --smooth-scroll-offset-gap: 24px;
  }
  body {
    color: #222;
    font-family: "M PLUS 1p", sans-serif;
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 1024px) * 0.0048076923), 1.8rem);
    font-weight: 400;
    line-height: 2;
  }
  @media (max-width: 1023.98px) {
    body {
      font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0046224961), 1.8rem);
    }
  }
  h1, h2, h3, h4, h5, h6 {
    font-weight: 800;
    line-height: 1.4;
  }
  a {
    transition: opacity 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (hover: hover) {
    a:hover {
      opacity: 0.7;
    }
  }
  :where(a, button, input, textarea, select, summary):focus {
    outline: var(--focus-ring-width) solid var(--focus-ring);
    outline-offset: var(--focus-ring-offset);
  }
  :where(a, button, input, textarea, select, summary):focus:not(:focus-visible) {
    outline: none;
  }
  :where(input, textarea, select, button) {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
  }
  :where(textarea,
  select,
  input:not([type]),
  input[type=text],
  input[type=search],
  input[type=email],
  input[type=password],
  input[type=url],
  input[type=tel],
  input[type=number],
  input[type=date],
  input[type=month],
  input[type=week],
  input[type=time],
  input[type=datetime-local]) {
    border: 1px solid var(--form-border);
    padding: 8px 15px;
  }
  :where(textarea,
  select,
  input:not([type]),
  input[type=text],
  input[type=search],
  input[type=email],
  input[type=password],
  input[type=url],
  input[type=tel],
  input[type=number],
  input[type=date],
  input[type=month],
  input[type=week],
  input[type=time],
  input[type=datetime-local]):focus {
    border-color: var(--form-focus);
    outline-offset: 0;
  }
  :where(textarea,
  select,
  input:not([type]),
  input[type=text],
  input[type=search],
  input[type=email],
  input[type=password],
  input[type=url],
  input[type=tel],
  input[type=number],
  input[type=date],
  input[type=month],
  input[type=week],
  input[type=time],
  input[type=datetime-local]):disabled {
    cursor: not-allowed;
    opacity: var(--form-disabled-opacity);
  }
  :where(textarea,
  select,
  input:not([type]),
  input[type=text],
  input[type=search],
  input[type=email],
  input[type=password],
  input[type=url],
  input[type=tel],
  input[type=number],
  input[type=date],
  input[type=month],
  input[type=week],
  input[type=time],
  input[type=datetime-local])::-moz-placeholder {
    opacity: var(--form-placeholder-opacity);
  }
  :where(textarea,
  select,
  input:not([type]),
  input[type=text],
  input[type=search],
  input[type=email],
  input[type=password],
  input[type=url],
  input[type=tel],
  input[type=number],
  input[type=date],
  input[type=month],
  input[type=week],
  input[type=time],
  input[type=datetime-local])::placeholder {
    opacity: var(--form-placeholder-opacity);
  }
  input:not([type]), input[type=text], input[type=search], input[type=email], input[type=password], input[type=url], input[type=tel], input[type=number], input[type=date], input[type=month], input[type=week], input[type=time], input[type=datetime-local] {
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
    width: 100%;
  }
  input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
  }
  input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
  }
  input[type=radio], input[type=checkbox] {
    accent-color: var(--form-focus);
    -webkit-appearance: auto;
    -moz-appearance: auto;
         appearance: auto;
    bottom: 1px;
    position: relative;
  }
  input[type=checkbox] {
    bottom: 2px;
    margin-right: 7px;
  }
  input[type=date], input[type=time], input[type=datetime-local], input[type=month], input[type=week] {
    -webkit-appearance: auto;
    -moz-appearance: auto;
         appearance: auto;
  }
  textarea {
    resize: vertical;
    width: 100%;
  }
  select {
    -webkit-appearance: auto;
    -moz-appearance: auto;
         appearance: auto;
  }
  img {
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
  }
  table {
    width: 100%;
  }
  table th, table td {
    padding-block: clamp(10px, calc(10px + (100vw - 576px) * 0.0111607143), 15px);
    padding-inline: clamp(10px, calc(10px + (100vw - 576px) * 0.0111607143), 15px);
  }
  table th {
    font-weight: 600;
    overflow-wrap: normal; /* 単語途中での折返しを抑制 */
    white-space: nowrap; /* 改行しない */
    word-break: keep-all; /* CJKの任意改行も抑制（保険） */
  }
  dd + dt {
    margin-top: clamp(20px, calc(20px + (100vw - 576px) * 0.0260416667), 25px);
  }
  :where(.main) ol, :where(.main) ul {
    padding-left: 30px;
  }
  :where(.main) ol li, :where(.main) ul li {
    line-height: 1.8;
  }
  :where(.main) ol ol, :where(.main) ol ul, :where(.main) ul ol, :where(.main) ul ul {
    margin: auto;
  }
  :where(.main) ul li {
    list-style-type: disc;
  }
  :where(.main) ul li li {
    list-style-type: circle;
  }
  :where(.main) ul li li li {
    list-style-type: square;
  }
  :where(.main) ul li li li li {
    list-style-type: disclosure-closed;
  }
  :where(.main) ol li {
    list-style: decimal-leading-zero;
  }
  #page {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100svh;
    overflow-x: hidden;
    overflow-x: clip;
  }
  .main {
    flex: 1 1;
  }
}
@layer components {
  .article :where(p, blockquote, img) {
    margin-bottom: clamp(20px, calc(20px + (100vw - 576px) * 0.0260416667), 25px);
    margin-top: clamp(20px, calc(20px + (100vw - 576px) * 0.0260416667), 25px);
  }
  .article :where(table, ul, ol, iframe) {
    margin-bottom: clamp(20px, calc(20px + (100vw - 576px) * 0.078125), 35px);
    margin-top: clamp(20px, calc(20px + (100vw - 576px) * 0.078125), 35px);
  }
  .article :where(li > ul, li > ol) {
    margin-bottom: clamp(8px, calc(8px + (100vw - 576px) * 0.03125), 14px);
    margin-top: clamp(8px, calc(8px + (100vw - 576px) * 0.03125), 14px);
  }
  .article :where(h1, h2, h3, h4, h5, h6) {
    margin-bottom: clamp(20px, calc(20px + (100vw - 576px) * 0.0260416667), 25px);
    margin-top: clamp(30px, calc(30px + (100vw - 576px) * 0.1041666667), 50px);
  }
  .article :where(h1, h2, h3, h4, h5, h6) + * {
    margin-top: -10px;
  }
  .article :where(h1, h2, h3, h4, h5, h6) + img {
    margin-top: 0;
  }
  .breadcrumb {
    background-color: #FFEBF2;
    padding-block: 4px 2px;
  }
  .breadcrumb a, .breadcrumb span, .breadcrumb .breadcrumb__sep {
    font-size: 1rem;
  }
  @media (hover: hover) {
    .breadcrumb a:hover {
      text-decoration: underline;
    }
  }
  .breadcrumb__sep + .breadcrumb__sep {
    display: none;
  }
  .breadcrumb .current-item {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
  }
  @media (max-width: 575.98px) {
    .breadcrumb .current-item {
      max-width: clamp(200px, calc(200px + (100vw - 375px) * 0.7462686567), 350px);
      width: 100%;
    }
  }
  .breadcrumb__inner {
    align-items: center;
    display: flex;
    gap: 7px;
    line-height: 1.4;
  }
  .contact-cards {
    --contact-cards-tel-bg: #ff7ba8;
    --contact-cards-tel-bg-hover: rgb(255, 72, 134.3863636364);
    --contact-cards-form-bg: rgb(99.5493975904, 132.8602409639, 180.0506024096);
    --contact-cards-form-bg-hover: rgb(74.3638554217, 107.4144578313, 154.2361445783);
    --contact-cards-rule: rgba(255, 255, 255, 0.6);
    display: grid;
    gap: clamp(32px, calc(32px + (100vw - 1024px) * 0.0192307692), 40px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (max-width: 1023.98px) {
    .contact-cards {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  @media (max-width: 575.98px) {
    .contact-cards {
      gap: clamp(16px, calc(16px + (100vw - 375px) * 0.07960199), 32px);
    }
  }
  @media (max-width: 1023.98px) {
    .contact-cards--top-page-contact-panel {
      margin-top: clamp(10px, calc(10px + (100vw - 375px) * 0.0696517413), 24px);
    }
  }
  .contact-cards__card {
    --contact-cards-card-border: var(--contact-cards-tel-bg);
    --contact-cards-card-surface: var(--contact-cards-tel-bg);
    --contact-cards-card-surface-hover: var(--contact-cards-tel-bg-hover);
    --contact-cards-body-padding-inline-start: clamp(20px, calc(20px + (100vw - 1024px) * 0.0480769231), 40px);
    --contact-cards-body-padding-inline-end: clamp(20px, calc(20px + (100vw - 1024px) * 0.0480769231), 40px);
    --contact-cards-body-text-align: left;
    --contact-cards-title-justify: flex-start;
    --contact-cards-title-size: clamp(2.6rem, calc(2.6rem + (100vw - 375px) * 0.0298507463), 3.2rem);
    --contact-cards-media-inline-start: auto;
    --contact-cards-media-inline-end: clamp(-12px, calc(-12px + (100vw - 1024px) * 0.0576923077), 12px);
    --contact-cards-media-justify: flex-end;
    --contact-cards-media-photo-width: clamp(200px, calc(200px + (100vw - 1024px) * 0.0480769231), 220px);
    background-color: #fff;
    border: 1px solid var(--contact-cards-card-border);
    color: #fff;
    display: block;
    padding: 4px;
    position: relative;
    text-decoration: none;
    transition: border-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 1023.98px) {
    .contact-cards__card {
      height: clamp(136px, calc(136px + (100vw - 375px) * 0.1691542289), 170px);
      --contact-cards-media-inline-end: clamp(12px, calc(12px + (100vw - 576px) * 0.2291666667), 56px);
    }
  }
  @media (max-width: 575.98px) {
    .contact-cards__card {
      --contact-cards-media-photo-width: clamp(124px, calc(124px + (100vw - 375px) * 0.3781094527), 200px);
      --contact-cards-media-inline-end: clamp(-7px, calc(-7px + (100vw - 375px) * 0.0945273632), 12px);
      overflow: hidden;
    }
  }
  @media (hover: hover) {
    .contact-cards__card:hover {
      --contact-cards-card-border: var(--contact-cards-card-surface-hover);
      --contact-cards-card-surface: var(--contact-cards-card-surface-hover);
      opacity: 1;
    }
  }
  .contact-cards__card--tel {
    --contact-cards-body-padding-inline-start: clamp(32px, calc(32px + (100vw - 1200px) * 0.6833333333), 196px);
    --contact-cards-body-text-align: right;
    --contact-cards-title-justify: flex-end;
    --contact-cards-title-size: clamp(3.1rem, calc(3.1rem + (100vw - 375px) * 0.0447761194), 4rem);
    --contact-cards-media-inline-start: clamp(-12px, calc(-12px + (100vw - 1024px) * 0.0576923077), 12px);
    --contact-cards-media-inline-end: auto;
    --contact-cards-media-justify: flex-start;
  }
  @media (max-width: 1023.98px) {
    .contact-cards__card--tel {
      --contact-cards-media-inline-start: clamp(12px, calc(12px + (100vw - 576px) * 0.21875), 54px);
      --contact-cards-body-padding-inline-start: clamp(32px, calc(32px + (100vw - 576px) * 0.4791666667), 124px);
      --contact-cards-body-padding-inline-end: clamp(32px, calc(32px + (100vw - 576px) * 0.4791666667), 124px);
    }
  }
  @media (max-width: 575.98px) {
    .contact-cards__card--tel {
      --contact-cards-media-inline-start: clamp(-16px, calc(-16px + (100vw - 375px) * 0.1393034826), 12px);
      --contact-cards-body-padding-inline-start: clamp(15px, calc(15px + (100vw - 375px) * 0.0845771144), 32px);
      --contact-cards-body-padding-inline-end: clamp(15px, calc(15px + (100vw - 375px) * 0.0845771144), 32px);
    }
  }
  .contact-cards__card--tel .contact-cards__title {
    font-weight: 500;
  }
  .contact-cards__card--form {
    --contact-cards-card-border: var(--contact-cards-form-bg);
    --contact-cards-card-surface: var(--contact-cards-form-bg);
    --contact-cards-card-surface-hover: var(--contact-cards-form-bg-hover);
    --contact-cards-body-padding-inline-end: clamp(32px, calc(32px + (100vw - 1200px) * 0.6833333333), 196px);
  }
  @media (max-width: 1023.98px) {
    .contact-cards__card--form {
      --contact-cards-body-padding-inline-start: clamp(32px, calc(32px + (100vw - 576px) * 0.4791666667), 124px);
      --contact-cards-body-padding-inline-end: clamp(32px, calc(32px + (100vw - 576px) * 0.4791666667), 124px);
    }
  }
  @media (max-width: 575.98px) {
    .contact-cards__card--form {
      --contact-cards-body-padding-inline-start: clamp(15px, calc(15px + (100vw - 375px) * 0.0845771144), 32px);
      --contact-cards-body-padding-inline-end: clamp(15px, calc(15px + (100vw - 375px) * 0.0845771144), 32px);
    }
  }
  .contact-cards__body {
    background-color: var(--contact-cards-card-surface);
    block-size: 100%;
    display: block;
    padding-block: clamp(12px, calc(12px + (100vw - 375px) * 0.039800995), 20px);
    padding-inline: var(--contact-cards-body-padding-inline-start) var(--contact-cards-body-padding-inline-end);
    text-align: var(--contact-cards-body-text-align);
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .contact-cards__title-row {
    align-items: center;
    border-bottom: 1px solid var(--contact-cards-rule);
    display: flex;
    gap: clamp(8px, calc(8px + (100vw - 375px) * 0.0298507463), 14px);
    justify-content: var(--contact-cards-title-justify);
    margin-bottom: 7px;
    padding-bottom: 15px;
  }
  .contact-cards__icon {
    align-items: center;
    background-color: #fff;
    block-size: clamp(32px, calc(32px + (100vw - 375px) * 0.0497512438), 42px);
    border-radius: 100vmax;
    display: flex;
    flex-shrink: 0;
    inline-size: clamp(32px, calc(32px + (100vw - 375px) * 0.0497512438), 42px);
    justify-content: center;
  }
  .contact-cards__icon img {
    block-size: 34px;
    display: block;
    inline-size: 34px;
  }
  .contact-cards__title {
    font-size: var(--contact-cards-title-size);
    font-weight: 800;
    line-height: 1;
  }
  .contact-cards__media {
    align-items: flex-end;
    display: flex;
    inset-block: 0;
    inset-inline-end: var(--contact-cards-media-inline-end);
    inset-inline-start: var(--contact-cards-media-inline-start);
    justify-content: var(--contact-cards-media-justify);
    margin-block: auto;
    pointer-events: none;
    position: absolute;
  }
  .contact-cards__media-photo {
    block-size: auto;
    display: block;
    inline-size: var(--contact-cards-media-photo-width);
    max-inline-size: none;
  }
  .contact-cards__copy {
    display: block;
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 1024px) * 0.0048076923), 1.6rem);
  }
  @media (max-width: 575.98px) {
    .contact-cards__copy {
      font-size: clamp(1.3rem, calc(1.3rem + (100vw - 375px) * 0.0049751244), 1.4rem);
    }
  }
  .contact-cards__copy + .contact-cards__copy {
    margin-top: 4px;
  }
  @media (max-width: 1439.98px) {
    .contact-cards__copy + .contact-cards__copy {
      margin-top: clamp(-5px, calc(-5px + (100vw - 375px) * 0.0248756219), 0px);
    }
  }
  .contact-panel {
    background-color: #eef4fb;
    background-image: url("assets/images/common/contact-panel-background.webp");
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
    background-size: auto, cover;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .contact-panel {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .cta-button {
    --cta-button-bg: #ff7ba8;
    --cta-button-bg-hover: rgb(255, 72, 134.3863636364);
    --cta-button-color: #fff;
    --cta-button-min-inline-size: 400px;
    --cta-button-padding-block: 18px;
    --cta-button-padding-inline-start: 16px;
    --cta-button-padding-inline-end: 16px;
    --cta-button-arrow-size: 8px;
    --cta-button-arrow-inset-inline-end: 26px;
    align-items: center;
    background-color: var(--cta-button-bg);
    border-radius: 100vmax;
    color: var(--cta-button-color);
    display: inline-flex;
    justify-content: center;
    line-height: 1.5;
    min-inline-size: var(--cta-button-min-inline-size);
    padding-block: var(--cta-button-padding-block);
    padding-inline: var(--cta-button-padding-inline-start) var(--cta-button-padding-inline-end);
    position: relative;
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 575.98px) {
    .cta-button {
      --cta-button-min-inline-size: clamp(260px, calc(260px + (100vw - 375px) * 0.2985074627), 320px);
    }
  }
  .cta-button::after {
    block-size: var(--cta-button-arrow-size);
    border-block-end: 2px solid currentcolor;
    border-inline-end: 2px solid currentcolor;
    content: "";
    inline-size: var(--cta-button-arrow-size);
    inset-block-start: 50%;
    inset-inline-end: var(--cta-button-arrow-inset-inline-end);
    position: absolute;
    transform: translateY(-50%) rotate(-45deg);
  }
  @media (hover: hover) {
    .cta-button:hover {
      background-color: var(--cta-button-bg-hover);
      opacity: 1;
    }
  }
  .cta-button__label {
    display: block;
    transform: translateX(calc((var(--cta-button-padding-inline-end) - var(--cta-button-padding-inline-start)) / 2));
  }
  .cta-button--footer-brand {
    margin-top: 16px;
    min-inline-size: 0;
    width: 100%;
    --cta-button-padding-block: 12px;
  }
  @media (max-width: 1199.98px) {
    .cta-button--footer-brand {
      width: clamp(260px, calc(260px + (100vw - 375px) * 0.2985074627), 320px);
    }
  }
  @media (max-width: 575.98px) {
    .cta-button--footer-brand {
      display: block;
      margin-inline: auto;
      text-align: center;
    }
  }
  .entry-flow__panel {
    padding: 72px 56px;
  }
  @media (max-width: 767.98px) {
    .entry-flow__panel {
      padding: 48px 24px 56px;
    }
  }
  .entry-flow__panel {
    background-color: #fff;
  }
  @media (max-width: 575.98px) {
    .entry-flow__panel {
      padding: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px) clamp(15px, calc(15px + (100vw - 375px) * 0.0447761194), 24px) clamp(24px, calc(24px + (100vw - 375px) * 0.1592039801), 56px);
    }
  }
  .entry-flow__list {
    display: grid;
    gap: clamp(32px, calc(32px + (100vw - 768px) * 0.0625), 48px);
    padding-left: 0;
  }
  @media (max-width: 575.98px) {
    .entry-flow__list {
      gap: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
    }
  }
  .entry-flow__item {
    list-style: none;
  }
  .entry-flow__step-title {
    color: #f582ab;
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 768px) * 0.0078125), 2.4rem);
    font-weight: 800;
    margin-top: 10px;
  }
  @media (max-width: 575.98px) {
    .entry-flow__step-title {
      font-size: clamp(1.9rem, calc(1.9rem + (100vw - 375px) * 0.0149253731), 2.2rem);
    }
  }
  .entry-flow__step-text {
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0046224961), 1.8rem);
    line-height: 2;
    margin-top: 10px;
  }
  .entry-form {
    --form-focus: #ff7ba8;
    padding-bottom: 120px;
  }
  @media (max-width: 1023.98px) {
    .entry-form {
      padding-bottom: clamp(48px, calc(48px + (100vw - 576px) * 0.1666666667), 80px);
    }
  }
  .entry-form__inner {
    padding: 72px 56px 56px;
  }
  @media (max-width: 767.98px) {
    .entry-form__inner {
      padding: 48px 24px 40px;
    }
  }
  .entry-form__inner {
    background-color: #fff;
    padding: clamp(24px, calc(24px + (100vw - 375px) * 0.1194029851), 48px) clamp(15px, calc(15px + (100vw - 375px) * 0.0447761194), 24px) clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
  }
  .entry-form__heading .u-container {
    padding-inline: 0;
  }
  .entry-form__required-note {
    color: #FF7600;
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .entry-form__form {
    margin-top: 10px;
  }
  .entry-form__row,
  .entry-form__footer {
    background-color: #efefef;
  }
  .entry-form__row {
    align-items: center;
    display: grid;
    gap: 32px;
    grid-template-columns: 278px minmax(0, 1fr);
    padding: clamp(12px, calc(12px + (100vw - 375px) * 0.0199004975), 16px) clamp(12px, calc(12px + (100vw - 375px) * 0.039800995), 20px);
  }
  @media (max-width: 1023.98px) {
    .entry-form__row {
      gap: 5px;
      grid-template-columns: 1fr;
    }
  }
  .entry-form__row + .entry-form__row {
    margin-top: 4px;
  }
  .entry-form__row--message {
    align-items: start;
  }
  .entry-form__row--message .entry-form__label-area {
    padding-top: 10px;
  }
  @media (max-width: 767.98px) {
    .entry-form__row--message .entry-form__label-area {
      padding-top: 0;
    }
  }
  .entry-form__label {
    display: block;
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0046224961), 1.8rem);
    font-weight: 400;
    line-height: 1.8;
  }
  .entry-form__field-area {
    min-width: 0;
  }
  .entry-form__confirm-value {
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0030816641), 1.7rem);
    line-height: 1.9;
    word-break: break-word;
  }
  .entry-form__confirm-value--multiline {
    white-space: pre-wrap;
  }
  .entry-form__input,
  .entry-form__textarea {
    background-color: #fff;
    border-color: transparent;
  }
  .entry-form__input {
    min-height: 38px;
  }
  .entry-form__inline-fields {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }
  .entry-form__inline-fields--tel {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--tel {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--tel .entry-form__separator {
      display: none;
    }
  }
  .entry-form__separator,
  .entry-form__inline-prefix,
  .entry-form__inline-unit {
    font-size: 1.8rem;
    line-height: 1;
  }
  .entry-form__input--year {
    flex: 0 0 140px;
    width: 140px;
  }
  .entry-form__input--month,
  .entry-form__input--day {
    flex: 0 0 74px;
    width: 74px;
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--birth {
      align-items: center;
      display: grid;
      gap: 10px clamp(5px, calc(5px + (100vw - 375px) * 0.0149253731), 8px);
      grid-template-columns: minmax(0, 1fr) auto 56px auto 56px auto;
    }
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--birth .entry-form__inline-prefix {
      font-size: 1.5rem;
      grid-column: 1/-1;
      line-height: 1.4;
    }
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--birth .entry-form__inline-unit {
      font-size: 1.6rem;
    }
  }
  @media (max-width: 767.98px) {
    .entry-form__inline-fields--birth .entry-form__input--year,
    .entry-form__inline-fields--birth .entry-form__input--month,
    .entry-form__inline-fields--birth .entry-form__input--day {
      flex-basis: auto;
      min-width: 0;
      width: 100%;
    }
  }
  .entry-form__legend {
    height: 1px;
    margin: -1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
  }
  .entry-form__choice-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 48px;
  }
  @media (max-width: 1023.98px) {
    .entry-form__choice-list {
      gap: 2px 25px;
    }
  }
  .entry-form__choice-items .wpcf7-list-item:first-child,
  .entry-form__choice-items .wpcf7-list-item.first {
    margin-left: 0 !important;
  }
  .entry-form__choice {
    align-items: center;
    display: inline-flex;
    gap: 6px;
  }
  .entry-form__textarea {
    min-height: 168px;
    resize: vertical;
  }
  @media (max-width: 767.98px) {
    .entry-form__textarea {
      min-height: clamp(140px, calc(140px + (100vw - 375px) * 0.0712468193), 168px);
    }
  }
  .entry-form__footer {
    padding: clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px) 20px clamp(40px, calc(40px + (100vw - 375px) * 0.07960199), 56px);
  }
  @media (max-width: 767.98px) {
    .entry-form__footer {
      padding-inline: 20px;
    }
  }
  .entry-form__consent {
    border-top: 1px solid rgba(34, 34, 34, 0.18);
    padding-top: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
    text-align: center;
  }
  .entry-form__consent-label {
    align-items: flex-start;
    cursor: pointer;
    display: inline-flex;
    font-size: 1.4rem;
    gap: clamp(4px, calc(4px + (100vw - 375px) * 0.0199004975), 8px);
    line-height: 1.8;
  }
  @media (max-width: 575.98px) {
    .entry-form__consent-label {
      text-align: left;
    }
  }
  .entry-form__consent-checkbox {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-color: #fff;
    block-size: 16px;
    border: 1px solid rgba(34, 34, 34, 0.32);
    border-radius: 3px;
    cursor: pointer;
    flex-shrink: 0;
    inline-size: 16px;
    margin-top: 2px;
  }
  .entry-form__consent-checkbox:checked {
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.2 3.2L11 1.5' fill='none' stroke='%23f582ab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.8'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 10px 8px;
    border-color: #f582ab;
  }
  .entry-form__consent-checkbox:focus-visible {
    outline: 2px solid rgba(245, 130, 171, 0.3);
    outline-offset: 2px;
  }
  .entry-form__consent-link {
    color: #00b1ff;
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  .entry-form__actions {
    margin-top: 16px;
    position: relative;
    text-align: center;
  }
  .entry-form__actions .wpcf7-spinner {
    bottom: -40px !important;
    left: 0 !important;
    margin: auto !important;
    position: absolute !important;
    right: 0 !important;
  }
  .entry-form__actions--confirm {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 368px));
    justify-content: center;
    margin-inline: auto;
    margin-top: 0;
    max-width: 750px;
    width: 100%;
  }
  @media (max-width: 767.98px) {
    .entry-form__actions--confirm {
      grid-template-columns: minmax(0, 1fr);
      max-width: clamp(260px, calc(260px + (100vw - 414px) * 0.3703703704), 320px);
    }
  }
  .entry-form__action {
    width: 100%;
  }
  .entry-form__action--back {
    display: flex;
    justify-content: center;
  }
  @media (max-width: 767.98px) {
    .entry-form__action--back {
      order: 2;
    }
  }
  .entry-form__action--submit {
    display: flex;
    justify-content: center;
  }
  @media (max-width: 767.98px) {
    .entry-form__action--submit {
      order: 1;
    }
  }
  .wpcf7-previous {
    background: #fff;
    border: 1px solid rgba(34, 34, 34, 0.18);
    border-radius: 100vmax;
    color: rgba(34, 34, 34, 0.88);
    cursor: pointer;
    display: inline-block;
    font-size: 1.6rem;
    inline-size: 100%;
    line-height: 1.5;
    min-inline-size: 0;
    padding: 18px 36px;
    text-align: center;
    transition: color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (hover: hover) {
    .wpcf7-previous:hover {
      background-color: rgba(245, 130, 171, 0.06);
      border-color: rgba(245, 130, 171, 0.38);
      color: #f582ab;
      opacity: 1;
    }
  }
  .entry-form__submit {
    --cta-button-min-inline-size: 368px;
    --cta-button-padding-block: 18px;
    --cta-button-padding-inline-start: 36px;
    --cta-button-padding-inline-end: 62px;
    --cta-button-arrow-inset-inline-end: 26px;
    border: 0;
    cursor: pointer;
    inline-size: 100%;
    max-inline-size: 100%;
  }
  @media (max-width: 767.98px) {
    .entry-form__submit {
      --cta-button-min-inline-size: clamp(260px, calc(260px + (100vw - 375px) * 0.2985074627), 320px);
    }
  }
  .entry-form--complete p {
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .entry-form--complete p {
      text-align: left;
    }
  }
  .wpcf7-submit {
    max-width: 320px;
    padding-inline: 0;
  }
  .entry-notice {
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .entry-notice {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  @media (max-width: 575.98px) {
    .entry-notice {
      padding-block: clamp(32px, calc(32px + (100vw - 375px) * 0.1194029851), 56px);
    }
  }
  .entry-notice__text {
    font-size: clamp(1.7rem, calc(1.7rem + (100vw - 375px) * 0.0076335878), 2rem);
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 2.2;
    text-align: center;
  }
  .entry-phone {
    margin-top: clamp(48px, calc(48px + (100vw - 576px) * 0.125), 72px);
    padding-bottom: 96px;
  }
  @media (max-width: 1023.98px) {
    .entry-phone {
      padding-bottom: clamp(48px, calc(48px + (100vw - 576px) * 0.125), 72px);
    }
  }
  .entry-phone__panel {
    padding: 72px 56px;
  }
  @media (max-width: 767.98px) {
    .entry-phone__panel {
      padding: 48px 24px 56px;
    }
  }
  .entry-phone__panel {
    background-color: #fff;
    padding: clamp(24px, calc(24px + (100vw - 375px) * 0.1194029851), 48px) clamp(15px, calc(15px + (100vw - 375px) * 0.0447761194), 24px) clamp(32px, calc(32px + (100vw - 375px) * 0.1194029851), 56px);
  }
  .entry-phone__number-wrap {
    text-align: center;
  }
  .entry-phone__number {
    align-items: center;
    color: #f582ab;
    display: inline-flex;
    gap: clamp(10px, calc(10px + (100vw - 375px) * 0.0298507463), 16px);
    text-decoration: none;
  }
  .entry-phone__number-icon {
    align-items: center;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
  }
  .entry-phone__number-icon img {
    display: block;
    height: 100%;
    width: 100%;
  }
  .entry-phone__number-text {
    font-size: clamp(3.6rem, calc(3.6rem + (100vw - 576px) * 0.0208333333), 4rem);
    font-weight: 500;
    line-height: 1;
  }
  .entry-phone__hours {
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0099502488), 1.8rem);
    font-weight: 800;
    line-height: 1.8;
    margin-top: 14px;
  }
  @media (max-width: 767.98px) {
    .entry-phone__hours {
      margin-top: 0;
    }
  }
  .entry-phone__hours-label {
    margin-right: 8px;
  }
  .entry-phone__notes {
    background-color: rgba(245, 130, 171, 0.1);
    margin-top: clamp(40px, calc(40px + (100vw - 576px) * 0.0833333333), 56px);
    padding: 36px 104px 40px;
  }
  @media (max-width: 1023.98px) {
    .entry-phone__notes {
      padding: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px) clamp(20px, calc(20px + (100vw - 375px) * 0.1393034826), 48px) clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
    }
  }
  @media (max-width: 575.98px) {
    .entry-phone__notes {
      margin-top: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    }
  }
  .entry-phone__notes-title {
    font-size: 1.8rem;
    font-weight: 800;
    text-align: center;
  }
  .entry-phone__notes-list {
    border-top: 1px solid rgba(34, 34, 34, 0.18);
    display: grid;
    gap: 10px;
    margin-top: clamp(15px, calc(15px + (100vw - 375px) * 0.0746268657), 30px);
    padding-left: 0;
    padding-top: clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
  }
  .entry-phone__notes-item {
    list-style: none;
    padding-left: 22px;
    position: relative;
  }
  .entry-phone__notes-item::before {
    background-color: #000;
    border-radius: 999px;
    content: "";
    height: 11px;
    left: 0;
    position: absolute;
    top: 10px;
    width: 11px;
  }
  .entry-phone__notes-link {
    color: var(--form-focus);
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  .entry-privacy {
    padding-bottom: clamp(48px, calc(48px + (100vw - 576px) * 0.1666666667), 80px);
  }
  .entry-privacy__title {
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1.7;
    margin-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.0597014925), 36px);
    text-align: center;
  }
  .entry-privacy__lead,
  .entry-privacy__text,
  .entry-privacy__ordered-list,
  .entry-privacy__contact-line {
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0049751244), 1.6rem);
    line-height: 2;
  }
  .entry-privacy__lead {
    margin-bottom: 20px;
  }
  .entry-privacy__section + .entry-privacy__section {
    margin-top: 20px;
  }
  .entry-privacy__heading {
    color: #222;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    padding-left: 20px;
    position: relative;
  }
  .entry-privacy__heading::before {
    border-block: 7px solid transparent;
    border-inline-start: 12px solid #f582ab;
    content: "";
    inset-block-start: 10px;
    inset-inline-start: 0;
    position: absolute;
  }
  .entry-privacy__text {
    margin-top: 6px;
  }
  .entry-privacy__ordered-list {
    list-style-type: decimal;
    margin-top: 8px;
    padding-left: clamp(28px, calc(28px + (100vw - 375px) * 0.1194029851), 52px);
  }
  .entry-privacy__contact {
    margin-top: 8px;
    padding-left: 20px;
  }
  .entry-privacy__contact-line--company {
    font-weight: 500;
  }
  .entry-privacy__contact-line + .entry-privacy__contact-line {
    margin-top: 2px;
  }
  @media (max-width: 767.98px) {
    .entry-privacy__title {
      font-size: 2rem;
    }
  }
  .facility-list__items {
    display: grid;
    gap: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
  }
  .facility-list__item {
    align-items: start;
    display: grid;
    gap: 28px;
    grid-template-columns: 378px 1fr;
  }
  @media (max-width: 1023.98px) {
    .facility-list__item {
      display: block;
    }
  }
  .facility-list__media {
    aspect-ratio: 378/235;
    background-color: #f3f3f3;
    overflow: hidden;
  }
  .facility-list__image {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  @media (max-width: 1023.98px) {
    .facility-list__content {
      margin-top: 20px;
    }
  }
  .facility-list__header {
    align-items: baseline;
    border-bottom: 1px solid #d8d8d8;
    display: flex;
    gap: 14px;
    padding-bottom: 10px;
  }
  .facility-list__badge {
    color: #f582ab;
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    font-weight: 900;
    line-height: 1;
    white-space: wrap;
  }
  .facility-list__title {
    flex: 1 1;
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    font-weight: 900;
  }
  .facility-list__description {
    margin-top: 18px;
  }
  .facility-list__description p + p {
    margin-top: 4px;
  }
  .facility-list__info {
    margin-top: 38px;
  }
  @media (max-width: 1023.98px) {
    .facility-list__info {
      margin-top: 16px;
    }
  }
  .facility-list__address,
  .facility-list__contact {
    background-color: #eee;
  }
  .facility-list__address {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 46px;
  }
  .facility-list__address-text,
  .facility-list__contact {
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 375px) * 0.0050890585), 1.6rem);
    padding-block: 7px;
    padding-inline: clamp(12px, calc(12px + (100vw - 375px) * 0.039800995), 20px);
  }
  @media (max-width: 767.98px) {
    .facility-list__address-text,
    .facility-list__contact {
      line-height: 1.6;
    }
  }
  .facility-list__map-link {
    background-color: #f582ab;
    display: grid;
    place-items: center;
  }
  .facility-list__map-icon {
    height: auto;
    width: 20px;
  }
  .facility-list__contact {
    border-top: 1px solid #fff;
  }
  .feature-benefits {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .feature-benefits {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .feature-benefits {
    padding-top: 24px;
  }
  @media (max-width: 1023.98px) {
    .feature-benefits {
      padding-top: 32px;
    }
  }
  .feature-benefits__cards {
    display: grid;
    gap: clamp(20px, calc(20px + (100vw - 375px) * 0.0610687023), 44px);
  }
  .feature-benefits-card {
    --framed-panel-inner-padding: 64px 60px;
    --framed-panel-inner-padding-sp: 48px 24px;
    --framed-panel-inner-border-color: rgba(34, 34, 34, 0.18);
    min-width: 0;
  }
  .feature-benefits-card__inner {
    height: 100%;
  }
  .feature-benefits-card__title {
    color: #f582ab;
    font-size: clamp(2.7rem, calc(2.7rem + (100vw - 768px) * 0.01171875), 3rem);
    font-weight: 800;
    margin-bottom: clamp(32px, calc(32px + (100vw - 1440px) * 0.0166666667), 40px);
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .feature-benefits-card__title {
      margin-bottom: clamp(24px, calc(24px + (100vw - 576px) * 0.0416666667), 32px);
    }
  }
  @media (max-width: 575.98px) {
    .feature-benefits-card__title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0248756219), 2.7rem);
      margin-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
    }
  }
  .feature-benefits-card__columns {
    display: grid;
    gap: 32px 80px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-inline: auto;
    max-width: 680px;
  }
  @media (max-width: 1023.98px) {
    .feature-benefits-card__columns {
      gap: 12px;
      grid-template-columns: repeat(1, minmax(0, 1fr));
      margin-inline: auto;
      max-width: 380px;
    }
  }
  .feature-benefits-card__list {
    display: grid;
    gap: 24px;
    padding-left: 0;
  }
  @media (max-width: 1023.98px) {
    .feature-benefits-card__list {
      gap: clamp(5px, calc(5px + (100vw - 375px) * 0.0348258706), 12px);
    }
  }
  .feature-benefits-card__item {
    align-items: flex-start;
    display: flex;
    gap: clamp(10px, calc(10px + (100vw - 375px) * 0.0199004975), 14px);
    list-style: none;
  }
  .feature-benefits-card__item::before {
    background-color: #f582ab;
    border-radius: 50%;
    content: "";
    display: block;
    flex: 0 0 16px;
    height: 16px;
    margin-top: 7px;
    width: 16px;
  }
  .feature-benefits-card__note {
    margin-top: clamp(40px, calc(40px + (100vw - 768px) * 0.0625), 56px);
    padding: 36px clamp(30px, calc(30px + (100vw - 768px) * 0.0390625), 40px);
  }
  @media (max-width: 767.98px) {
    .feature-benefits-card__note {
      padding: clamp(24px, calc(24px + (100vw - 375px) * 0.0099502488), 26px) clamp(20px, calc(20px + (100vw - 375px) * 0.0497512438), 30px);
    }
  }
  .feature-benefits-card__note {
    background-color: rgba(245, 130, 171, 0.08);
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .feature-benefits-card__note {
      text-align: left;
    }
  }
  .feature-benefits-card__body {
    margin-inline: auto;
    max-width: 980px;
    text-align: center;
  }
  .feature-benefits-card__body > *:first-child {
    margin-top: 0;
  }
  .feature-benefits-card__body > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 767.98px) {
    .feature-benefits-card__body {
      text-align: left;
    }
  }
  @media (max-width: 1023.98px) {
    .feature-benefits-card__body p {
      margin-block: 12px;
    }
  }
  .feature-benefits-card__body-text + .feature-benefits-card__body-text {
    margin-top: 12px;
  }
  @media (max-width: 767.98px) {
    .feature-benefits-card__body-text br {
      display: none;
    }
  }
  .feature-environment {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .feature-environment {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .feature-environment {
    background-color: #fff;
  }
  .feature-environment__intro {
    margin-bottom: clamp(40px, calc(40px + (100vw - 768px) * 0.0625), 56px);
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .feature-environment__intro {
      text-align: left;
    }
  }
  .feature-environment__cards {
    display: grid;
    gap: clamp(40px, calc(40px + (100vw - 768px) * 0.09375), 64px) clamp(32px, calc(32px + (100vw - 768px) * 0.1875), 80px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (max-width: 767.98px) {
    .feature-environment__cards {
      gap: 48px;
      grid-template-columns: 1fr;
    }
  }
  @media (max-width: 575.98px) {
    .feature-environment__cards {
      gap: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    }
  }
  .feature-environment-card {
    --feature-environment-visual-size: 310px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .feature-environment-card {
      --feature-environment-visual-size: clamp(200px, calc(200px + (100vw - 375px) * 0.2985074627), 260px);
    }
  }
  .feature-environment-card__visual img {
    display: block;
    height: auto;
    margin-inline: auto;
    width: var(--feature-environment-visual-size);
  }
  .feature-environment-card__title {
    align-items: center;
    display: flex;
    flex-direction: column;
    font-size: 2rem;
    font-weight: 800;
    margin-top: 32px;
  }
  .feature-environment-card__title::after {
    background-color: #f582ab;
    content: "";
    display: block;
    height: 3px;
    margin-top: 16px;
    width: 40px;
  }
  .feature-environment-card__body {
    margin-top: 16px;
    text-align: left;
  }
  .feature-showcase {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .feature-showcase {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  @media (max-width: 1023.98px) {
    .feature-showcase.top-page-feature {
      padding-bottom: 0;
    }
  }
  @media (max-width: 1023.98px) {
    .feature-showcase.feature-page-showcase {
      padding-bottom: 0;
    }
  }
  .media-panel-list {
    display: grid;
    gap: 56px;
  }
  @media (max-width: 1023.98px) {
    .media-panel-list {
      display: block;
    }
  }
  .feature-showcase__cards {
    display: grid;
    gap: clamp(20px, calc(20px + (100vw - 375px) * 0.039800995), 28px);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 56px;
  }
  @media (max-width: 1023.98px) {
    .feature-showcase__cards {
      grid-template-columns: repeat(1, minmax(0, 1fr));
      margin-top: clamp(0px, calc(20px + (100vw - 375px) * -0.0995024876), 20px);
    }
  }
  .media-panel-list__item {
    --media-panel-list-panel-offset: 64px;
    align-items: start;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding-bottom: var(--media-panel-list-panel-offset);
  }
  @media (max-width: 1023.98px) {
    .media-panel-list__item {
      display: block;
      --media-panel-list-panel-offset: clamp(0px, calc(0px + (100vw - 768px) * 0.0625), 16px);
    }
  }
  .media-panel-list__media {
    --media-panel-list-media-object-position: center;
    aspect-ratio: 650/350;
    grid-column: 1/span 8;
    grid-row: 1;
    overflow: hidden;
  }
  .media-panel-list__media img {
    display: block;
    height: 100%;
    object-fit: cover;
    object-position: var(--media-panel-list-media-object-position);
    width: 100%;
  }
  .media-panel-list__panel {
    align-items: center;
    align-self: end;
    background-color: #fff;
    border: 1px solid rgba(34, 34, 34, 0.14);
    display: flex;
    grid-column: 7/-1;
    grid-row: 1;
    min-height: 304px;
    padding: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px) clamp(20px, calc(20px + (100vw - 375px) * 0.0995024876), 40px);
    transform: translateY(var(--media-panel-list-panel-offset));
    z-index: 1;
  }
  @media (max-width: 1023.98px) {
    .media-panel-list__panel {
      --media-panel-list-panel-offset: clamp(-54px, calc(-24px + (100vw - 375px) * -0.1492537313), -24px);
      margin-inline: clamp(10px, calc(10px + (100vw - 375px) * 0.0497512438), 20px);
      width: auto;
    }
  }
  .media-panel-list__panel-content {
    width: 100%;
  }
  .media-panel-list__panel-header {
    align-items: start;
    display: grid;
    gap: clamp(16px, calc(16px + (100vw - 1024px) * 0.0192307692), 24px);
    grid-template-columns: auto 1fr;
    margin-bottom: clamp(15px, calc(15px + (100vw - 375px) * 0.0447761194), 24px);
  }
  @media (max-width: 575.98px) {
    .media-panel-list__panel-header {
      gap: clamp(10px, calc(10px + (100vw - 375px) * 0.0298507463), 16px);
    }
  }
  .media-panel-list__marker {
    align-items: center;
    color: #f582ab;
    display: flex;
    gap: 16px;
    white-space: nowrap;
  }
  .media-panel-list__index {
    font-size: clamp(3.4rem, calc(3.4rem + (100vw - 1440px) * 0.0125), 4rem);
    font-weight: 300;
    letter-spacing: 3px;
    line-height: 1;
    position: relative;
  }
  @media (max-width: 1023.98px) {
    .media-panel-list__index {
      font-size: clamp(2.7rem, calc(2.7rem + (100vw - 375px) * 0.0646766169), 4rem);
    }
  }
  .media-panel-list__index::after {
    background-color: #f582ab;
    bottom: -5px;
    content: "";
    height: 1px;
    left: -8px;
    margin: auto;
    position: absolute;
    right: 0;
    width: calc(100% - 7px);
  }
  .media-panel-list__title {
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 1440px) * 0.0083333333), 2.6rem);
    font-weight: 300;
    line-height: 1.7;
  }
  @media (max-width: 1023.98px) {
    .media-panel-list__title {
      font-size: clamp(1.9rem, calc(1.9rem + (100vw - 375px) * 0.0348258706), 2.6rem);
    }
  }
  @media (max-width: 767.98px) {
    .media-panel-list__title br {
      display: none;
    }
  }
  .media-panel-list__text {
    font-weight: 300;
  }
  .media-panel-list__text + .media-panel-list__text {
    margin-top: 12px;
  }
  .media-panel-list__body {
    color: rgba(34, 34, 34, 0.84);
  }
  .feature-showcase__card {
    min-width: 0;
  }
  .feature-showcase__card-inner {
    background-color: #fff;
    border: 1px solid #ddd;
    height: 100%;
    padding-block: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    padding-inline: clamp(20px, calc(20px + (100vw - 375px) * 0.0497512438), 30px);
  }
  .feature-showcase__card-title {
    border-bottom: 1px solid #ddd;
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-align: center;
  }
  .feature-showcase__card-text {
    font-size: 1.6rem;
  }
  .media-panel-list__item--reverse .media-panel-list__media {
    grid-column: 5/-1;
  }
  .media-panel-list__item--reverse .media-panel-list__panel {
    grid-column: 1/span 6;
  }
  .framed-panel {
    --framed-panel-outer-padding: clamp(8px, calc(8px + (100vw - 375px) * 0.0597014925), 20px);
    --framed-panel-outer-border-color: rgba(34, 34, 34, 0.08);
    --framed-panel-background-color: #fff;
    --framed-panel-inner-padding: 56px 40px 48px;
    --framed-panel-inner-padding-sp: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px) 20px clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
    --framed-panel-inner-border-color: rgba(34, 34, 34, 0.12);
    background-color: var(--framed-panel-background-color);
    border: 1px solid var(--framed-panel-outer-border-color);
    padding: var(--framed-panel-outer-padding);
  }
  .framed-panel__inner {
    padding: var(--framed-panel-inner-padding);
  }
  @media (max-width: 767.98px) {
    .framed-panel__inner {
      padding: var(--framed-panel-inner-padding-sp);
    }
  }
  .framed-panel__inner {
    border: 1px solid var(--framed-panel-inner-border-color);
  }
  .footer {
    color: #fff;
  }
  .footer__main {
    background-color: #252525;
    padding-block: 64px 62px;
  }
  .footer__main-inner {
    align-items: start;
    display: grid;
    gap: 72px;
    grid-template-columns: 350px minmax(0, 1fr);
  }
  @media (max-width: 1199.98px) {
    .footer__main-inner {
      display: block;
    }
  }
  @media (max-width: 1023.98px) {
    .footer__main-inner {
      margin-inline: auto;
      width: 360px;
    }
  }
  @media (max-width: 575.98px) {
    .footer__main-inner {
      width: 100%;
    }
  }
  .footer__brand-logo {
    display: block;
    width: 362px;
  }
  @media (max-width: 1023.98px) {
    .footer__brand-logo {
      width: clamp(260px, calc(260px + (100vw - 375px) * 0.2985074627), 320px);
    }
  }
  @media (max-width: 575.98px) {
    .footer__brand-logo {
      margin-inline: auto;
    }
  }
  .footer__brand-logo img {
    display: block;
    height: auto;
    width: 100%;
  }
  .footer__company {
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 1024px) * 0.0022321429), 1.6rem);
    line-height: 1.7;
    margin-top: 18px;
  }
  @media (max-width: 1023.98px) {
    .footer__company {
      font-size: clamp(1.4rem, calc(1.4rem + (100vw - 375px) * 0.0099502488), 1.6rem);
      margin-top: 40px;
    }
  }
  .footer__facilities {
    display: grid;
    gap: 12px 32px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (max-width: 1199.98px) {
    .footer__facilities {
      margin-top: clamp(40px, calc(40px + (100vw - 375px) * 0.039800995), 48px);
      max-width: 760px;
    }
  }
  @media (max-width: 1023.98px) {
    .footer__facilities {
      gap: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .footer__facility {
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 1024px) * 0.0022321429), 1.6rem);
    line-height: 1.6;
  }
  @media (max-width: 1023.98px) {
    .footer__facility {
      font-size: clamp(1.4rem, calc(1.4rem + (100vw - 375px) * 0.0099502488), 1.6rem);
    }
  }
  .footer__facility-name {
    margin-bottom: 2px;
  }
  .footer__social {
    align-items: flex-end;
    display: flex;
    justify-content: flex-end;
  }
  @media (max-width: 1023.98px) {
    .footer__social {
      justify-content: center;
      margin-top: 8px;
    }
  }
  .footer__instagram {
    display: block;
    width: 200px;
  }
  .footer__instagram img {
    display: block;
    height: auto;
    width: 100%;
  }
  .footer__bottom {
    background-color: #fff;
    padding-block: 22px 16px;
  }
  .footer__nav {
    border-bottom: 1px solid #ccc;
  }
  @media (max-width: 575.98px) {
    .footer__nav {
      border-bottom: none;
    }
  }
  .footer__nav-list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5px 38px;
    justify-content: center;
    padding-bottom: 18px;
  }
  @media (max-width: 575.98px) {
    .footer__nav-list {
      display: block;
    }
  }
  .footer__nav-item a {
    color: #666;
    font-size: 1.4rem;
    line-height: 1.4;
    text-decoration: none;
  }
  @media (max-width: 575.98px) {
    .footer__nav-item a {
      border-bottom: 1px dashed #f582ab;
      display: block;
      padding-block: clamp(12px, calc(12px + (100vw - 375px) * 0.0149253731), 15px);
      padding-inline: 10px;
    }
  }
  .footer__copyright {
    color: #666;
    font-size: 1.2rem;
    line-height: 1.5;
    margin-top: 12px;
    text-align: center;
  }
  .image-card-grid__items {
    display: grid;
    gap: 36px 40px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (max-width: 1023.98px) {
    .image-card-grid__items {
      gap: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .image-card-grid__item {
    background-color: #fff;
  }
  .image-card-grid__media {
    aspect-ratio: 381/243;
    overflow: hidden;
  }
  .image-card-grid__image {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .image-card-grid__body {
    padding-block: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px) 24px;
    padding-inline: clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
  }
  .image-card-grid__title {
    font-size: 2rem;
    font-weight: 900;
    margin-bottom: 16px;
    text-align: center;
  }
  .image-card-grid__text {
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 1024px) * 0.0048076923), 1.8rem);
  }
  @media (max-width: 1023.98px) {
    .image-card-grid__text {
      font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0046224961), 1.8rem);
    }
  }
  .info-table__list {
    display: grid;
    gap: 4px;
  }
  .info-table__item {
    display: grid;
    grid-template-columns: clamp(130px, calc(130px + (100vw - 576px) * 0.3645833333), 200px) 1fr;
  }
  @media (max-width: 575.98px) {
    .info-table__item {
      display: block;
      margin-bottom: 7px;
    }
  }
  @media (max-width: 575.98px) {
    .info-table__item:nth-last-of-type(1) {
      margin-bottom: 0;
    }
  }
  .info-table__label,
  .info-table__value {
    padding-block: clamp(12px, calc(12px + (100vw - 576px) * 0.0416666667), 20px);
    padding-inline: clamp(12px, calc(12px + (100vw - 576px) * 0.0625), 24px);
  }
  .info-table__label {
    background-color: #f582ab;
    color: #fff;
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 576px) * 0.0104166667), 1.8rem);
    font-weight: 400;
    line-height: 1.5;
  }
  .info-table__value {
    background-color: #fff;
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 576px) * 0.0104166667), 1.8rem);
    line-height: 1.5;
  }
  .info-table__value-line + .info-table__value-line {
    margin-top: 4px;
  }
  .mainV {
    --mainv-cta-mobile-height: 84px;
    --mainv-cta-mobile-safe-space: calc(var(--mainv-cta-mobile-height) + env(safe-area-inset-bottom));
    position: relative;
  }
  .mainV--top-page {
    aspect-ratio: 3840/1960;
    overflow: hidden;
  }
  @media (max-width: 1023.98px) {
    .mainV--top-page {
      overflow: visible;
    }
  }
  @media (max-width: 767.98px) {
    .mainV--top-page {
      aspect-ratio: 1920/2400;
    }
  }
  .mainV--top-page picture {
    display: block;
    height: 100%;
  }
  .mainV--top-page .mainV__image {
    height: 100%;
    object-fit: cover;
  }
  .mainV--subpage {
    --mainv-subpage-height: clamp(300px, calc(300px + (100vw - 1440px) * 0.2083333333), 400px);
    --mainv-subpage-overlay: rgba(122, 150, 195, 0.62);
    --mainv-subpage-overlay-strong: rgba(146, 171, 210, 0.78);
    --mainv-subpage-image-object-position: center;
    height: var(--mainv-subpage-height);
  }
  @media (max-width: 1023.98px) {
    .mainV--subpage {
      --mainv-subpage-height: clamp(220px, calc(220px + (100vw - 768px) * 0.3125), 300px) ;
    }
  }
  @media (max-width: 575.98px) {
    .mainV--subpage {
      --mainv-subpage-height: clamp(170px, calc(170px + (100vw - 375px) * 0.2487562189), 220px) ;
    }
  }
  .mainV--subpage::after {
    content: "";
    inset: 0;
    position: absolute;
    z-index: 0;
  }
  .mainV--subpage .mainV__image {
    height: 100%;
    object-fit: cover;
    object-position: var(--mainv-subpage-image-object-position);
  }
  .mainV__image {
    height: auto;
    width: 100%;
  }
  .mainV__content {
    align-items: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    position: absolute;
    text-align: center;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1;
  }
  .mainV--subpage .mainV__content {
    color: #e46e96;
    text-shadow: 0 1px 3px rgba(255, 255, 255, 0.9), 0 0 12px rgba(255, 255, 255, 0.78);
  }
  .mainV__title-main {
    font-size: clamp(3.1rem, calc(3.1rem + (100vw - 768px) * 0.01953125), 3.6rem);
    font-weight: 300;
    letter-spacing: 0.08em;
    line-height: 1.3;
  }
  @media (max-width: 575.98px) {
    .mainV__title-main {
      font-size: clamp(2.7rem, calc(2.7rem + (100vw - 375px) * 0.0199004975), 3.1rem);
    }
  }
  .mainV__title-sub {
    font-size: clamp(2rem, calc(2rem + (100vw - 768px) * 0.015625), 2.4rem);
    font-weight: 300;
    letter-spacing: 0.08em;
    line-height: 1.3;
  }
  @media (max-width: 575.98px) {
    .mainV__title-sub {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0199004975), 2rem);
    }
  }
  .mainV__cta {
    display: flex;
    flex-direction: column;
    inset-block-start: 50%;
    inset-inline-end: 0;
    position: fixed;
    transform: translateY(-50%);
    z-index: 100;
  }
  @media (max-width: 767.98px) {
    .mainV__cta {
      box-shadow: 0 -10px 24px rgba(0, 0, 0, 0.14);
      flex-direction: row;
      inline-size: 100%;
      inset-block-end: 0;
      inset-block-start: auto;
      inset-inline: 0;
      transform: translateY(0);
    }
  }
  .mainV__cta-link {
    align-items: center;
    block-size: clamp(88px, calc(88px + (100vw - 1024px) * 0.0288461538), 100px);
    color: #fff;
    display: flex;
    flex-direction: column;
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 1024px) * 0.0048076923), 1.6rem);
    font-weight: 400;
    gap: clamp(7px, calc(7px + (100vw - 1024px) * 0.0072115385), 10px);
    inline-size: clamp(100px, calc(100px + (100vw - 1024px) * 0.0480769231), 120px);
    justify-content: center;
    line-height: 1.4;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 767.98px) {
    .mainV__cta-link {
      block-size: auto;
      flex: 1 1;
      font-size: clamp(1.2rem, calc(1.2rem + (100vw - 375px) * 0.0199004975), 1.6rem);
      gap: 6px;
      inline-size: auto;
      line-height: 1.35;
      min-block-size: 63px;
      padding-block: 10px calc(10px + env(safe-area-inset-bottom));
      padding-inline: 8px;
    }
  }
  .mainV__cta-link::after {
    aspect-ratio: 1;
    background-color: #fff;
    bottom: 0;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    content: "";
    margin: auto;
    position: absolute;
    right: 0;
    width: 10px;
  }
  @media (max-width: 767.98px) {
    .mainV__cta-link::after {
      display: none;
    }
  }
  .mainV__cta-link--entry-form {
    background-color: #ff7ba8;
  }
  @media (hover: hover) {
    .mainV__cta-link--entry-form:hover {
      background-color: rgb(255, 72, 134.3863636364);
    }
  }
  .mainV__cta-link--guidelines {
    background-color: #5175a8;
  }
  @media (hover: hover) {
    .mainV__cta-link--guidelines:hover {
      background-color: rgb(64.4096385542, 93.0361445783, 133.5903614458);
    }
  }
  .mainV__cta-link--official-site {
    background-color: #265290;
  }
  @media (hover: hover) {
    .mainV__cta-link--official-site:hover {
      background-color: rgb(27.3516483516, 59.021978022, 103.6483516484);
    }
  }
  @media (hover: hover) {
    .mainV__cta-link:hover {
      opacity: 1;
    }
  }
  .mainV__cta-icon {
    align-items: center;
    display: flex;
    justify-content: center;
  }
  @media (max-width: 767.98px) {
    #page:has(.mainV__cta) {
      padding-bottom: calc(84px + env(safe-area-inset-bottom));
    }
  }
  .mainV__cta-label {
    white-space: pre-line;
  }
  @media (max-width: 767.98px) {
    .mainV__cta-label br {
      display: none;
    }
  }
  .media-text-list {
    --media-text-list-item-columns: clamp(320px, calc(320px + (100vw - 1024px) * 0.1785714286), 480px) minmax(0, 1fr);
    --media-text-list-item-gap: 40px;
    --media-text-list-items-gap: 40px;
    --media-text-list-media-aspect-ratio: 348 / 233;
    --media-text-list-title-color: #f582ab;
    --media-text-list-title-margin-bottom: 16px;
  }
  @media (max-width: 1023.98px) {
    .media-text-list {
      --media-text-list-item-columns: repeat(1, 1fr);
      --media-text-list-item-gap: 32px;
    }
  }
  .media-text-list__items {
    display: grid;
    gap: var(--media-text-list-items-gap);
  }
  .media-text-list__item {
    align-items: start;
    display: grid;
    gap: var(--media-text-list-item-gap);
    grid-template-columns: var(--media-text-list-item-columns);
  }
  @media (max-width: 1023.98px) {
    .media-text-list__item {
      display: block;
    }
  }
  .media-text-list__media {
    --media-text-list-media-object-position: center;
    aspect-ratio: var(--media-text-list-media-aspect-ratio);
    overflow: hidden;
  }
  .media-text-list__media img {
    height: 100%;
    object-fit: cover;
    object-position: var(--media-text-list-media-object-position);
    width: 100%;
  }
  @media (max-width: 767.98px) {
    .media-text-list__media {
      aspect-ratio: 16/10;
    }
  }
  .media-text-list__title {
    color: var(--media-text-list-title-color);
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
    font-weight: 300;
    margin-bottom: var(--media-text-list-title-margin-bottom);
  }
  @media (max-width: 1023.98px) {
    .media-text-list__content {
      margin-top: 24px;
    }
  }
  .news-list__items {
    display: grid;
    gap: 24px;
  }
  .news-list--top-page .news-list__items {
    gap: 28px;
  }
  .news-list__item {
    display: grid;
    gap: clamp(8px, calc(8px + (100vw - 375px) * 0.0597014925), 20px);
    grid-template-columns: 312px minmax(0, 1fr);
  }
  @media (max-width: 1023.98px) {
    .news-list__item {
      grid-template-columns: 240px minmax(0, 1fr);
    }
  }
  @media (max-width: 767.98px) {
    .news-list__item {
      grid-template-columns: 1fr;
    }
  }
  .news-list__media {
    aspect-ratio: 3/2;
    background-color: #f3f3f3;
    display: block;
    overflow: hidden;
  }
  .news-list__media img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .news-list__content {
    display: flex;
    flex-direction: column;
    padding-block: 4px;
  }
  .news-list__date {
    color: #888;
    font-size: 1.4rem;
  }
  .news-list__title {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 1440px) * 0.0041666667), 2rem);
    font-weight: 500;
    margin-top: 8px;
  }
  .news-list__more {
    align-items: center;
    align-self: flex-end;
    color: #f582ab;
    display: inline-flex;
    font-size: clamp(1.4rem, calc(1.4rem + (100vw - 375px) * 0.0049751244), 1.5rem);
    font-weight: 500;
    gap: 12px;
    margin-top: auto;
    padding-top: clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
    text-decoration: underline;
  }
  .news-list__more::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='10' height='11.399' viewBox='0 0 10 11.399'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='%E9%95%B7%E6%96%B9%E5%BD%A2_69' data-name='%E9%95%B7%E6%96%B9%E5%BD%A2%2069' width='10' height='11.399' fill='%23ff7ba8'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_11' data-name='%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2011' transform='translate(0 0)'%3E%3Cg id='%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_10' data-name='%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2010' transform='translate(0 0)' clip-path='url(%23clip-path)'%3E%3Cpath id='%E3%83%91%E3%82%B9_32' data-name='%E3%83%91%E3%82%B9%2032' d='M.5.867v1.9a.367.367 0 0 0 .184.318L5.322 5.767a.367.367 0 0 1 0 .636L.684 9.081A.367.367 0 0 0 .5 9.4v1.9a.367.367 0 0 0 .551.318L10.087 6.4a.367.367 0 0 0 0-.636L1.051.549A.367.367 0 0 0 .5.867' transform='translate(-0.385 -0.385)' fill='%23ff7ba8'/%3E%3Cpath id='%E3%83%91%E3%82%B9_33' data-name='%E3%83%91%E3%82%B9%2033' d='M10.157 5.787 1.121.57A.358.358 0 0 0 .984.526L9.7 5.557a.367.367 0 0 1 0 .636L.662 11.41a.364.364 0 0 1-.071.029.366.366 0 0 0 .53.2l9.036-5.217a.367.367 0 0 0 0-.636' transform='translate(-0.455 -0.405)' fill='%23ff7ba8'/%3E%3Cpath id='%E3%83%91%E3%82%B9_34' data-name='%E3%83%91%E3%82%B9%2034' d='M.5.867v1.9a.367.367 0 0 0 .184.318L5.322 5.767a.367.367 0 0 1 0 .636L.684 9.081A.367.367 0 0 0 .5 9.4v1.9a.367.367 0 0 0 .551.318L10.087 6.4a.367.367 0 0 0 0-.636L1.051.549A.367.367 0 0 0 .5.867Z' transform='translate(-0.385 -0.385)' fill='%23ff7ba8'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.399px;
    width: 10px;
  }
  @media (hover: hover) {
    .news-list__more:hover {
      text-decoration: none;
    }
  }
  .overlay-menu {
    background: radial-gradient(circle at top left, rgba(243, 223, 203, 0.72), transparent 38%), radial-gradient(circle at bottom right, rgba(245, 130, 171, 0.14), transparent 32%), linear-gradient(145deg, rgba(246, 239, 232, 0.96), rgba(255, 255, 255, 0.9));
    display: none;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
  }
  @supports (height: 100svh) {
    .overlay-menu {
      height: 100svh;
    }
  }
  @supports (height: 100dvh) {
    .overlay-menu {
      height: 100dvh;
    }
  }
  .overlay-menu.is-active {
    display: block;
  }
  .overlay-menu__container {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    overflow-y: auto;
    padding-block: 112px 48px;
    padding-inline: 24px;
  }
  .overlay-menu__panel {
    background-color: rgba(255, 255, 255, 0.84);
    padding: 36px 28px 28px;
    position: relative;
    width: min(100%, 840px);
  }
  .overlay-menu__eyebrow {
    color: #f582ab;
    font-family: "Oswald", sans-serif;
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: 0.24em;
    text-align: center;
  }
  .overlay-menu__items {
    display: grid;
    gap: clamp(12px, calc(12px + (100vw - 375px) * 0.0199004975), 16px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 24px;
    width: 100%;
  }
  .overlay-menu__item {
    align-items: center;
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(34, 34, 34, 0.1);
    color: #222;
    display: flex;
    font-size: 2rem;
    font-weight: 500;
    justify-content: center;
    line-height: 1.4;
    overflow: hidden;
    padding: 22px 24px 20px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: transform 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .overlay-menu__item::after {
    block-size: 10px;
    border-block-end: 2px solid rgba(34, 34, 34, 0.34);
    border-inline-end: 2px solid rgba(34, 34, 34, 0.34);
    content: "";
    inline-size: 10px;
    inset-block-start: 50%;
    inset-inline-end: 22px;
    position: absolute;
    transform: translateY(-50%) rotate(-45deg);
  }
  .overlay-menu__item span {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  .overlay-menu__item.is-current {
    background: linear-gradient(135deg, rgba(245, 130, 171, 0.16), rgba(255, 255, 255, 0.94));
    border-color: rgba(245, 130, 171, 0.42);
    color: #f582ab;
  }
  .overlay-menu__item.is-current::after {
    border-block-end-color: rgba(245, 130, 171, 0.88);
    border-inline-end-color: rgba(245, 130, 171, 0.88);
  }
  @media (hover: hover) {
    .overlay-menu__item:hover {
      background-color: #fff;
      border-color: rgba(245, 130, 171, 0.3);
      box-shadow: 0 18px 36px rgba(0, 0, 0, 0.08);
      opacity: 1;
      transform: translateY(-2px);
    }
  }
  @media (max-width: 767.98px) {
    .overlay-menu__item {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0099502488), 1.8rem);
      padding: clamp(16px, calc(16px + (100vw - 375px) * 0.0199004975), 20px) 18px clamp(16px, calc(16px + (100vw - 375px) * 0.0099502488), 18px);
    }
  }
  @media (max-width: 767.98px) {
    .overlay-menu__panel {
      padding: 28px 20px 20px;
    }
  }
  @media (max-width: 767.98px) {
    .overlay-menu__items {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width: 767.98px) {
    .overlay-menu__container {
      align-items: flex-start;
      padding-block: 96px 32px;
    }
  }
  .schedule-flow {
    --schedule-flow-background-image: none;
    --schedule-flow-background-position: center center;
    --schedule-flow-overlay-soft-color: rgba($schedule-flow-navy, 0.34);
    --schedule-flow-overlay-strong-color: rgba($schedule-flow-navy, 0.78);
    isolation: isolate;
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
    position: relative;
  }
  @media (max-width: 575.98px) {
    .schedule-flow {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .schedule-flow {
    background-color: #142e53;
    color: #fff;
  }
  .schedule-flow::before, .schedule-flow::after {
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
  }
  .schedule-flow::before {
    background: var(--schedule-flow-background-image) var(--schedule-flow-background-position)/cover no-repeat;
    filter: blur(8px);
    transform: scale(1.06);
    z-index: -2;
  }
  .schedule-flow::after {
    background: linear-gradient(var(--schedule-flow-overlay-soft-color), var(--schedule-flow-overlay-soft-color)), linear-gradient(var(--schedule-flow-overlay-strong-color), var(--schedule-flow-overlay-strong-color));
    z-index: -1;
  }
  .schedule-flow.job-description-job-flow {
    --schedule-flow-background-image: url("assets/images/job-description-page/job-flow-bg.webp");
    --schedule-flow-background-position: center center;
    --schedule-flow-overlay-soft-color: rgba(20, 46, 83, 0.32);
    --schedule-flow-overlay-strong-color: rgba(20, 46, 83, 0.8);
  }
  .schedule-flow__intro {
    margin-top: 40px;
    text-align: center;
  }
  .schedule-flow__intro p > *:first-child {
    margin-top: 0;
  }
  .schedule-flow__intro p > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 767.98px) {
    .schedule-flow__intro p {
      text-align: left;
    }
  }
  @media (max-width: 767.98px) {
    .schedule-flow__intro br {
      display: none;
    }
  }
  .schedule-flow__list {
    margin-top: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px);
    padding-left: 0;
  }
  .schedule-flow__shift-note {
    align-items: center;
    background-color: #fff;
    color: #222;
    display: grid;
    gap: 32px;
    grid-template-columns: 240px minmax(0, 1fr);
    margin-top: clamp(40px, calc(40px + (100vw - 375px) * 0.1592039801), 72px);
    padding: 32px clamp(24px, calc(24px + (100vw - 375px) * 0.1194029851), 48px);
  }
  @media (max-width: 1023.98px) {
    .schedule-flow__shift-note {
      display: block;
    }
  }
  .schedule-flow__shift-note-title {
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
  }
  @media (max-width: 1023.98px) {
    .schedule-flow__shift-note-title {
      text-align: center;
    }
  }
  .schedule-flow__shift-note-copy {
    border-left: 1px solid rgba(34, 34, 34, 0.14);
    padding-left: 32px;
  }
  @media (max-width: 1023.98px) {
    .schedule-flow__shift-note-copy {
      border-left: none;
      margin-top: 24px;
      padding-left: 0;
    }
  }
  .schedule-flow__shift-note-text + .schedule-flow__shift-note-text {
    margin-top: 12px;
  }
  .schedule-flow__fit-panel {
    --framed-panel-outer-border-color: #ccc;
    --framed-panel-inner-padding: 56px 40px 48px;
    --framed-panel-inner-padding-sp: 40px 20px 32px;
    --framed-panel-inner-border-color: rgba(34, 34, 34, 0.12);
    color: #222;
    margin-top: 40px;
  }
  .schedule-flow__fit-panel-inner {
    text-align: center;
  }
  .schedule-flow__fit-panel-title,
  .schedule-flow__fit-panel-callout-title {
    align-items: center;
    display: inline-flex;
    gap: clamp(10px, calc(10px + (100vw - 576px) * 0.03125), 16px);
    justify-content: center;
    margin-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
  }
  .schedule-flow__fit-panel-title {
    color: #f582ab;
    font-size: clamp(2.7rem, calc(2.7rem + (100vw - 768px) * 0.01171875), 3rem);
  }
  .schedule-flow__fit-panel-title::before, .schedule-flow__fit-panel-title::after {
    background-color: currentcolor;
    content: "";
    display: block;
    height: 4px;
    width: 32px;
  }
  .schedule-flow__fit-panel-title::before {
    transform: rotate(54deg);
  }
  .schedule-flow__fit-panel-title::after {
    transform: rotate(-54deg);
  }
  @media (max-width: 767.98px) {
    .schedule-flow__fit-panel-title {
      font-size: clamp(2.5rem, calc(2.5rem + (100vw - 576px) * 0.0104166667), 2.7rem);
    }
  }
  @media (max-width: 575.98px) {
    .schedule-flow__fit-panel-title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0149253731), 2.5rem);
    }
  }
  .schedule-flow__fit-panel-intro > *:first-child {
    margin-top: 0;
  }
  .schedule-flow__fit-panel-intro > *:last-child {
    margin-bottom: 0;
  }
  .schedule-flow__fit-panel-intro {
    margin-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
  }
  @media (max-width: 767.98px) {
    .schedule-flow__fit-panel-intro p {
      text-align: left;
    }
  }
  @media (max-width: 767.98px) {
    .schedule-flow__fit-panel-intro br {
      display: none;
    }
  }
  .schedule-flow__fit-panel-callout-copy > *:first-child {
    margin-top: 0;
  }
  .schedule-flow__fit-panel-callout-copy > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 1023.98px) {
    .schedule-flow__fit-panel-callout-copy p {
      margin-block: 12px;
    }
  }
  @media (max-width: 767.98px) {
    .schedule-flow__fit-panel-callout-copy p {
      text-align: left;
    }
  }
  .schedule-flow__fit-panel-list {
    display: grid;
    gap: clamp(10px, calc(10px + (100vw - 576px) * 0.03125), 16px);
    justify-content: center;
  }
  @media (max-width: 575.98px) {
    .schedule-flow__fit-panel-list {
      gap: clamp(7px, calc(7px + (100vw - 375px) * 0.0149253731), 10px);
      padding-left: clamp(22px, calc(22px + (100vw - 375px) * 0.039800995), 30px);
    }
  }
  .schedule-flow__fit-panel-item {
    font-size: clamp(1.7rem, calc(1.7rem + (100vw - 576px) * 0.015625), 2rem);
    font-weight: 900;
    text-align: left;
    width: -moz-fit-content;
    width: fit-content;
  }
  @media (max-width: 575.98px) {
    .schedule-flow__fit-panel-item {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0049751244), 1.7rem);
    }
  }
  .schedule-flow__fit-panel-item::marker {
    color: #f582ab;
  }
  .schedule-flow__fit-panel-callout {
    margin-top: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
    padding: clamp(32px, calc(32px + (100vw - 375px) * 0.0199004975), 36px) clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
  }
  @media (max-width: 767.98px) {
    .schedule-flow__fit-panel-callout {
      padding: clamp(32px, calc(32px + (100vw - 375px) * 0.0199004975), 36px) clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
    }
  }
  .schedule-flow__fit-panel-callout {
    background-color: #FFF4F8;
  }
  .schedule-flow__fit-panel-callout-title {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    margin-bottom: 24px;
  }
  .schedule-flow__fit-panel-callout-title::before, .schedule-flow__fit-panel-callout-title::after {
    background-color: currentcolor;
    content: "";
    display: block;
    height: 3px;
    width: clamp(24px, calc(24px + (100vw - 375px) * 0.0199004975), 28px);
  }
  .schedule-flow__fit-panel-callout-title::before {
    transform: rotate(54deg);
  }
  .schedule-flow__fit-panel-callout-title::after {
    transform: rotate(-54deg);
  }
  .schedule-flow__item {
    align-items: start;
    display: grid;
    gap: clamp(20px, calc(20px + (100vw - 375px) * 0.0199004975), 24px);
    grid-template-columns: clamp(140px, calc(140px + (100vw - 768px) * 0.234375), 200px) 1fr;
  }
  @media (max-width: 575.98px) {
    .schedule-flow__item {
      grid-template-columns: clamp(80px, calc(80px + (100vw - 375px) * 0.2985074627), 140px) 1fr;
    }
  }
  .schedule-flow__item + .schedule-flow__item {
    margin-top: clamp(24px, calc(24px + (100vw - 375px) * 0.1194029851), 48px);
  }
  .schedule-flow__time {
    align-items: center;
    background-color: #f582ab;
    color: #fff;
    display: flex;
    font-size: clamp(2rem, calc(2rem + (100vw - 768px) * 0.015625), 2.4rem);
    font-weight: 800;
    height: clamp(48px, calc(48px + (100vw - 768px) * 0.046875), 60px);
    justify-content: center;
    position: relative;
    white-space: nowrap;
  }
  @media (max-width: 575.98px) {
    .schedule-flow__time {
      font-size: clamp(1.7rem, calc(1.7rem + (100vw - 375px) * 0.0149253731), 2rem);
      height: clamp(40px, calc(40px + (100vw - 375px) * 0.039800995), 48px);
      padding-top: clamp(0px, calc(4px + (100vw - 375px) * -0.0199004975), 4px);
    }
  }
  .schedule-flow__item:not(:last-child) .schedule-flow__time::after {
    border-inline: 9px solid transparent;
    border-top: 10px solid #fff;
    content: "";
    left: 50%;
    position: absolute;
    top: calc(100% + 18px);
    transform: translateX(-50%);
  }
  .schedule-flow__content {
    min-width: 0;
    padding-top: clamp(0px, calc(6px + (100vw - 375px) * -0.0298507463), 6px);
  }
  .schedule-flow__title {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    font-weight: 900;
    margin-bottom: 8px;
  }
  .job-description-job-details {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .job-description-job-details {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .job-description-job-details__list {
    --media-text-list-item-columns: 400px minmax(0, 1fr);
    --media-text-list-item-gap: 28px;
    --media-text-list-items-gap: 28px;
    --media-text-list-media-aspect-ratio: 400 / 264;
  }
  .page-top {
    aspect-ratio: 1;
    background-color: #000;
    bottom: clamp(10px, calc(10px + (100vw - 576px) * 0.016025641), 20px);
    opacity: 0;
    pointer-events: none;
    position: fixed;
    right: clamp(10px, calc(10px + (100vw - 576px) * 0.016025641), 20px);
    transition: opacity 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    width: 44px;
    z-index: 999;
  }
  .page-top span {
    background-color: #fff;
    bottom: 0;
    display: inline-block;
    height: 2px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 14px;
  }
  .page-top span:first-child {
    transform: rotate(45deg) translate(3px, -3px);
  }
  .page-top span:last-child {
    transform: rotate(-45deg) translate(-3px, -3px);
  }
  @media (hover: hover) {
    .page-top:hover {
      transform: translateY(-3px);
    }
  }
  .page-top.is-view {
    opacity: 1;
    pointer-events: auto;
  }
  .site-nav {
    align-items: center;
    background-color: #fff;
    display: flex;
  }
  .site-nav--header {
    align-items: stretch;
    align-self: stretch;
  }
  .site-nav--header .site-nav__item {
    display: flex;
  }
  .site-nav--header .site-nav__item a {
    min-height: auto;
    padding-block: 0;
  }
  .site-nav--header .site-nav__item a span {
    align-items: center;
    min-height: 100%;
    padding-block: 0;
    padding-inline: clamp(12px, calc(12px + (100vw - 1440px) * 0.0270833333), 25px);
  }
  .site-nav__item {
    flex: 0 0 auto;
  }
  .site-nav__item a {
    display: flex;
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 768px) * 0.0023148148), 1.6rem);
    font-weight: 400;
    justify-content: center;
    line-height: 1.55;
    min-height: 64px;
    padding-block: 14px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .site-nav__item a::after {
    aspect-ratio: 16/10;
    background-color: #FF7BA8;
    bottom: 0;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    content: "";
    left: 0;
    margin: auto;
    opacity: 0;
    position: absolute;
    right: 0;
    transform: translateY(4px);
    transition: transform 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    width: 16px;
  }
  .site-nav__item a.is-current::after {
    opacity: 1;
    transform: translateY(0);
  }
  .site-nav__item a span {
    border-inline-start: 1px dashed #cfc8c2;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    min-height: inherit;
    padding-block: 10px;
    width: 100%;
  }
  @media (hover: hover) {
    .site-nav__item a:hover {
      color: #FF7BA8;
      opacity: 1;
    }
    .site-nav__item a:hover::after {
      opacity: 1;
      transform: translateY(0);
    }
  }
  .site-nav__item:last-child a span {
    border-inline-end: 1px dashed #cfc8c2;
  }
  .site-nav--top-page {
    align-items: stretch;
  }
  .site-nav--top-page .site-nav__item {
    display: flex;
    flex: 1 1;
    min-width: 0;
  }
  .site-nav--top-page .site-nav__item a {
    width: 100%;
  }
  .header {
    gap: 40px;
    padding-inline: clamp(10px, calc(10px + (100vw - 375px) * 0.0497512438), 20px) 40px;
    position: relative;
    z-index: 9999;
  }
  @media (max-width: 1199.98px) {
    .header {
      height: clamp(56px, calc(56px + (100vw - 375px) * 0.039800995), 64px);
      padding-right: clamp(15px, calc(15px + (100vw - 375px) * 0.0746268657), 30px);
    }
  }
  .header__logo {
    aspect-ratio: 838/160;
    width: clamp(320px, calc(320px + (100vw - 1024px) * 0.1116071429), 420px);
  }
  @media (hover: hover) {
    .header__logo:hover {
      opacity: 1;
    }
  }
  @media (max-width: 1023.98px) {
    .header__logo {
      width: clamp(250px, calc(250px + (100vw - 768px) * 0.2734375), 320px);
    }
  }
  @media (max-width: 575.98px) {
    .header__logo {
      width: clamp(220px, calc(220px + (100vw - 375px) * 0.1492537313), 250px);
    }
  }
  .header__sticky-nav {
    min-width: 0;
  }
  .header--subpage {
    background-color: #fff;
    position: sticky;
    top: 0;
    width: 100%;
  }
  .header--top-page {
    left: 0;
    position: fixed;
    top: 0;
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    width: 100%;
  }
  @media (max-width: 1199.98px) {
    .header--top-page {
      background-color: #fff;
      left: auto;
      position: sticky;
    }
  }
  .header--top-page .header__logo {
    position: relative;
    top: clamp(10px, calc(10px + (100vw - 375px) * 0.0497512438), 20px);
    transition: top 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 1199.98px) {
    .header--top-page .header__logo {
      top: 0;
    }
  }
  .header--top-page .header__sticky-nav {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-12px);
    transition: opacity 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.4s;
    visibility: hidden;
  }
  .header--top-page.is-sticky-nav {
    background-color: #fff;
  }
  .header--top-page.is-sticky-nav .header__logo {
    top: 0;
  }
  .header--top-page.is-sticky-nav .header__sticky-nav {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
    visibility: visible;
  }
  @media (max-width: 1199.98px) {
    .header--top-page .header__hMenu {
      top: 0;
    }
  }
  @media (max-width: 575.98px) {
    .header--top-page .header__hMenu {
      top: 0;
    }
  }
  .header__hMenu {
    align-items: center;
    background-color: transparent;
    border: 0;
    display: none;
    flex-direction: column;
    gap: clamp(7px, calc(7px + (100vw - 375px) * 0.0149253731), 10px);
    height: 40px;
    justify-content: center;
    margin-left: auto;
    padding: 0;
    position: relative;
    width: 40px;
  }
  @media (max-width: 1199.98px) {
    .header__hMenu {
      display: flex;
    }
  }
  @media (hover: hover) {
    .header__hMenu:hover {
      cursor: pointer;
    }
  }
  .header__hMenu span {
    background-color: #F19CA6;
    display: block;
    height: 3px;
    transition: transform 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    width: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
  }
  .header__hMenu.is-active {
    justify-content: center;
  }
  .header__hMenu.is-active span {
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
  }
  .header__hMenu.is-active span:nth-of-type(1) {
    transform: rotate(45deg);
  }
  .header__hMenu.is-active span:nth-of-type(2) {
    opacity: 0;
  }
  .header__hMenu.is-active span:nth-of-type(3) {
    transform: rotate(-45deg);
  }
  .step-badge {
    width: clamp(200px, calc(200px + (100vw - 375px) * 0.1990049751), 240px);
  }
  .step-badge img {
    display: block;
    height: auto;
    width: 100%;
  }
  .section-heading {
    font-weight: 800;
    margin-bottom: clamp(32px, calc(32px + (100vw - 768px) * 0.0625), 48px);
    text-align: center;
    white-space: nowrap;
  }
  .section-heading__title {
    font-size: clamp(2.5rem, calc(2.5rem + (100vw - 375px) * 0.0248756219), 3rem);
  }
  @media (max-width: 1023.98px) {
    .section-heading__title {
      line-height: 1.5;
    }
  }
  .section-heading__subtitle {
    color: #f582ab;
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 8px;
  }
  @media (max-width: 1023.98px) {
    .section-heading--top-page-opening {
      margin-bottom: clamp(40px, calc(40px + (100vw - 576px) * 0.0416666667), 48px);
    }
  }
  @media (max-width: 575.98px) {
    .section-heading--top-page-opening {
      margin-bottom: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    }
  }
  .section-heading--top-page-opening .section-heading__subtitle {
    color: #222;
  }
  @media (max-width: 575.98px) {
    .section-heading--entry-phone .section-heading__title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.039800995), 3rem);
    }
  }
  .section-intro {
    text-align: center;
  }
  .section-intro__text p {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 768px) * 0.0078125), 2rem);
  }
  @media (max-width: 767.98px) {
    .section-intro__text p {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 576px) * 0.0104166667), 1.8rem);
      text-align: left;
    }
  }
  @media (max-width: 767.98px) {
    .section-intro__text br {
      display: none;
    }
  }
  .section-lead {
    --section-lead-eyebrow-color: #f582ab;
    --section-lead-eyebrow-font-size: clamp(1.9rem, calc(1.9rem + (100vw - 375px) * 0.0248756219), 2.4rem);
    --section-lead-eyebrow-font-weight: 800;
    --section-lead-eyebrow-margin-bottom: 5px;
    --section-lead-title-font-size: clamp(2.4rem, calc(2.4rem + (100vw - 768px) * 0.0234375), 3rem);
    --section-lead-title-font-weight: 300;
    --section-lead-title-padding-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
    --section-lead-title-margin-bottom: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
    --section-lead-title-border-bottom: 1px solid #ccc;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
    text-align: center;
  }
  @media (max-width: 575.98px) {
    .section-lead {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  @media (max-width: 575.98px) {
    .section-lead {
      --section-lead-title-font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
    }
  }
  .section-lead__eyebrow {
    color: var(--section-lead-eyebrow-color);
    font-size: var(--section-lead-eyebrow-font-size);
    font-weight: var(--section-lead-eyebrow-font-weight);
    margin-bottom: var(--section-lead-eyebrow-margin-bottom);
  }
  .section-lead__title {
    border-bottom: var(--section-lead-title-border-bottom);
    font-size: var(--section-lead-title-font-size);
    font-weight: var(--section-lead-title-font-weight);
    margin-bottom: var(--section-lead-title-margin-bottom);
    padding-bottom: var(--section-lead-title-padding-bottom);
  }
  @media (max-width: 575.98px) {
    .section-lead__title {
      line-height: 1.6;
    }
  }
  @media (max-width: 767.98px) {
    .section-lead__body {
      text-align: left;
    }
  }
  @media (max-width: 1023.98px) {
    .section-lead__text {
      margin-top: 12px;
    }
  }
  @media (max-width: 767.98px) {
    .section-lead__text br {
      display: none;
    }
  }
  @media (max-width: 1023.98px) {
    .section-lead__text:nth-of-type(1) {
      margin-top: 0;
    }
  }
  .career-step {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .career-step {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .career-step__list {
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
  @media (max-width: 1023.98px) {
    .career-step__list {
      gap: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px);
    }
  }
  .career-step__item {
    align-items: start;
    display: grid;
    gap: 24px clamp(32px, calc(32px + (100vw - 1024px) * 0.0384615385), 48px);
    grid-template-columns: clamp(280px, calc(280px + (100vw - 1024px) * 0.0892857143), 360px) 1fr;
  }
  @media (max-width: 1023.98px) {
    .career-step__item {
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (max-width: 575.98px) {
    .career-step__item {
      gap: clamp(15px, calc(15px + (100vw - 375px) * 0.0447761194), 24px);
    }
  }
  .career-step__visual {
    aspect-ratio: 3/2;
    overflow: hidden;
  }
  .career-step__visual img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .career-step__content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 8px;
  }
  .career-step__title {
    align-items: baseline;
    color: #222;
    display: flex;
    flex-wrap: wrap;
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 1024px) * 0.0048076923), 2.4rem);
    font-weight: 500;
    gap: 4px 12px;
  }
  @media (max-width: 575.98px) {
    .career-step__title {
      font-size: clamp(1.9rem, calc(1.9rem + (100vw - 375px) * 0.0149253731), 2.2rem);
    }
  }
  .career-step__title-main {
    color: #f582ab;
  }
  .career-step__term {
    color: rgba(34, 34, 34, 0.7);
  }
  .career-roadmap {
    margin-top: clamp(-30px, calc(-30px + (100vw - 1024px) * 0.0721153846), 0px);
    padding-bottom: clamp(72px, calc(72px + (100vw - 1024px) * 0.1153846154), 120px);
  }
  @media (max-width: 575.98px) {
    .career-roadmap {
      margin-top: clamp(-30px, calc(-15px + (100vw - 375px) * -0.0746268657), -15px);
      padding-bottom: clamp(48px, calc(48px + (100vw - 375px) * 0.1194029851), 72px);
    }
  }
  .qualification {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .qualification {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .qualification {
    padding-top: 24px;
  }
  @media (max-width: 1023.98px) {
    .qualification {
      padding-top: 32px;
    }
  }
  .qualification__lead {
    font-size: clamp(2.1rem, calc(2.1rem + (100vw - 375px) * 0.0149253731), 2.4rem);
    font-weight: 500;
    margin-bottom: 24px;
    text-align: center;
  }
  @media (max-width: 575.98px) {
    .qualification__lead {
      line-height: 1.6;
    }
  }
  .qualification__intro {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 28px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .qualification__intro {
      text-align: left;
    }
  }
  .qualification__list {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  @media (max-width: 767.98px) {
    .qualification__list {
      gap: 15px;
    }
  }
  .qualification__row {
    display: grid;
    gap: 4px;
    grid-template-columns: clamp(240px, calc(240px + (100vw - 1024px) * 0.0600961538), 265px) 1fr;
  }
  @media (max-width: 767.98px) {
    .qualification__row {
      grid-template-columns: 1fr;
    }
  }
  .qualification__term {
    align-items: center;
    background-color: #f582ab;
    color: #fff;
    display: flex;
    font-size: clamp(1.7rem, calc(1.7rem + (100vw - 1024px) * 0.0033482143), 2rem);
    font-weight: 400;
    padding: clamp(12px, calc(12px + (100vw - 375px) * 0.039800995), 20px) clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
  }
  @media (max-width: 575.98px) {
    .qualification__term {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0049751244), 1.7rem);
    }
  }
  .qualification__description {
    align-items: center;
    background-color: #fff;
    box-shadow: inset 0 0 0 1px rgba(34, 34, 34, 0.06);
    display: flex;
    font-size: clamp(1.7rem, calc(1.7rem + (100vw - 1024px) * 0.0033482143), 2rem);
    font-weight: 400;
    padding: clamp(12px, calc(12px + (100vw - 375px) * 0.039800995), 20px) clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
  }
  @media (max-width: 575.98px) {
    .qualification__description {
      font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0099502488), 1.7rem);
    }
  }
  .qualification__note {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 24px;
    padding: clamp(24px, calc(24px + (100vw - 576px) * 0.0625), 36px) 24px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .qualification__note {
      padding: clamp(24px, calc(24px + (100vw - 576px) * 0.0625), 36px) 24px;
    }
  }
  .qualification__note {
    background-color: #fff;
    box-shadow: inset 0 0 0 1px rgba(34, 34, 34, 0.06);
  }
  @media (max-width: 767.98px) {
    .qualification__note {
      text-align: left;
    }
  }
  .growth {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .growth {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  @media (max-width: 1023.98px) {
    .growth {
      padding-bottom: 32px;
    }
  }
  .model-case {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .model-case {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .model-case {
    background-color: #FFF4F8;
  }
  .model-case__intro {
    margin-bottom: clamp(40px, calc(40px + (100vw - 768px) * 0.09375), 64px);
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .model-case__intro {
      text-align: left;
    }
  }
  .model-case__list {
    display: grid;
    gap: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
  }
  .model-case__item {
    --model-case-item-title-height: 58px;
  }
  .model-case__item-title {
    align-items: center;
    border-radius: 20px;
    color: #fff;
    display: flex;
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 768px) * 0.0078125), 2.4rem);
    font-weight: 900;
    justify-content: center;
    margin-bottom: calc(var(--model-case-item-title-height) * -0.5);
    margin-inline: auto;
    min-height: var(--model-case-item-title-height);
    padding: 12px 12px;
    position: relative;
    text-align: center;
    width: min(760px, 100% - 160px);
    z-index: 1;
  }
  @media (max-width: 575.98px) {
    .model-case__item-title {
      font-size: clamp(2rem, calc(2rem + (100vw - 375px) * 0.0099502488), 2.2rem);
      line-height: 1.5;
      width: clamp(250px, calc(250px + (100vw - 375px) * 0.4975124378), 350px);
    }
  }
  @media (max-width: 575.98px) {
    .model-case__item-title br.u-break--sm {
      flex-basis: 100%;
      height: 0;
    }
  }
  .model-case__item--starter .model-case__item-title {
    background-color: #FF7BA8;
  }
  .model-case__item--return .model-case__item-title {
    background-color: #00B1FF;
  }
  .model-case__item--experienced .model-case__item-title {
    background-color: #95C759;
  }
  .model-case__item-panel {
    background-color: #fff;
    border-radius: 28px;
    padding: 72px clamp(40px, calc(40px + (100vw - 768px) * 0.390625), 140px) clamp(48px, calc(48px + (100vw - 768px) * 0.03125), 56px);
  }
  @media (max-width: 575.98px) {
    .model-case__item-panel {
      padding-bottom: clamp(20px, calc(20px + (100vw - 375px) * 0.1393034826), 48px);
      padding-inline: clamp(20px, calc(20px + (100vw - 375px) * 0.0995024876), 40px);
      padding-top: clamp(48px, calc(48px + (100vw - 375px) * 0.1194029851), 72px);
    }
  }
  .model-case__timeline {
    display: flex;
    flex-direction: column;
    gap: clamp(3px, calc(3px + (100vw - 375px) * 0.0348258706), 10px);
  }
  .model-case__timeline-row {
    align-items: center;
    display: grid;
    gap: clamp(20px, calc(20px + (100vw - 576px) * 0.0416666667), 28px);
    grid-template-columns: clamp(80px, calc(80px + (100vw - 375px) * 0.1990049751), 120px) 1fr;
  }
  .model-case__timeline-year {
    align-items: center;
    background-color: #f8f8f8;
    border-radius: 6px;
    color: #fff;
    display: flex;
    font-weight: 500;
    justify-content: center;
    padding: clamp(5px, calc(5px + (100vw - 375px) * 0.0149253731), 8px) 16px;
    text-align: center;
  }
  .model-case__timeline-year--zero {
    background-color: #eee;
    color: #222;
  }
  .model-case__timeline-year--one {
    background-color: #FABF13;
  }
  .model-case__timeline-year--two {
    background-color: #95C759;
  }
  .model-case__timeline-year--three {
    background-color: #B094C4;
  }
  .model-case__timeline-year--current {
    background-color: #F19CA6;
  }
  .model-case__timeline-text {
    align-items: center;
    display: flex;
    margin: 0;
    min-height: 48px;
  }
  .model-case__summary {
    color: #666;
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 576px) * 0.0104166667), 2rem);
    font-weight: 900;
    margin-top: clamp(15px, calc(15px + (100vw - 375px) * 0.0845771144), 32px);
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .model-case__summary {
      font-size: clamp(1.7rem, calc(1.7rem + (100vw - 375px) * 0.0049751244), 1.8rem);
      text-align: left;
    }
  }
  .model-case__note {
    margin-top: clamp(48px, calc(48px + (100vw - 768px) * 0.0625), 64px);
    padding: clamp(24px, calc(24px + (100vw - 768px) * 0.03125), 32px) 20px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .model-case__note {
      padding: clamp(24px, calc(24px + (100vw - 768px) * 0.03125), 32px) 20px;
    }
  }
  .model-case__note {
    background-color: #fff;
    border: 2px solid #f582ab;
  }
  @media (max-width: 767.98px) {
    .model-case__note {
      text-align: left;
    }
  }
  .recruitment-openings {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .recruitment-openings {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .recruitment-openings {
    background-color: #f8f8f8;
  }
  .recruitment-openings__list {
    display: grid;
    gap: 24px;
  }
  .recruitment-openings__item {
    align-items: flex-start;
    background-color: #fff;
    display: grid;
    gap: clamp(25px, calc(25px + (100vw - 576px) * 0.046875), 34px);
    grid-template-columns: clamp(350px, calc(350px + (100vw - 1024px) * 0.1682692308), 420px) 1fr;
    padding: clamp(30px, calc(30px + (100vw - 576px) * 0.0833333333), 46px) clamp(30px, calc(30px + (100vw - 576px) * 0.09375), 48px);
  }
  @media (max-width: 1023.98px) {
    .recruitment-openings__item {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width: 575.98px) {
    .recruitment-openings__item {
      gap: clamp(20px, calc(20px + (100vw - 375px) * 0.0199004975), 24px);
      padding: clamp(20px, calc(20px + (100vw - 375px) * 0.0497512438), 30px);
    }
  }
  .recruitment-openings__media {
    aspect-ratio: 12/8;
    overflow: hidden;
  }
  .recruitment-openings__image {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .recruitment-openings__title {
    font-size: clamp(2.1rem, calc(2.1rem + (100vw - 375px) * 0.0149253731), 2.4rem);
    font-weight: 800;
  }
  .recruitment-openings__meta {
    display: grid;
    gap: 4px;
    margin-top: clamp(20px, calc(20px + (100vw - 576px) * 0.0208333333), 24px);
  }
  .recruitment-openings__meta-row {
    align-items: flex-start;
    display: grid;
    gap: clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
    grid-template-columns: clamp(80px, calc(80px + (100vw - 375px) * 0.1890547264), 118px) minmax(0, 1fr);
  }
  .recruitment-openings__meta-label {
    background-color: #eee;
    font-weight: 400;
    line-height: 1.5;
    padding-block: 8px;
    text-align: center;
  }
  .recruitment-openings__meta-value {
    line-height: 1.7;
    padding-top: 8px;
  }
  .recruitment-openings__meta-value-line + .recruitment-openings__meta-value-line {
    margin-top: 4px;
  }
  .recruitment-openings__button {
    font-size: 1.6rem;
    margin-top: 24px;
  }
  @media (max-width: 1023.98px) {
    .recruitment-openings__button {
      display: block;
      margin-inline: auto;
      text-align: center;
      width: clamp(300px, calc(300px + (100vw - 576px) * 0.5208333333), 400px);
      --cta-button-min-inline-size: auto;
    }
  }
  @media (max-width: 575.98px) {
    .recruitment-openings__button {
      width: clamp(260px, calc(260px + (100vw - 375px) * 0.1990049751), 300px);
    }
  }
  .recruitment-single-detail {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .recruitment-single-detail {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .recruitment-single-detail__inner {
    text-align: center;
  }
  .recruitment-single-detail__title {
    font-size: clamp(2.7rem, calc(2.7rem + (100vw - 768px) * 0.01171875), 3rem);
    font-weight: 300;
    letter-spacing: 0.04em;
    margin-bottom: 32px;
  }
  @media (max-width: 767.98px) {
    .recruitment-single-detail__title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0127226463), 2.7rem);
    }
  }
  .recruitment-single-detail__copy {
    border-top: 1px solid rgba(34, 34, 34, 0.14);
    letter-spacing: 0.04em;
    line-height: 2.2;
    padding-top: 32px;
  }
  @media (max-width: 767.98px) {
    .recruitment-single-detail__copy {
      text-align: left;
    }
  }
  .recruitment-single-detail__media {
    margin-inline: auto;
    margin-top: clamp(48px, calc(48px + (100vw - 1024px) * 0.0192307692), 56px);
    max-width: 640px;
    width: 100%;
  }
  @media (max-width: 1023.98px) {
    .recruitment-single-detail__media {
      margin-top: clamp(32px, calc(32px + (100vw - 768px) * 0.0625), 48px);
    }
  }
  @media (max-width: 767.98px) {
    .recruitment-single-detail__media {
      margin-top: clamp(20px, calc(20px + (100vw - 576px) * 0.0625), 32px);
      width: 100%;
    }
  }
  .recruitment-single-detail__guidelines {
    margin-top: clamp(72px, calc(72px + (100vw - 1024px) * 0.0192307692), 80px);
  }
  @media (max-width: 1023.98px) {
    .recruitment-single-detail__guidelines {
      margin-top: clamp(48px, calc(48px + (100vw - 768px) * 0.09375), 72px);
    }
  }
  .recruitment-single-detail__guidelines-title {
    background-color: #f582ab;
    border-bottom: 4px solid #D76A83;
    color: #fff;
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 768px) * 0.0078125), 2.4rem);
    font-weight: 800;
    line-height: 1.5;
    margin-bottom: 8px;
    padding-block: clamp(12px, calc(12px + (100vw - 768px) * 0.015625), 16px);
    text-align: center;
  }
  @media (max-width: 575.98px) {
    .recruitment-single-detail__guidelines-title {
      font-size: clamp(1.9rem, calc(1.9rem + (100vw - 375px) * 0.0149253731), 2.2rem);
    }
  }
  .recruitment-single-detail__action {
    margin-top: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px);
    text-align: center;
  }
  .recruitment-single-detail__placeholder {
    align-items: center;
    aspect-ratio: 544/394;
    background-color: rgba(34, 34, 34, 0.82);
    border-radius: 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-inline: auto;
    width: 544px;
  }
  @media (max-width: 767.98px) {
    .recruitment-single-detail__placeholder {
      width: 100%;
    }
  }
  .recruitment-single-detail__placeholder-line {
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.08em;
  }
  .recruitment-single-detail__placeholder-line + .recruitment-single-detail__placeholder-line {
    margin-top: 28px;
  }
  .information-news {
    background-image: url("assets/images/information-page/information-mosaic-tile.webp");
    background-position: center top;
    background-repeat: repeat;
    background-size: 500px auto;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .information-news {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .information-news__panel {
    background-color: #fff;
    padding: 56px;
  }
  @media (max-width: 767.98px) {
    .information-news__panel {
      padding: clamp(20px, calc(20px + (100vw - 375px) * 0.0199004975), 24px);
    }
  }
  .information-single-article {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .information-single-article {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .information-single-article__panel {
    padding: 56px;
  }
  @media (max-width: 767.98px) {
    .information-single-article__panel {
      padding: 40px 24px;
    }
  }
  .information-single-article__panel {
    background-color: #fff;
  }
  @media (max-width: 575.98px) {
    .information-single-article__panel {
      padding: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px) clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px) clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    }
  }
  .information-single-article__date {
    color: rgba(34, 34, 34, 0.65);
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .information-single-article__title {
    font-size: 3.6rem;
    font-weight: 500;
    line-height: 1.5;
    margin-top: 12px;
  }
  .information-single-article__lead {
    font-size: 1.8rem;
    line-height: 2;
    margin-top: 24px;
  }
  .information-single-article__eyecatch {
    aspect-ratio: 3/2;
    background-color: #f8f8f8;
    margin-top: 40px;
    overflow: hidden;
  }
  .information-single-article__eyecatch img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .information-single-article__body {
    margin-top: 40px;
  }
  .information-single-article__body.article :where(h2) {
    border-bottom: 1px solid rgba(34, 34, 34, 0.14);
    font-size: clamp(2.4rem, calc(2.4rem + (100vw - 375px) * 0.0152671756), 3rem);
    font-weight: 600;
    line-height: 1.45;
    padding-bottom: 12px;
  }
  .information-single-article__body.article :where(h3) {
    border-left: 4px solid rgba(241, 156, 166, 0.55);
    font-size: clamp(2rem, calc(2rem + (100vw - 375px) * 0.010178117), 2.4rem);
    font-weight: 500;
    line-height: 1.5;
    padding-left: 14px;
  }
  .information-single-article__body.article :where(pre) {
    background-color: rgba(20, 46, 83, 0.96);
    border: 1px solid rgba(20, 46, 83, 0.12);
    border-radius: 16px;
    color: rgba(255, 255, 255, 0.92);
    margin-block: clamp(20px, calc(20px + (100vw - 576px) * 0.078125), 35px);
    overflow-x: auto;
    padding: 20px 24px;
    -webkit-overflow-scrolling: touch;
  }
  .information-single-article__body.article :where(code) {
    background-color: rgba(255, 235, 242, 0.92);
    border: 1px solid rgba(241, 156, 166, 0.18);
    border-radius: 6px;
    color: #9f4c67;
    font-size: 0.92em;
    padding: 0.18em 0.55em;
  }
  .information-single-article__body.article :where(pre code) {
    background-color: transparent;
    border: 0;
    color: inherit;
    display: block;
    font-size: 1.4rem;
    line-height: 1.9;
    min-width: -moz-max-content;
    min-width: max-content;
    padding: 0;
    white-space: pre;
  }
  .information-single-article__body.article :where(table) {
    background-color: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(34, 34, 34, 0.1);
    border-collapse: separate;
    border-radius: 16px;
    border-spacing: 0;
    table-layout: fixed;
    width: 100%;
  }
  .information-single-article__body.article :where(thead th) {
    background-color: #ffebf2;
    color: rgba(34, 34, 34, 0.88);
    font-weight: 600;
  }
  .information-single-article__body.article :where(th, td) {
    border-bottom: 1px solid rgba(34, 34, 34, 0.08);
    font-size: 1.5rem;
    line-height: 1.7;
    padding: 14px 18px;
    text-align: left;
    vertical-align: middle;
  }
  .information-single-article__body.article :where(tr > * + *) {
    border-left: 1px solid rgba(34, 34, 34, 0.08);
  }
  .information-single-article__body.article :where(tbody tr:nth-child(even) td) {
    background-color: rgba(248, 248, 248, 0.85);
  }
  .information-single-article__body.article :where(tbody tr:last-child th, tbody tr:last-child td) {
    border-bottom: 0;
  }
  .information-single-article__body.article :where(thead tr th:first-child) {
    border-top-left-radius: 16px;
  }
  .information-single-article__body.article :where(thead tr th:last-child) {
    border-top-right-radius: 16px;
  }
  .information-single-article__body.article :where(tbody tr:last-child th:first-child, tbody tr:last-child td:first-child) {
    border-bottom-left-radius: 16px;
  }
  .information-single-article__body.article :where(tbody tr:last-child th:last-child, tbody tr:last-child td:last-child) {
    border-bottom-right-radius: 16px;
  }
  @media (max-width: 575.98px) {
    .information-single-article__body.article :where(pre) {
      border-radius: 12px;
      padding: 16px 18px;
    }
    .information-single-article__body.article :where(pre code) {
      font-size: 1.3rem;
    }
    .information-single-article__body.article :where(table) {
      border-radius: 12px;
      display: block;
      min-width: 100%;
      overflow-x: auto;
      table-layout: auto;
      width: -moz-max-content;
      width: max-content;
      -webkit-overflow-scrolling: touch;
    }
    .information-single-article__body.article :where(th, td) {
      font-size: 1.4rem;
      min-width: 120px;
      padding: 12px 14px;
      white-space: nowrap;
    }
    .information-single-article__body.article :where(thead tr th:first-child) {
      border-top-left-radius: 12px;
    }
    .information-single-article__body.article :where(thead tr th:last-child) {
      border-top-right-radius: 12px;
    }
    .information-single-article__body.article :where(tbody tr:last-child th:first-child, tbody tr:last-child td:first-child) {
      border-bottom-left-radius: 12px;
    }
    .information-single-article__body.article :where(tbody tr:last-child th:last-child, tbody tr:last-child td:last-child) {
      border-bottom-right-radius: 12px;
    }
  }
  .information-single-article__section + .information-single-article__section {
    margin-top: 12px;
  }
  .information-single-article__footer {
    margin-top: clamp(32px, calc(32px + (100vw - 375px) * 0.1194029851), 56px);
    text-align: center;
  }
  .information-single-article__back-button {
    --cta-button-min-inline-size: 280px;
  }
  @media (max-width: 767.98px) {
    .information-single-article__title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0152671756), 2.8rem);
    }
  }
  @media (max-width: 767.98px) {
    .information-single-article__lead {
      font-size: 1.6rem;
    }
  }
  .staff-interview-profiles {
    padding-bottom: 80px;
  }
  .staff-interview-profile {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
    scroll-margin-top: 100px;
  }
  @media (max-width: 575.98px) {
    .staff-interview-profile {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .staff-interview-profile:nth-child(2n-1) {
    background-image: url("assets/images/staff-interview-page/staff-interview-profile-bg.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .staff-interview-profile:last-child {
    padding-bottom: 0;
  }
  .staff-interview-profile__role {
    align-items: center;
    background-color: #f582ab;
    border-radius: 100vmax;
    color: #fff;
    display: flex;
    font-size: clamp(2.7rem, calc(2.7rem + (100vw - 1024px) * 0.0072115385), 3rem);
    font-weight: 800;
    justify-content: center;
    margin-bottom: 32px;
    padding-block: 15px;
    padding-inline: 32px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .staff-interview-profile__role {
      font-size: clamp(2.5rem, calc(2.5rem + (100vw - 576px) * 0.0104166667), 2.7rem);
    }
  }
  @media (max-width: 575.98px) {
    .staff-interview-profile__role {
      font-size: clamp(2rem, calc(2rem + (100vw - 375px) * 0.0248756219), 2.5rem);
      padding-inline: 12px;
    }
  }
  .staff-interview-profile__intro {
    align-items: center;
    display: grid;
    gap: clamp(40px, calc(40px + (100vw - 1024px) * 0.0384615385), 56px);
    grid-template-columns: 572px minmax(0, 1fr);
  }
  @media (max-width: 1023.98px) {
    .staff-interview-profile__intro {
      display: block;
    }
  }
  .staff-interview-profile__person + .staff-interview-profile__person {
    margin-top: clamp(40px, calc(40px + (100vw - 375px) * 0.1592039801), 72px);
  }
  .staff-interview-profile__media {
    aspect-ratio: 572/414;
    background-color: rgba(34, 34, 34, 0.04);
    border-radius: 22px;
    overflow: hidden;
  }
  .staff-interview-profile__meta {
    align-self: end;
  }
  @media (max-width: 1023.98px) {
    .staff-interview-profile__meta {
      margin-top: 25px;
    }
  }
  .staff-interview-profile__image {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
  .staff-interview-profile__image--lifestyle-counselor {
    object-position: 26% 50%;
  }
  .staff-interview-profile__image--service-manager {
    object-position: 24% 50%;
  }
  .staff-interview-profile__image--facility-manager {
    object-position: 88% 50%;
  }
  .staff-interview-profile__image--care-worker {
    object-position: 24% 38%;
  }
  .staff-interview-profile__image--part-leader {
    object-position: 28% 34%;
  }
  .staff-interview-profile__image--care-assistant {
    object-position: 26% 38%;
  }
  .staff-interview-profile__meta-label {
    font-weight: 800;
    letter-spacing: 0.02em;
  }
  .staff-interview-profile__name {
    font-size: clamp(3.1rem, calc(3.1rem + (100vw - 1024px) * 0.0216346154), 4rem);
    font-weight: 800;
    letter-spacing: 0.06em;
    margin-top: clamp(2px, calc(2px + (100vw - 375px) * 0.0248756219), 7px);
  }
  @media (max-width: 767.98px) {
    .staff-interview-profile__name {
      font-size: clamp(2.7rem, calc(2.7rem + (100vw - 576px) * 0.0208333333), 3.1rem);
    }
  }
  @media (max-width: 575.98px) {
    .staff-interview-profile__name {
      font-size: clamp(2.4rem, calc(2.4rem + (100vw - 375px) * 0.0149253731), 2.7rem);
    }
  }
  .staff-interview-profile__joined {
    font-weight: 400;
    letter-spacing: 0.02em;
    margin-top: clamp(4px, calc(4px + (100vw - 375px) * 0.039800995), 12px);
  }
  .staff-interview-profile__qa {
    margin-top: clamp(20px, calc(20px + (100vw - 375px) * 0.039800995), 28px);
  }
  .staff-interview-profile__qa-item + .staff-interview-profile__qa-item {
    margin-top: clamp(18px, calc(18px + (100vw - 576px) * 0.0520833333), 28px);
  }
  .staff-interview-profile__qa-item.is-open .staff-interview-profile__question-mark {
    transform: rotate(180deg);
  }
  .staff-interview-profile__qa-item.is-open .staff-interview-profile__question-mark::after {
    opacity: 0;
  }
  .staff-interview-profile__answer-wrap {
    overflow: hidden;
    transition: height 0.28s ease, opacity 0.2s ease;
  }
  .staff-interview-profile__question-row {
    align-items: center;
    background-color: #eee;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    gap: 24px;
    justify-content: space-between;
    list-style: none;
    min-height: 60px;
    padding-block: clamp(12px, calc(12px + (100vw - 375px) * 0.0149253731), 15px);
    padding-inline: clamp(15px, calc(15px + (100vw - 375px) * 0.0248756219), 20px) clamp(14px, calc(14px + (100vw - 375px) * 0.0199004975), 18px);
  }
  .staff-interview-profile__question-row::-webkit-details-marker {
    display: none;
  }
  .staff-interview-profile__question {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 576px) * 0.0104166667), 2rem);
    font-weight: 800;
    letter-spacing: 0.02em;
  }
  @media (max-width: 575.98px) {
    .staff-interview-profile__question {
      font-size: clamp(1.7rem, calc(1.7rem + (100vw - 375px) * 0.0049751244), 1.8rem);
    }
  }
  .staff-interview-profile__question-mark {
    display: block;
    flex-shrink: 0;
    height: 18px;
    position: relative;
    transform: rotate(0deg);
    transition: transform 0.28s ease;
    width: 18px;
  }
  .staff-interview-profile__question-mark::before, .staff-interview-profile__question-mark::after {
    background-color: #222;
    content: "";
    height: 2px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: opacity 0.2s ease;
    width: 18px;
  }
  .staff-interview-profile__question-mark::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .staff-interview-profile__answer {
    font-weight: 400;
    letter-spacing: 0.02em;
    margin-top: 16px;
    padding-bottom: 4px;
    padding-inline: clamp(15px, calc(15px + (100vw - 375px) * 0.0248756219), 20px);
  }
  .staff-interview-role-list {
    padding-bottom: clamp(48px, calc(48px + (100vw - 375px) * 0.1194029851), 72px);
  }
  .staff-interview-role-list__grid {
    display: grid;
    gap: clamp(24px, calc(24px + (100vw - 1024px) * 0.0089285714), 32px);
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    padding-left: 0;
  }
  @media (max-width: 575.98px) {
    .staff-interview-role-list__grid {
      gap: clamp(14px, calc(14px + (100vw - 375px) * 0.0497512438), 24px);
    }
  }
  .staff-interview-role-list__item {
    list-style: none;
  }
  .staff-interview-role-list__card {
    align-items: center;
    background-color: #fff;
    border: 1px solid #f582ab;
    display: flex;
    flex-direction: column;
    gap: clamp(7px, calc(7px + (100vw - 375px) * 0.0248756219), 12px);
    justify-content: center;
    min-height: 82px;
    padding-block: clamp(18px, calc(18px + (100vw - 375px) * 0.0298507463), 24px) clamp(16px, calc(16px + (100vw - 375px) * 0.0199004975), 20px);
    padding-inline: 16px;
    text-decoration: none;
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 575.98px) {
    .staff-interview-role-list__card {
      min-height: auto;
    }
  }
  @media (hover: hover) {
    .staff-interview-role-list__card:hover {
      background-color: rgba(245, 130, 171, 0.1);
      opacity: 1;
    }
  }
  .staff-interview-role-list__label {
    color: #f582ab;
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.5;
    text-align: center;
  }
  .staff-interview-role-list__arrow {
    background-color: #f582ab;
    block-size: clamp(8px, calc(8px + (100vw - 375px) * 0.0099502488), 10px);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    inline-size: clamp(16px, calc(16px + (100vw - 375px) * 0.0199004975), 20px);
  }
  .representative-message {
    background-color: #222;
    background-image: url("assets/images/about-us-page/aboutus_bg.webp");
    background-position: center, 72% center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
  }
  @media (max-width: 1023.98px) {
    .representative-message {
      background-image: linear-gradient(rgba(0, 0, 0, 0.46), rgba(0, 0, 0, 0.46)), url("assets/images/about-us-page/aboutus_bg.webp");
    }
  }
  .representative-message {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .representative-message {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .representative-message__title {
    font-size: clamp(2.4rem, calc(2.4rem + (100vw - 768px) * 0.015625), 2.8rem);
    font-weight: 300;
    line-height: 1.65;
    margin-bottom: 24px;
    white-space: nowrap;
  }
  @media (max-width: 575.98px) {
    .representative-message__title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
    }
  }
  @media (max-width: 575.98px) {
    .representative-message__title span {
      display: block;
      margin-top: 12px;
    }
  }
  @media (max-width: 575.98px) {
    .representative-message__title span:nth-of-type(1) {
      margin-top: 0;
    }
  }
  @media (max-width: 575.98px) {
    .representative-message__title br {
      display: none;
    }
  }
  .representative-message__text > *:first-child {
    margin-top: 0;
  }
  .representative-message__text > *:last-child {
    margin-bottom: 0;
  }
  .representative-message__text p {
    margin-block: 24px;
  }
  .representative-message__signature {
    display: flex;
    gap: 24px;
    justify-content: flex-end;
    margin-top: clamp(24px, calc(24px + (100vw - 375px) * 0.07960199), 40px);
  }
  .top-page-contact-panel {
    --top-page-contact-panel-heading: #f582ab;
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-contact-panel {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-contact-panel__inner {
    display: grid;
    gap: clamp(32px, calc(32px + (100vw - 1024px) * 0.0192307692), 40px);
  }
  @media (max-width: 575.98px) {
    .top-page-contact-panel__inner {
      gap: clamp(16px, calc(16px + (100vw - 375px) * 0.07960199), 32px);
    }
  }
  .top-page-contact-panel__heading {
    isolation: isolate;
    position: relative;
    text-align: center;
  }
  .top-page-contact-panel__heading::after {
    aspect-ratio: 910/451;
    background-image: url("assets/images/top-page/contact-panel-heading-bg.webp");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    inline-size: 500px;
    inset-block-start: 70%;
    inset-inline-start: 50%;
    pointer-events: none;
    position: absolute;
    transform: translate(-50%, -50%);
    z-index: -1;
  }
  .top-page-contact-panel__title {
    color: var(--top-page-contact-panel-heading);
    font-size: clamp(3.1rem, calc(3.1rem + (100vw - 576px) * 0.015625), 3.4rem);
    font-weight: 800;
    letter-spacing: 4px;
    margin-top: 12px;
  }
  @media (max-width: 1023.98px) {
    .top-page-contact-panel__title {
      margin-top: 6px;
    }
  }
  @media (max-width: 575.98px) {
    .top-page-contact-panel__title {
      font-size: clamp(2.7rem, calc(2.7rem + (100vw - 375px) * 0.0199004975), 3.1rem);
    }
  }
  .top-page-contact-panel__official {
    align-items: center;
    background-color: #fff;
    border: 3px solid #eee;
    color: #222;
    display: flex;
    gap: 24px;
    justify-content: center;
    padding-block: 40px;
    padding-inline: 20px;
    position: relative;
    transition: background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (max-width: 1023.98px) {
    .top-page-contact-panel__official {
      height: clamp(136px, calc(136px + (100vw - 375px) * 0.1691542289), 170px);
      padding-block: 0;
    }
  }
  @media (max-width: 767.98px) {
    .top-page-contact-panel__official {
      flex-direction: column;
      gap: 0;
    }
  }
  .top-page-contact-panel__official::after {
    background-color: #ff7ba8;
    block-size: 16px;
    clip-path: polygon(100% 0, 0 100%, 100% 100%);
    content: "";
    inline-size: 16px;
    inset-block-end: 0;
    inset-inline-end: 0;
    position: absolute;
  }
  @media (hover: hover) {
    .top-page-contact-panel__official:hover {
      background-color: rgb(242.25, 242.25, 242.25);
      opacity: 1;
    }
  }
  .top-page-contact-panel__official-logo {
    display: block;
    inline-size: min(100%, 400px);
  }
  .top-page-contact-panel__official-text {
    align-items: center;
    display: flex;
    gap: 10px;
  }
  .top-page-company-message {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-company-message {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-company-message {
    background-color: #fff;
    background-image: url("assets/images/top-page/top-page-company-message-pattern.webp");
    background-position: center center;
    background-repeat: repeat;
  }
  .top-page-company-message__inner {
    padding: clamp(48px, calc(48px + (100vw - 576px) * 0.125), 72px) 20px;
  }
  @media (max-width: 767.98px) {
    .top-page-company-message__inner {
      padding: clamp(48px, calc(48px + (100vw - 576px) * 0.125), 72px) 20px;
    }
  }
  .top-page-company-message__inner {
    background-color: #fff;
    border: 4px solid rgb(235, 223, 213);
    display: grid;
    gap: clamp(20px, calc(20px + (100vw - 375px) * 0.039800995), 28px);
    justify-items: center;
    text-align: center;
  }
  @media (max-width: 575.98px) {
    .top-page-company-message__inner {
      padding: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px) 20px;
    }
  }
  @media (max-width: 575.98px) and (max-width: 767.98px) {
    .top-page-company-message__inner {
      padding: clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px) 20px;
    }
  }
  .top-page-company-message__title {
    font-size: clamp(2.7rem, calc(2.7rem + (100vw - 1440px) * 0.00625), 3rem);
    font-weight: 800;
    line-height: 1.7;
  }
  @media (max-width: 1023.98px) {
    .top-page-company-message__title {
      font-size: 2.5rem;
    }
  }
  @media (max-width: 575.98px) {
    .top-page-company-message__title {
      font-size: clamp(2rem, calc(2rem + (100vw - 375px) * 0.0348258706), 2.7rem);
    }
  }
  .top-page-company-message__lead {
    color: #f582ab;
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    font-weight: 800;
    white-space: nowrap;
  }
  .top-page-company-message__copy > *:first-child {
    margin-top: 0;
  }
  .top-page-company-message__copy > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 575.98px) {
    .top-page-company-message__copy {
      text-align: left;
    }
  }
  .top-page-company-message__copy p {
    margin-block: 24px;
  }
  @media (max-width: 575.98px) {
    .top-page-company-message__copy p {
      margin-block: 12px;
    }
  }
  @media (max-width: 575.98px) {
    .top-page-company-message__copy br {
      display: none;
    }
  }
  .top-page-benefits {
    padding-bottom: clamp(48px, calc(48px + (100vw - 375px) * 0.2388059701), 96px);
  }
  .top-page-benefits__inner {
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.16);
    padding: 64px 180px 64px;
  }
  @media (max-width: 1023.98px) {
    .top-page-benefits__inner {
      padding: clamp(24px, calc(24px + (100vw - 375px) * 0.1194029851), 48px) clamp(130px, calc(130px + (100vw - 768px) * 0.1171875), 160px);
    }
  }
  @media (max-width: 767.98px) {
    .top-page-benefits__inner {
      padding-inline: clamp(64px, calc(64px + (100vw - 576px) * 0.34375), 130px);
    }
  }
  @media (max-width: 575.98px) {
    .top-page-benefits__inner {
      padding-inline: clamp(24px, calc(24px + (100vw - 375px) * 0.1990049751), 64px);
    }
  }
  .top-page-benefits__title {
    color: #f582ab;
    font-size: clamp(2.5rem, calc(2.5rem + (100vw - 375px) * 0.0248756219), 3rem);
    font-weight: 300;
    text-align: center;
  }
  .top-page-benefits__list {
    border-top: 1px solid rgba(0, 0, 0, 0.14);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: clamp(20px, calc(20px + (100vw - 375px) * 0.0597014925), 32px);
    padding-left: 0;
    padding-top: clamp(24px, calc(24px + (100vw - 375px) * 0.0696517413), 38px);
    row-gap: 15px;
  }
  @media (max-width: 1023.98px) {
    .top-page-benefits__list {
      display: block;
    }
  }
  .top-page-benefits__item {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 1440px) * 0.0041666667), 2rem);
    font-weight: 300;
    list-style: none;
    padding-left: 18px;
    position: relative;
  }
  @media (max-width: 575.98px) {
    .top-page-benefits__item {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 375px) * 0.0099502488), 1.8rem);
    }
  }
  .top-page-benefits__item::before {
    background-color: #f582ab;
    block-size: 7px;
    border-radius: 50%;
    content: "";
    inline-size: 7px;
    inset-block-start: 13px;
    inset-inline-start: 0;
    position: absolute;
  }
  .top-page-interview-career {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-interview-career {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-interview-career {
    background-color: #fff;
  }
  .top-page-interview-career__item {
    --top-page-interview-career-media-max-inline-size: none;
  }
  .top-page-interview-career__item + .top-page-interview-career__item {
    margin-top: clamp(72px, calc(72px + (100vw - 576px) * 0.1979166667), 110px);
  }
  .top-page-interview-career__content {
    display: grid;
    grid-template-columns: 460px minmax(0, 1fr);
    -moz-column-gap: 56px;
    align-items: center;
         column-gap: 56px;
  }
  @media (max-width: 1023.98px) {
    .top-page-interview-career__content {
      display: block;
    }
  }
  .top-page-interview-career__media {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 360px;
  }
  @media (max-width: 767.98px) {
    .top-page-interview-career__media {
      margin: auto;
      min-height: auto;
      width: clamp(220px, calc(220px + (100vw - 375px) * 0.4580152672), 400px);
    }
  }
  .top-page-interview-career__media img {
    block-size: auto;
    display: block;
    inline-size: 100%;
  }
  .top-page-interview-career__item--interview {
    --top-page-interview-career-media-max-inline-size: 460px;
  }
  .top-page-interview-career__item--career {
    --top-page-interview-career-media-max-inline-size: 370px;
  }
  .top-page-interview-career__body {
    display: grid;
    justify-items: start;
  }
  @media (max-width: 575.98px) {
    .top-page-interview-career__body {
      margin-top: 15px;
    }
  }
  .top-page-interview-career__eyebrow {
    color: #5175a8;
    font-size: 1.8rem;
    font-weight: 800;
  }
  .top-page-interview-career__lead {
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    font-size: clamp(2rem, calc(2rem + (100vw - 375px) * 0.0298507463), 2.6rem);
    font-weight: 800;
    margin-top: 2px;
    padding-bottom: 14px;
  }
  .top-page-interview-career__copy {
    margin-top: 20px;
  }
  .top-page-interview-career__cta {
    margin-top: clamp(24px, calc(24px + (100vw - 375px) * 0.0497512438), 34px);
  }
  @media (max-width: 1023.98px) {
    .top-page-interview-career__cta {
      margin-inline: auto;
    }
  }
  .top-page-instagram {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-instagram {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-instagram {
    background-color: #FFF4F8;
  }
  .top-page-instagram__feed {
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding-left: 0;
  }
  .top-page-instagram__item {
    list-style: none;
  }
  .top-page-instagram__media {
    aspect-ratio: 1;
    background-color: #fff;
    overflow: hidden;
  }
  .top-page-instagram__media img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    object-fit: cover;
  }
  .top-page-news {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-news {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-news__panel {
    background-color: #fff;
    padding: clamp(20px, calc(20px + (100vw - 375px) * 0.0995024876), 40px) clamp(20px, calc(20px + (100vw - 375px) * 0.0995024876), 40px) clamp(32px, calc(32px + (100vw - 375px) * 0.07960199), 48px);
  }
  .top-page-news__footer {
    display: flex;
    justify-content: center;
    margin-top: clamp(24px, calc(24px + (100vw - 375px) * 0.039800995), 32px);
  }
  .top-page-opening {
    isolation: isolate;
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
    position: relative;
  }
  @media (max-width: 575.98px) {
    .top-page-opening {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-opening::before {
    background: url("assets/images/top-page/top-page-opening-living-bg.webp") center center/cover no-repeat;
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: -2;
  }
  .top-page-opening__inner {
    box-sizing: border-box;
    margin-inline: auto;
    max-width: 1280px;
    padding-inline: 40px;
    width: 100%;
  }
  @media (max-width: 1023.98px) {
    .top-page-opening__inner {
      margin-inline: auto;
      max-width: 780px;
    }
  }
  @media (max-width: 767.98px) {
    .top-page-opening__inner {
      padding-inline: clamp(20px, calc(20px + (100vw - 375px) * 0.0508905852), 40px);
    }
  }
  .top-page-opening__heading {
    display: grid;
    gap: 14px;
    justify-items: center;
  }
  .top-page-opening__eyebrow {
    align-items: center;
    color: #FF7600;
    display: inline-flex;
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 375px) * 0.0099502488), 2rem);
    gap: 24px;
  }
  .top-page-opening__eyebrow::before, .top-page-opening__eyebrow::after {
    background-color: currentcolor;
    block-size: 18px;
    content: "";
    display: block;
    inline-size: 1px;
  }
  .top-page-opening__eyebrow::before {
    transform: rotate(-34deg);
  }
  .top-page-opening__eyebrow::after {
    transform: rotate(34deg);
  }
  .top-page-opening__slider {
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1120px;
    overflow: hidden;
    position: relative;
  }
  .top-page-opening__slider .swiper-wrapper {
    display: flex;
  }
  .top-page-opening__slider.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
  }
  .top-page-opening__slider.swiper-fade .swiper-slide-active {
    pointer-events: auto;
  }
  .top-page-opening__slide {
    box-sizing: border-box;
    display: flex;
    flex-shrink: 0;
    justify-content: center;
    width: 100%;
  }
  @media (max-width: 1199.98px) {
    .top-page-opening__slide {
      padding-inline: 56px;
    }
  }
  @media (max-width: 575.98px) {
    .top-page-opening__slide {
      padding-inline: 0;
    }
  }
  .top-page-opening__visual {
    aspect-ratio: 1080/600;
    background-color: rgba(255, 255, 255, 0.96);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.1);
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 980px;
    overflow: hidden;
  }
  .top-page-opening__visual img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    object-fit: cover;
    object-position: center;
  }
  .top-page-opening__nav {
    background-color: rgba(245, 130, 171, 0.85);
    block-size: 44px;
    border: 3px solid rgba(255, 255, 255, 0.92);
    border-radius: 999px;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.1);
    display: block;
    inline-size: 44px;
    inset-block-start: 50%;
    padding: 0;
    position: absolute;
    transform: translateY(-50%);
    transition: opacity 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 2;
  }
  @media (max-width: 575.98px) {
    .top-page-opening__nav {
      display: none;
    }
  }
  .top-page-opening__nav::before {
    block-size: 10px;
    border-block-end: 3px solid #fff;
    border-inline-end: 3px solid #fff;
    content: "";
    inline-size: 10px;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    position: absolute;
  }
  .top-page-opening__nav.swiper-button-disabled, .top-page-opening__nav.swiper-button-lock {
    opacity: 0;
    pointer-events: none;
  }
  .top-page-opening__nav--prev {
    inset-inline-start: 0;
  }
  .top-page-opening__nav--prev::before {
    transform: translate(-35%, -50%) rotate(135deg);
  }
  .top-page-opening__nav--next {
    inset-inline-end: 0;
  }
  .top-page-opening__nav--next::before {
    transform: translate(-65%, -50%) rotate(-45deg);
  }
  @media (max-width: 767.98px) {
    .top-page-opening__nav {
      block-size: 40px;
      inline-size: 40px;
    }
  }
  .top-page-opening__pagination {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 16px;
    position: relative;
    z-index: 2;
  }
  .top-page-opening__pagination.swiper-pagination-lock {
    display: none;
  }
  .top-page-opening__pagination-dot {
    background-color: rgba(255, 255, 255, 0.92);
    block-size: 8px;
    border: 1px solid rgba(245, 130, 171, 0.35);
    border-radius: 999px;
    cursor: pointer;
    display: block;
    inline-size: 8px;
  }
  .top-page-opening__pagination-dot.is-active {
    background-color: #f582ab;
  }
  .top-page-opening__content {
    align-items: center;
    background-color: #fff;
    border-radius: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 22px;
    inline-size: 100%;
    justify-content: center;
    margin-inline: auto;
    margin-top: clamp(40px, calc(40px + (100vw - 576px) * 0.0833333333), 56px);
    max-inline-size: 1120px;
    padding: 54px 72px 58px;
    position: relative;
  }
  @media (max-width: 1199.98px) {
    .top-page-opening__content {
      padding: 48px 40px 52px;
    }
  }
  @media (max-width: 767.98px) {
    .top-page-opening__content {
      padding: clamp(32px, calc(32px + (100vw - 375px) * 0.1194029851), 56px) clamp(32px, calc(32px + (100vw - 375px) * 0.1592039801), 64px) clamp(40px, calc(40px + (100vw - 375px) * 0.1194029851), 64px);
    }
  }
  @media (max-width: 575.98px) {
    .top-page-opening__content {
      margin-top: clamp(32px, calc(32px + (100vw - 375px) * 0.039800995), 40px);
    }
  }
  .top-page-opening__content::before {
    border: 1px solid #f582ab;
    border-radius: inherit;
    content: "";
    inset: clamp(8px, calc(8px + (100vw - 375px) * 0.0597014925), 20px);
    pointer-events: none;
    position: absolute;
  }
  .top-page-opening__copy {
    text-align: center;
  }
  .top-page-opening__copy > *:first-child {
    margin-top: 0;
  }
  .top-page-opening__copy > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 767.98px) {
    .top-page-opening__copy {
      text-align: left;
    }
  }
  .top-page-opening__copy p {
    margin-block: clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
  }
  @media (max-width: 767.98px) {
    .top-page-opening__copy br {
      display: none;
    }
  }
  .top-page-position {
    color: #fff;
    isolation: isolate;
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
    position: relative;
  }
  @media (max-width: 575.98px) {
    .top-page-position {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-position {
    background: url("assets/images/top-page/top-page-position-bg.webp") center center/cover no-repeat;
  }
  .top-page-position::before {
    background-color: rgba(0, 0, 0, 0.58);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: -1;
  }
  .top-page-position__inner {
    display: grid;
    gap: 20px;
    justify-items: center;
  }
  .top-page-position__lead {
    font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
  }
  .top-page-position__copy {
    font-size: clamp(1.8rem, calc(1.8rem + (100vw - 1440px) * 0.0041666667), 2rem);
    max-inline-size: 700px;
    text-align: center;
  }
  @media (max-width: 767.98px) {
    .top-page-position__copy {
      font-size: clamp(1.6rem, calc(1.6rem + (100vw - 576px) * 0.0104166667), 1.8rem);
    }
  }
  @media (max-width: 575.98px) {
    .top-page-position__copy {
      font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0049751244), 1.6rem);
    }
  }
  @media (max-width: 575.98px) {
    .top-page-position__copy {
      text-align: left;
    }
  }
  .top-page-position__copy p + p {
    margin-top: 4px;
  }
  @media (max-width: 575.98px) {
    .top-page-position__copy p + p {
      margin-top: 12px;
    }
  }
  @media (max-width: 575.98px) {
    .top-page-position__copy br {
      display: none;
    }
  }
  .top-page-position__cta {
    --cta-button-min-inline-size: 312px;
    --cta-button-padding-block: 14px;
    --cta-button-padding-inline-start: 32px;
    --cta-button-padding-inline-end: 56px;
    --cta-button-arrow-inset-inline-end: 24px;
    margin-top: 10px;
    width: 400px;
  }
  @media (max-width: 575.98px) {
    .top-page-position__cta {
      width: 260px;
      --cta-button-min-inline-size: 260px;
    }
  }
  .top-page-recruit-about {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .top-page-recruit-about {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .top-page-recruit-about {
    background-color: #fff;
  }
  .top-page-recruit-about__heading {
    margin-bottom: 112px;
  }
  @media (max-width: 1023.98px) {
    .top-page-recruit-about__heading {
      margin-bottom: clamp(112px, calc(112px + (100vw - 768px) * 0.03125), 120px);
    }
  }
  .top-page-recruit-about__cards {
    display: grid;
    gap: 40px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (max-width: 1023.98px) {
    .top-page-recruit-about__cards {
      gap: clamp(104px, calc(104px + (100vw - 375px) * 0.0995024876), 124px);
      grid-template-columns: repeat(1, minmax(0, 1fr));
      margin-inline: auto;
      max-width: 580px;
    }
  }
  .top-page-recruit-about__card {
    --top-page-recruit-about-blob-base-width: 268px;
    --top-page-recruit-about-blob-base-height: 182px;
    --top-page-recruit-about-image-base-width: 305px;
    --top-page-recruit-about-blob-width: var(--top-page-recruit-about-blob-base-width);
    --top-page-recruit-about-blob-height: var(--top-page-recruit-about-blob-base-height);
    --top-page-recruit-about-image-width: var(--top-page-recruit-about-image-base-width);
    align-items: center;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.18);
    border-radius: 28px;
    box-shadow: 10px 12px 0 rgba(0, 0, 0, 0.12);
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding-block: 150px 34px;
    padding-inline: 28px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, opacity 0.18s ease;
  }
  .top-page-recruit-about__card::after {
    background: url("assets/images/icons/top-page-recruit-about-arrow.svg") center/contain no-repeat;
    block-size: 24px;
    content: "";
    display: block;
    inline-size: 62.959px;
    margin-bottom: 2px;
    margin-inline: auto;
    margin-top: auto;
    transition: transform 0.18s ease;
  }
  @media (max-width: 1439.98px) {
    .top-page-recruit-about__card {
      --top-page-recruit-about-blob-width: calc(var(--top-page-recruit-about-blob-base-width) * 0.8);
      --top-page-recruit-about-blob-height: calc(var(--top-page-recruit-about-blob-base-height) * 0.8);
      --top-page-recruit-about-image-width: calc(var(--top-page-recruit-about-image-base-width) * 0.8);
      padding-top: 104px;
    }
  }
  @media (hover: hover) {
    .top-page-recruit-about__card:hover {
      border-color: rgba(245, 130, 171, 0.34);
      box-shadow: 12px 14px 0 rgba(0, 0, 0, 0.22);
      opacity: 1;
    }
    .top-page-recruit-about__card:hover::after {
      transform: translateX(8px);
    }
  }
  .top-page-recruit-about__card--work {
    --top-page-recruit-about-blob-base-width: 284px;
    --top-page-recruit-about-image-base-width: 332px;
  }
  .top-page-recruit-about__card--appeal {
    --top-page-recruit-about-blob-base-width: 260px;
    --top-page-recruit-about-image-base-width: 251px;
  }
  .top-page-recruit-about__figure {
    align-items: flex-end;
    display: flex;
    inset-block-start: -72px;
    inset-inline: 0;
    justify-content: center;
    position: absolute;
  }
  .top-page-recruit-about__figure::before {
    background-color: rgba(243, 223, 203, 0.38);
    block-size: var(--top-page-recruit-about-blob-height);
    border-radius: 50% 50% 44% 44%/56% 56% 44% 44%;
    content: "";
    inline-size: var(--top-page-recruit-about-blob-width);
    inset-block-start: 18px;
    inset-inline-start: 50%;
    position: absolute;
    transform: translateX(-50%);
    z-index: 0;
  }
  .top-page-recruit-about__figure img {
    block-size: auto;
    display: block;
    inline-size: var(--top-page-recruit-about-image-width);
    position: relative;
    z-index: 1;
  }
  .top-page-recruit-about__card-title {
    color: #f582ab;
    font-size: clamp(2.4rem, calc(2.4rem + (100vw - 1024px) * 0.0096153846), 2.8rem);
    margin-top: 10px;
  }
  @media (max-width: 575.98px) {
    .top-page-recruit-about__card-title {
      font-size: clamp(2.2rem, calc(2.2rem + (100vw - 375px) * 0.0099502488), 2.4rem);
    }
  }
  .top-page-recruit-about__card-copy {
    font-size: clamp(1.6rem, calc(1.6rem + (100vw - 1024px) * 0.0096153846), 2rem);
    line-height: 1.8;
    margin-bottom: 26px;
    margin-top: 12px;
  }
  .about-us-facilities {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .about-us-facilities {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .about-us-facilities__list {
    margin-top: 48px;
  }
  .about-us-company {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .about-us-company {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .about-us-company .info-table__label,
  .about-us-company .info-table__value {
    font-weight: 900;
  }
  .about-us-distribution {
    background-color: #202328;
    background-image: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url("assets/images/about-us-page/33821011_m.webp");
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
    background-size: auto, cover;
    color: #fff;
    overflow: hidden;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .about-us-distribution {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .about-us-distribution__cards {
    display: grid;
    gap: 48px clamp(40px, calc(40px + (100vw - 1200px) * 0.2333333333), 96px);
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (max-width: 1199.98px) {
    .about-us-distribution__cards {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  @media (max-width: 767.98px) {
    .about-us-distribution__cards {
      gap: clamp(24px, calc(24px + (100vw - 576px) * 0.125), 48px);
      grid-template-columns: repeat(1, minmax(0, 1fr));
      max-width: 580px;
    }
  }
  @media (max-width: 575.98px) {
    .about-us-distribution__cards {
      gap: clamp(12px, calc(12px + (100vw - 375px) * 0.0597014925), 24px);
    }
  }
  .distribution-card {
    text-align: center;
  }
  .distribution-card__figure {
    align-items: flex-end;
    display: flex;
    justify-content: center;
    min-height: 244px;
  }
  @media (max-width: 1199.98px) {
    .distribution-card__figure {
      margin-inline: auto;
      min-height: auto;
      width: 290px;
    }
  }
  .distribution-card__image {
    display: block;
    margin-inline: auto;
    width: 100%;
  }
  .distribution-card__title {
    font-size: 2rem;
    font-weight: 800;
    margin-top: 16px;
  }
  @media (max-width: 767.98px) {
    .distribution-card__title {
      margin-top: -10px;
    }
  }
  .distribution-card__description {
    font-size: clamp(1.5rem, calc(1.5rem + (100vw - 375px) * 0.0049751244), 1.6rem);
    margin-top: 12px;
    text-align: left;
  }
  .about-us-efforts {
    background-color: #ecf3fb;
    background-image: url("assets/images/about-us-page/effort-background.webp");
    background-position: center, center bottom;
    background-repeat: no-repeat, no-repeat;
    background-size: auto, cover;
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .about-us-efforts {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .about-us-values {
    padding-block: clamp(56px, calc(56px + (100vw - 576px) * 0.125), 80px);
  }
  @media (max-width: 575.98px) {
    .about-us-values {
      padding-block: clamp(48px, calc(48px + (100vw - 375px) * 0.039800995), 56px);
    }
  }
  .about-us-values__intro {
    margin-top: 32px;
  }
  .about-us-values__content {
    margin-top: clamp(32px, calc(32px + (100vw - 576px) * 0.0833333333), 48px);
  }
  .wp-pagenavi {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    justify-content: center;
    margin-top: clamp(30px, calc(30px + (100vw - 375px) * 0.0995024876), 50px);
  }
  .wp-pagenavi a, .wp-pagenavi span {
    align-items: center;
    background-color: #fff;
    border: 1px solid #bababa;
    display: flex;
    font-size: 1.4rem;
    height: 30px;
    justify-content: center;
    transition: color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s 0s cubic-bezier(0.4, 0, 0.2, 1);
    width: 30px;
  }
  @media (hover: hover) {
    .wp-pagenavi a:hover, .wp-pagenavi span:hover {
      background-color: #f582ab;
      color: #fff;
    }
  }
  .wp-pagenavi a.first, .wp-pagenavi a.last, .wp-pagenavi span.first, .wp-pagenavi span.last {
    height: 30px;
    width: 60px;
  }
  .wp-pagenavi a.current, .wp-pagenavi span.current {
    background-color: #f582ab;
    color: #fff;
  }
}
@layer utils {
  .u-container {
    margin-inline: auto;
    max-width: 1280px;
    padding-inline: 40px;
    width: 100%;
  }
  @media (max-width: 1023.98px) {
    .u-container {
      max-width: 780px;
    }
  }
  @media (max-width: 767.98px) {
    .u-container {
      padding-inline: clamp(20px, calc(20px + (100vw - 375px) * 0.0508905852), 40px);
    }
  }
  .u-cq-inline {
    container-type: inline-size;
  }
  .u-cq-size {
    container-type: size;
  }
  .u-cols--1,
  .u-cols--2,
  .u-cols--3,
  .u-cols--4 {
    display: grid;
    gap: clamp(15px, calc(15px + (100vw - 576px) * 0.0520833333), 25px);
  }
  .u-cols--1 {
    grid-template-columns: repeat(1, 1fr);
  }
  .u-cols--2 {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (max-width: 575.98px) {
    .u-cols--2 {
      grid-template-columns: repeat(1, 1fr);
    }
  }
  .u-cols--3 {
    grid-template-columns: repeat(3, 1fr);
  }
  @media (max-width: 767.98px) {
    .u-cols--3 {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (max-width: 575.98px) {
    .u-cols--3 {
      grid-template-columns: repeat(1, 1fr);
    }
  }
  .u-cols--4 {
    grid-template-columns: repeat(4, 1fr);
  }
  @media (max-width: 767.98px) {
    .u-cols--4 {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (max-width: 575.98px) {
    .u-cols--4 {
      grid-template-columns: repeat(1, 1fr);
    }
  }
  .u-flex-center {
    align-items: center;
    display: flex;
  }
  .u-flex-center-between {
    align-items: center;
    display: flex;
    justify-content: space-between;
  }
  .u-flex-center-center {
    align-items: center;
    display: flex;
    justify-content: center;
  }
  .u-flex-center-top {
    align-items: flex-start;
    display: flex;
    justify-content: center;
  }
  .u-gap--0 {
    gap: 0;
  }
  .u-gap--10 {
    gap: 10px;
  }
  .u-gap--15 {
    gap: 15px;
  }
  .u-bgc--white {
    background-color: #fff;
  }
  .u-bgc--gray-050 {
    background-color: #f8f8f8;
  }
  .u-bgc--pink-brand-stripe-soft {
    background-color: rgba(245, 130, 171, 0.04);
    background-image: repeating-linear-gradient(45deg, transparent 0, transparent 12px, rgba(245, 130, 171, 0.07) 12px, rgba(245, 130, 171, 0.07) 24px);
  }
  .u-break--sm {
    display: none;
  }
  @media (max-width: 575.98px) {
    .u-break--sm {
      display: block;
    }
  }
  .u-break--md {
    display: none;
  }
  @media (max-width: 767.98px) {
    .u-break--md {
      display: block;
    }
  }
  .u-break--lg {
    display: none;
  }
  @media (max-width: 1023.98px) {
    .u-break--lg {
      display: block;
    }
  }
  .u-break--lg-md {
    display: none;
  }
  @media (max-width: 1023.98px) {
    .u-break--lg-md {
      display: block;
    }
  }
  @media (max-width: 767.98px) {
    .u-break--lg-md {
      display: none;
    }
  }
  .u-m--auto {
    margin-inline: auto;
  }
  .u-mw--580 {
    max-width: 580px;
  }
  .u-mw--680 {
    max-width: 680px;
  }
  .u-mw--780 {
    max-width: 780px;
  }
  .u-mw--880 {
    max-width: 880px;
  }
  .u-mw--980 {
    max-width: 980px;
  }
  .u-mw--1080 {
    max-width: 1080px;
  }
  .u-ff--oswald {
    font-family: "Oswald", sans-serif;
  }
  .u-fs--larger {
    font-size: larger;
  }
  .u-fs--smaller {
    font-size: smaller;
  }
  .u-ta--left {
    text-align: left;
  }
  .u-ta--center {
    text-align: center;
  }
  .u-ta--right {
    text-align: right;
  }
  .u-fc--default {
    color: #222;
  }
  .u-fw--thin {
    font-weight: 100;
  }
  .u-fw--extra-light {
    font-weight: 200;
  }
  .u-fw--light {
    font-weight: 300;
  }
  .u-fw--regular {
    font-weight: 400;
  }
  .u-fw--medium {
    font-weight: 500;
  }
  .u-fw--semi-bold {
    font-weight: 600;
  }
  .u-fw--bold {
    font-weight: 700;
  }
  .u-fw--extra-bold {
    font-weight: 800;
  }
  .u-fw--black {
    font-weight: 900;
  }
  .u-d--block {
    display: block;
  }
  .u-d--inline-block {
    display: inline-block;
  }
  .u-fullscreen-container {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
  }
  @media (max-width: 1199.98px) {
    .u-hide--xl {
      display: none;
    }
  }
  @media (max-width: 1023.98px) {
    .u-hide--lg {
      display: none;
    }
  }
  @media (max-width: 767.98px) {
    .u-hide--md {
      display: none;
    }
  }
  @media (max-width: 575.98px) {
    .u-hide--sm {
      display: none;
    }
  }
  .u-show--xl {
    display: none;
  }
  @media (max-width: 1199.98px) {
    .u-show--xl {
      display: block;
    }
  }
  .u-show--lg {
    display: none;
  }
  @media (max-width: 1023.98px) {
    .u-show--lg {
      display: block;
    }
  }
  .u-show--md {
    display: none;
  }
  @media (max-width: 767.98px) {
    .u-show--md {
      display: block;
    }
  }
  .u-show--sm {
    display: none;
  }
  @media (max-width: 575.98px) {
    .u-show--sm {
      display: block;
    }
  }
}
@layer pages {
  :where(.about-us-page) .about-us-values__image--resident-support {
    --media-text-list-media-object-position: 4% 18%;
  }
  :where(.about-us-page) .about-us-values__image--staff-collaboration {
    --media-text-list-media-object-position: 18% 84%;
  }
  :where(.about-us-page) .about-us-values__image--community-activity {
    --media-text-list-media-object-position: 52% 100%;
  }
  :where(.entry-page) .main {
    background-color: #f6efe8;
    background-image: url("assets/images/information-page/information-mosaic-tile.webp");
    background-position: center top;
    background-repeat: repeat;
    background-size: 500px auto;
  }
  :where(.feature-page) .feature-page-showcase__image--work-style {
    --media-panel-list-media-object-position: center;
  }
  :where(.feature-page) .feature-page-showcase__image--benefits {
    --media-panel-list-media-object-position: 38% center;
  }
  :where(.feature-page) .feature-page-showcase__image--teamwork {
    --media-panel-list-media-object-position: center 38%;
  }
  :where(.feature-page) .feature-page-showcase__image--support {
    --media-panel-list-media-object-position: center;
  }
  @layer pages {
    :where(.information-single-page, .news-single-page) .main {
      background-image: url("assets/images/information-page/information-mosaic-tile.webp");
      background-position: center top;
      background-repeat: repeat;
      background-size: 500px auto;
    }
  }
  :where(.recruitment-single-page) {
    background-image: url("assets/images/information-page/information-mosaic-tile.webp");
    background-position: center top;
    background-repeat: repeat;
    background-size: 500px auto;
  }
}

/*# sourceMappingURL=style.css.map*/