@charset "UTF-8";
@layer base, layouts, components, pages, utilities;
@theme {
  --spacing: 8px;
  --breakpoint-sm: 641px;
  --breakpoint-md: 769px;
  --breakpoint-lg: 1025px;
  --breakpoint-xl: 1281px;
  --breakpoint-2xl: 1537px;
}
:root {
  --padding-side: 80px;
  --leading-trim: calc((1em - 1lh) / 2);
  --outer: min(
  	calc((((100vw - var(--scrollbar, 0)) - 1230px) / 2) * -1),
  	calc(var(--padding-side) * -1)
  );
}
@media (width <= 1024px) {
  :root {
    --padding-side: 40px;
  }
}
@media (width <= 768px) {
  :root {
    --padding-side: 12px;
  }
}

@layer base {
  /*
  /* Reset
  /*
  ----------------------------------------------------------------- */
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  html,
  body,
  div,
  span,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  img,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  tt,
  var,
  b,
  u,
  center,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td,
  article,
  aside,
  canvas,
  details,
  embed,
  figure,
  figcaption,
  footer,
  header,
  hgroup,
  menu,
  nav,
  output,
  ruby,
  section,
  summary,
  time,
  mark,
  audio,
  video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
  }
  article,
  aside,
  details,
  figcaption,
  figure,
  footer,
  header,
  menu,
  nav,
  section {
    display: block;
  }
  ol,
  ul {
    list-style: none;
  }
  blockquote,
  q {
    quotes: none;
  }
  blockquote:before,
  blockquote:after,
  q:before,
  q:after {
    content: "";
    content: none;
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  img {
    line-height: 0;
    vertical-align: bottom;
  }
  input,
  button,
  textarea {
    font: inherit;
  }
}
@layer base {
  body {
    font-family: "Noto Sans JP", sans-serif;
    color: #222;
    background-color: #f9f8fb;
    font-size: 1rem;
    -moz-text-size-adjust: none;
    text-size-adjust: none;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-wrap: anywhere;
    word-break: normal;
    line-break: strict;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  a {
    color: #707070;
  }
  @media (any-hover: hover) {
    a:hover {
      text-decoration: none;
    }
  }
  strong {
    font-weight: 700;
  }
}
@layer layouts {
  .l-category-header {
    margin-inline: 40px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: #121d59;
    border-radius: 0 0 6px 6px;
  }
  @media (width <= 768px) {
    .l-category-header {
      position: relative;
      margin: 0;
    }
  }
  .l-category-header__list {
    display: flex;
    justify-content: center;
  }
  .l-category-header__list-item {
    position: relative;
    padding: 10px 16px;
    max-width: 256px;
    width: 100%;
  }
  @media (width <= 1024px) {
    .l-category-header__list-item {
      max-width: 200px;
    }
  }
  @media (width <= 768px) {
    .l-category-header__list-item {
      padding: 4px 16px;
      max-width: none;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
    }
  }
  .l-category-header__list-item:not(:first-child)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    translate: 0 -50%;
    width: 1px;
    height: 24px;
    background-color: #fff;
  }
  @media (width <= 768px) {
    .l-category-header__list-item:not(:first-child)::before {
      height: 16px;
    }
  }
  .l-category-header__list-link {
    display: flex;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;
    transition: background-color 300ms ease;
  }
  @media (width <= 768px) {
    .l-category-header__list-link {
      font-size: 0.75rem;
      padding-top: 8px;
      padding-bottom: 8px;
    }
  }
  @media (any-hover: hover) {
    .l-category-header__list-link:hover {
      background-color: rgba(255, 255, 255, 0.2);
    }
  }
}
@layer layouts {}
@layer layouts {
  .l-site-cv {
    position: relative;
    z-index: 1;
    padding-top: 96px;
  }
  @media (width >= 769px) {
    .l-site-cv {
      padding-inline: 30px;
    }
  }
  @media (width <= 768px) {
    .l-site-cv {
      padding-top: 40px;
    }
  }
  .l-site-cv::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 85px;
    z-index: -1;
    background-color: #f9f8fb;
  }
  .l-site-cv__inner {
    display: flex;
    align-items: flex-end;
    border-radius: 6px;
    background: 50% 50% no-repeat;
    background-size: cover;
    color: #fff;
    box-shadow: 0px 14px 24px 0px rgba(0, 0, 0, 0.25);
    padding: 0 var(--padding-side);
  }
  @media (width >= 769px) {
    .l-site-cv__inner {
      aspect-ratio: 1476/553;
      background-image: url(../images/common/cv_bg_cover.webp);
    }
  }
  @media (width <= 768px) {
    .l-site-cv__inner {
      aspect-ratio: 375/427;
      padding: 16.2666666667vw 24px 0;
      background-image: url(../images/common/cv_bg_cover_sp.webp);
    }
  }
  .l-site-cv__body {
    max-width: 1230px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 6.9010416667vw;
  }
  @media (width <= 768px) {
    .l-site-cv__body {
      padding-bottom: 50.9333333333vw;
    }
  }
  .l-site-cv__title {
    font-weight: 700;
    line-height: 1;
    font-size: max(2.34375vw, 1rem);
  }
  @media (width <= 768px) {
    .l-site-cv__title {
      font-size: 1.25rem;
      text-align: center;
    }
  }
  .l-site-cv__desc {
    margin-top: 22px;
    font-weight: 500;
    line-height: 2;
  }
  @media (width <= 768px) {
    .l-site-cv__desc {
      margin-top: 12px;
      font-size: 0.8125rem;
      line-height: 1.75;
      text-align: center;
    }
  }
  .l-site-cv__button {
    margin-top: 22px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
  }
  @media (width <= 768px) {
    .l-site-cv__button {
      gap: 12px;
      margin: 12px auto 0;
      display: grid;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
    }
  }
  @media (width <= 768px) {
    .l-site-cv__contact {
      display: flex;
      gap: 8px;
      align-items: center;
      justify-content: center;
    }
  }
  .l-site-cv__contact-phone__link {
    display: flex;
    gap: 6px;
    align-items: center;
    color: #fff;
    text-decoration: none;
  }
  .l-site-cv__contact-phone__label {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1;
    font-family: "Poppins", sans-serif;
  }
  .l-site-cv__contact-hour {
    font-size: 0.6875rem;
    line-height: normal;
  }
  @media (width >= 769px) {
    .l-site-cv__contact-hour {
      margin-top: 4px;
    }
  }
}
@layer layouts {
  .l-site-footer {
    background: url("../images/common/footer_bg_noise.webp") 0% 0%/60px 60px, radial-gradient(100% 100% at 0% 0%, #31287a 0%, #110b3e 100%);
    background-blend-mode: darken, normal;
    color: #fff;
    padding: 32px var(--padding-side) 64px;
    margin-top: -1px;
  }
  @media (width <= 768px) {
    .l-site-footer {
      padding-top: 56px;
      padding-bottom: 40px;
    }
  }
  .l-site-footer__inner {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
    display: grid;
  }
  @media (width >= 769px) {
    .l-site-footer__inner {
      grid-template-areas: "header body" "header footer";
      grid-template-columns: auto 1fr;
      grid-template-rows: 1fr auto;
      -moz-column-gap: 24px;
      column-gap: 24px;
    }
  }
  @media (width <= 768px) {
    .l-site-footer__inner {
      grid-template-areas: "body" "header" "footer";
    }
  }
  .l-site-footer__header {
    grid-area: header;
  }
  @media (width <= 768px) {
    .l-site-footer__header {
      margin-top: 24px;
    }
  }
  @media (width <= 768px) {
    .l-site-footer__logo {
      text-align: center;
    }
  }
  .l-site-footer__admin {
    margin-top: 16px;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .l-site-footer__admin {
      text-align: center;
      margin-top: 8px;
    }
  }
  .l-site-footer__corporate {
    margin-top: 8px;
  }
  @media (width <= 768px) {
    .l-site-footer__corporate {
      text-align: center;
    }
  }
  .l-site-footer__corporate-link {
    font-size: 0.75rem;
    color: #fff;
  }
  .l-site-footer__body {
    grid-area: body;
  }
  @media (width >= 769px) {
    .l-site-footer__link {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      gap: 16px 32px;
      padding-top: 16px;
    }
  }
  @media (width <= 768px) {
    .l-site-footer__link {
      gap: 24px;
      display: grid;
    }
  }
  @media (width <= 768px) {
    .l-site-footer__link-item {
      text-align: center;
    }
  }
  .l-site-footer__link-link {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .l-site-footer__link-link:hover {
      opacity: 0.8;
    }
  }
  .l-site-footer__footer {
    grid-area: footer;
  }
  @media (width <= 768px) {
    .l-site-footer__footer {
      margin-top: 32px;
    }
  }
  .l-site-footer__copyright {
    font-size: 0.75rem;
    font-family: "Syncopate", sans-serif;
    line-height: 1;
    letter-spacing: 0.04em;
    text-align: right;
  }
  @media (width <= 768px) {
    .l-site-footer__copyright {
      font-size: 0.5625rem;
      text-align: center;
    }
  }
}
/** Show icons only. */
/** Displayed with square background. */
/** Shown with circular background. */
/** Style settings for the box. */
/** style settings for the background. */
/** style settings related to borders. */
/**
 * Calculate the size of the svg.
 *
 * If $priority-size is specified, it takes precedence.
 * If $priority-size is not specified, the size of the SVG is a fixed percentage of $element-size.
 */
@layer layouts {
  .l-site-header {
    position: relative;
    z-index: 1;
    padding: 40px 40px 0;
  }
  @media (width <= 768px) {
    .l-site-header {
      z-index: 3;
      padding: 0;
    }
  }
  .l-site-header__inner {
    background-color: #fff;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    border-radius: 6px 6px 0 0;
  }
  @media (width <= 1300px) {
    .l-site-header__inner {
      padding: 8px 16px 8px;
    }
  }
  @media (width <= 768px) {
    .l-site-header__inner {
      border-radius: 0;
    }
  }
  @media (width <= 1024px) {
    .l-site-header__header {
      flex-grow: 1;
    }
  }
  .l-site-header__logo-link {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
  }
  @media (width <= 768px) {
    .l-site-header__logo-link {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      display: grid;
      grid-template-areas: "label label" "meguru media";
      gap: 6px;
    }
  }
  @media (width <= 1300px) {
    .l-site-header__logo-meguru {
      width: 140px;
    }
  }
  @media (width <= 768px) {
    .l-site-header__logo-meguru {
      grid-area: meguru;
      width: 141px;
    }
  }
  .l-site-header__logo-label {
    font-size: 0.6875rem;
    font-weight: 700;
  }
  @media (width <= 768px) {
    .l-site-header__logo-label {
      grid-area: label;
      font-size: 0.5625rem;
    }
  }
  .l-site-header__body {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
  }
  @media (width <= 1024px) {
    .l-site-header__body {
      display: none;
    }
  }
  .l-site-header__link {
    display: flex;
    align-items: center;
    gap: 4px 32px;
    margin-right: 40px;
  }
  @media (width <= 1300px) {
    .l-site-header__link {
      flex-direction: column;
      align-items: flex-end;
      margin-right: 8px;
    }
  }
  .l-site-header__link-link {
    font-size: 0.875rem;
    font-weight: 500;
    color: #222;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color 300ms ease;
  }
  @media (width <= 1300px) {
    .l-site-header__link-link {
      font-size: 0.75rem;
    }
  }
  @media (any-hover: hover) {
    .l-site-header__link-link:hover {
      color: #ff6600;
    }
  }
  .l-site-header__link-link::after {
    content: "";
    pointer-events: none;
    display: inline-block;
    width: 12px;
    height: 12px;
    background-color: #121d59;
    mask-image: url("/media/assets/icons/arrow_circle_right_sm.svg");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-image: url("/media/assets/icons/arrow_circle_right_sm.svg");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
  }
  @media (width <= 768px) {
    .l-site-header__search {
      padding-right: 64px;
    }
  }
  .l-site-header__search-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 49px;
    height: 49px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #e8e8e8;
    cursor: pointer;
    transition: background-color 300ms ease;
  }
  @media (width <= 768px) {
    .l-site-header__search-button {
      width: 37px;
      height: 37px;
    }
  }
  @media (any-hover: hover) {
    .l-site-header__search-button:hover {
      background-color: #d9d9d9;
    }
  }
  .l-site-header__contact {
    margin-right: 8px;
  }
  .l-site-header__contact-phone__link {
    display: flex;
    gap: 6px;
    align-items: center;
    color: #222;
    text-decoration: none;
  }
  .l-site-header__contact-phone__label {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1;
    font-family: "Poppins", sans-serif;
  }
  .l-site-header__contact-hour {
    font-size: 0.6875rem;
    line-height: normal;
    color: #9b9b9b;
  }
  @media (width >= 769px) {
    .l-site-header__contact-hour {
      margin-top: 4px;
    }
  }
  @media (width >= 1025px) {
    .l-site-header__menu-button {
      display: none;
    }
  }
  @media (width <= 768px) {
    .l-site-header__menu-button {
      position: absolute;
      z-index: 2;
      right: 16px;
      top: 8px;
      transition: transform 300ms ease;
    }
    body.is-scrolled .l-site-header__menu-button {
      position: fixed;
      top: -50px;
      transform: translateY(calc(100% + 8px));
    }
  }
}
@layer layouts {
  .l-site-menu-button {
    position: relative;
    width: 50px;
    height: 50px;
    border: none;
    border-radius: 50%;
    background-color: #fff;
    cursor: pointer;
  }
  body.is-scrolled .l-site-menu-button:not(.is-open) {
    filter: drop-shadow(0px 4px 16px rgba(0, 0, 0, 0.25));
  }
  .l-site-menu-button.is-open {
    background: none;
  }
  .l-site-menu-button.is-open .l-site-menu-button__top {
    transform: translate(-50%, -1px) rotate(45deg);
  }
  .l-site-menu-button.is-open .l-site-menu-button__middle {
    opacity: 0;
  }
  .l-site-menu-button.is-open .l-site-menu-button__bottom {
    transform: translate(-50%, -1px) rotate(-45deg);
  }
  .l-site-menu-button__top, .l-site-menu-button__middle, .l-site-menu-button__bottom {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 33px;
    height: 3px;
    background-color: #ff6600;
    transition: opacity 300ms ease, transform 300ms ease, filter 300ms ease;
  }
  .l-site-menu-button__top {
    transform: translate(-50%, 9px);
  }
  .l-site-menu-button__middle {
    transform: translate(-50%, -1px);
  }
  .l-site-menu-button__bottom {
    transform: translate(-50%, -11px);
  }
}
@layer layouts {
  @media (width >= 1025px) {
    .l-site-menu {
      display: none;
    }
  }
  @media (width <= 1024px) {
    .l-site-menu {
      position: fixed;
      left: 0;
      top: 0;
      z-index: 2;
      width: 100%;
      height: 100dvh;
      overflow: auto;
      transform: translateX(-100%);
      opacity: 0;
      padding: 96px 0 0;
      background: rgba(249, 248, 251, 0.9);
      -webkit-backdrop-filter: blur(7px);
      backdrop-filter: blur(7px);
      -ms-scroll-chaining: none;
      overscroll-behavior: contain;
      transition: opacity 300ms ease, transform 300ms ease 300ms;
    }
  }
  @media (width <= 1024px) {
    .l-site-menu.is-open {
      transform: translateX(0);
      opacity: 1;
      transition: opacity 300ms ease;
    }
  }
  .l-site-menu__body {
    padding: 0 48px 56px;
  }
  .l-site-menu-category__label {
    font-size: 1.25rem;
    line-height: 1;
    font-family: "Syncopate", sans-serif;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .l-site-menu-category__title {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 4px;
  }
  .l-site-menu-category__list {
    margin-top: 16px;
    display: grid;
    gap: 8px;
  }
  .l-site-menu-category__list-link {
    display: block;
    position: relative;
    text-decoration: none;
    color: #222;
    font-weight: 500;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(34, 34, 34, 0.3);
  }
  .l-site-menu-category__list-link::after {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "";
    pointer-events: none;
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #121d59;
    mask-image: url("/media/assets/icons/arrow_circle_right_sm.svg");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-image: url("/media/assets/icons/arrow_circle_right_sm.svg");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
  }
  .l-site-menu__list {
    margin-top: 40px;
    display: grid;
    gap: 24px;
  }
  .l-site-menu__list-link {
    text-decoration: none;
    font-weight: 500;
    line-height: 1;
    color: #222;
  }
  .l-site-menu-search {
    background: url("../images/common/footer_bg_noise.webp") 0% 0%/60px 60px, radial-gradient(100% 100% at 0% 0%, #31287a 0%, #110b3e 100%);
    background-blend-mode: darken, normal;
    color: #fff;
    padding: 32px 48px;
  }
  .l-site-menu-search__label {
    font-family: "Syncopate", sans-serif;
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .l-site-menu-search__title {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;
    margin-top: 8px;
  }
  .l-site-menu-search__input {
    margin-top: 32px;
  }
}
@layer layouts {
  .l-site-summary {
    position: relative;
    padding: 181px var(--padding-side) 96px;
    margin-top: -85px;
  }
  @media (width <= 768px) {
    .l-site-summary {
      padding: 56px 24px 64px;
      padding-inline: 24px;
      margin-top: -4px;
    }
  }
  .l-site-summary__inner {
    position: relative;
    z-index: 1;
  }
  .l-site-summary__body {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.63) 100%);
    border-radius: 6px;
    box-shadow: 12px 12px 24px 0px rgba(0, 0, 0, 0.25);
    max-width: 980px;
    margin-inline: auto;
    padding: 56px var(--padding-side) 56px;
  }
  @media (width <= 768px) {
    .l-site-summary__body {
      padding: 24px 16px 32px;
    }
  }
  .l-site-summary__title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
  }
  @media (width <= 768px) {
    .l-site-summary__title {
      gap: 6px;
    }
  }
  .l-site-summary__title-logo {
    width: 371px;
  }
  @media (width <= 768px) {
    .l-site-summary__title-logo {
      width: 201px;
    }
  }
  .l-site-summary__desc {
    margin-top: 29px;
    text-align: center;
    font-weight: 500;
    line-height: 2;
  }
  @media (width <= 768px) {
    .l-site-summary__desc {
      text-align: left;
      font-size: 0.8125rem;
      line-height: 1.75;
      margin-top: 16px;
    }
  }
  .l-site-summary__button {
    margin-top: 24px;
  }
  .l-site-summary__marquee {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .l-site-summary__cover {
    position: absolute;
    inset: 0;
  }
  .l-site-summary__cover-video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
}
@layer components {
  .c-banner-list {
    margin-top: 40px;
    display: grid;
    gap: 24px;
  }
  .c-banner-list__item {
    text-align: center;
  }
  .c-banner-list__link {
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .c-banner-list__link:hover {
      opacity: 0.8;
    }
  }
}
@layer components {
  .c-blogcard {
    --space: 0;
    --scale: 1;
    --color: #222;
    margin-top: var(--space);
  }
  .c-blogcard:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-blogcard:not(:first-child) {
      --space: 24px;
    }
  }
  .c-blogcard__link {
    position: relative;
    border: 1px solid #ff6600;
    border-radius: 6px;
    background-color: #fff;
    padding: 30px 30px 40px;
    display: grid;
    grid-template-columns: min(280px, 40%) 1fr;
    align-items: start;
    gap: 24px;
    text-decoration: none;
    color: #222;
  }
  @media (any-hover: hover) {
    .c-blogcard__link:hover {
      --scale: 1.04;
      --color: #ff6600;
    }
  }
  @media (width <= 768px) {
    .c-blogcard__link {
      padding: 16px 16px 40px;
      grid-template-columns: 100px 1fr;
      gap: 10px;
    }
  }
  .c-blogcard__image {
    overflow: hidden;
    border-radius: 4px;
  }
  .c-blogcard__image img {
    scale: var(--scale);
    transition: scale 300ms ease;
  }
  .c-blogcard__title {
    font-weight: 500;
    line-height: 1.4;
    border-bottom: 1px solid rgba(34, 34, 34, 0.3);
    padding-bottom: 16px;
    margin-bottom: 16px;
    font-size: 1.125rem;
    color: var(--color);
    transition: color 300ms ease;
  }
  @media (width <= 768px) {
    .c-blogcard__title {
      font-size: 1rem;
      padding-bottom: 8px;
      margin-bottom: 8px;
    }
  }
  .c-blogcard__desc {
    font-size: 0.75rem;
    line-height: 1.75;
    color: #707070;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  @media (width <= 768px) {
    .c-blogcard__desc {
      font-size: 0.625rem;
    }
  }
  .c-blogcard__url {
    font-size: 0.75rem;
    line-height: 1.75;
    font-weight: 500;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .c-blogcard__url {
      font-size: 0.625rem;
      margin-top: 8px;
    }
  }
  .c-blogcard__more {
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #ff6600;
    border-radius: 6px 0 6px 0;
    color: #fff;
    padding: 6px 10px;
    display: flex;
    align-items: center;
  }
  @media (width <= 768px) {
    .c-blogcard__more {
      padding-top: 3px;
      padding-bottom: 3px;
    }
  }
  .c-blogcard__more-label {
    min-width: 123px;
    font-size: 0.875rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-blogcard__more-label {
      font-size: 0.75rem;
      min-width: 80px;
    }
  }
}
@layer components {
  .c-breadcrumb__list {
    display: flex;
    overflow: auto;
  }
  .c-breadcrumb__list-item {
    position: relative;
    flex-shrink: 0;
    display: flex;
    align-items: center;
  }
  .c-breadcrumb__list-item:not(:last-child)::after {
    content: "";
    display: block;
    width: 18px;
    height: 1px;
    background-color: #fff;
    margin-inline: 10px;
  }
  .c-breadcrumb__list-item:last-child .c-breadcrumb__list-link {
    opacity: 0.5;
    pointer-events: none;
  }
  .c-breadcrumb__list-link {
    color: #fff;
    text-decoration: none;
    font-size: 0.875rem;
  }
  @media (any-hover: hover) {
    .c-breadcrumb__list-link:hover {
      text-decoration: underline;
    }
  }
}
@layer components {
  .c-button {
    --background-color: #121d59;
    --border-color: #121d59;
    --color: #fff;
    --hover-background-color: #fff;
    --hover-color: #121d59;
    --hover-border-color: #121d59;
  }
  .c-button.-white {
    --background-color: #fff;
    --color: #121d59;
    --border-color: #fff;
    --hover-background-color: #121d59;
    --hover-color: #fff;
  }
  .c-button.-orange {
    --background-color: #ff6600;
    --border-color: #ff6600;
    --color: #fff;
    --hover-background-color: #fff;
    --hover-border-color: #ff6600;
    --hover-color: #ff6600;
  }
  .c-button.-liquid .c-button__link {
    width: 100%;
    min-width: 0;
  }
  @media (width <= 768px) {
    .c-button.-md-liquid .c-button__link {
      width: 100%;
      min-width: 0;
    }
  }
  .c-button.-mv .c-button__link {
    min-height: 78px;
    min-width: 290px;
    padding-inline: 20px;
    font-size: 1rem;
  }
  @media (width <= 768px) {
    .c-button.-mv .c-button__link {
      font-size: 0.875rem;
      min-height: 50px;
    }
  }
  .c-button.-tite .c-button__link {
    min-width: 164px;
  }
  .c-button.-c .c-button__link {
    margin-inline: auto;
  }
  .c-button__link {
    background-color: var(--background-color);
    color: var(--color);
    border-radius: 6px;
    min-height: 49px;
    min-width: 227px;
    font-size: 0.875rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-inline: 15px;
    text-decoration: none;
    display: flex;
    gap: 8px;
    align-items: center;
    text-align: left;
    cursor: pointer;
    font-weight: 500;
    border: 1px solid var(--border-color);
    transition: color 300ms ease, background-color 300ms ease, border-color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-button__link:hover {
      background-color: var(--hover-background-color);
      color: var(--hover-color);
      border-color: var(--hover-border-color);
    }
  }
  .c-button__link.is-processing {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
  }
  .c-button__label {
    flex-grow: 1;
  }
}
@layer components {
  .c-card-photo-row {
    --space: 40px;
    margin-top: var(--space);
    display: grid;
    gap: 40px;
    grid-template-columns: repeat(2, 1fr);
  }
  @media (width <= 768px) {
    .c-card-photo-row {
      --space: 24px;
      gap: 24px;
    }
  }
  .c-card-photo-row.-left {
    grid-template-areas: "header body";
  }
  .c-card-photo-row.-right {
    grid-template-areas: "body header";
  }
  .c-card-photo-row__header {
    grid-area: header;
  }
  .c-card-photo-row__body {
    grid-area: body;
  }
  .c-card-photo-row__desc {
    line-height: 2;
  }
  @media (width <= 768px) {
    .c-card-photo-row__desc {
      font-size: 0.875rem;
    }
  }
  .c-card-photo-row__desc:not(:first-child) {
    margin-top: 24px;
  }
}
@layer components {
  .c-card-photo {
    --space: 0;
    margin-top: var(--space);
    display: grid;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-card-photo {
      gap: 16px;
    }
  }
  .c-card-photo__desc {
    line-height: 2;
  }
  @media (width <= 768px) {
    .c-card-photo__desc {
      font-size: 0.875rem;
    }
  }
  .c-card-photo__desc:not(:first-child) {
    margin-top: 24px;
  }
}
@layer components {
  .c-card-row {
    --scale: 1;
    --color: #222;
    --background-rank: #fff;
    --color-rank: #222;
  }
  .c-card-row:nth-child(1) {
    --background-rank: #c4b48f;
    --color-rank: #fff;
  }
  .c-card-row:nth-child(2) {
    --background-rank: #9b9b9b;
    --color-rank: #fff;
  }
  .c-card-row:nth-child(3) {
    --background-rank: #9d671c;
    --color-rank: #fff;
  }
  .c-card-row__link {
    position: relative;
    display: grid;
    grid-template-columns: 322px 1fr;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    background-color: #fff;
    color: #222;
    text-decoration: none;
    height: 100%;
  }
  @container (width <= 768px) {
    .c-card-row__link {
      grid-template-columns: 170px 1fr;
    }
  }
  @media (any-hover: hover) {
    .c-card-row__link:hover {
      --scale: 1.04;
      --color: #ff6600;
    }
  }
  .c-card-row__new {
    position: absolute;
    left: 12px;
    top: 12px;
    background-color: #ff6600;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: #fff;
    font-family: "Syncopate", sans-serif;
    font-size: 0.75rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    width: 95px;
    padding: 10px 0 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
  }
  @container (width <= 768px) {
    .c-card-row__new {
      width: 64px;
      left: 8px;
      top: 8px;
      font-size: 0.625rem;
      padding: 6px 0 4px;
    }
  }
  .c-card-row__rank {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--background-rank);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: var(--color-rank);
    font-family: "Syncopate", sans-serif;
    font-size: 0.8125rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px 0 6px 0;
  }
  .c-card-row__header {
    overflow: hidden;
  }
  .c-card-row__thumb {
    height: 100%;
  }
  .c-card-row__thumb img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    scale: var(--scale);
    transition: scale 300ms;
    height: 100%;
    aspect-ratio: "690 / 500";
  }
  .c-card-row__body {
    padding: 30px 24px;
    display: flex;
    flex-direction: column;
  }
  @container (width <= 768px) {
    .c-card-row__body {
      padding: 16px;
    }
  }
  .c-card-row__category {
    background-color: #d9d9d9;
    padding: 6px 14px;
    font-size: 0.6875rem;
    font-weight: 500;
    border-radius: 6px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1;
  }
  @container (width <= 768px) {
    .c-card-row__category {
      font-size: 0.625rem;
    }
  }
  .c-card-row__title {
    color: var(--color);
    font-size: 1.125rem;
    margin-top: 16px;
    font-weight: 500;
    line-height: 1.75;
    transition: color 300ms ease;
  }
  @container (width <= 768px) {
    .c-card-row__title {
      margin-top: 10px;
      font-size: 0.75rem;
    }
  }
  .c-card-row__date {
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #707070;
    font-size: 0.75rem;
    margin-top: 16px;
  }
  @container (width <= 768px) {
    .c-card-row__date {
      font-size: 0.625rem;
      margin-top: 10px;
    }
  }
}
@layer components {
  .c-card {
    --scale: 1;
    --color: #222;
    --background-rank: #fff;
    --color-rank: #222;
  }
  .c-card:nth-child(1), .c-card.-rank-1 {
    --background-rank: #c4b48f;
    --color-rank: #fff;
  }
  .c-card:nth-child(2), .c-card.-rank-2 {
    --background-rank: #9b9b9b;
    --color-rank: #fff;
  }
  .c-card:nth-child(3), .c-card.-rank-3 {
    --background-rank: #9d671c;
    --color-rank: #fff;
  }
  .c-card__link {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    background-color: #fff;
    color: #222;
    text-decoration: none;
    height: 100%;
  }
  @media (any-hover: hover) {
    .c-card__link:hover {
      --scale: 1.04;
      --color: #ff6600;
    }
  }
  @media (width <= 768px) {
    .c-card.-md-row .c-card__link {
      grid-template-rows: auto;
      grid-template-columns: 170px 1fr;
    }
  }
  .c-card.-cover .c-card__link {
    grid-template-rows: auto;
  }
  .c-card__new {
    position: absolute;
    left: 12px;
    top: 12px;
    background-color: #ff6600;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: #fff;
    font-family: "Syncopate", sans-serif;
    font-size: 0.75rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    width: 95px;
    padding: 10px 0 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
  }
  @media (width <= 768px) {
    .c-card__new {
      width: 64px;
      left: 8px;
      top: 8px;
      font-size: 0.625rem;
      padding: 6px 0 4px;
    }
  }
  @media (width <= 768px) {
    .c-card.-lg .c-card__new {
      width: 95px;
      left: 12px;
      top: 12px;
      font-size: 0.75rem;
      padding: 10px 0 8px;
    }
  }
  .c-card__rank {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--background-rank);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: var(--color-rank);
    font-family: "Syncopate", sans-serif;
    font-size: 0.8125rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px 0 6px 0;
  }
  .c-card.-cover .c-card__rank {
    width: 63px;
    height: 63px;
    font-size: 1.5rem;
  }
  @media (width <= 768px) {
    .c-card.-cover .c-card__rank {
      width: 42px;
      height: 42px;
      font-size: 1.125rem;
    }
  }
  .c-card__header {
    overflow: hidden;
  }
  @media (width <= 768px) {
    .c-card.-md-row .c-card__thumb {
      height: 100%;
    }
  }
  .c-card.-md-row .c-card__thumb img {
    height: 100%;
  }
  .c-card.-cover .c-card__thumb img {
    aspect-ratio: "690 / 500";
  }
  .c-card__thumb img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    scale: var(--scale);
    transition: scale 300ms;
    aspect-ratio: "690 / 500";
  }
  .c-card__body {
    padding: 16px;
    display: flex;
    flex-direction: column;
  }
  @media (width <= 768px) {
    .c-card__body {
      padding: 12px;
    }
  }
  .c-card.-lg .c-card__body {
    padding: 24px;
  }
  @media (width <= 768px) {
    .c-card.-lg .c-card__body {
      padding: 20px;
    }
  }
  .c-card.-cover .c-card__body {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0 48px 40px;
  }
  @media (width <= 768px) {
    .c-card.-cover .c-card__body {
      padding: 0 12px 12px;
    }
  }
  .c-card.-cover .c-card__body::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    background: linear-gradient(to top, #222, transparent);
    mix-blend-mode: multiply;
  }
  .c-card__category {
    background-color: #d9d9d9;
    padding: 6px 14px;
    font-size: 0.6875rem;
    font-weight: 500;
    border-radius: 6px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1;
    margin-bottom: 16px;
  }
  @media (width <= 768px) {
    .c-card__category {
      margin-bottom: 8px;
      font-size: 0.5625rem;
      padding: 4px 10px;
    }
  }
  @media (width <= 768px) {
    .c-card.-lg .c-card__category {
      font-size: 0.6875rem;
    }
  }
  .c-card.-cover .c-card__category {
    margin-bottom: 12px;
  }
  @media (width <= 768px) {
    .c-card.-cover .c-card__category {
      margin-bottom: 6px;
    }
  }
  .c-card__title {
    flex-grow: 1;
    color: var(--color);
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.75;
    transition: color 300ms ease;
  }
  @media (width <= 768px) {
    .c-card__title {
      font-size: 0.75rem;
    }
  }
  .c-card.-lg .c-card__title {
    font-size: 1.125rem;
  }
  @media (width <= 768px) {
    .c-card.-lg .c-card__title {
      font-size: 0.875rem;
    }
  }
  .c-card.-cover .c-card__title {
    position: relative;
    z-index: 1;
    font-size: 1.5rem;
    --color: #fff;
  }
  @media (width <= 768px) {
    .c-card.-cover .c-card__title {
      font-size: 1rem;
    }
  }
  .c-card__date {
    font-size: 0.75rem;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #707070;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .c-card__date {
      margin-top: 8px;
      font-size: 0.625rem;
    }
  }
  .c-card.-cover .c-card__date {
    position: relative;
    z-index: 1;
    color: #fff;
    margin-top: 12px;
  }
  @media (width <= 768px) {
    .c-card.-cover .c-card__date {
      font-size: 0.75rem;
      margin-top: 6px;
    }
  }
}
@layer components {
  .c-carousel-horizontal-3__slide > * {
    height: 100%;
  }
  .c-carousel-horizontal-3__navigation {
    position: absolute;
    right: 0;
    top: -80px;
    display: flex;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-carousel-horizontal-3__navigation {
      display: none;
    }
  }
  .c-carousel-horizontal-3__prev, .c-carousel-horizontal-3__next {
    padding: 0;
    background: none;
    border: none;
    margin: 0;
    color: #121d59;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .c-carousel-horizontal-3__prev:hover, .c-carousel-horizontal-3__next:hover {
      opacity: 0.7;
    }
  }
}
.c-carousel-horizontal-3.swiper {
  overflow: visible;
}
@media (width <= 768px) {
  .c-carousel-horizontal-3.swiper {
    overflow: hidden;
  }
}
@media (width <= 768px) {
  .c-carousel-horizontal-3__wrapper {
    display: grid;
    gap: 32px;
  }
}
.c-carousel-horizontal-3__slide.swiper-slide {
  width: 398px;
  height: auto;
}
@media (width <= 768px) {
  .c-carousel-horizontal-3__slide.swiper-slide {
    width: auto;
  }
  .c-carousel-horizontal-3__slide.swiper-slide:nth-child(n+4) {
    display: none;
  }
}

@layer components {
  .c-carousel-horizontal__slide > * {
    height: 100%;
  }
  .c-carousel-horizontal__navigation {
    position: absolute;
    right: 0;
    top: -80px;
    display: flex;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-carousel-horizontal__navigation {
      position: static;
      gap: 32px;
      margin-top: 24px;
      justify-content: center;
    }
  }
  .c-carousel-horizontal__prev, .c-carousel-horizontal__next {
    padding: 0;
    background: none;
    border: none;
    margin: 0;
    color: #121d59;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .c-carousel-horizontal__prev:hover, .c-carousel-horizontal__next:hover {
      opacity: 0.7;
    }
  }
}
.c-carousel-horizontal.swiper {
  overflow: visible;
}
.c-carousel-horizontal__slide.swiper-slide {
  width: 226px;
  height: auto;
}
@media (width <= 768px) {
  .c-carousel-horizontal__slide.swiper-slide {
    width: auto;
  }
}

@layer components {
  .c-editor p:not([class]) {
    line-height: 2;
  }
  @media (width <= 768px) {
    .c-editor p:not([class]) {
      font-size: 0.875rem;
    }
  }
  .c-editor p:not([class]):not(:first-child) {
    margin-top: 24px;
  }
  .c-editor h2.wp-block-heading {
    --space: 0;
    margin-top: var(--space);
    border-left: 8px solid #ff6600;
    padding-left: 12px;
    line-height: 1.75;
    font-weight: 500;
    font-size: 1.375rem;
  }
  @media (width <= 768px) {
    .c-editor h2.wp-block-heading {
      border-left-width: 6px;
      font-size: 1.25rem;
    }
  }
  .c-editor h2.wp-block-heading:not(:first-child) {
    --space: 48px;
  }
  .c-editor h2.wp-block-heading + h3.wp-block-heading, .c-editor h2.wp-block-heading + h4.wp-block-heading {
    --space: 24px;
  }
  .c-editor h3.wp-block-heading {
    --space: 0;
    margin-top: var(--space);
    border-bottom: 1px solid #ff6600;
    padding-bottom: 12px;
    font-size: 1.125rem;
    line-height: 1.75;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-editor h3.wp-block-heading {
      font-size: 1rem;
      padding-bottom: 8px;
    }
  }
  .c-editor h3.wp-block-heading + h4.wp-block-heading {
    --space: 24px;
  }
  .c-editor h3.wp-block-heading:not(:first-child) {
    --space: 48px;
  }
  .c-editor h4.wp-block-heading {
    --space: 0;
    position: relative;
    margin-top: var(--space);
    border-bottom: 1px solid #ffdfc9;
    padding-bottom: 12px;
    font-size: 1rem;
    line-height: 1.75;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-editor h4.wp-block-heading {
      font-size: 0.875rem;
      padding-bottom: 8px;
    }
  }
  .c-editor h4.wp-block-heading:not(:first-child) {
    --space: 48px;
  }
  .c-editor h4.wp-block-heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 44px;
    height: 1px;
    background-color: #ff6600;
  }
  .c-editor .wp-block-image {
    --space: 0;
    margin-top: var(--space);
  }
  .c-editor .wp-block-image:not(:first-child) {
    --space: 24px;
  }
  .c-editor ul.wp-block-list,
  .c-editor ul:not([class]) {
    --space: 0;
    margin-top: var(--space);
    list-style: disc;
    padding-left: 24px;
  }
  @media (width <= 768px) {
    .c-editor ul.wp-block-list,
    .c-editor ul:not([class]) {
      font-size: 0.875rem;
    }
  }
  .c-editor ul.wp-block-list:not(:first-child),
  .c-editor ul:not([class]):not(:first-child) {
    --space: 24px;
  }
  .c-editor ol.wp-block-list,
  .c-editor ol:not([class]) {
    --space: 0;
    margin-top: var(--space);
    list-style: decimal;
    padding-left: 24px;
  }
  @media (width <= 768px) {
    .c-editor ol.wp-block-list,
    .c-editor ol:not([class]) {
      font-size: 0.875rem;
    }
  }
  .c-editor ol.wp-block-list:not(:first-child),
  .c-editor ol:not([class]):not(:first-child) {
    --space: 24px;
  }
  .c-editor .wp-block-quote {
    --space: 0;
    position: relative;
    margin-top: var(--space);
    padding: 32px 48px;
    background-color: #fff;
    border-radius: 6px;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-quote {
      padding: 24px 16px;
    }
  }
  .c-editor .wp-block-quote:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-quote:not(:first-child) {
      --space: 24px;
    }
  }
  .c-editor .wp-block-quote::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 20px;
    width: 33px;
    height: 29px;
    background-image: url("data:image/svg+xml,%3Csvg width='33' height='29' viewBox='0 0 33 29' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.1' d='M11.4133 0L13.907 4.128C8.6319 7.68 5.85051 11.328 5.7546 17.472C6.04233 17.376 6.33006 17.376 6.7137 17.376C9.68691 17.376 12.3724 19.296 12.3724 22.752C12.3724 26.496 10.0706 28.608 6.7137 28.608C2.49366 28.608 0 25.152 0 19.008C0 10.464 4.02822 4.32 11.4133 0ZM30.2117 0L32.7053 4.128C27.5262 7.68 24.7448 11.328 24.6489 17.472C24.9366 17.376 25.2243 17.376 25.5121 17.376C28.4853 17.376 31.2667 19.296 31.2667 22.752C31.2667 26.496 28.8689 28.608 25.5121 28.608C21.292 28.608 18.8943 25.152 18.8943 19.008C18.8943 10.464 22.9225 4.32 30.2117 0Z' fill='%23222222'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-quote::before {
      left: 10px;
      top: 10px;
    }
  }
  .c-editor .wp-block-quote::after {
    content: "";
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 33px;
    height: 29px;
    background-image: url("data:image/svg+xml,%3Csvg width='33' height='29' viewBox='0 0 33 29' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.1' d='M21.5867 29L19.093 24.872C24.3681 21.32 27.1495 17.672 27.2454 11.528C26.9577 11.624 26.6699 11.624 26.2863 11.624C23.3131 11.624 20.6276 9.704 20.6276 6.24799C20.6276 2.504 22.9295 0.391996 26.2863 0.391996C30.5063 0.391996 33 3.848 33 9.992C33 18.536 28.9718 24.68 21.5867 29ZM2.78834 29L0.294686 24.872C5.47383 21.32 8.25522 17.672 8.35113 11.528C8.0634 11.624 7.77567 11.624 7.48793 11.624C4.51472 11.624 1.73334 9.70399 1.73334 6.24799C1.73334 2.504 4.13109 0.391994 7.48793 0.391994C11.708 0.391995 14.1057 3.848 14.1057 9.992C14.1057 18.536 10.0775 24.68 2.78834 29Z' fill='%23222222'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-quote::after {
      right: 10px;
      bottom: 10px;
    }
  }
  .c-editor .wp-block-quote p {
    font-weight: 500;
    font-size: 1.125rem;
    line-height: 2;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-quote p {
      font-size: 1rem;
    }
  }
  .c-editor .wp-block-quote cite {
    margin-top: 16px;
    display: block;
    color: #707070;
  }
  .c-editor .wp-block-table {
    --space: 0;
    margin-top: var(--space);
  }
  .c-editor .wp-block-table table {
    width: 100%;
    border-left: 1px solid #d9d9d9;
    border-top: 1px solid #d9d9d9;
    background-color: #fff;
  }
  .c-editor .wp-block-table th,
  .c-editor .wp-block-table td {
    padding: 16px;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-table th,
    .c-editor .wp-block-table td {
      padding: 8px;
      font-size: 0.875rem;
    }
  }
  .c-editor .wp-block-table th {
    border-right: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    background-color: #e9edee;
  }
  .c-editor .wp-block-table td {
    border-right: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
  }
  .c-editor .wp-block-table:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-editor .wp-block-table:not(:first-child) {
      --space: 24px;
    }
  }
  .c-editor .alignleft {
    float: left;
    margin: 0 1em 1em 0;
  }
  .c-editor .alignright {
    float: right;
    margin: 0 0 1em 1em;
  }
  .c-editor .aligncenter {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    clear: both;
  }
  .c-editor .alignnone {
    margin: 0;
  }
}
@layer components {
  .c-entry-pagination {
    position: relative;
    margin-top: 60px;
    display: grid;
  }
  @media (width <= 768px) {
    .c-entry-pagination {
      margin-top: 40px;
    }
  }
  .c-entry-pagination__prev {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .c-entry-pagination__archive {
    justify-self: center;
    padding: 0 100px;
    width: 427px;
  }
  @media (width <= 768px) {
    .c-entry-pagination__archive {
      width: 331px;
    }
  }
  .c-entry-pagination__next {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}
@layer components {
  .c-entry-profile {
    --space: 0;
    margin-top: var(--space);
    background-color: #fff;
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    border-radius: 6px;
    padding: 24px;
    display: grid;
    gap: 24px;
    grid-template-columns: auto 1fr;
  }
  @media (width <= 768px) {
    .c-entry-profile {
      grid-template-columns: auto 1fr;
      grid-template-rows: auto auto auto auto;
      grid-template-areas: "header header" "photo name" "photo position" "desc desc";
      gap: 10px;
    }
  }
  .c-entry-profile:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-entry-profile__header {
      display: contents;
    }
  }
  .c-entry-profile__header img {
    width: 124px;
    border-radius: 50%;
  }
  @media (width <= 768px) {
    .c-entry-profile__header img {
      grid-area: photo;
      width: 84px;
    }
  }
  @media (width <= 768px) {
    .c-entry-profile__body {
      display: contents;
    }
  }
  .c-entry-profile__title {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
  }
  @media (width <= 768px) {
    .c-entry-profile__title {
      grid-area: header;
    }
  }
  .c-entry-profile__title-label {
    font-size: 1.75rem;
    line-height: 1;
    letter-spacing: 0.04em;
    font-family: "Syncopate", sans-serif;
    text-transform: uppercase;
  }
  .c-entry-profile__title-lead {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1;
  }
  .c-entry-profile__name {
    margin-top: 16px;
    font-size: 1.25rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-entry-profile__name {
      grid-area: name;
      margin-top: 0;
      align-self: end;
    }
  }
  .c-entry-profile__position {
    color: #707070;
    margin-top: 8px;
    font-size: 0.75rem;
  }
  @media (width <= 768px) {
    .c-entry-profile__position {
      grid-area: position;
      margin-top: 0;
      align-self: start;
    }
  }
  .c-entry-profile__desc {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .c-entry-profile__desc {
      font-size: 0.75rem;
      grid-area: desc;
      margin-top: 0;
    }
  }
}
@layer components {
  .c-entry-quote {
    --space: 0;
    margin-top: var(--space);
  }
  .c-entry-quote:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-entry-quote:not(:first-child) {
      --space: 24px;
    }
  }
  .c-entry-quote__body {
    margin-top: 24px;
  }
  @media (width <= 768px) {
    .c-entry-quote__body {
      margin-top: 12px;
    }
  }
}
@layer components {
  .c-entry-summary {
    --space: 0;
    margin-top: var(--space);
    background-color: #e9edee;
    border-radius: 6px;
    padding: 30px;
  }
  @media (width <= 768px) {
    .c-entry-summary {
      padding: 24px 16px;
    }
  }
  .c-entry-summary:not(:first-child) {
    --space: 40px;
  }
  .c-entry-summary__title {
    font-size: 1.5rem;
    line-height: 1;
    letter-spacing: 0.04em;
  }
  .c-entry-summary__desc {
    margin-top: 24px;
    line-height: 2;
  }
  @media (width <= 768px) {
    .c-entry-summary__desc {
      margin-top: 16px;
      font-size: 0.875rem;
    }
  }
}
@layer components {
  .c-entry {
    margin-top: 40px;
  }
  .c-entry__header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  @media (width <= 768px) {
    .c-entry__header-top {
      display: block;
    }
  }
  .c-entry__header-bottom {
    display: grid;
    align-items: start;
    grid-template-columns: 1fr auto;
    gap: 40px;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .c-entry__header-bottom {
      display: block;
      margin-top: 12px;
    }
  }
  .c-entry__category {
    display: flex;
    flex-wrap: wrap;
  }
  .c-entry__category-link {
    display: flex;
    color: #222;
    font-size: 0.875rem;
    text-decoration: none;
    font-weight: 500;
    line-height: 1;
    border-radius: 4px;
    background-color: #d9d9d9;
    padding: 6px 14px;
    transition: background-color 300ms ease;
  }
  @media (width <= 768px) {
    .c-entry__category-link {
      font-size: 0.625rem;
    }
  }
  @media (any-hover: hover) {
    .c-entry__category-link:hover {
      background-color: #fff;
    }
  }
  .c-entry__date {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 40px;
    color: #707070;
  }
  @media (width <= 768px) {
    .c-entry__date {
      margin-top: 12px;
      gap: 20px;
    }
  }
  .c-entry__date-update {
    font-size: 0.875rem;
  }
  @media (width <= 768px) {
    .c-entry__date-update {
      font-size: 0.75rem;
    }
  }
  .c-entry__date-publish {
    font-size: 0.875rem;
  }
  @media (width <= 768px) {
    .c-entry__date-publish {
      font-size: 0.75rem;
    }
  }
  .c-entry__title {
    font-size: 1.75rem;
    font-weight: 500;
    line-height: 1.4;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .c-entry__title {
      margin-top: 12px;
      font-size: 1.25rem;
      line-height: 1.75;
    }
  }
  @media (width <= 768px) {
    .c-entry__sns {
      margin-top: 16px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 32px;
    }
  }
  .c-entry__sns-title {
    font-size: 0.75rem;
    font-weight: 500;
  }
  @media (width >= 769px) {
    .c-entry__sns-body {
      margin-top: 16px;
    }
  }
  .c-entry__sns-list {
    display: flex;
    gap: 20px;
  }
  .c-entry__sns-link {
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .c-entry__sns-link:hover {
      opacity: 0.8;
    }
  }
  .c-entry__sns-button {
    width: 39px;
    height: 39px;
    border-radius: 50%;
    background-color: #e9edee;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-entry__sns-button:hover {
      background-color: #d9d9d9;
    }
  }
  .c-entry__body {
    margin-top: 48px;
  }
  @media (width <= 768px) {
    .c-entry__body {
      margin-top: 40px;
    }
  }
  .c-entry__eyecatch {
    margin-bottom: 24px;
  }
  @media (width <= 768px) {
    .c-entry__eyecatch {
      margin-bottom: 20px;
    }
  }
  .c-entry__footer {
    margin-top: 48px;
  }
  @media (width <= 768px) {
    .c-entry__footer {
      margin-top: 40px;
    }
  }
}
@layer components {
  #ez-toc-container,
  .ez-toc-counter {
    margin-top: 48px;
    margin-bottom: 48px;
    background-color: #e9edee;
    border-radius: 6px;
    padding: 30px;
    font-weight: 500;
  }
  @media (width <= 768px) {
    #ez-toc-container,
    .ez-toc-counter {
      margin-top: 40px;
      margin-bottom: 40px;
      padding: 24px 16px 16px;
    }
  }
  .ez-toc-title-container {
    display: flex;
    gap: 8px;
    align-items: center;
  }
  .ez-toc-title {
    font-size: 1.75rem;
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 400;
    font-family: "Syncopate", sans-serif;
  }
  @media (width <= 768px) {
    .ez-toc-title {
      font-size: 1.5rem;
    }
  }
  .ez-toc-btn {
    position: relative;
    top: -4px;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1;
    color: #222;
    display: flex;
  }
  @media (any-hover: hover) {
    .ez-toc-btn:hover {
      text-decoration: underline;
    }
  }
  .ez-toc-btn::after {
    content: "[目次を閉じる]";
  }
  .ez-toc-icon-toggle-span {
    display: none;
  }
  .ez-toc-heading-level-2 {
    counter-increment: toc1;
    position: relative;
    padding-top: 24px;
    padding-bottom: 24px;
    padding-left: 20px;
  }
  @media (width <= 768px) {
    .ez-toc-heading-level-2 {
      padding-top: 12px;
      padding-bottom: 12px;
    }
  }
  .ez-toc-heading-level-2:not(:first-child) {
    border-top: 1px solid rgba(34, 34, 34, 0.3);
  }
  .ez-toc-heading-level-2::after {
    content: counter(toc1) ".";
    position: absolute;
    left: 0;
    top: 24px;
  }
  @media (width <= 768px) {
    .ez-toc-heading-level-2::after {
      top: 12px;
    }
  }
  .ez-toc-heading-level-3 {
    position: relative;
    counter-increment: toc2;
    margin-top: 16px;
    padding-left: 32px;
  }
  @media (width <= 768px) {
    .ez-toc-heading-level-3 {
      font-size: 0.875rem;
      margin-top: 12px;
    }
  }
  .ez-toc-heading-level-3::after {
    content: counter(toc1) "." counter(toc2);
    position: absolute;
    left: 0;
    top: 0;
  }
  .ez-toc-link {
    color: #222;
    text-decoration: none;
    transition: color 300ms ease;
  }
  @media (any-hover: hover) {
    .ez-toc-link:hover {
      color: #707070;
    }
  }
}
@layer components {
  .c-grid-card {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
  }
  @media (width <= 1024px) {
    .c-grid-card {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .c-grid-card.-col1 {
    grid-template-columns: 1fr;
  }
  @media (width <= 768px) {
    .c-grid-card.-col1 {
      gap: 16px;
    }
  }
}
@layer components {
  .c-grid {
    --space: 40px;
    margin-top: var(--space);
    display: grid;
    gap: 40px;
  }
  @media (width <= 768px) {
    .c-grid {
      gap: 24px;
    }
  }
  .c-grid.-col-1 {
    grid-template-columns: repeat(1, 1fr);
  }
  .c-grid.-col-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-grid.-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  @media (width <= 1024px) {
    .c-grid.-col-3 {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .c-grid.-col-4 {
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
  }
  @media (width <= 1024px) {
    .c-grid.-col-4 {
      grid-template-columns: repeat(2, 1fr);
    }
  }
}
@layer components {
  .icon {
    display: inline-block;
    fill: currentColor;
    vertical-align: middle;
    transition: fill 300ms ease;
  }
  .icon.-orange {
    color: #ff6600;
  }
  .icon.-assort {
    color: #121d59;
  }
  .icon.-white {
    color: #fff;
  }
  .icon.-green {
    color: #43a174;
  }
  .icon.-blue {
    color: #56a6dc;
  }
  .icon.-black {
    color: #222;
  }
}
@layer components {
  .c-keyword-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .c-keyword-list.-md-sm {
    gap: 4px;
  }
  .c-keyword-list__link {
    display: flex;
    padding: 6px 21px;
    border: 1px solid #707070;
    text-decoration: none;
    color: #222;
    border-radius: 4px;
    font-size: 0.875rem;
    transition: color 300ms ease, background-color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-keyword-list__link:hover {
      background-color: #707070;
      color: #fff;
    }
  }
  @media (width <= 768px) {
    .c-keyword-list.-md-sm .c-keyword-list__link {
      font-size: 0.625rem;
      padding: 4px 21px;
    }
  }
}
@layer components {
  .c-link__link {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: #222;
    transition: color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-link__link:hover {
      color: #ff6600;
    }
  }
  .c-link__label {
    font-size: 0.875rem;
    font-weight: 500;
  }
}
@layer components {
  .c-message {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 24px;
    margin: 0 auto;
    background: #fff;
    border-radius: 0 0 6px 6px;
    z-index: 2000;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
    visibility: hidden;
    opacity: 0;
    transform: translateY(-10px);
    transition: visibility 300ms, opacity 300ms, transform 300ms;
  }
  .c-message.-show {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
  }
}
@layer components {
  .c-modal-search {
    container-type: inline-size;
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
    width: 100%;
    height: 100dvh;
    border: none;
    background: none;
    padding: 0;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 300ms ease;
    background: rgba(16, 16, 16, 0.2);
    -webkit-backdrop-filter: blur(17px);
    backdrop-filter: blur(17px);
  }
  .c-modal-search[open] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .c-modal-search__inner {
    padding: 120px var(--padding-side);
  }
  @media (width <= 768px) {
    .c-modal-search__inner {
      padding-top: 104px;
      padding-bottom: 104px;
    }
  }
  .c-modal-search__body {
    position: relative;
    margin: 0 auto;
    max-width: 980px;
  }
  .c-modal-search__body-inner {
    overflow: auto;
    max-height: calc(100dvh - 240px);
  }
  @media (width <= 768px) {
    .c-modal-search__body-inner {
      max-height: calc(100dvh - 104px);
    }
  }
  .c-modal-search__close {
    position: absolute;
    top: -64px;
    right: 0;
    width: 49px;
    height: 49px;
    background-color: #fff;
    color: #222;
    border-radius: 50%;
    padding: 0;
    border: none;
    cursor: pointer;
    transition: background-color 300ms ease, color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-modal-search__close:hover {
      background-color: #e8e8e8;
    }
  }
  .c-modal-search__close::before, .c-modal-search__close::after {
    content: "";
    width: 2px;
    height: 28px;
    background-color: currentColor;
    position: absolute;
    left: 50%;
    top: 50%;
  }
  .c-modal-search__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .c-modal-search__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
  }
}
@layer components {
  .c-page-body {
    container-type: inline-size;
    padding-inline: var(--padding-side);
  }
  .c-page-body__inner {
    max-width: 820px;
    margin-inline: auto;
  }
}
@layer components {
  .c-page-header {
    position: relative;
    margin-top: calc(var(--height-header) * -1);
    margin-bottom: 72px;
    padding: 217px var(--padding-side) 64px;
    color: #fff;
    background-color: #ff6600;
  }
  @media (width <= 768px) {
    .c-page-header {
      padding-top: 135px;
      padding-bottom: 40px;
      margin-bottom: 36px;
    }
  }
  @media (width <= 768px) {
    .c-page-header.-single {
      display: none;
    }
  }
  .c-page-header__inner {
    position: relative;
    z-index: 1;
    max-width: 1230px;
    margin-inline: auto;
  }
  .c-page-header__body {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
  }
  .c-page-header.-single .c-page-header__body {
    display: flex;
    justify-content: flex-end;
  }
  .c-page-header__label {
    font-family: "Syncopate", sans-serif;
    font-size: 4.625rem;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  @media (width <= 768px) {
    .c-page-header__label {
      font-size: 2.25rem;
    }
  }
  .c-page-header__title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .c-page-header__title {
      margin-top: 8px;
      font-size: 1rem;
    }
  }
  .c-page-header__title-keyword {
    font-size: 2.25rem;
    margin-right: 20px;
  }
  @media (width <= 768px) {
    .c-page-header__breadcrumb {
      display: none;
    }
  }
  .c-page-header__category {
    position: relative;
    z-index: 1;
    margin-top: 48px;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-page-header__category {
      margin-top: 32px;
      grid-template-columns: 1fr;
      gap: 20px;
    }
  }
  .c-page-header__category-title {
    position: relative;
    top: 2px;
    font-size: 1.25rem;
    font-family: "Syncopate", sans-serif;
    letter-spacing: 0.04em;
    line-height: 1;
    text-transform: uppercase;
  }
  .c-page-header__category-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }
  .c-page-header__category-link {
    display: flex;
    border: 1px solid #fff;
    border-radius: 6px;
    padding: 6px 14px;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    transition: background-color 300ms ease, color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-page-header__category-link:hover {
      color: #222;
      background-color: #fff;
    }
  }
  @media (width <= 768px) {
    .c-page-header__category-link {
      font-size: 0.75rem;
    }
  }
  .c-page-header__category-link.-current {
    color: #222;
    background-color: #fff;
  }
  .c-page-header__search {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .c-page-header__search {
      margin-top: 12px;
      grid-template-columns: 1fr;
      gap: 12px;
    }
  }
  .c-page-header__search-title {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1;
  }
  @media (width <= 768px) {
    .c-page-header__search-title {
      font-size: 1rem;
    }
  }
  .c-page-header__search-keyword {
    font-size: 2.25rem;
    margin-right: 20px;
  }
  @media (width <= 768px) {
    .c-page-header__search-keyword {
      font-size: 1.5rem;
    }
  }
  .c-page-header__search-result {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1;
  }
  .c-page-header__search-number {
    font-size: 2rem;
    margin-right: 10px;
  }
  @media (width <= 768px) {
    .c-page-header__search-number {
      font-size: 1.75rem;
    }
  }
  .c-page-header__cover {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1s ease;
  }
  body.is-loaded .c-page-header__cover {
    opacity: 1;
  }
  .c-page-header__cover-video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
}
@layer components {
  .c-pagination {
    margin-top: 40px;
  }
  @media (width <= 768px) {
    .c-pagination {
      margin-top: 32px;
    }
  }
  .c-pagination__list {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-pagination__list {
      justify-content: center;
    }
  }
  .c-pagination__page-link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    text-decoration: none;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    color: #222;
    font-size: 0.75rem;
    transition: background-color 300ms ease, color 300ms ease;
  }
  @media (any-hover: hover) {
    .c-pagination__page-link:hover {
      background-color: #ff6600;
      color: #fff;
    }
  }
  .c-pagination__page-link.-current {
    background-color: #ff6600;
    color: #fff;
  }
}
@layer components {
  body.is-laptop .c-phone {
    pointer-events: none;
  }
}
@layer components {
  .c-policy__title {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 48px;
  }
  @media (width <= 768px) {
    .c-policy__title {
      font-size: 1.25rem;
    }
  }
  .c-policy__title:not(:first-child) {
    margin-top: 80px;
  }
  @media (width <= 768px) {
    .c-policy__title:not(:first-child) {
      margin-top: 60px;
    }
  }
  .c-policy__content {
    margin-top: 48px;
  }
  @media (width <= 768px) {
    .c-policy__content {
      margin-top: 24px;
    }
  }
  .c-policy__content-title {
    font-size: 1.25rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-policy__content-title {
      font-size: 1rem;
    }
  }
  .c-policy__desc {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .c-policy__desc {
      margin-top: 8px;
      font-size: 0.75rem;
    }
  }
  .c-policy__list {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .c-policy__list {
      margin-top: 8px;
      font-size: 0.75rem;
    }
  }
  .c-policy__list-item {
    text-indent: -1em;
    padding-left: 1em;
  }
  .c-policy__list-item::before {
    content: "・";
  }
  .c-policy__list-order {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.75;
    list-style: decimal;
    padding-left: 20px;
  }
  @media (width <= 768px) {
    .c-policy__list-order {
      margin-top: 8px;
      font-size: 0.75rem;
      padding-left: 16px;
    }
  }
  .c-policy__signature {
    margin-top: 48px;
    font-size: 0.875rem;
    line-height: 1.75;
    text-align: right;
  }
  @media (width <= 768px) {
    .c-policy__signature {
      margin-top: 24px;
    }
  }
}
@layer components {
  .c-ranking-list {
    margin-top: 40px;
  }
  .c-ranking-list__label {
    font-size: 2rem;
    line-height: 1;
    text-transform: uppercase;
    font-family: "Syncopate", sans-serif;
  }
  .c-ranking-list__title {
    margin-top: 8px;
    font-weight: 700;
    font-size: 1.125rem;
  }
  .c-ranking-list__body {
    margin-top: 32px;
    display: grid;
    gap: 12px;
  }
}
@layer components {
  .c-search-article {
    background-color: #fff;
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    border-radius: 6px;
    padding: 50px;
  }
  @container (width <= 768px) {
    .c-search-article {
      padding: 24px;
    }
  }
  .c-search-article__header {
    display: flex;
    align-items: center;
    gap: 16px;
  }
  @container (width <= 768px) {
    .c-search-article__header {
      display: block;
    }
  }
  .c-search-article__label {
    font-size: 3.375rem;
    line-height: 1;
    font-family: "Syncopate", sans-serif;
    letter-spacing: 0.04em;
  }
  @container (width <= 768px) {
    .c-search-article__label {
      font-size: 2rem;
    }
  }
  .c-search-article__title {
    font-size: 1.25rem;
    line-height: 1;
    font-weight: 700;
  }
  @container (width <= 768px) {
    .c-search-article__title {
      font-size: 1.125rem;
      margin-top: 8px;
    }
  }
  .c-search-article__body {
    margin-top: 24px;
  }
  @container (width <= 768px) {
    .c-search-article__body {
      margin-top: 32px;
    }
  }
  .c-search-article__keyword {
    margin-top: 40px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 48px;
  }
  @container (width <= 768px) {
    .c-search-article__keyword {
      margin-top: 32px;
      gap: 24px;
      grid-template-columns: 1fr;
    }
  }
  .c-search-article__keyword-title {
    font-weight: 500;
  }
}
@layer components {
  .c-search-keyword {
    --background-color: #ebebeb;
  }
  .c-search-keyword.-white {
    --background-color: #fff;
  }
  .c-search-keyword__form {
    position: relative;
  }
  .c-search-keyword__input {
    border-radius: 4px;
    font-size: 0.875rem;
    background-color: var(--background-color);
    border: none;
    width: 100%;
    padding: 20px 20px 20px 64px;
  }
  @container (width <= 768px) {
    .c-search-keyword__input {
      font-size: 1rem;
      padding: 16px 20px 16px 48px;
    }
  }
  .c-search-keyword__input::-moz-placeholder {
    color: #707070;
  }
  .c-search-keyword__input:-ms-input-placeholder {
    color: #707070;
  }
  .c-search-keyword__input::placeholder {
    color: #707070;
  }
  .c-search-keyword__submit {
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background: none;
    padding: 0;
    border: none;
    display: flex;
    align-items: center;
    cursor: pointer;
  }
  @container (width <= 768px) {
    .c-search-keyword__submit {
      left: 16px;
    }
  }
}
@layer components {
  @media (width <= 768px) {
    .swipe {
      overflow: auto;
    }
  }
  @media (width <= 768px) {
    .swipe__inner {
      width: 1230px;
    }
  }
}
@layer components {
  .c-talk {
    --space: 0;
    margin-top: var(--space);
    display: grid;
    gap: 24px;
  }
  @media (width <= 768px) {
    .c-talk {
      gap: 16px;
    }
  }
  .c-talk:not(:first-child) {
    --space: 40px;
  }
  @media (width <= 768px) {
    .c-talk:not(:first-child) {
      --space: 24px;
    }
  }
  .c-talk.-left {
    grid-template-columns: auto 1fr;
    grid-template-areas: "header body";
  }
  .c-talk.-right {
    grid-template-columns: 1fr auto;
    grid-template-areas: "body header";
  }
  .c-talk__header {
    grid-area: header;
  }
  .c-talk__photo {
    width: 90px;
  }
  @media (width <= 768px) {
    .c-talk__photo {
      width: 62px;
    }
  }
  .c-talk__photo img {
    border-radius: 50%;
  }
  .c-talk__photo figcaption {
    text-align: center;
    font-size: 0.875rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-talk__photo figcaption {
      font-size: 0.75rem;
      margin-top: 4px;
    }
  }
  .c-talk__body {
    grid-area: body;
  }
  .c-talk.-right .c-talk__body {
    justify-self: end;
  }
  .c-talk__comment {
    position: relative;
    padding: 24px;
    background-color: #e9edee;
    border-radius: 6px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  @media (width <= 768px) {
    .c-talk__comment {
      padding: 10px;
    }
  }
  .c-talk.-left .c-talk__comment::after {
    content: "";
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e9edee;
    width: 10px;
    height: 16px;
    -webkit-clip-path: polygon(0 50%, 100% 0, 100% 100%);
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
  }
  @media (width <= 768px) {
    .c-talk.-left .c-talk__comment::after {
      transform: none;
      top: 26px;
    }
  }
  .c-talk.-right .c-talk__comment::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e9edee;
    width: 10px;
    height: 16px;
    -webkit-clip-path: polygon(100% 50%, 0 0, 0 100%);
    clip-path: polygon(100% 50%, 0 0, 0 100%);
  }
  @media (width <= 768px) {
    .c-talk.-right .c-talk__comment::after {
      transform: none;
      top: 26px;
    }
  }
  .c-talk__desc {
    font-weight: 500;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .c-talk__desc {
      font-size: 0.875rem;
    }
  }
}
@layer components {
  .c-text-marquee {
    --width: 2700px;
    --duration: 20s;
    position: relative;
    overflow: hidden;
    line-height: 1;
    font-size: 7.5rem;
    font-family: "Syncopate", sans-serif;
    color: rgba(255, 255, 255, 0.15);
    white-space: nowrap;
    letter-spacing: 0.04em;
    pointer-events: none;
  }
  @media (width <= 768px) {
    .c-text-marquee {
      --duration: 15s;
      --width: 1700px;
      font-size: 4.6875rem;
    }
  }
  .c-text-marquee__label {
    display: inline-block;
    text-shadow: var(--width) 0 0 currentColor, calc(var(--width) * 2) 0 0 currentColor;
    animation-name: scrollingText;
    animation-duration: var(--duration);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
  }
  @keyframes scrollingText {
    0% {
      translate: 0 0;
    }
    100% {
      translate: calc(var(--width) * -1) 0;
    }
  }
}
@layer components {
  .c-title-centerline {
    --space: 0;
    position: relative;
    font-size: 1.25rem;
    font-weight: 700;
    padding-left: 18px;
  }
  @media (width <= 768px) {
    .c-title-centerline {
      font-size: 1.125rem;
    }
  }
  .c-title-centerline:not(:first-child) {
    --space: 40px;
  }
  .c-title-centerline::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    background-color: #ff6600;
    width: 12px;
    height: 2px;
  }
}
@layer components {
  .c-title-dots {
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-left: 26px;
    font-size: 1.5rem;
    line-height: 1.4;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .c-title-dots {
      font-size: 1.125rem;
    }
  }
  .c-title-dots.-c {
    margin-left: auto;
    margin-right: auto;
  }
  @media (width <= 768px) {
    .c-title-dots.-c {
      margin-left: 0;
    }
  }
  .c-title-dots::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #ff6600;
    transform: translateY(-50%);
  }
}
@layer components {
  .c-title-label {
    --space: 0;
  }
  .c-title-label:not(:first-child) {
    --space: 40px;
  }
  .c-title-label.-lg .c-title-label__label {
    font-size: 4.625rem;
  }
  @media (width <= 768px) {
    .c-title-label.-lg .c-title-label__label {
      font-size: 2.5rem;
    }
  }
  .c-title-label.-lg .c-title-label__title {
    font-size: 1.5rem;
  }
  @media (width <= 768px) {
    .c-title-label.-lg .c-title-label__title {
      font-size: 1.125rem;
    }
  }
  .c-title-label__label {
    font-size: 3.375rem;
    font-family: "Syncopate", sans-serif;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  @media (width <= 768px) {
    .c-title-label__label {
      font-size: 2.25rem;
    }
  }
  .c-title-label__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-top: 8px;
  }
  @media (width <= 768px) {
    .c-title-label__title {
      font-size: 1rem;
      margin-top: 4px;
    }
  }
}
@layer components {
  .c-two-column {
    padding-inline: var(--padding-side);
  }
  .c-two-column__inner {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (width >= 1025px) {
    .c-two-column__inner {
      display: grid;
      grid-template-areas: "main sub" "bottom bottom";
      grid-template-columns: 1fr 350px;
      gap: 0 60px;
    }
  }
  .c-two-column__main {
    container-type: inline-size;
  }
  @media (width >= 1025px) {
    .c-two-column__main {
      grid-area: main;
    }
  }
  .c-two-column__sub {
    container-type: inline-size;
  }
  @media (width >= 1025px) {
    .c-two-column__sub {
      grid-area: sub;
    }
  }
  @media (width <= 768px) {
    .c-two-column__sub {
      margin-top: 40px;
    }
  }
  .c-two-column__bottom {
    margin-left: var(--outer);
    margin-right: var(--outer);
  }
  @media (width >= 1025px) {
    .c-two-column__bottom {
      grid-area: bottom;
    }
  }
}
@layer components {
  .c-input-checkbox {
    display: flex;
    gap: 4px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    cursor: pointer;
  }
  .c-input-checkbox__label {
    font-size: 0.875rem;
    line-height: 1.75;
  }
  .c-input-checkbox__group {
    display: grid;
    gap: 4px;
  }
}
@layer components {
  .c-input-privacy {
    display: flex;
    gap: 4px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    cursor: pointer;
  }
  .c-input-privacy__label {
    font-size: 1.125rem;
    line-height: 1.75;
    font-weight: 500;
  }
  .c-input-privacy__group {
    display: grid;
    gap: 4px;
  }
}
@layer components {
  /*
  /* Input Radio

  	<label class="input-radio">
  		<input type="radio" class="input-radio__input" name="sample">
  		<span class="input-radio__label">ラジオボタンのサンプル</span>
  	</label>

  /*
  ----------------------------------------------------------------- */
  .input-radio {
    display: inline-block;
  }
  .input-radio__input {
    display: none;
  }
  .input-radio__input:checked + .input-radio__label {
    border-color: #6cc;
  }
  .input-radio__label {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px #000 solid;
    padding: 20px;
    cursor: pointer;
  }
}
@layer components {
  /*
  /* Input select

  	<div class="input-select">
  		<select name="" class="input-select__field">
  			<option value="">foo</option>
  		</select>
  	</div>

  /*
  ----------------------------------------------------------------- */
  .input-select {
    position: relative;
    display: inline-block;
  }
  .input-select::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 4px 0 4px;
    border-color: #333 transparent transparent transparent;
    pointer-events: none;
  }
  .input-select__field {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    position: relative;
    z-index: 0;
    height: 48px;
    box-sizing: border-box;
    padding: 0 20px 0 10px;
    background: transparent;
    border: none;
    border: 1px #eee solid;
    font-size: 1.4rem;
    width: 100%;
  }
  .input-select__field::-ms-expand {
    display: none;
  }
  .input-select__field:focus {
    outline: none;
  }
}
@layer components {
  .c-input-text__field {
    width: 100%;
    border-radius: 4px;
    background-color: #ebebeb;
    border: none;
    font-size: 0.875rem;
    padding: 6px 10px;
  }
  @media (width <= 768px) {
    .c-input-text__field {
      font-size: 1rem;
    }
  }
}
@layer components {
  .c-input-textarea__field {
    width: 100%;
    min-height: 240px;
    border-radius: 4px;
    background-color: #ebebeb;
    border: none;
    font-size: 0.875rem;
    padding: 6px 10px;
  }
  @media (width <= 768px) {
    .c-input-textarea__field {
      font-size: 1rem;
      min-height: 220px;
    }
  }
}
@layer pages {
  .p-aboutus-data__table {
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    border-collapse: separate;
  }
  .p-aboutus-data__table-label {
    display: flex;
    align-items: center;
    min-height: 80px;
  }
  .p-aboutus-data__table tr:first-child th {
    border-radius: 6px 0 0 0;
  }
  .p-aboutus-data__table tr:first-child td {
    border-radius: 0 6px 0 0;
  }
  .p-aboutus-data__table tr:last-child th {
    border-radius: 0 0 0 6px;
    border-bottom: 1px solid #d9d9d9;
  }
  .p-aboutus-data__table tr:last-child td {
    border-radius: 0 0 6px 0;
    border-bottom: 1px solid #d9d9d9;
  }
  .p-aboutus-data__table th,
  .p-aboutus-data__table td {
    padding-inline: 30px;
    border-top: 1px solid #d9d9d9;
    border-left: 1px solid #d9d9d9;
    line-height: 1.75;
    vertical-align: top;
  }
  @media (width <= 768px) {
    .p-aboutus-data__table th,
    .p-aboutus-data__table td {
      padding-inline: 12px;
      font-size: 0.75rem;
      text-align: left;
    }
  }
  .p-aboutus-data__table th {
    width: 200px;
    background-color: #ebebeb;
  }
  @media (width <= 768px) {
    .p-aboutus-data__table th {
      width: 100px;
    }
  }
  .p-aboutus-data__table td {
    background-color: #fff;
    border-right: 1px solid #d9d9d9;
  }
}
@layer pages {
  .p-contact {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-contact-message {
    line-height: 1.75;
  }
  .p-contact-message__desc {
    text-align: center;
    font-size: 1.25rem;
  }
  @media (width <= 768px) {
    .p-contact-message__desc {
      font-size: 1rem;
      text-align: left;
    }
  }
  .p-contact-message__title {
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-contact-message__title {
      margin-top: 10px;
      font-size: 1.25rem;
      text-align: left;
    }
  }
  .p-contact__step {
    margin-top: 60px;
  }
  @media (width <= 768px) {
    .p-contact__step {
      margin-top: 40px;
    }
  }
  .p-contact-step {
    margin-bottom: 60px;
  }
  @media (width <= 768px) {
    .p-contact-step {
      padding: 0 16px;
      margin-bottom: 32px;
    }
  }
  .p-contact-step__inner {
    display: flex;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
    position: relative;
  }
  .p-contact-step__inner::after {
    content: "";
    position: absolute;
    top: 30px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 5px;
    background-image: radial-gradient(circle at center, #d9d9d9 2.5px, transparent 2.5px);
    background-size: 15px 15px;
    background-repeat: repeat-x;
    background-position: center;
  }
  .p-contact-step__item {
    position: relative;
    z-index: 1;
  }
  .p-contact-step__item.-current .p-contact-step__icon {
    background-color: #ff6600;
  }
  .p-contact-step__item.-current .p-contact-step__label {
    color: #222;
  }
  .p-contact-step__icon {
    width: 62px;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 50%;
    background-color: #ebebeb;
    color: #fff;
  }
  .p-contact-step__step {
    font-family: "Syncopate", sans-serif;
    font-size: 0.6875rem;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .p-contact-step__number {
    font-family: "Syncopate", sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .p-contact-step__label {
    font-size: 0.875rem;
    font-weight: 500;
    text-align: center;
    margin-top: 16px;
    color: rgba(34, 34, 34, 0.3);
  }
  @media (width <= 768px) {
    .p-contact-step__label {
      margin-top: 8px;
      font-size: 0.75rem;
    }
  }
  .p-contact__asap {
    margin-top: 40px;
  }
  @media (width <= 768px) {
    .p-contact__asap {
      margin-top: 24px;
    }
  }
  .p-contact-asap {
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    max-width: 660px;
    margin-inline: auto;
    padding: 24px 48px;
    display: flex;
    align-items: center;
    gap: 32px;
  }
  @media (width <= 768px) {
    .p-contact-asap {
      padding: 16px;
      display: block;
    }
  }
  .p-contact-asap__title {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-contact-asap__title {
      text-align: center;
    }
  }
  @media (width <= 768px) {
    .p-contact-asap__phone {
      margin-top: 8px;
    }
  }
  .p-contact-asap__phone-link {
    text-decoration: none;
    color: #222;
    display: flex;
    align-items: center;
    gap: 4px;
  }
  .p-contact-asap__phone-number {
    font-size: 2.5rem;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    line-height: 1;
  }
  @media (width <= 768px) {
    .p-contact-asap__phone-number {
      font-size: 2.25rem;
    }
  }
  .p-contact-asap__hour {
    font-size: 0.875rem;
    color: #9b9b9b;
    line-height: normal;
    margin-top: 8px;
  }
  @media (width <= 768px) {
    .p-contact-asap__hour {
      text-align: center;
    }
  }
  .p-contact__form {
    margin-top: 60px;
  }
  .p-contact-form__content {
    display: grid;
    gap: 20px;
    grid-template-columns: 260px 1fr;
  }
  @media (width <= 768px) {
    .p-contact-form__content {
      grid-template-columns: 1fr;
      gap: 12px;
    }
  }
  .p-contact-form__content-header {
    border-top: 1px solid rgba(34, 34, 34, 0.3);
    padding-top: 38px;
    padding-bottom: 32px;
    display: flex;
    align-items: flex-start;
  }
  @media (width <= 768px) {
    .p-contact-form__content-header {
      padding-top: 12px;
      padding-bottom: 0;
    }
  }
  .p-contact-form__content-label {
    flex-grow: 1;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.75;
  }
  .p-contact-form__content-require {
    background-color: #ff6600;
    color: #fff;
    font-size: 0.75rem;
    padding: 5px 10px;
    line-height: 1;
  }
  @media (width <= 768px) {
    .p-contact-form__content-require {
      padding: 5px 15px;
    }
  }
  .p-contact-form__content-require.-option {
    background-color: #121d59;
  }
  .p-contact-form__content-error {
    margin-top: 8px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #ff6666;
  }
  .p-contact-form__content-body {
    border-top: 1px solid rgba(34, 34, 34, 0.3);
    padding-top: 32px;
    padding-bottom: 32px;
  }
  @media (width <= 768px) {
    .p-contact-form__content-body {
      padding-top: 0;
      padding-bottom: 24px;
      border-top: none;
    }
  }
  .p-contact-form__content-desc {
    font-size: 0.875rem;
    line-height: 1.75;
    padding-top: 4px;
  }
  .p-contact-form__privacy {
    background-color: #fff;
    padding: 24px;
    text-align: center;
  }
  .p-contact-form__footer {
    margin-top: 60px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 24px;
  }
  @media (width <= 768px) {
    .p-contact-form__footer {
      margin-top: 48px;
    }
  }
  .p-contact-form__notes {
    text-align: center;
    font-size: 0.75rem;
    color: #707070;
    margin-top: 24px;
  }
  @media (width <= 768px) {
    .p-contact-form__notes {
      margin-top: 8px;
    }
  }
}
@layer pages {
  .p-lp__mv {
    position: relative;
    margin-top: calc(var(--height-header) * -1);
    padding: 217px var(--padding-side) 24px;
    background: 50% 50% no-repeat;
    background-size: cover;
  }
  @media (width >= 769px) {
    .p-lp__mv {
      background-image: url(../images/lp/mv_bg_cover.webp);
    }
  }
  @media (width <= 768px) {
    .p-lp__mv {
      padding-top: 128px;
      padding-bottom: 16px;
      background-image: url(../images/lp/mv_bg_cover_sp.webp);
      background-position: 50% 0%;
    }
  }
  .p-lp-mv {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-lp-mv__inner {
    max-width: 630px;
  }
  @media (width <= 768px) {
    .p-lp-mv__inner {
      padding: 0 12px;
    }
  }
  .p-lp-mv__header {
    display: flex;
  }
  @media (width <= 768px) {
    .p-lp-mv__header {
      position: relative;
      display: block;
    }
  }
  .p-lp-mv__title {
    font-size: 4.125rem;
    font-weight: 700;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-lp-mv__title {
      font-size: 11.7333333333vw;
    }
  }
  .p-lp-mv__label {
    width: 166px;
  }
  @media (width <= 768px) {
    .p-lp-mv__label {
      position: absolute;
      right: 0;
      bottom: -16px;
      width: 19.7333333333vw;
    }
  }
  .p-lp-mv__desc {
    margin-top: 24px;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-mv__desc {
      font-size: 4vw;
      margin-top: 20px;
      line-height: 1.4;
    }
  }
  .p-lp-mv__feature {
    margin: 24px -10px 0;
  }
  @media (width <= 768px) {
    .p-lp-mv__feature {
      margin: 0 -24px 0;
    }
  }
  .p-lp-mv__feature-img {
    max-width: 656px;
  }
  @media (width <= 768px) {
    .p-lp-mv__feature-img {
      max-width: 100%;
    }
  }
  @media (width <= 768px) {
    .p-lp-mv__cv {
      text-align: center;
    }
  }
  .p-lp-mv__cv-img {
    max-width: 677px;
  }
  @media (width <= 768px) {
    .p-lp-mv__cv-img {
      max-width: 375px;
    }
  }
  .p-lp-mv__cv-link {
    display: block;
    margin: 0px -20px 0;
    transition: transform 300ms ease;
  }
  @media (width <= 768px) {
    .p-lp-mv__cv-link {
      margin: 53.3333333333vw -24px 0;
    }
  }
  @media (any-hover: hover) {
    .p-lp-mv__cv-link:hover {
      transform: translateY(-5px);
    }
  }
  .p-lp-mv__cv-caption {
    margin-top: -16px;
    font-size: 0.75rem;
  }
  @media (width <= 768px) {
    .p-lp-mv__cv-caption {
      position: absolute;
      left: 0;
      right: 0;
      bottom: -40px;
      text-align: center;
      margin-top: 0;
    }
  }
  .p-lp-container {
    position: relative;
    margin-top: 24px;
  }
  .p-lp-container__sticky {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
    height: 100%;
    pointer-events: none;
  }
  .p-lp__consult {
    position: -webkit-sticky;
    position: sticky;
    top: var(--height-header);
  }
  .p-lp-consult {
    overflow: hidden;
    padding-top: 8px;
    padding-bottom: 14px;
    pointer-events: none;
  }
  .p-lp-consult__inner {
    pointer-events: auto;
    display: grid;
    grid-template-columns: 52px 1fr;
    border-radius: 10px 0px 0px 10px;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.15);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    transform: translateX(324px);
    transition: transform 300ms ease;
    cursor: pointer;
  }
  @media (width <= 768px) {
    .p-lp-consult__inner {
      transform: translateX(280px);
      grid-template-columns: 48px 1fr;
    }
  }
  .p-lp-consult__inner:hover {
    transform: translateX(0);
  }
  .p-lp-consult__header {
    border-radius: 10px 0px 0px 10px;
    padding: 16px 0;
    background: linear-gradient(91deg, #f60 0.97%, #ff491a 98.97%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p-lp-consult__title {
    font-weight: 700;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.25em;
    font-size: 1.125rem;
  }
  .p-lp-consult__body {
    padding: 24px;
    width: 324px;
  }
  @media (width <= 768px) {
    .p-lp-consult__body {
      width: 280px;
      padding: 16px;
    }
  }
  .p-lp-consult__lead {
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.875rem;
    margin-bottom: 6px;
    font-weight: 700;
    margin-inline: auto;
    padding: 0 14px 0 16px;
  }
  .p-lp-consult__lead::before, .p-lp-consult__lead::after {
    content: "";
    width: 1px;
    height: 12px;
    border-left: 1px dashed #222;
    position: absolute;
    top: 4px;
  }
  .p-lp-consult__lead::before {
    left: 100%;
    rotate: 30deg;
  }
  .p-lp-consult__lead::after {
    right: 100%;
    rotate: -30deg;
  }
  .p-lp-consult__desc {
    line-height: 1.75;
    font-size: 1rem;
    font-weight: 700;
    color: #31287a;
    text-align: center;
    margin-top: 16px;
  }
  @media (width <= 768px) {
    .p-lp-consult__desc {
      font-size: 0.875rem;
    }
  }
  .p-lp__nav {
    margin-top: 60px;
  }
  @media (width <= 768px) {
    .p-lp__nav {
      margin-top: 40px;
    }
  }
  .p-lp-nav {
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 32px;
    padding: 32px var(--padding-side);
  }
  @media (width <= 768px) {
    .p-lp-nav {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 18px 25px;
      padding: 15px 24px 15px 24px;
    }
  }
  .p-lp-nav__link {
    display: flex;
    gap: 4px;
    font-size: 0.875rem;
    text-decoration: none;
    color: #222;
    transition: color 300ms ease;
  }
  @media (any-hover: hover) {
    .p-lp-nav__link:hover {
      color: #ff6600;
    }
  }
  @media (width <= 768px) {
    .p-lp-nav__link {
      font-size: 0.75rem;
    }
  }
  @media (width <= 768px) {
    .p-lp-nav__label {
      flex-grow: 1;
    }
  }
  .p-lp-nav__icon {
    flex-shrink: 0;
    position: relative;
    top: 5px;
  }
  .p-lp__hire {
    margin-top: 72px;
    padding-inline: var(--padding-side);
  }
  @media (width <= 768px) {
    .p-lp__hire {
      margin-top: 32px;
    }
  }
  .p-lp-hire {
    display: flex;
    align-items: center;
    gap: 72px;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (width <= 1024px) {
    .p-lp-hire {
      flex-direction: column;
    }
  }
  @media (width <= 768px) {
    .p-lp-hire {
      gap: 32px;
    }
  }
  .p-lp-hire__header {
    flex-shrink: 0;
    width: 446px;
  }
  .p-lp-hire__title {
    font-size: 1.75rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-hire__title {
      font-size: 1.5rem;
      text-align: center;
    }
  }
  .p-lp-hire__photo {
    max-width: 344px;
    margin: 10px auto 0;
    text-align: center;
  }
  .p-lp-hire__desc {
    margin-top: 32px;
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-lp-hire__desc {
      margin-top: 16px;
      font-size: 0.875rem;
    }
  }
  .p-lp__merit {
    margin-top: 100px;
    padding: 0 var(--padding-side);
  }
  @media (width <= 768px) {
    .p-lp__merit {
      margin-top: 35px;
      padding: 0;
    }
  }
  .p-lp-merit {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    border-radius: 6px;
    padding: 54px 40px;
  }
  @media (width <= 768px) {
    .p-lp-merit {
      padding: 48px 16px;
    }
  }
  .p-lp-merit__title {
    font-size: 1.75rem;
    text-align: center;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-merit__title {
      font-size: 1.5rem;
    }
  }
  .p-lp-merit__body {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }
  @media (width <= 768px) {
    .p-lp-merit__body {
      grid-template-columns: repeat(1, 1fr);
      gap: 24px;
    }
  }
  .p-lp-merit-block {
    max-width: 300px;
    justify-self: center;
  }
  .p-lp-merit-block__header {
    text-align: center;
  }
  .p-lp-merit-block__header-img {
    width: 240px;
  }
  .p-lp-merit-block__body {
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .p-lp-merit-block__body {
      margin-top: 24px;
    }
  }
  .p-lp-merit-block__title {
    color: #ff6600;
    font-weight: 700;
    font-size: 1.25rem;
    text-align: center;
  }
  @media (width <= 768px) {
    .p-lp-merit-block__title {
      font-size: 1.25rem;
    }
  }
  .p-lp-merit-block__desc {
    margin-top: 16px;
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-lp-merit-block__desc {
      font-size: 0.8125rem;
    }
  }
  .p-lp__about {
    background-color: #fff;
    padding: 50px var(--padding-side);
    margin-top: 100px;
  }
  @media (width <= 768px) {
    .p-lp__about {
      margin-top: 70px;
      padding: 0;
    }
  }
  .p-lp-about {
    max-width: 1230px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr 558px;
    grid-template-areas: "body header";
    gap: 60px;
  }
  @media (width <= 1024px) {
    .p-lp-about {
      grid-template-columns: 1fr 1fr;
      gap: 32px;
    }
  }
  @media (width <= 768px) {
    .p-lp-about {
      grid-template-columns: 1fr;
      grid-template-areas: "body" "header";
      gap: 0;
    }
  }
  .p-lp-about__header {
    grid-area: header;
  }
  @media (width <= 768px) {
    .p-lp-about__header {
      padding: 0 12px;
    }
  }
  .p-lp-about__body {
    grid-area: body;
  }
  @media (width <= 768px) {
    .p-lp-about__body {
      padding: 40px 24px;
    }
  }
  .p-lp-about__title-group {
    display: flex;
    align-items: center;
    gap: 14px;
  }
  .p-lp-about__logo {
    width: 273px;
  }
  .p-lp-about__title {
    font-size: 1.75rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-about__title {
      font-size: 1.25rem;
    }
  }
  .p-lp-about__desc {
    margin-top: 24px;
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-lp-about__desc {
      font-size: 0.8125rem;
    }
  }
  .p-lp-about__notes {
    margin-top: 24px;
    font-size: 0.75rem;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-about__notes {
      margin-top: 16px;
    }
  }
  .p-lp__feature {
    position: relative;
    padding: 100px var(--padding-side);
  }
  @media (width <= 768px) {
    .p-lp__feature {
      padding: 58px 0 0;
    }
  }
  .p-lp__feature-cover {
    position: absolute;
    inset: 0;
  }
  @media (width <= 768px) {
    .p-lp__feature-cover {
      display: none;
    }
  }
  .p-lp__feature-cover__video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .p-lp-feature {
    position: relative;
    z-index: 1;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    border-radius: 6px;
  }
  .p-lp-feature__header {
    background-color: #121d59;
    color: #fff;
    padding: 16px;
  }
  @media (width >= 769px) {
    .p-lp-feature__header {
      border-radius: 6px 6px 0 0;
    }
  }
  @media (width <= 768px) {
    .p-lp-feature__header {
      padding: 20px 0;
    }
  }
  .p-lp-feature__title {
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-feature__title {
      font-size: 1.625rem;
    }
  }
  .p-lp-feature__body {
    padding: 64px 40px 109px;
  }
  @media (width <= 768px) {
    .p-lp-feature__body {
      padding: 24px 16px 32px;
    }
  }
  .p-lp-feature-point__title {
    position: relative;
    color: #ff6600;
    font-family: "Syncopate", sans-serif;
    text-transform: uppercase;
    text-align: center;
  }
  .p-lp-feature-point__title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-1px);
    width: 100%;
    height: 2px;
    background-color: #ff6600;
  }
  .p-lp-feature-point__title-inner {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
    z-index: 1;
    padding: 0 40px;
    margin-inline: auto;
    background-color: #fff;
  }
  @media (width <= 768px) {
    .p-lp-feature-point__title-inner {
      padding: 0 24px;
    }
  }
  .p-lp-feature-point__title-label {
    font-size: 3rem;
  }
  @media (width <= 768px) {
    .p-lp-feature-point__title-label {
      font-size: 2.25rem;
    }
  }
  .p-lp-feature-point__title-number {
    font-size: 5rem;
  }
  @media (width <= 768px) {
    .p-lp-feature-point__title-number {
      font-size: 3.75rem;
    }
  }
  .p-lp-feature-point__lead {
    margin-top: 24px;
    font-size: 1.75rem;
    color: #121d59;
    line-height: 1.75;
    text-align: center;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-feature-point__lead {
      margin-top: 16px;
      font-size: 1.25rem;
    }
  }
  .p-lp-feature-point__desc {
    color: #121d59;
    text-align: center;
    font-weight: 500;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point__desc {
      text-align: left;
      margin-top: 8px;
      font-size: 0.875rem;
    }
  }
  .p-lp-feature-point-01 {
    max-width: 980px;
    margin-inline: auto;
  }
  .p-lp-feature-point-01-feature {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-feature {
      grid-template-columns: repeat(1, 1fr);
      gap: 16px;
    }
  }
  .p-lp-feature-point-01-feature__item {
    border-radius: 6px;
    border: 2px solid #ff6600;
    background: linear-gradient(0deg, rgba(255, 102, 0, 0.1) 0%, rgba(255, 203, 168, 0.1) 100%);
    color: #121d59;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.15);
    padding: 24px;
  }
  .p-lp-feature-point-01-feature__item-title {
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-feature__item-title {
      font-size: 1.25rem;
    }
  }
  .p-lp-feature-point-01-feature__item-desc {
    margin-top: 8px;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-feature__item-desc {
      margin-top: 16px;
      font-size: 1rem;
    }
  }
  .p-lp-feature-point-01-price {
    margin-top: 64px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-price {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-01-price__body {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-price__body {
      grid-template-columns: repeat(1, 1fr);
      gap: 16px;
    }
  }
  .p-lp-feature-point-01-data {
    margin-top: 64px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-01-data {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-01-data__body {
    margin-top: 16px;
  }
  .p-lp-feature-point-02 {
    max-width: 980px;
    margin-inline: auto;
    margin-top: 100px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02 {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-02-feature {
    margin-top: 54px;
    display: grid;
    gap: 64px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-feature {
      margin-top: 32px;
      gap: 32px;
    }
  }
  .p-lp-feature-point-02-block {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block {
      gap: 16px;
      grid-template-columns: repeat(1, 1fr);
    }
  }
  .p-lp-feature-point-02-block__header {
    position: relative;
  }
  .p-lp-feature-point-02-block__header iframe {
    aspect-ratio: 490/397;
    width: 100%;
    height: auto;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__header iframe {
      aspect-ratio: 327/191;
    }
  }
  .p-lp-feature-point-02-block__thumb-img {
    border-radius: 6px;
  }
  .p-lp-feature-point-02-block__label {
    position: absolute;
    left: -24px;
    top: -24px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background-color: #ff6600;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__label {
      font-size: 0.75rem;
      width: 44px;
      height: 44px;
      left: -8px;
      top: -8px;
    }
  }
  .p-lp-feature-point-02-block__lead {
    color: #ff6600;
    font-weight: 700;
    line-height: 1.75;
    font-size: 1.25rem;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__lead {
      font-size: 1rem;
    }
  }
  .p-lp-feature-point-02-block__list {
    margin-top: 16px;
  }
  .p-lp-feature-point-02-block__list-item {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__list-item {
      font-size: 0.875rem;
    }
  }
  .p-lp-feature-point-02-block__list-item::before {
    content: "・";
  }
  .p-lp-feature-point-02-block__data-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 16px;
  }
  .p-lp-feature-point-02-block__data-title {
    font-size: 0.875rem;
    background-color: #d9d9d9;
    padding: 3px 16px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__data-title {
      font-size: 0.8125rem;
      width: 145px;
      text-align: center;
      flex-shrink: 0;
      padding: 3px 0;
    }
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__data-data {
      font-size: 0.8125rem;
    }
  }
  .p-lp-feature-point-02-block__content {
    margin-top: 24px;
  }
  .p-lp-feature-point-02-block__content-title {
    background-color: #121d59;
    color: #fff;
    text-align: center;
    font-size: 1.125rem;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__content-title {
      font-size: 0.875rem;
    }
  }
  .p-lp-feature-point-02-block__content-desc {
    margin-top: 16px;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__content-desc {
      font-size: 0.875rem;
      margin-top: 8px;
    }
  }
  .p-lp-feature-point-02-block__access {
    display: flex;
    margin-top: 16px;
    gap: 8px;
    align-items: center;
  }
  .p-lp-feature-point-02-block__access-desc {
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-block__access-desc {
      font-size: 0.8125rem;
    }
  }
  .p-lp-feature-point-02-carousel {
    position: relative;
    margin-top: 72px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-carousel {
      margin-top: 40px;
    }
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-carousel__header {
      padding: 0 16px;
    }
  }
  .p-lp-feature-point-02-carousel__wrapper {
    margin-top: 16px;
    padding-bottom: 8px;
  }
  .p-lp-feature-point-02-carousel__navigation {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 11;
    display: flex;
    gap: 24px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-carousel__navigation {
      position: static;
      justify-content: center;
      margin-top: 16px;
    }
  }
  .p-lp-feature-point-02-carousel__prev, .p-lp-feature-point-02-carousel__next {
    padding: 0;
    border: none;
    background: none;
    color: #121d59;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .p-lp-feature-point-02-carousel__prev:hover, .p-lp-feature-point-02-carousel__next:hover {
      opacity: 0.7;
    }
  }
  .p-lp-feature-point-02-card {
    box-shadow: 8px 0px 24px 0px rgba(0, 0, 0, 0.06);
    border-radius: 6px;
    height: 100%;
    opacity: 0.5;
    transition: opacity 300ms ease;
  }
  .swiper-slide-active .p-lp-feature-point-02-card {
    opacity: 1;
  }
  .p-lp-feature-point-02-card__header-img {
    border-radius: 6px 6px 0 0;
  }
  .p-lp-feature-point-02-card__body {
    padding: 8px 38px 18px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-card__body {
      padding: 16px;
    }
  }
  .p-lp-feature-point-02-card__title {
    text-align: center;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.75;
  }
  .p-lp-feature-point-02-card__desc {
    line-height: 1.75;
    font-size: 0.875rem;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-02-card__desc {
      margin-top: 8px;
      font-size: 0.8125rem;
    }
  }
  .p-lp-feature-point-03 {
    margin-top: 92px;
    max-width: 980px;
    margin-inline: auto;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03 {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-03-feature {
    margin-top: 40px;
  }
  .p-lp-feature-point-03-feature__body {
    margin-top: 24px;
    gap: 54px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-feature__body {
      gap: 24px;
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-feature-block {
      display: grid;
      grid-template-columns: 100px 1fr;
      grid-template-rows: auto 1fr;
      grid-template-areas: "thumb title" "thumb desc";
      gap: 0 18px;
    }
  }
  .p-lp-feature-point-03-feature-block__thumb {
    text-align: center;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-feature-block__thumb {
      grid-area: thumb;
    }
  }
  .p-lp-feature-point-03-feature-block__thumb-img {
    border-radius: 50%;
    width: 192px;
  }
  .p-lp-feature-point-03-feature-block__title {
    margin-top: 24px;
    text-align: center;
    font-size: 1.25rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-feature-block__title {
      grid-area: title;
      margin-top: 16px;
      font-size: 1.125rem;
      margin-top: 0;
      text-align: left;
    }
  }
  .p-lp-feature-point-03-feature-block__desc {
    margin-top: 16px;
    line-height: 1.75;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-feature-block__desc {
      grid-area: desc;
      margin-top: 16px;
      font-size: 0.875rem;
    }
  }
  .p-lp-feature-point-03-example {
    margin-top: 84px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-example {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-03-example__desc {
    text-align: center;
    font-size: 1rem;
    font-weight: 500;
    margin-top: 8px;
  }
  .p-lp-feature-point-03-example__body {
    margin-top: 32px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-example__body {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .p-lp-feature-point-03-example-block__thumb {
    text-align: center;
  }
  .p-lp-feature-point-03-example-block__thumb-img {
    border-radius: 50%;
    width: 192px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-example-block__thumb-img {
      width: 120px;
    }
  }
  .p-lp-feature-point-03-example-block__label {
    text-align: center;
    margin-top: 8px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-example-block__label {
      font-size: 0.875rem;
    }
  }
  .p-lp-feature-point-03-carousel {
    position: relative;
    margin-top: 84px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-carousel {
      margin-top: 40px;
    }
  }
  .p-lp-feature-point-03-carousel__wrapper {
    margin-top: 24px;
  }
  .p-lp-feature-point-03-carousel__navigation {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 11;
    display: flex;
    gap: 24px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-carousel__navigation {
      position: static;
      margin-top: 16px;
      justify-content: center;
    }
  }
  .p-lp-feature-point-03-carousel__prev, .p-lp-feature-point-03-carousel__next {
    padding: 0;
    border: none;
    background: none;
    cursor: pointer;
    color: #121d59;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .p-lp-feature-point-03-carousel__prev:hover, .p-lp-feature-point-03-carousel__next:hover {
      opacity: 0.7;
    }
  }
  .p-lp-feature-point-03-carousel-block__header {
    position: relative;
  }
  .p-lp-feature-point-03-carousel-block__header-img {
    border-radius: 6px;
  }
  .p-lp-feature-point-03-carousel-block__category {
    position: absolute;
    left: 10px;
    top: 10px;
    padding: 6px 21px;
    background-color: #fff;
    border-radius: 4px;
    border: 1px solid #707070;
    line-height: 1.4;
    font-size: 0.875rem;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-carousel-block__category {
      font-size: 0.875rem;
      padding: 4px 16px;
    }
  }
  .p-lp-feature-point-03-carousel-block__body {
    margin-top: 24px;
  }
  .p-lp-feature-point-03-carousel-block__title {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-carousel-block__title {
      font-size: 1rem;
    }
  }
  .p-lp-feature-point-03-carousel-block__title-left {
    padding: 0 20px;
    color: #fff;
    font-weight: 500;
    border-radius: 20px;
    background-color: #ff6600;
    line-height: 2;
  }
  .p-lp-feature-point-03-carousel-block__title-right {
    padding: 0 20px;
    color: #fff;
    font-weight: 500;
    border-radius: 20px;
    background-color: #121d59;
    line-height: 2;
  }
  .p-lp-feature-point-03-carousel-block__desc {
    line-height: 2;
    text-align: center;
    margin-top: 24px;
  }
  @media (width <= 768px) {
    .p-lp-feature-point-03-carousel-block__desc {
      margin-top: 16px;
      font-size: 0.8125rem;
      text-align: left;
    }
  }
  .p-lp__release {
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .p-lp__release {
      margin-top: 64px;
      padding: 0 var(--padding-side);
    }
  }
  .p-lp-release {
    max-width: 730px;
    margin-inline: auto;
    background-color: #fff;
    border-radius: 6px;
    display: flex;
    gap: 40px;
    padding: 24px 32px;
    box-shadow: 0px 4px 34px 0px rgba(0, 0, 0, 0.15);
  }
  @media (width <= 768px) {
    .p-lp-release {
      flex-direction: column;
      gap: 16px;
      padding: 15px 12px;
    }
  }
  .p-lp-release__header {
    flex-shrink: 0;
  }
  .p-lp-release__label {
    color: #ff6600;
    font-family: "Syncopate", sans-serif;
    font-size: 1.75rem;
    text-transform: uppercase;
  }
  @media (width <= 768px) {
    .p-lp-release__label {
      font-size: 1.5rem;
    }
  }
  .p-lp-release__title {
    color: #ff6600;
    margin-top: 8px;
    font-size: 0.875rem;
    font-weight: 700;
  }
  @media (width <= 768px) {
    .p-lp-release__title {
      font-size: 0.75rem;
    }
  }
  .p-lp-release__entry-link {
    text-decoration: none;
    color: #222;
    transition: color 300ms ease;
  }
  @media (any-hover: hover) {
    .p-lp-release__entry-link:hover {
      color: #ff6600;
    }
  }
  .p-lp-release__entry-date {
    font-size: 0.75rem;
    font-family: "Poppins", sans-serif;
  }
  @media (width <= 768px) {
    .p-lp-release__entry-date {
      font-size: 0.625rem;
    }
  }
  .p-lp-release__entry-title {
    text-decoration: underline;
    margin-top: 8px;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-release__entry-title {
      font-size: 0.875rem;
      margin-top: 4px;
    }
  }
  .p-lp__photo {
    overflow: hidden;
    padding-top: 80px;
    padding-bottom: 80px;
  }
  @media (width <= 768px) {
    .p-lp__photo {
      padding-top: 40px;
      padding-bottom: 40px;
      background-color: #fff;
    }
  }
  .p-lp-photo {
    --swiper-wrapper-transition-timing-function: linear;
  }
  .p-lp-cv {
    position: relative;
    z-index: 1;
  }
  .p-lp-cv::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 85px;
    z-index: -1;
    background-color: #f9f8fb;
  }
  .p-lp-cv__inner {
    display: flex;
    align-items: flex-end;
    border-radius: 6px;
    background: 50% 50% no-repeat;
    background-size: cover;
    color: #fff;
    box-shadow: 0px 14px 24px 0px rgba(0, 0, 0, 0.25);
    padding: 0 var(--padding-side);
  }
  @media (width >= 769px) {
    .p-lp-cv__inner {
      aspect-ratio: 1476/553;
      background-image: url(../images/common/cv_bg_cover.webp);
    }
  }
  @media (width <= 768px) {
    .p-lp-cv__inner {
      aspect-ratio: 375/427;
      padding: 16.2666666667vw 24px 0;
      background-image: url(../images/common/cv_bg_cover_sp.webp);
    }
  }
  .p-lp-cv__body {
    max-width: 1230px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 6.9010416667vw;
  }
  @media (width <= 768px) {
    .p-lp-cv__body {
      padding-bottom: 50.9333333333vw;
    }
  }
  .p-lp-cv__title {
    font-weight: 700;
    line-height: 1;
    font-size: max(2.34375vw, 1rem);
  }
  @media (width <= 768px) {
    .p-lp-cv__title {
      font-size: 1.25rem;
      text-align: center;
    }
  }
  .p-lp-cv__desc {
    margin-top: 22px;
    font-weight: 500;
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-lp-cv__desc {
      margin-top: 12px;
      font-size: 0.8125rem;
      line-height: 1.75;
    }
  }
  .p-lp-cv__button {
    margin-top: 22px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
  }
  @media (width <= 768px) {
    .p-lp-cv__button {
      gap: 12px;
      margin: 12px auto 0;
      display: grid;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
    }
  }
  @media (width <= 768px) {
    .p-lp-cv__contact {
      display: flex;
      gap: 8px;
      align-items: center;
      justify-content: center;
    }
  }
  .p-lp-cv__contact-phone__link {
    display: flex;
    gap: 6px;
    align-items: center;
    color: #fff;
    text-decoration: none;
  }
  .p-lp-cv__contact-phone__label {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1;
    font-family: "Poppins", sans-serif;
  }
  .p-lp-cv__contact-hour {
    font-size: 0.6875rem;
    line-height: normal;
  }
  @media (width >= 769px) {
    .p-lp-cv__contact-hour {
      margin-top: 4px;
    }
  }
  .p-lp__faq {
    background-color: #fff;
    padding: 100px var(--padding-side);
  }
  @media (width <= 768px) {
    .p-lp__faq {
      padding-top: 46px;
      padding-bottom: 46px;
    }
  }
  .p-lp-faq {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-lp-faq__title {
    text-align: center;
    font-size: 1.75rem;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-faq__title {
      font-size: 1.5rem;
    }
  }
  .p-lp-faq__body {
    margin-top: 64px;
  }
  @media (width <= 768px) {
    .p-lp-faq__body {
      margin-top: 24px;
    }
  }
  .p-lp-faq-block {
    border-top: 1px solid #222;
  }
  .p-lp-faq-block:last-child {
    border-bottom: 1px solid #222;
  }
  .p-lp-faq-block__header {
    padding: 32px 0;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__header {
      padding: 16px 0;
    }
  }
  .p-lp-faq-block__button {
    position: relative;
    width: 100%;
    text-align: left;
    display: flex;
    padding-left: 40px;
    background: none;
    border: none;
    color: #222;
    gap: 8px;
    cursor: pointer;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__button {
      padding-left: 32px;
    }
  }
  .p-lp-faq-block__button::after {
    content: "Q.";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 1.25rem;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__button::after {
      font-size: 1rem;
    }
  }
  .p-lp-faq-block__icon {
    transition: transform 300ms ease;
  }
  .p-lp-faq-block__button.is-expanded .p-lp-faq-block__icon {
    transform: rotate(180deg);
  }
  .p-lp-faq-block__label {
    flex-grow: 1;
    font-size: 1.25rem;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__label {
      font-size: 1rem;
    }
  }
  .p-lp-faq-block__answer {
    position: relative;
    padding-bottom: 32px;
    padding-left: 40px;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__answer {
      padding-bottom: 16px;
      padding-left: 32px;
    }
  }
  .p-lp-faq-block__answer::after {
    content: "A.";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 1.25rem;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__answer::after {
      font-size: 1rem;
    }
  }
  .p-lp-faq-block__desc {
    font-size: 1.25rem;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-lp-faq-block__desc {
      font-size: 1rem;
    }
  }
  .p-lp__column {
    overflow: hidden;
    padding: 100px var(--padding-side);
    background: url("../images/common/footer_bg_noise.webp") lightgray 0% 0%/60px 60px, #fff;
    background-blend-mode: darken, normal;
  }
  @media (width <= 768px) {
    .p-lp__column {
      padding-top: 34px;
      padding-bottom: 34px;
    }
  }
  .p-lp-column {
    position: relative;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-lp-column__body {
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .p-lp-column__body {
      margin-top: 24px;
    }
  }
  .p-lp-column__footer {
    position: absolute;
    right: 0;
    top: 0;
  }
  @media (width <= 768px) {
    .p-lp-column__footer {
      position: static;
      margin-top: 24px;
    }
  }
  .p-lp-column-carousel__wrapper {
    padding-bottom: 16px;
  }
  @media (width >= 1025px) {
    .p-lp-column-carousel__navigation {
      display: none;
    }
  }
  @media (width <= 1024px) {
    .p-lp-column-carousel__navigation {
      display: flex;
      justify-content: center;
      gap: 36px;
      margin-top: 8px;
    }
  }
  .p-lp-column-carousel__prev, .p-lp-column-carousel__next {
    padding: 0;
    background: none;
    border: none;
    margin: 0;
    color: #121d59;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .p-lp-column-carousel__prev:hover, .p-lp-column-carousel__next:hover {
      opacity: 0.7;
    }
  }
  .p-lp__philosophy {
    position: relative;
    z-index: 1;
    padding: 64px var(--padding-side);
    background: 50% 50% no-repeat;
    background-size: cover;
  }
  @media (width >= 769px) {
    .p-lp__philosophy {
      background-image: url(../images/lp/philosophy_bg_cover.webp);
    }
  }
  @media (width <= 768px) {
    .p-lp__philosophy {
      background-image: url(../images/lp/philosophy_bg_cover_sp.webp);
      background-position: 50% 100%;
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }
  .p-lp-philosophy {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-lp-philosophy__logo {
    width: 387px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__logo {
      width: 240px;
    }
  }
  .p-lp-philosophy__logo-img {
    width: 100%;
  }
  .p-lp-philosophy__title {
    margin-top: 24px;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__title {
      margin-top: 16px;
      font-size: 1.25rem;
    }
  }
  .p-lp-philosophy__lead {
    text-align: center;
    margin-top: 24px;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__lead {
      margin-top: 16px;
    }
  }
  .p-lp-philosophy__desc {
    margin-top: 24px;
    line-height: 1.75;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__desc {
      font-size: 0.8125rem;
    }
  }
  .p-lp-philosophy__data {
    margin-top: 24px;
  }
  .p-lp-philosophy__table {
    width: 100%;
    border-left: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
  }
  .p-lp-philosophy__table th,
  .p-lp-philosophy__table td {
    padding: 24px 30px;
    vertical-align: middle;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__table th,
    .p-lp-philosophy__table td {
      padding: 16px 10px;
      font-size: 0.875rem;
    }
  }
  .p-lp-philosophy__table th {
    background-color: #ebebeb;
    border-top: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9;
    width: 200px;
    text-align: left;
  }
  @media (width <= 768px) {
    .p-lp-philosophy__table th {
      width: 110px;
      font-size: 0.8125rem;
    }
  }
  .p-lp-philosophy__table td {
    background-color: #fff;
    border-top: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9;
  }
  .p-lp-philosophy__caption {
    text-align: right;
    color: #fff;
    margin-top: 8px;
    font-size: 0.875rem;
  }
  .p-lp-philosophy__button {
    margin-top: 24px;
  }
}
@media (width <= 768px) {
  .p-lp-feature-point-02-carousel {
    margin-inline: -16px;
  }
}

@media (width <= 768px) {
  .p-lp-feature-point-03-carousel {
    margin-inline: -16px;
  }
}

@media (width <= 768px) {
  .p-lp-column-carousel {
    overflow: visible;
  }
}
.p-lp-column-carousel__slide {
  height: auto;
}
.p-lp-column-carousel__slide .c-card {
  height: 100%;
}

@layer pages {
  .p-notfound__desc {
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-notfound__desc {
      font-size: 0.875rem;
    }
  }
  .p-notfound__desc:not(:first-child) {
    margin-top: 24px;
  }
  .p-notfound__button {
    margin-top: 60px;
  }
  @media (width <= 768px) {
    .p-notfound__button {
      margin-top: 40px;
    }
  }
}
@layer pages {
  .p-top {
    container-type: inline-size;
  }
  .p-top__mv {
    position: relative;
    padding: 40px var(--padding-side) 68px;
  }
  @media (width <= 768px) {
    .p-top__mv {
      padding-top: 24px;
      padding-bottom: 8px;
    }
  }
  .p-top__mv-marquee {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .p-top__mv-scroll {
    position: absolute;
    bottom: 0;
    left: 34px;
    z-index: 1;
    color: #fff;
    padding-bottom: 72px;
  }
  @media (width <= 1024px) {
    .p-top__mv-scroll {
      display: none;
    }
  }
  .p-top__mv-scroll::after {
    content: "";
    width: 1px;
    height: 69px;
    background-color: #fff;
    position: absolute;
    left: 4px;
    bottom: 0;
  }
  .p-top__mv-scroll__label {
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    font-family: "Poppins", sans-serif;
    font-size: 0.75rem;
    line-height: 1;
    letter-spacing: 0.04em;
  }
  .p-top-mv {
    position: relative;
    z-index: 1;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
    color: #fff;
  }
  .p-top-mv__inner {
    display: grid;
    grid-template-columns: 44% 56%;
    align-items: start;
  }
  @media (width <= 1024px) {
    .p-top-mv__inner {
      grid-template-columns: 1fr;
      gap: 35px;
    }
  }
  @media (width <= 768px) {
    .p-top-mv__inner {
      display: block;
    }
  }
  @media (width <= 768px) {
    .p-top-mv__header {
      padding: 0 12px;
    }
  }
  .p-top-mv__title {
    font-size: min(3.6458333333vw, 3.5rem);
    font-weight: 700;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-top-mv__title {
      font-size: 2.25rem;
    }
  }
  .p-top-mv__desc {
    line-height: 1.75;
    margin-top: 40px;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-top-mv__desc {
      font-size: 0.875rem;
      margin-top: 32px;
    }
  }
  .p-top-mv__button {
    margin-top: 48px;
  }
  @media (width <= 768px) {
    .p-top-mv__button {
      margin-top: 32px;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin-inline: auto;
    }
  }
  .p-top-mv__body {
    position: relative;
    padding-left: 60px;
  }
  @media (width <= 768px) {
    .p-top-mv__body {
      padding-left: 0;
      margin-top: 35px;
    }
  }
  .p-top-mv-carousel__navigation {
    position: absolute;
    left: 0;
    bottom: 0;
    display: grid;
    gap: 24px;
    padding-bottom: 40px;
  }
  @media (width <= 768px) {
    .p-top-mv-carousel__navigation {
      position: static;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 20px;
      padding-bottom: 0;
    }
  }
  .p-top-mv-carousel__prev, .p-top-mv-carousel__next {
    padding: 0;
    margin: 0;
    background: none;
    border: none;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .p-top-mv-carousel__prev:hover, .p-top-mv-carousel__next:hover {
      opacity: 0.7;
    }
  }
  .p-top-mv-carousel__pages {
    position: absolute;
    left: 0;
    text-align: center;
    width: 100%;
    bottom: 0;
    font-size: 0.75rem;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-top-mv-carousel__pages {
      width: auto;
      position: static;
    }
  }
  .p-top__pickup {
    overflow: hidden;
    margin-top: 76px;
    padding: 0 var(--padding-side);
  }
  @media (width <= 768px) {
    .p-top__pickup {
      margin-top: 64px;
      padding-bottom: 50px;
    }
  }
  .p-top-pickup {
    position: relative;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
    color: #fff;
  }
  .p-top-pickup__body {
    margin-top: 56px;
  }
  @media (width <= 768px) {
    .p-top-pickup__body {
      margin-top: 36px;
    }
  }
  .p-top__search {
    position: relative;
    padding: 0 var(--padding-side) 0;
    margin-top: 107px;
  }
  @media (width <= 768px) {
    .p-top__search {
      display: none;
    }
  }
  .p-top__search::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    bottom: 0;
    z-index: -1;
    background-color: #f9f8fb;
  }
  .p-top-search {
    position: relative;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-top__latest {
    padding: 152px var(--padding-side) 150px;
    background-color: #f9f8fb;
  }
  @media (width <= 768px) {
    .p-top__latest {
      padding-top: 74px;
      padding-bottom: 60px;
    }
  }
  .p-top-latest {
    position: relative;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-top-latest__body {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 54px;
  }
  @media (width <= 768px) {
    .p-top-latest__body {
      grid-template-columns: repeat(1, 1fr);
      gap: 32px;
      margin-top: 36px;
    }
  }
  .p-top-latest__footer {
    margin-top: 69px;
  }
  @media (width <= 768px) {
    .p-top-latest__footer {
      margin-top: 36px;
    }
  }
  .p-top-aboutus {
    background: 50% 50% no-repeat;
    background-size: cover;
    padding: 75px var(--padding-side) 95px;
  }
  @media (width >= 769px) {
    .p-top-aboutus {
      background-image: url(../images/top/aboutus_img_cover.webp);
    }
  }
  @media (width <= 768px) {
    .p-top-aboutus {
      padding: 137px 24px 37px;
      background-image: url(../images/top/aboutus_img_cover_sp.webp);
    }
  }
  .p-top-aboutus__title {
    font-size: 2rem;
    font-weight: 700;
    color: #ff6600;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-top-aboutus__title {
      font-size: 1.125rem;
      text-align: center;
    }
  }
  .p-top-aboutus__desc {
    margin-top: 22px;
    font-size: 1rem;
    font-weight: 500;
    line-height: 2;
  }
  @media (width <= 768px) {
    .p-top-aboutus__desc {
      margin-top: 19px;
      font-size: 0.8125rem;
      line-height: 1.75;
    }
  }
  .p-top-aboutus__button {
    margin-top: 22px;
  }
  @media (width <= 768px) {
    .p-top-aboutus__button {
      margin-top: 19px;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin-left: auto;
      margin-right: auto;
    }
  }
  .p-top__ranking {
    overflow: hidden;
    padding: 109px var(--padding-side) 111px;
    background: url("../images/common/footer_bg_noise.webp") 0% 0%/60px 60px, radial-gradient(100% 100% at 0% 0%, #31287a 0%, #110b3e 100%);
    background-blend-mode: darken, normal;
    color: #fff;
  }
  @media (width <= 768px) {
    .p-top__ranking {
      padding-top: 60px;
      padding-bottom: 60px;
    }
  }
  .p-top-ranking {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (width <= 768px) {
    .p-top-ranking__header {
      padding: 0 12px;
    }
  }
  .p-top-ranking__body {
    position: relative;
    margin-top: 76px;
  }
  @media (width <= 1024px) {
    .p-top-ranking__body {
      padding-left: 60px;
    }
  }
  @media (width <= 768px) {
    .p-top-ranking__body {
      padding-left: 0;
      margin-top: 32px;
    }
  }
  .p-top-ranking-carousel__navigation {
    position: absolute;
    left: -60px;
    bottom: 0;
    display: grid;
    gap: 24px;
    padding-bottom: 40px;
  }
  @media (width <= 1024px) {
    .p-top-ranking-carousel__navigation {
      left: 0;
    }
  }
  @media (width <= 768px) {
    .p-top-ranking-carousel__navigation {
      position: static;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 20px;
      padding-bottom: 0;
    }
  }
  .p-top-ranking-carousel__prev, .p-top-ranking-carousel__next {
    padding: 0;
    margin: 0;
    background: none;
    border: none;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  @media (any-hover: hover) {
    .p-top-ranking-carousel__prev:hover, .p-top-ranking-carousel__next:hover {
      opacity: 0.7;
    }
  }
  .p-top-ranking-carousel__pages {
    position: absolute;
    left: 0;
    text-align: center;
    width: 100%;
    bottom: 0;
    font-size: 0.75rem;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
  }
  @media (width <= 768px) {
    .p-top-ranking-carousel__pages {
      width: auto;
      position: static;
    }
  }
  .p-top__category {
    padding: 130px var(--padding-side) 0;
    background-color: #f9f8fb;
  }
  @media (width <= 768px) {
    .p-top__category {
      padding-top: 60px;
    }
  }
  .p-top-category {
    position: relative;
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-top-category__body {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(226px, 1fr));
    gap: 20px;
    margin-top: 32px;
  }
  @media (width <= 768px) {
    .p-top-category__body {
      grid-template-columns: repeat(1, 1fr);
      margin-top: 36px;
      gap: 12px;
    }
  }
  .p-top-category__footer {
    position: absolute;
    right: 0;
    top: 0;
  }
  @media (width <= 768px) {
    .p-top-category__footer {
      position: static;
      margin-top: 36px;
    }
  }
  .p-top__cover {
    position: fixed;
    inset: 0;
    z-index: -100;
  }
  .p-top__cover-video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
}
.p-top-mv-carousel {
  position: relative;
}
.p-top-ranking-carousel {
  position: relative;
}
@layer pages {
  .p-column-single-relation {
    overflow: hidden;
    margin-top: 100px;
    background-color: #fff;
    padding: 80px var(--padding-side);
  }
  @media (width <= 768px) {
    .p-column-single-relation {
      margin-top: 60px;
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }
  .p-column-single-relation__inner {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-column-single-relation__content + .p-column-single-relation__content {
    margin-top: 64px;
  }
  @media (width <= 768px) {
    .p-column-single-relation__content + .p-column-single-relation__content {
      margin-top: 54px;
    }
  }
  .p-column-single-relation__content-body {
    margin-top: 24px;
  }
}
@layer pages {
  .p-contact-thanks-message__title {
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.4;
  }
  @media (width <= 768px) {
    .p-contact-thanks-message__title {
      font-size: 1.75rem;
    }
  }
  .p-contact-thanks-message__desc {
    margin-top: 20px;
    font-size: 1.25rem;
    line-height: 2;
    text-align: center;
  }
  @media (width <= 768px) {
    .p-contact-thanks-message__desc {
      text-align: left;
      font-size: 1rem;
    }
  }
  .p-contact-thanks__asap {
    margin-top: 20px;
  }
  .p-contact-thanks__button {
    margin-top: 60px;
  }
  @media (width <= 768px) {
    .p-contact-thanks__button {
      margin-top: 40px;
    }
  }
}
/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --spacing: 0.25rem;
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.visible {
  visibility: visible;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed;
}

.relative {
  position: relative;
}

.static {
  position: static;
}

.-col-2 {
  grid-column: -2;
}

.container {
  width: 100%;
}
@media (width >= 40rem) {
  .container {
    max-width: 40rem;
  }
}
@media (width >= 48rem) {
  .container {
    max-width: 48rem;
  }
}
@media (width >= 64rem) {
  .container {
    max-width: 64rem;
  }
}
@media (width >= 80rem) {
  .container {
    max-width: 80rem;
  }
}
@media (width >= 96rem) {
  .container {
    max-width: 96rem;
  }
}

.block {
  display: block;
}

.contents {
  display: contents;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.inline {
  display: inline;
}

.table {
  display: table;
}

.h-auto {
  height: auto;
}

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

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

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

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

.resize {
  resize: both;
}

.italic {
  font-style: italic;
}

.shadow {
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

.filter {
  filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
}

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

.ease-out {
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
}

.\[hostname\:port\] {
  hostname: port;
}

.backface-hidden {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media (width < 48rem) {
  .max-md\:hidden {
    display: none;
  }
}

@media (width < 48rem) {
  .max-md\:size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
}

@media (width < 48rem) {
  .max-md\:size-\[30px\] {
    width: 30px;
    height: 30px;
  }
}

@media (width < 48rem) {
  .max-md\:w-4 {
    width: calc(var(--spacing) * 4);
  }
}

@media (width >= 48rem) {
  .md\:hidden {
    display: none;
  }
}

@media (width >= 48rem) {
  .md\:w-\[340px\] {
    width: 340px;
  }
}

@media (width >= 48rem) {
  .md\:w-\[480px\] {
    width: 480px;
  }
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 rgba(0, 0, 0, 0);
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 rgba(0, 0, 0, 0);
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 rgba(0, 0, 0, 0);
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 rgba(0, 0, 0, 0);
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 rgba(0, 0, 0, 0);
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    ::-ms-backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-ease: initial;
    }
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-ease: initial;
    }
  }
}