/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 10px;
}

body {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 400;
  font-style: normal;
  color: var(--wp--preset--color--primary, #0e1b39);
  background-color: var(--wp--preset--color--bg-primary, #f4f5f5);
}

@media (max-width: 768px) {
  .pc,
  .is-pc,
  .pc-only {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .sp,
  .is-sp,
  .sp-only {
    display: none !important;
  }
}

.container-774 {
  width: 100%;
  max-width: 85.4rem;
  margin: 0 auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.container-88 {
  width: 100%;
  max-width: 96rem;
  margin: 0 auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.container-sm {
  width: 100%;
  max-width: 100rem;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

.container-xsl {
  width: 100%;
  max-width: 137.6rem;
  margin: 0 auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.container {
  width: 100%;
  max-width: 128rem;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

.container1 {
  width: 100%;
  max-width: 130rem;
  margin: 0 auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.container2 {
  width: 100%;
  max-width: 132rem;
  margin: 0 auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.container-lg {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-lg2 {
  width: 100%;
  max-width: 100rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-lg3 {
  width: 100%;
  max-width: 116rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-xsm {
  width: 100%;
  max-width: 91.6rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-xs {
  width: 100%;
  max-width: 88rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-2lg {
  width: 100%;
  max-width: 128rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-xl {
  width: 100%;
  max-width: 131.2rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.container-xxl {
  width: 100%;
  max-width: 130rem;
  margin: 0 auto;
  padding-left: 3rem;
  padding-right: 3rem;
}

.container-xml {
  width: 100%;
  max-width: 126.4rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

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

.container-md {
  width: 100%;
  max-width: 71.6rem;
  margin: 0 auto;
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.mt-10 {
  margin-top: 1rem;
}

.bg-dark {
  background-color: var(--wp--preset--color--bg-dark, #eae8e5);
}

.align-items-start {
  align-items: start !important;
}

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

@keyframes scrollDiamondMove {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) translateY(0) rotate(45deg) scale(0.5);
  }
  20% {
    opacity: 1;
    transform: translate(-50%, -50%) translateY(calc(var(--scroll-line-h) * 0.14)) rotate(45deg) scale(1);
  }
  60% {
    opacity: 1;
    transform: translate(-50%, -50%) translateY(calc(var(--scroll-line-h) * 0.86)) rotate(45deg) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) translateY(var(--scroll-line-h)) rotate(45deg) scale(1);
  }
}
.header {
  position: fixed;
  top: 4.2rem;
  left: 0;
  right: 0;
  z-index: 100;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  background: transparent;
  pointer-events: none;
  transition: transform 0.35s ease;
  /* Logo Area */
  /* Right Section (Nav + Buttons / Hamburger) */
  /* PC Navigation */
  /* PC Dropdown Menu */
  /* PC Buttons (Header CTA) */
  /* SP Hamburger Button (50px x 50px) */
  /* SP Drawer Menu Panel (965px total content background #F0E7CF) */
}
.header.is-hidden {
  transform: translateY(calc(-100% - 5rem));
}
body.admin-bar .header {
  top: calc(4.2rem + 32px);
}
body.admin-bar .header.is-hidden {
  transform: translateY(calc(-100% - 8rem));
}
@media (max-width: 1280px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 5rem;
    background: var(--wp--preset--color--bg-primary, #f4f5f5);
    pointer-events: auto;
    z-index: 1000;
  }
  .header.is-hidden {
    transform: translateY(-100%);
  }
  body.admin-bar .header {
    top: 3.2rem;
  }
}
@media screen and (max-width: 1280px) and (max-width: 782px) {
  body.admin-bar .header {
    top: 4.6rem;
  }
}
@media (max-width: 1280px) {
  body.admin-bar .header.is-hidden {
    transform: translateY(-200%);
  }
}
.header__inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: calc(100% - 2rem);
  max-width: 138rem;
  height: 8rem;
  padding: 0 0 0 2rem;
  margin: 0 auto;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  box-shadow: 0 0 1.4rem rgba(22, 39, 76, 0.2);
  pointer-events: auto;
}
@media (max-width: 1280px) {
  .header__inner {
    width: 100%;
    max-width: 100%;
    height: 5rem;
    padding: 0;
    box-shadow: none;
    background: var(--wp--preset--color--bg-primary, #f4f5f5);
  }
}
.header__logo {
  display: flex;
  align-items: center;
  width: 30rem;
  height: 4rem;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .header__logo {
    width: calc(100% - 5rem);
    height: 5rem;
    padding-left: 1rem;
  }
}
.header__logo .wp-block-site-logo {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.header__logo .wp-block-site-logo .custom-logo-link {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.header__logo .wp-block-site-logo .custom-logo {
  width: 100%;
  max-width: var(--logo-width-pc, 30rem);
  height: 4rem;
  object-fit: contain;
  object-position: left center;
}
@media (max-width: 1280px) {
  .header__logo .wp-block-site-logo .custom-logo {
    max-width: var(--logo-width-sp, 26rem);
    height: 3.6rem;
  }
}
.header__right {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 3rem;
  height: 8rem;
  padding: 1rem 1rem 1rem 0;
}
body.no-btn-entry .header__right {
  padding-right: 2rem;
}
@media (max-width: 1280px) {
  .header__right {
    gap: 0;
    height: 5rem;
    padding: 0;
  }
}
.header__nav-wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 3rem;
}
@media (max-width: 1280px) {
  .header__nav-wrap {
    display: none;
  }
}
.header__nav {
  display: flex;
  align-items: center;
}
.header__nav-list {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.header__nav-item {
  position: relative;
}
.header__nav-item.is-active > .header__nav-link, .header__nav-item.current-menu-item > .header__nav-link, .header__nav-item.current-menu-ancestor > .header__nav-link, .header__nav-item.current_page_item > .header__nav-link {
  color: var(--wp--preset--color--gold, #f0b211);
}
.header__nav-item.is-active > .header__nav-link .header__nav-arrow, .header__nav-item.current-menu-item > .header__nav-link .header__nav-arrow, .header__nav-item.current-menu-ancestor > .header__nav-link .header__nav-arrow, .header__nav-item.current_page_item > .header__nav-link .header__nav-arrow {
  background-color: var(--wp--preset--color--gold, #f0b211);
}
.header__nav-item:hover > .header__nav-link {
  color: var(--wp--preset--color--primary, #0e1b39);
  opacity: 0.5;
}
.header__nav-item:hover > .header__nav-link .header__nav-arrow {
  background-color: var(--wp--preset--color--primary, #0e1b39);
}
.header__nav-item:hover > .header__nav-link::after {
  background-color: var(--wp--preset--color--primary, #0e1b39);
  transform: scaleX(1);
}
.header__nav-item.has-dropdown:hover .header__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header__nav-item.has-dropdown:hover .header__nav-arrow {
  transform: rotate(180deg);
}
.header__nav-link {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: opacity 0.3s ease, color 0.3s ease;
}
.header__nav-link.is-active {
  color: var(--wp--preset--color--gold, #f0b211);
}
.header__nav-link.is-active .header__nav-arrow {
  background-color: var(--wp--preset--color--gold, #f0b211);
}
.header__nav-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #0e1b39;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 0.3s ease;
}
.header__nav-link:hover {
  color: var(--wp--preset--color--primary, #0e1b39);
  opacity: 0.5;
}
.header__nav-link:hover .header__nav-arrow {
  background-color: var(--wp--preset--color--primary, #0e1b39);
}
.header__nav-link:hover::after {
  background-color: var(--wp--preset--color--primary, #0e1b39);
  transform: scaleX(1);
}
.header__nav-arrow {
  display: inline-block;
  width: 1.04rem;
  height: 0.6rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  transition: transform 0.3s ease, background-color 0.3s ease;
  flex-shrink: 0;
}
.header__dropdown {
  position: absolute;
  top: calc(100% + 1.35rem);
  left: 0;
  width: 14rem;
  min-width: 14rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  background: color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 90%, transparent);
  box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.04);
  list-style: none;
  margin: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(0.5rem);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
  z-index: 110;
}
.header__dropdown::before {
  content: "";
  position: absolute;
  top: -1.35rem;
  left: 0;
  width: 100%;
  height: 1.35rem;
}
.header__dropdown-item {
  width: 100%;
  margin: 0;
}
.header__dropdown-link {
  display: flex;
  align-items: center;
  width: 100%;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 500;
  font-size: 1rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: opacity 0.2s ease, color 0.2s ease;
}
.header__dropdown-link:hover {
  color: var(--wp--preset--color--primary, #0e1b39);
  opacity: 0.5;
}
.header__btns {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2rem;
  height: 6rem;
}
.header__btn {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  width: 18.2rem;
  height: 6rem;
  padding: 1.5rem 3rem 1.5rem 3.6rem;
  text-decoration: none;
  border: 1px solid var(--wp--preset--color--primary, #0e1b39);
  transition: background-color 0.3s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
.header__btn:hover, .header__btn:active {
  box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
}
.header__btn:hover .header__btn-text,
.header__btn:hover .header__btn-arrow, .header__btn:active .header__btn-text,
.header__btn:active .header__btn-arrow {
  opacity: 0.6;
}
.header__btn-text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--primary, #0e1b39);
  white-space: nowrap;
  transition: opacity 0.2s ease;
}
.header__btn-arrow {
  display: block;
  width: 1.2rem;
  height: 1.5rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}
.header__btn--white {
  background: var(--wp--preset--color--white, #ffffff);
}
.header__btn--gold {
  background: #f0b211;
}
.header__hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 5rem;
  height: 5rem;
  padding: 0 1.2rem;
  gap: 0.8rem;
  background: #e0b136;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  outline: none;
  transition: background-color 0.3s ease;
}
@media (max-width: 1280px) {
  .header__hamburger {
    display: flex;
  }
}
.header__hamburger-bar {
  display: block;
  width: 2.6rem;
  height: 0.1rem;
  background: var(--wp--preset--color--white, #ffffff);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.header__hamburger-label {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 0.8rem;
  line-height: 88%;
  text-align: center;
  letter-spacing: 0.3em;
  color: var(--wp--preset--color--white, #ffffff);
  margin-left: 0.3em;
}
.header__hamburger.is-active {
  background: #0e1b39;
}
.header__hamburger.is-active .header__hamburger-bar:nth-child(1) {
  transform: translateY(0.45rem) rotate(18deg);
}
.header__hamburger.is-active .header__hamburger-bar:nth-child(2) {
  transform: translateY(-0.45rem) rotate(-18deg);
}
.header__drawer {
  display: none;
}
@media (max-width: 1280px) {
  .header__drawer {
    display: block;
    position: fixed;
    top: 5rem;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: calc(100vh - 5rem);
    height: calc(100dvh - 5rem);
    background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, visibility 0.35s ease;
    z-index: 99;
  }
  body.admin-bar .header__drawer {
    top: calc(5rem + 32px);
    height: calc(100vh - 5rem - 32px);
    height: calc(100dvh - 5rem - 32px);
  }
}
@media (max-width: 1280px) and (max-width: 768px) {
  body.admin-bar .header__drawer {
    top: calc(5rem + 46px);
    height: calc(100vh - 5rem - 46px);
    height: calc(100dvh - 5rem - 46px);
  }
}
@media (max-width: 1280px) {
  .header__drawer.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
.header__drawer-inner {
  box-sizing: border-box;
  width: 100%;
  padding: 4rem 5rem;
  margin: 0 auto;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
}
.header__drawer-content {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.4rem;
  width: 100%;
}
.header__drawer-group {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.4rem;
  width: 100%;
  padding-bottom: 3.4rem;
  border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
}
.header__drawer-group:nth-last-child(2) {
  padding-bottom: 0;
  border-bottom: none;
}
.header__drawer-title-wrap {
  width: 100%;
}
.header__drawer-title {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  display: block;
  transition: color 0.3s ease;
}
.header__drawer-title.is-active, .header__drawer-title.current-menu-item {
  color: var(--wp--preset--color--gold, #f0b211);
}
.header__drawer-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.header__drawer-item {
  display: flex;
  align-items: center;
  width: 100%;
}
.header__drawer-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.header__drawer-link.is-active {
  color: var(--wp--preset--color--primary, #0e1b39);
}
.header__drawer-link:hover {
  opacity: 0.5;
}
.header__drawer-marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0.85rem;
  height: 0.85rem;
  flex-shrink: 0;
}
.header__drawer-marker::before {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
.header__drawer-btns {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.4rem;
  width: 100%;
}
.header__drawer-btn {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  max-width: 27.5rem;
  height: 6rem;
  padding: 1.5rem 3rem 1.5rem 3.6rem;
  border: 1px solid var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: background-color 0.3s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
.header__drawer-btn:hover, .header__drawer-btn:active {
  box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
}
.header__drawer-btn:hover .header__drawer-btn-text,
.header__drawer-btn:hover .header__drawer-btn-arrow, .header__drawer-btn:active .header__drawer-btn-text,
.header__drawer-btn:active .header__drawer-btn-arrow {
  opacity: 0.6;
}
.header__drawer-btn-text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--primary, #0e1b39);
  transition: opacity 0.2s ease;
}
.header__drawer-btn-arrow {
  display: block;
  width: 1.2rem;
  height: 1.5rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}
.header__drawer-btn--white {
  background: var(--wp--preset--color--white, #ffffff);
}
.header__drawer-btn--gold {
  background: #f0b211;
}

/* Ensure WordPress admin bar stays fixed on mobile screens */
#wpadminbar {
  position: fixed !important;
}

@media (max-width: 768px) {
  .site-footer-container {
    padding-bottom: 5rem;
  }
  body.no-btn-entry .site-footer-container, body.page-template-no-entry .site-footer-container, body.page-template-no-entry-html .site-footer-container, body:not(:has(.btn-entry)) .site-footer-container {
    padding-bottom: 0 !important;
  }
}

.footer {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  padding: 12rem 2rem 12rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* Main Menu Box */
  /* Navigation Left */
  /* Divider */
  /* Buttons Right (Header-like Hover & Click Animation) */
  /* Info (Logo + Privacy) */
  /* Page Top Button (Back to Top) */
}
@media (max-width: 991px) {
  .footer {
    padding: 5rem 3rem;
  }
}
.footer__container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 991px) {
  .footer__container {
    gap: 3.4rem;
  }
}
.footer__menu-box {
  box-sizing: border-box;
  width: 100%;
  max-width: 108.5rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  border: 1px solid var(--wp--preset--color--primary, #0e1b39);
  padding: 5.9rem;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .footer__menu-box {
    gap: 4rem;
    padding: 5rem 4rem;
  }
}
@media (max-width: 991px) {
  .footer__menu-box {
    flex-direction: column;
    align-items: flex-start;
    padding: 4rem 5rem;
    gap: 4rem;
    width: 100%;
  }
}
.footer__nav-group {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-grow: 1;
}
@media (max-width: 991px) {
  .footer__nav-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.4rem;
    width: 100%;
  }
}
.footer__nav-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2rem;
  flex-shrink: 0;
}
.footer__nav-col:nth-child(1) {
  width: 12rem;
}
.footer__nav-col:nth-child(3) {
  width: 12rem;
}
.footer__nav-col:nth-child(5) {
  width: 10.8rem;
}
.footer__nav-col:nth-child(7) {
  width: 11.5rem;
}
@media (max-width: 991px) {
  .footer__nav-col {
    width: 100% !important;
    gap: 1.4rem;
  }
}
.footer__nav-divider {
  width: 1px;
  align-self: stretch;
  min-height: 15rem;
  background: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
  flex-shrink: 0;
  margin-left: 2rem;
  margin-right: 4rem;
}
@media (max-width: 1280px) {
  .footer__nav-divider {
    margin-left: 1.2rem;
    margin-right: 2.4rem;
  }
}
@media (max-width: 991px) {
  .footer__nav-divider {
    width: 100%;
    height: 1px;
    min-height: 1px;
    margin: 0;
    align-self: auto;
  }
}
.footer__nav-title {
  display: inline-block;
  width: fit-content;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.5;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  margin: 0;
  transition: opacity 0.2s ease;
}
.footer__nav-title:hover {
  opacity: 0.5;
}
@media (max-width: 991px) {
  .footer__nav-title {
    font-size: 1.4rem;
  }
}
.footer__nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  width: 100%;
}
.footer__nav-item {
  display: flex;
  width: 100%;
}
.footer__nav-item a {
  display: inline-flex;
  align-items: flex-start;
  width: 100%;
  gap: 0.8rem;
  text-decoration: none;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.5;
  color: var(--wp--preset--color--primary, #0e1b39);
  transition: color 0.2s ease;
}
@media (max-width: 991px) {
  .footer__nav-item a {
    gap: 0.4rem;
  }
}
.footer__nav-item a:hover {
  color: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 50%, transparent);
}
.footer__nav-item a:hover .footer__nav-text {
  opacity: 0.5;
}
.footer__nav-item a:hover .footer__nav-bullet {
  opacity: 1;
}
.footer__nav-text {
  word-break: break-all;
  transition: opacity 0.2s ease;
}
.footer__nav-bullet {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0.85rem;
  height: 0.85rem;
  flex-shrink: 0;
  margin-top: 0.45rem;
}
.footer__nav-bullet::before {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
.footer__btn-group {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 26rem;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .footer__btn-group {
    width: 22rem;
    gap: 2rem;
  }
}
@media (max-width: 991px) {
  .footer__btn-group {
    flex-direction: column;
    gap: 1.4rem;
    width: 100%;
  }
}
.footer__btn {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 3rem 1.5rem 3.6rem;
  gap: 1.6rem;
  width: 26rem;
  height: 6rem;
  border: 1px solid var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.3s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
@media (max-width: 1280px) {
  .footer__btn {
    width: 22rem;
    height: 5.4rem;
    padding: 1.2rem 2rem;
  }
}
@media (max-width: 991px) {
  .footer__btn {
    width: 100%;
    height: 4rem;
    padding: 0 1.5rem;
    gap: 1.2rem;
  }
}
.footer__btn:hover, .footer__btn:active {
  box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
}
.footer__btn:hover .footer__btn-text,
.footer__btn:hover .footer__btn-arrow, .footer__btn:active .footer__btn-text,
.footer__btn:active .footer__btn-arrow {
  opacity: 0.6;
}
.footer__btn-text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--primary, #0e1b39);
  white-space: nowrap;
  transition: opacity 0.2s ease;
}
@media (max-width: 1280px) {
  .footer__btn-text {
    font-size: 1.7rem;
  }
}
@media (max-width: 991px) {
  .footer__btn-text {
    font-size: 1.4rem;
  }
}
.footer__btn-arrow {
  display: block;
  width: 1.2rem;
  height: 1.5rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}
@media (max-width: 991px) {
  .footer__btn-arrow {
    width: 0.9rem;
    height: 1.125rem;
  }
}
.footer__btn--white {
  background: var(--wp--preset--color--white, #ffffff);
}
.footer__btn--gold, .footer__btn--yellow {
  background: #f0b211;
}
.footer__info-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
}
@media (max-width: 991px) {
  .footer__info-group {
    gap: 1.4rem;
  }
}
.footer__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30rem;
  height: 4rem;
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .footer__logo {
    width: 26rem;
    height: 3.6rem;
  }
}
.footer__logo .wp-block-site-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.footer__logo .wp-block-site-logo .custom-logo-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.footer__logo .wp-block-site-logo .custom-logo {
  width: 100%;
  max-width: var(--logo-width-pc, 30rem);
  height: 4rem;
  object-fit: contain;
  object-position: center;
}
@media (max-width: 991px) {
  .footer__logo .wp-block-site-logo .custom-logo {
    max-width: var(--logo-width-sp, 26rem);
    height: 3.6rem;
  }
}
.footer__logo img {
  width: 100%;
  max-width: 30rem;
  height: 4rem;
  object-fit: contain;
  object-position: center;
}
@media (max-width: 991px) {
  .footer__logo img {
    max-width: 26rem;
    height: 3.6rem;
  }
}
.footer__privacy {
  display: inline-block;
  width: fit-content;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: opacity 0.2s ease;
}
@media (max-width: 991px) {
  .footer__privacy {
    font-size: 1rem;
  }
}
.footer__privacy:hover {
  opacity: 0.5;
}
.footer__pagetop {
  position: absolute;
  right: 3rem;
  bottom: 3rem;
  width: 9rem;
  height: 9rem;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: opacity 0.3s ease;
  /* SP Responsive (<= 991px - md1) */
}
.footer__pagetop:hover {
  opacity: 0.8;
}
.footer__pagetop-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6rem;
  height: 6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  box-shadow: 0px 0px 14px rgba(22, 39, 76, 0.17);
  transform: translate(-50%, -50%) rotate(45deg);
  z-index: 1;
}
.footer__pagetop-text {
  position: relative;
  z-index: 2;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.15em;
  color: var(--wp--preset--color--white, #ffffff);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  user-select: none;
}
@media (max-width: 991px) {
  .footer__pagetop {
    right: 1rem;
    bottom: 1rem;
    width: 4.5rem;
    height: 4.5rem;
  }
  .footer__pagetop-bg {
    width: 3.2rem;
    height: 3.2rem;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .footer__pagetop-text {
    font-size: 1rem;
    line-height: 1;
  }
}

/* Copyright */
.copyright {
  width: 100%;
  min-height: 9.9rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}
@media (max-width: 991px) {
  .copyright {
    min-height: 5rem;
    height: 5rem;
    padding: 1.5rem;
  }
}
.copyright__text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.52;
  color: var(--wp--preset--color--white, #ffffff);
  letter-spacing: -0.023em;
  text-align: center;
  margin: 0;
}
@media (max-width: 991px) {
  .copyright__text {
    font-size: 1rem;
  }
}

.c-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  width: 100%;
  max-width: 40rem;
  height: auto;
  padding: 3.55rem 1rem;
  background: var(--wp--preset--color--gold, #f0b211);
  border: 0.1rem solid var(--wp--preset--color--primary, #0e1b39);
  border-radius: 0;
  text-decoration: none;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 900;
  font-size: 3.2rem;
  line-height: 1.52;
  color: var(--wp--preset--color--primary, #0e1b39);
  transition: background-color 0.3s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
@media (hover: hover) {
  .c-btn:hover {
    box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
  }
  .c-btn:hover .c-btn__text,
  .c-btn:hover .c-btn__icon {
    opacity: 0.6;
  }
}
.c-btn:active {
  box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
}
.c-btn:active .c-btn__text,
.c-btn:active .c-btn__icon {
  opacity: 0.6;
}
.c-btn__link {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
}
@media (max-width: 768px) {
  .c-btn__link {
    gap: 1rem;
  }
}
.c-btn__text {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.c-btn__icon {
  display: block;
  width: 1.5rem;
  height: 1.905rem;
  flex-shrink: 0;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  transition: transform 0.3s ease;
}
@media (max-width: 768px) {
  .c-btn__icon {
    width: 0.805rem;
    height: 1.386rem;
  }
}
@media (max-width: 768px) {
  .c-btn {
    width: 100%;
    max-width: 25.5rem;
    height: auto;
    font-size: 2rem;
    line-height: 1;
    gap: 0.8rem;
  }
}
.c-btn--white {
  background: var(--wp--preset--color--white, #ffffff);
  color: var(--wp--preset--color--primary, #0e1b39);
  border: 0.1rem solid var(--wp--preset--color--primary, #0e1b39);
}

.c-status {
  padding: 6rem 0 12rem;
}
@media (max-width: 768px) {
  .c-status {
    padding: 3.4rem 0 5rem;
  }
}
.c-status__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 768px) {
  .c-status__inner {
    gap: 4rem;
  }
}
.c-status__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4rem;
  width: 100%;
}
@media (max-width: 768px) {
  .c-status__text {
    gap: 2.4rem;
  }
}
.c-status__title {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.52;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .c-status__title {
    font-size: 2.2rem;
  }
}
.c-status__description {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .c-status__description {
    font-size: 1.4rem;
  }
}
.c-status__button {
  padding: 1.45rem;
}
@media (max-width: 768px) {
  .c-status__button {
    padding: 2.3rem;
  }
}

.c-section-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  position: relative;
}
.c-section-heading__en {
  position: relative;
  left: 1rem;
  width: 100%;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 18rem;
  line-height: 87%;
  letter-spacing: 0.08em;
  text-align: center;
  margin: 0 0 -8rem;
  background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent) 4px, transparent 3px, transparent 6px);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.3;
  user-select: none;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .c-section-heading__en {
    font-size: 16rem;
  }
}
@media (max-width: 991px) {
  .c-section-heading__en {
    font-size: 14rem;
  }
}
@media (max-width: 768px) {
  .c-section-heading__en {
    left: 0;
    font-size: 7.5rem;
    margin: 0 0 -2.8rem;
    background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent) 2px, transparent 1px, transparent 3px);
  }
}
@media (max-width: 576px) {
  .c-section-heading__en {
    font-size: 6rem;
  }
}
.c-section-heading__ja {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  width: 100%;
}
@media (max-width: 768px) {
  .c-section-heading__ja {
    gap: 0;
  }
}
.c-section-heading__sub {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0.4rem 1.2rem;
  background: var(--wp--preset--color--primary, #0e1b39);
}
.c-section-heading__sub span {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .c-section-heading__sub span {
    font-size: 1.7rem;
  }
}
@media (max-width: 991px) {
  .c-section-heading__sub span {
    font-size: 1.4rem;
  }
}
@media (max-width: 768px) {
  .c-section-heading__sub span {
    font-size: 1rem;
    line-height: 100%;
  }
}
@media (max-width: 768px) {
  .c-section-heading__sub {
    padding: 0.2rem 0.4rem;
  }
}
.c-section-heading__title {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .c-section-heading__title {
    font-size: 4.8rem;
  }
}
@media (max-width: 991px) {
  .c-section-heading__title {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .c-section-heading__title {
    font-size: 2.4rem;
    line-height: 152%;
  }
}

.breadcrumbs {
  width: 100%;
  background: var(--wp--preset--color--white, #ffffff);
  position: relative;
  z-index: 2;
}
.breadcrumbs__inner {
  width: 100%;
  max-width: 144rem;
  height: 10rem;
  margin: 0 auto;
  padding: 0 10rem;
  display: flex;
  flex-direction: row;
  align-items: center;
}
@media (max-width: 1280px) {
  .breadcrumbs__inner {
    padding: 0 4rem;
  }
}
@media (max-width: 768px) {
  .breadcrumbs__inner {
    height: 5rem;
    padding: 0 3rem;
  }
}
.breadcrumbs__nav {
  width: 100%;
  display: flex;
  align-items: center;
}
.breadcrumbs__list {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style: none;
  gap: 1.2rem;
}
@media (max-width: 768px) {
  .breadcrumbs__list {
    gap: 1rem;
  }
}
.breadcrumbs__item {
  display: flex;
  align-items: center;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .breadcrumbs__item {
    font-size: 1rem;
  }
}
.breadcrumbs__item--current {
  color: var(--wp--preset--color--primary, #0e1b39);
}
.breadcrumbs__link {
  display: inline-flex;
  align-items: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: color 0.3s ease;
}
.breadcrumbs__link:hover {
  color: var(--wp--preset--color--gold, #f0b211);
  text-decoration: none;
}
.breadcrumbs__current {
  display: inline-flex;
  align-items: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
.breadcrumbs__separator {
  display: flex;
  align-items: center;
  justify-content: center;
}
.breadcrumbs__arrow {
  display: inline-block;
  width: 0.6rem;
  height: 0.99rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .breadcrumbs__arrow {
    width: 0.5rem;
    height: 0.825rem;
  }
}

.char-reveal-wrap {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.1em;
  margin-bottom: -0.1em;
  background: inherit;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
}

.char-reveal-inner {
  display: inline-block;
  transform: translateY(115%);
  opacity: 0;
  will-change: transform, opacity;
  transition: transform 1s cubic-bezier(0.16, 1, 0.3, 1), opacity 1s ease;
  background: inherit;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
}

.char-reveal-space {
  width: auto;
}

.is-char-visible .char-reveal-inner,
.is-animated .char-reveal-inner {
  transform: translateY(0%);
  opacity: 1;
}

.c-title-en {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-size: 18rem;
  line-height: 87%;
  letter-spacing: 0.08em;
  background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent) 3px, transparent 3px, transparent 6px);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.3;
  user-select: none;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .c-title-en {
    font-size: 12rem;
  }
}
@media (max-width: 991px) {
  .c-title-en {
    font-size: 9.5rem;
  }
}
@media (max-width: 768px) {
  .c-title-en {
    font-size: 7.5rem;
    background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--yellow-decor, #e0b136) 95%, transparent) 2px, transparent 1px, transparent 3px);
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .c-title-en {
    font-size: 6rem;
  }
}

.p-privacy {
  padding: 12rem 0;
}
@media (max-width: 768px) {
  .p-privacy {
    padding: 5rem 0;
  }
}
.p-privacy__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8rem;
}
@media (max-width: 1280px) {
  .p-privacy__inner {
    gap: 6rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__inner {
    gap: 3.4rem;
  }
}
.p-privacy__intro {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .p-privacy__intro {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__intro {
    line-height: 1.786;
    font-size: 1.4rem;
  }
}
.p-privacy__section {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4rem;
}
@media (max-width: 1280px) {
  .p-privacy__section {
    gap: 3.3rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__section {
    gap: 2.4rem;
  }
}
.p-privacy__title {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.528;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .p-privacy__title {
    font-size: 3rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__title {
    line-height: 1.5;
    font-size: 2.2rem;
  }
}
.p-privacy__section > p {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .p-privacy__section > p {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__section > p {
    line-height: 1.786;
    font-size: 1.4rem;
  }
}
.p-privacy__list {
  width: 100%;
  margin: 0;
  padding-left: 3.1rem;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
  color: var(--wp--preset--color--primary, #0e1b39);
}
.p-privacy__list li p {
  margin: 0;
}
@media (max-width: 1280px) {
  .p-privacy__list {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__list {
    line-height: 1.786;
    font-size: 1.4rem;
    padding-left: 2rem;
  }
}
.p-privacy__sub-list {
  margin: 0;
  margin-top: 0;
  padding-left: 2.9rem;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
}
.p-privacy__sub-list li {
  padding-left: 0.1rem;
}
@media (max-width: 1280px) {
  .p-privacy__sub-list {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__sub-list {
    line-height: 1.786;
    font-size: 1.4rem;
    padding-left: 2rem;
  }
}
.p-privacy__bullet-list {
  margin: 0;
  padding-left: 2.4rem;
  list-style: none;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
}
.p-privacy__bullet-list li {
  position: relative;
  padding-left: 0.6rem;
}
.p-privacy__bullet-list li::before {
  content: "";
  position: absolute;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: currentColor;
  left: -1.1rem;
  top: 1.65rem;
}
@media (max-width: 768px) {
  .p-privacy__bullet-list li::before {
    width: 0.3rem;
    height: 0.3rem;
    left: -1.1rem;
    top: 1.1rem;
  }
}
@media (max-width: 1280px) {
  .p-privacy__bullet-list {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__bullet-list {
    line-height: 1.786;
    font-size: 1.4rem;
    padding-left: 2rem;
  }
  .p-privacy__bullet-list li {
    padding-left: 0.1rem;
  }
}
.p-privacy__contact {
  width: auto;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
  border-top: 0.2rem solid var(--wp--preset--color--primary, #0e1b39);
  border-bottom: 0.2rem solid var(--wp--preset--color--primary, #0e1b39);
  padding: 1.7rem 1.6rem 1.7rem 0;
  margin: 1.4rem 0 1.55rem 0;
}
.p-privacy__contact p {
  margin: 0;
}
@media (max-width: 1280px) {
  .p-privacy__contact {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__contact {
    padding: 1rem 1rem 1rem 0;
    font-size: 1.4rem;
    margin: 1.4rem 0 1.2rem 0;
  }
}
.p-privacy__contact-mail {
  margin-top: 3.6rem !important;
}
@media (max-width: 768px) {
  .p-privacy__contact-mail {
    margin-top: 2.4rem !important;
  }
}
.p-privacy__links {
  position: relative;
  bottom: 0.3rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8;
  margin-bottom: 3.3rem;
}
.p-privacy__links p {
  margin: 0;
  word-break: break-all;
}
.p-privacy__links a {
  color: var(--wp--preset--color--primary, #0e1b39);
  word-break: break-all;
  text-decoration: underline;
  text-underline-offset: 0.1rem;
  text-decoration-thickness: 0.1rem;
}
.p-privacy__links a:hover {
  opacity: 0.7;
}
@media (max-width: 1280px) {
  .p-privacy__links {
    font-size: 1.7rem;
  }
}
@media (max-width: 768px) {
  .p-privacy__links {
    bottom: 0rem;
    font-size: 1.4rem;
    margin-bottom: 2.5rem;
  }
}
.p-privacy .br-pc-only {
  display: none;
}
@media (min-width: 1440px) and (max-width: 1920px) {
  .p-privacy .br-pc-only {
    display: block;
  }
}
.p-privacy .br-sp-only {
  display: none;
}
@media (min-width: 370px) and (max-width: 375px) {
  .p-privacy .br-sp-only {
    display: block;
  }
}

.page-heading {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 7rem;
}
@media (max-width: 1280px) {
  .page-heading {
    padding-top: 5rem;
  }
}
@media (max-width: 768px) {
  .page-heading {
    padding-bottom: 2rem;
  }
}
.page-heading__kv {
  position: relative;
  width: 100%;
  min-height: 48rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 22.2rem 10rem 10.5rem;
  overflow: visible;
}
@media (max-width: 1280px) {
  .page-heading__kv {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media (max-width: 768px) {
  .page-heading__kv {
    min-height: 18rem;
    height: auto;
    padding: 6.45rem 2rem 4.95rem;
  }
}
.page-heading__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}
.page-heading__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.page-heading__overlay {
  position: absolute;
  inset: 0;
  background: color-mix(in srgb, var(--wp--preset--color--border-gray, #9da2ae) 90%, transparent);
  mix-blend-mode: multiply;
  z-index: 1;
}
.page-heading__decor {
  position: absolute;
  left: 0;
  top: 0;
  width: 55rem;
  height: 55rem;
  z-index: 10;
  overflow: hidden;
  pointer-events: none;
}
@media (max-width: 768px) {
  .page-heading__decor {
    width: 20rem;
    height: 20rem;
  }
}
.page-heading__decor::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  opacity: 0.5;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.page-heading__headings {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 0;
  z-index: 11;
  width: 100%;
}
.page-heading__title-en {
  margin: -2.4rem 0;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 14rem;
  text-transform: uppercase;
  line-height: 87%;
  display: block;
  letter-spacing: 0.08em;
  color: var(--wp--preset--color--white, #ffffff);
  opacity: 0.5;
  word-break: break-word;
  background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent) 2px, transparent 2px, transparent 4px);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-heading__title-en br {
  display: none;
}
@media (max-width: 1280px) {
  .page-heading__title-en {
    font-size: 7.2rem;
  }
}
@media (max-width: 768px) {
  .page-heading__title-en {
    font-size: 5.6rem;
    margin: -1.6rem 0;
    white-space: normal;
  }
  .page-heading__title-en br {
    display: inline;
  }
}
@media (max-width: 374px) {
  .page-heading__title-en {
    font-size: 5rem;
  }
}
.page-heading__title-ja {
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 900;
  font-size: 3.6rem;
  line-height: 152%;
  color: var(--wp--preset--color--white, #ffffff);
  position: relative;
  z-index: 1;
}
@media (max-width: 1280px) {
  .page-heading__title-ja {
    font-size: 2.8rem;
  }
}
@media (max-width: 768px) {
  .page-heading__title-ja {
    font-size: 2.2rem;
  }
}
.page-heading__title-ja--font-en {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  letter-spacing: 0.1em;
}

.job-categories {
  width: 100%;
  padding: 12rem 0;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  /* Main Contents */
  /* Cassette Card */
}
@media (max-width: 768px) {
  .job-categories {
    padding: 5rem 0;
  }
}
.job-categories .container-lg3 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 8rem;
}
@media (max-width: 1280px) {
  .job-categories .container-lg3 {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .job-categories .container-lg3 {
    flex-direction: column;
    gap: 4rem;
    padding-inline: 3rem;
  }
}
.job-categories__anchor {
  position: sticky;
  top: 15rem;
  z-index: 10;
  width: 20rem;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .job-categories__anchor {
    position: static;
    display: block;
    width: 100%;
  }
}
.job-categories__anchor-list {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 768px) {
  .job-categories__anchor-list {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.job-categories__anchor-item {
  border-top: 1px solid var(--wp--preset--color--border-gray, #9da2ae);
}
.job-categories__anchor-item:last-child {
  border-bottom: 1px solid var(--wp--preset--color--border-gray, #9da2ae);
}
@media (max-width: 768px) {
  .job-categories__anchor-item {
    width: calc((100% - 1.9rem) / 2);
    border: none;
  }
  .job-categories__anchor-item:last-child {
    border-bottom: none;
  }
}
.job-categories__anchor-item a {
  display: flex;
  align-items: center;
  padding: 2rem 0.4rem;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 2.1rem;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  transition: color 0.3s ease;
}
.job-categories__anchor-item a:hover {
  color: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-categories__anchor-item a {
    justify-content: flex-start;
    padding: 1.4rem 0.4rem;
    font-size: 1.2rem;
    line-height: 148%;
    text-align: left;
    border-top: 1px solid var(--wp--preset--color--border-gray, #9da2ae);
    border-bottom: 1px solid var(--wp--preset--color--border-gray, #9da2ae);
  }
}
@media (max-width: 768px) {
  .job-categories__anchor-item:nth-child(n+3) a {
    border-top: none;
  }
}
.job-categories__anchor-item.is-active a {
  color: var(--wp--preset--color--yellow-decor, #e0b136);
}
.job-categories__contents {
  display: flex;
  flex-direction: column;
  width: 79.6rem;
  max-width: 100%;
  gap: 6rem;
}
@media (max-width: 768px) {
  .job-categories__contents {
    width: 100%;
    gap: 3.4rem;
  }
}
.job-categories__section {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media (max-width: 768px) {
  .job-categories__section {
    gap: 3.4rem;
  }
}
.job-categories__heading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2rem;
}
@media (max-width: 768px) {
  .job-categories__heading {
    gap: 1rem;
  }
}
.job-categories__heading-icon {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0 0.4rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 768px) {
  .job-categories__heading-icon {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0 0.2rem;
  }
}
.job-categories__heading-title {
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 700;
  line-height: 148%;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .job-categories__heading-title {
    font-size: 1.4rem;
  }
}
.job-categories__cassette {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin-top: 2.1rem;
  padding-left: 6.1rem;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  filter: drop-shadow(0px 0px 24px rgba(0, 0, 0, 0.08));
}
@media (max-width: 768px) {
  .job-categories__cassette {
    padding-left: 0;
    padding-right: 1.1rem;
    filter: drop-shadow(0px 0px 14px rgba(0, 0, 0, 0.08));
  }
}
.job-categories__cassette-inner {
  display: flex;
  flex-direction: row;
  width: 100%;
  background: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 768px) {
  .job-categories__cassette-inner {
    flex-direction: column;
  }
}
.job-categories__thumbnail {
  position: relative;
  z-index: 2;
  flex: 0 0 22rem;
  width: 22rem;
  height: 23.6rem;
  margin: 0;
  margin-top: -2.1rem;
  margin-left: -6.1rem;
  overflow: visible;
}
.job-categories__thumbnail::after {
  position: absolute;
  inset: -0.4rem;
  z-index: 1;
  content: "";
  border: 4px solid var(--wp--preset--color--yellow-decor, #e0b136);
  pointer-events: none;
}
@media (max-width: 768px) {
  .job-categories__thumbnail {
    flex: none;
    width: calc(100% - 1.4rem);
    height: clamp(22rem, 45.8vw + 4.8rem, 40rem);
    margin-top: -2.1rem;
    margin-left: auto;
    margin-right: -1.1rem;
  }
  .job-categories__thumbnail::after {
    inset: -0.4rem;
  }
}
.job-categories__thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.job-categories__profile {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 6.3rem 4.8rem 6.3rem 4.1rem;
}
@media (max-width: 768px) {
  .job-categories__profile {
    position: relative;
    z-index: 1;
    flex: none;
    width: 100%;
    margin-top: 0;
    padding: 2rem 2.4rem 2.4rem;
    box-sizing: border-box;
  }
}
.job-categories__quote {
  padding-bottom: 2rem;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 500;
  line-height: 148%;
  color: var(--wp--preset--color--primary, #0e1b39);
  border-bottom: 2px solid var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-categories__quote {
    padding-bottom: 1.5rem;
    font-size: 1.8rem;
  }
}
.job-categories__meta {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  padding-top: 2.1rem;
  gap: 2rem;
}
@media (max-width: 1280px) {
  .job-categories__meta {
    gap: 1rem;
  }
}
@media (max-width: 768px) {
  .job-categories__meta {
    flex-direction: column;
    align-items: flex-end;
    padding-top: 1.4rem;
    gap: 0;
  }
}
.job-categories__info {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
@media (max-width: 768px) {
  .job-categories__info {
    width: 100%;
  }
}
.job-categories__name-group {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 1.2rem;
}
@media (max-width: 768px) {
  .job-categories__name-group {
    gap: 1rem;
  }
}
.job-categories__name-ja {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 148%;
  letter-spacing: 0.06em;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .job-categories__name-ja {
    font-size: 1.2rem;
  }
}
.job-categories__name-en {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 148%;
  letter-spacing: 0.06em;
  color: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
}
@media (max-width: 768px) {
  .job-categories__name-en {
    font-size: 1rem;
  }
}
.job-categories__department {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 220%;
  letter-spacing: 0.06em;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .job-categories__department {
    font-size: 1rem;
  }
}
.job-categories__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  border: 1px solid var(--wp--preset--color--yellow-decor, #e0b136);
  cursor: pointer;
  transform-origin: center center;
  transition: transform 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}
.job-categories__btn svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  transform-origin: center center;
  transition: transform 0.3s ease;
}
.job-categories__btn svg polygon,
.job-categories__btn svg path {
  fill: var(--wp--preset--color--white, #ffffff);
  transition: fill 0.3s ease;
}
.job-categories__cassette:hover .job-categories__btn, .job-categories__btn:hover {
  background: transparent;
  border-color: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
.job-categories__cassette:hover .job-categories__btn svg, .job-categories__btn:hover svg {
  transform: rotate(-45deg);
}
.job-categories__cassette:hover .job-categories__btn svg polygon,
.job-categories__cassette:hover .job-categories__btn svg path, .job-categories__btn:hover svg polygon,
.job-categories__btn:hover svg path {
  fill: var(--wp--preset--color--yellow-decor, #e0b136);
}

.job-detail-kv {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: 100%;
  height: 72rem;
  overflow: hidden;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  /* Photo */
  /* Text block */
  /* Main catch copy */
  /* Profile card */
}
@media (min-width: 1441px) {
  .job-detail-kv {
    height: 50vw;
  }
}
@media (max-width: 1280px) {
  .job-detail-kv {
    padding-top: 5rem;
  }
}
@media (max-width: 768px) {
  .job-detail-kv {
    height: auto;
    min-height: 49.5rem;
    padding: 6.4rem 0 3.4rem 3.2rem;
    gap: 2rem;
    align-items: flex-start;
  }
}
.job-detail-kv__decor {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0;
  width: 42rem;
  height: 42rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 100%, 0 0, 100% 100%);
}
@media (max-width: 1440px) {
  .job-detail-kv__decor {
    width: 29.1666666667vw;
    height: 29.1666666667vw;
  }
}
@media (max-width: 768px) {
  .job-detail-kv__decor {
    width: 12rem;
    height: 12rem;
  }
}
.job-detail-kv__photo {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 81.9%;
  height: 66rem;
  overflow: hidden;
}
@media (min-width: 1441px) {
  .job-detail-kv__photo {
    height: calc(100% - 6rem);
  }
}
@media (max-width: 768px) {
  .job-detail-kv__photo {
    position: relative;
    width: 100%;
    height: auto;
  }
}
.job-detail-kv__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
@media (max-width: 768px) {
  .job-detail-kv__photo img {
    height: auto;
  }
}
@media (max-width: 376px) {
  .job-detail-kv__photo img {
    height: 18rem;
    object-position: bottom;
  }
}
.job-detail-kv__tx {
  position: absolute;
  bottom: 12rem;
  left: 8rem;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  max-width: 61.2rem;
}
@media (max-width: 1280px) {
  .job-detail-kv__tx {
    left: 4rem;
  }
}
@media (max-width: 768px) {
  .job-detail-kv__tx {
    position: relative;
    bottom: auto;
    left: auto;
    padding: 0 3.2rem 0 0;
    gap: 2rem;
    width: 100%;
    max-width: 100%;
  }
}
.job-detail-kv__catch {
  margin: 0;
  font-size: 6rem;
  font-weight: 500;
  line-height: 148%;
}
@media (max-width: 1280px) {
  .job-detail-kv__catch {
    font-size: 4.5rem;
  }
}
@media (max-width: 768px) {
  .job-detail-kv__catch {
    font-size: 3.2rem;
  }
}
.job-detail-kv__profile-card {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  width: 41.6rem;
  padding: 1.8rem 3.8rem;
  background: var(--wp--preset--color--white, #ffffff);
  border: 2px solid var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-detail-kv__profile-card {
    width: 31.1rem;
    max-width: 100%;
    padding: 1.2rem 2.2rem;
    gap: 1rem;
  }
}
.job-detail-kv__profile-info {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
@media (max-width: 768px) {
  .job-detail-kv__profile-info {
    gap: 0.4rem;
  }
}
.job-detail-kv__name-group {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 1.2rem;
}
@media (max-width: 768px) {
  .job-detail-kv__name-group {
    gap: 1rem;
  }
}
.job-detail-kv__name-ja {
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 148%;
  letter-spacing: 0.06em;
}
@media (max-width: 768px) {
  .job-detail-kv__name-ja {
    font-size: 1.8rem;
  }
}
.job-detail-kv__name-en {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 148%;
  letter-spacing: 0.06em;
  color: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
}
@media (max-width: 768px) {
  .job-detail-kv__name-en {
    font-size: 1.2rem;
  }
}
.job-detail-kv__department {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 220%;
  letter-spacing: 0.06em;
}
@media (max-width: 768px) {
  .job-detail-kv__department {
    font-size: 1.2rem;
  }
}
.job-detail-kv__divider {
  width: 100%;
  height: 2px;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.job-detail-kv__quote {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 220%;
  letter-spacing: 0.06em;
}
@media (max-width: 768px) {
  .job-detail-kv__quote {
    font-size: 1.2rem;
  }
}

.job-detail-section1 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
}
@media (max-width: 1280px) {
  .job-detail-section1 {
    padding: 8rem 0;
  }
}
@media (max-width: 768px) {
  .job-detail-section1 {
    padding: 5rem 0;
  }
}
.job-detail-section1__decor01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 42rem;
  height: 42rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 100% 0, 0 100%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section1__decor01 {
    width: 29.1666666667vw;
    height: 29.1666666667vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__decor01 {
    width: 12rem;
    height: 12rem;
  }
}
.job-detail-section1__decor02 {
  position: absolute;
  top: calc(50% - 5.5rem);
  right: 0;
  z-index: 0;
  width: 24.4rem;
  height: 48.9rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  transform: translateY(-50%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section1__decor02 {
    width: 16.9444444444vw;
    height: 33.9583333333vw;
    top: calc(50% - 3.8194444444vw);
  }
}
@media (max-width: 768px) {
  .job-detail-section1__decor02 {
    width: 18.4rem;
    height: 36.8rem;
    top: calc(50% - 23.75rem);
  }
}
.job-detail-section1__decor03 {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  width: 41.4rem;
  height: 28rem;
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section1__decor03 {
    width: 28.75vw;
    height: 19.4444444444vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__decor03 {
    width: 16rem;
    height: 10rem;
  }
}
.job-detail-section1__decor03::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 28rem;
  height: 28rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(0 0, 100% 100%, calc(100% - 2px) 100%, 0 2px);
}
@media (max-width: 1440px) {
  .job-detail-section1__decor03::before {
    width: 19.4444444444vw;
    height: 19.4444444444vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__decor03::before {
    width: 10rem;
    height: 10rem;
  }
}
.job-detail-section1__decor03-rect {
  position: absolute;
  bottom: 0.91124rem;
  left: 36.11124rem;
  width: 4.4rem;
  height: 4.4rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .job-detail-section1__decor03-rect {
    bottom: 0.6328055556vw;
    left: 25.07725vw;
    width: 3.0555555556vw;
    height: 3.0555555556vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__decor03-rect {
    bottom: 0.5rem;
    left: 13.6rem;
    width: 2rem;
    height: 2rem;
  }
}
.job-detail-section1 .container-lg3 {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 114.4rem;
  gap: 8rem;
}
@media (max-width: 768px) {
  .job-detail-section1 .container-lg3 {
    gap: 4rem;
  }
}
.job-detail-section1__cassette {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  width: 100%;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .job-detail-section1__cassette {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__cassette {
    flex-direction: column;
    gap: 3.4rem;
  }
}
.job-detail-section1__ph {
  flex: 0 0 48rem;
  width: 48rem;
  height: 50rem;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .job-detail-section1__ph {
    flex: 0 0 42rem;
    width: 42rem;
    height: 44rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__ph {
    flex: none;
    order: 1;
    width: 100%;
    height: 33rem;
  }
}
.job-detail-section1__ph img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.job-detail-section1__tx {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  gap: 2rem;
  width: 54rem;
}
@media (max-width: 768px) {
  .job-detail-section1__tx {
    order: 0;
    width: 100%;
    gap: 1.4rem;
  }
}
.job-detail-section1__title {
  width: 100%;
  margin: 0;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 148%;
}
@media (max-width: 1280px) {
  .job-detail-section1__title {
    font-size: 3rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__title {
    font-size: 2.2rem;
  }
}
.job-detail-section1__line {
  width: 100%;
  height: 2px;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.job-detail-section1__desc {
  width: 100%;
  margin: 0;
  font-size: 2rem;
  font-weight: 500;
  line-height: 220%;
}
@media (max-width: 1280px) {
  .job-detail-section1__desc {
    font-size: 1.8rem;
    line-height: 200%;
  }
}
@media (max-width: 768px) {
  .job-detail-section1__desc {
    font-size: 1.4rem;
    line-height: 222%;
  }
}

.job-detail-section2 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 6rem 0;
  isolation: isolate;
  overflow: hidden;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
}
@media (max-width: 768px) {
  .job-detail-section2 {
    padding: 3.4rem 0;
  }
}
.job-detail-section2__decor01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 28rem;
  height: 28rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(0 0, 100% 0, calc(100% - 2px) 0, 0 calc(100% - 2px), 0 100%, 100% 0);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section2__decor01 {
    width: 19.4444444444vw;
    height: 19.4444444444vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__decor01 {
    width: 10rem;
    height: 10rem;
  }
}
.job-detail-section2__decor02 {
  position: absolute;
  top: 80.6rem;
  right: 0;
  z-index: 2;
  width: 18rem;
  height: 36rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section2__decor02 {
    top: 55.9722222222vw;
    width: 12.5vw;
    height: 25vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__decor02 {
    display: none;
  }
}
.job-detail-section2__decor03 {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 52.4rem;
  height: 52.4rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 0 100%, 100% 100%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section2__decor03 {
    width: 36.3888888889vw;
    height: 36.3888888889vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__decor03 {
    width: 16rem;
    height: 16rem;
  }
}
.job-detail-section2 .container-lg3 {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 114.4rem;
  gap: 8rem;
}
@media (max-width: 768px) {
  .job-detail-section2 .container-lg3 {
    gap: 4rem;
  }
}
.job-detail-section2__title-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 6rem;
}
@media (max-width: 768px) {
  .job-detail-section2__title-box {
    gap: 3.4rem;
  }
}
.job-detail-section2__title {
  width: 100%;
  margin: 0;
  font-size: 5.4rem;
  font-weight: 700;
  line-height: 148%;
  text-align: center;
}
@media (max-width: 1280px) {
  .job-detail-section2__title {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__title {
    font-size: 2.4rem;
  }
}
.job-detail-section2__gallery {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 2.4rem;
}
@media (max-width: 768px) {
  .job-detail-section2__gallery {
    flex-direction: column;
    gap: 1.2rem;
  }
}
.job-detail-section2__gallery-sub {
  display: contents;
}
@media (max-width: 768px) {
  .job-detail-section2__gallery-sub {
    display: flex;
    flex-direction: row;
    width: 100%;
    gap: 1.2rem;
  }
}
.job-detail-section2__gallery-item {
  flex: 1;
  width: 100%;
  max-width: 34.4rem;
  height: auto;
  aspect-ratio: 344/258;
  overflow: hidden;
}
@media (max-width: 768px) {
  .job-detail-section2__gallery-item {
    flex: 1;
    width: 100%;
    max-width: 100%;
    aspect-ratio: 149.5/122;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__gallery-item--main {
    flex: none;
    width: 100%;
    aspect-ratio: 311/233;
  }
}
.job-detail-section2__gallery-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.job-detail-section2__schedule {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 6rem;
}
@media (max-width: 768px) {
  .job-detail-section2__schedule {
    gap: 3.4rem;
  }
}
.job-detail-section2__subtitle {
  width: 100%;
  margin: 0;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 148%;
  text-align: center;
}
@media (max-width: 1280px) {
  .job-detail-section2__subtitle {
    font-size: 3rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section2__subtitle {
    width: 31.1rem;
    margin: 0 auto;
    font-size: 2.2rem;
  }
}
.job-detail-section2__contents {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
  gap: 4rem;
  isolation: isolate;
}
.job-detail-section2__contents::before {
  content: "";
  position: absolute;
  top: 1.14rem;
  left: 1.04rem;
  z-index: 0;
  width: 0.2rem;
  height: calc(var(--scroll-progress, 0) * var(--line-max-height, 100%) / 100);
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-detail-section2__contents {
    gap: 2.4rem;
  }
  .job-detail-section2__contents::before {
    top: 0.85rem;
    left: 0.75rem;
    width: 0.2rem;
  }
}
.job-detail-section2__cassette {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  width: 100%;
  gap: 4rem;
}
@media (max-width: 768px) {
  .job-detail-section2__cassette {
    gap: 2.4rem;
  }
}
.job-detail-section2__time {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
@media (max-width: 768px) {
  .job-detail-section2__time {
    gap: 0.8rem;
  }
}
.job-detail-section2__time-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.26rem;
  height: 2.26rem;
}
.job-detail-section2__time-icon::before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 768px) {
  .job-detail-section2__time-icon {
    width: 1.7rem;
    height: 1.7rem;
  }
  .job-detail-section2__time-icon::before {
    width: 1.2rem;
    height: 1.2rem;
  }
}
.job-detail-section2__time-text {
  flex-shrink: 0;
  width: 6.8rem;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-size: 2.6rem;
  line-height: 3.9rem;
  letter-spacing: 0.09em;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-detail-section2__time-text {
    width: 4.7rem;
    font-size: 1.8rem;
    line-height: 2.7rem;
  }
}
.job-detail-section2__tx {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  gap: 1rem;
}
@media (max-width: 768px) {
  .job-detail-section2__tx {
    gap: 0.8rem;
  }
}
.job-detail-section2__item-title {
  width: 100%;
  margin: 0;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 3.8rem;
}
@media (max-width: 768px) {
  .job-detail-section2__item-title {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
}
.job-detail-section2__item-desc {
  width: 100%;
  margin: 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 222%;
}
@media (max-width: 768px) {
  .job-detail-section2__item-desc {
    font-size: 1.2rem;
    line-height: 217%;
  }
}
.job-detail-section2__ph-bottom {
  width: 100%;
  max-width: 80rem;
  height: auto;
  aspect-ratio: 800/400;
  margin: 2rem auto 0;
  overflow: hidden;
}
@media (max-width: 768px) {
  .job-detail-section2__ph-bottom {
    aspect-ratio: 311/156;
    margin-top: 0.6rem;
  }
}
.job-detail-section2__ph-bottom img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.job-detail-section3 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  padding: 12rem 0;
  gap: 8rem;
  isolation: isolate;
  overflow: hidden;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
}
@media (max-width: 768px) {
  .job-detail-section3 {
    padding: 5rem 0;
    gap: 4rem;
  }
}
.job-detail-section3__decor01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 52.4rem;
  height: 52.4rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 100% 0, 0 100%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section3__decor01 {
    width: 36.3888888889vw;
    height: 36.3888888889vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section3__decor01 {
    width: 16rem;
    height: 16rem;
  }
}
.job-detail-section3__decor02 {
  position: absolute;
  bottom: 57.3rem;
  right: 0;
  z-index: 0;
  width: 23.3rem;
  height: 46.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  pointer-events: none;
}
@media (max-width: 1440px) {
  .job-detail-section3__decor02 {
    width: 16.1805555556vw;
    height: 32.3611111111vw;
    bottom: 39.7916666667vw;
  }
}
@media (max-width: 768px) {
  .job-detail-section3__decor02 {
    display: none;
  }
}
.job-detail-section3 .container-lg3 {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 114.4rem;
  margin: 0 auto;
}
.job-detail-section3__title {
  width: 100%;
  margin: 0;
  font-size: 5.4rem;
  font-weight: 700;
  line-height: 148%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .job-detail-section3__title {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section3__title {
    font-size: 2.4rem;
  }
}
.job-detail-section3__ph {
  position: relative;
  z-index: 2;
  width: calc(100% - 12rem);
  height: auto;
  aspect-ratio: 1320/480;
  margin-right: auto;
  overflow: hidden;
}
@media (max-width: 768px) {
  .job-detail-section3__ph {
    width: calc(100% - 3.1rem);
    aspect-ratio: 344/180;
  }
}
.job-detail-section3__ph img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.job-detail-section3__tx {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 108rem;
  gap: 2rem;
}
@media (max-width: 768px) {
  .job-detail-section3__tx {
    gap: 1.5rem;
  }
}
.job-detail-section3__subtitle {
  width: 100%;
  margin: 0;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 148%;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .job-detail-section3__subtitle {
    font-size: 3rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section3__subtitle {
    font-size: 2.2rem;
  }
}
.job-detail-section3__line {
  width: 100%;
  height: 2px;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.job-detail-section3__desc {
  width: 100%;
  margin: 0;
  font-size: 2rem;
  font-weight: 500;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 768px) {
  .job-detail-section3__desc {
    font-size: 1.4rem;
    line-height: 221%;
  }
}
.job-detail-section3__btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 8rem;
  padding-top: 4rem;
}
.job-detail-section3__btn-box .c-btn {
  padding: 3.45rem 1rem;
}
@media (max-width: 768px) {
  .job-detail-section3__btn-box {
    flex-direction: column;
    gap: 2rem;
    padding-top: 1rem;
  }
  .job-detail-section3__btn-box .c-btn {
    padding: 2.9rem 0 2.5rem;
  }
}

.job-detail-section4 {
  width: 100%;
  padding: 4rem 0 12rem;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
}
@media (max-width: 768px) {
  .job-detail-section4 {
    padding: 2.4rem 0 5rem;
  }
}
.job-detail-section4__contents {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 8rem;
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .job-detail-section4__contents {
    gap: 3.4rem;
    align-items: flex-start;
  }
}
.job-detail-section4__col {
  display: flex;
  align-items: center;
}
.job-detail-section4__col--left {
  justify-content: flex-end;
}
.job-detail-section4__col--center {
  justify-content: center;
  align-self: center;
}
.job-detail-section4__col--right {
  justify-content: flex-start;
}
@media (max-width: 768px) {
  .job-detail-section4__col--center {
    align-self: center;
  }
}
.job-detail-section4__cassette {
  display: flex;
  align-items: center;
  gap: 4rem;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  .job-detail-section4__cassette:hover .job-detail-section4__item-img img {
    transform: scale(1.08);
  }
  .job-detail-section4__cassette:hover .job-detail-section4__arrow {
    background: transparent;
  }
  .job-detail-section4__cassette:hover .job-detail-section4__arrow svg path {
    fill: var(--wp--preset--color--yellow-decor, #e0b136);
  }
  .job-detail-section4__cassette:hover .job-detail-section4__item-label {
    color: var(--wp--preset--color--yellow-decor, #e0b136);
  }
}
.job-detail-section4__cassette:active .job-detail-section4__item-img img {
  transform: scale(1.08);
}
.job-detail-section4__cassette:active .job-detail-section4__arrow {
  background: transparent;
}
.job-detail-section4__cassette:active .job-detail-section4__arrow svg path {
  fill: var(--wp--preset--color--yellow-decor, #e0b136);
}
.job-detail-section4__cassette:active .job-detail-section4__item-label {
  color: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .job-detail-section4__cassette {
    flex-direction: column;
    gap: 1.4rem;
    width: 6rem;
  }
}
@media (max-width: 768px) {
  .job-detail-section4__cassette--right .job-detail-section4__arrow {
    order: -1;
  }
}
.job-detail-section4__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  margin: 0 0.83rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  border: 1px solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
@media (max-width: 768px) {
  .job-detail-section4__arrow {
    width: 3rem;
    height: 3rem;
    margin: 0.62rem 0;
  }
}
.job-detail-section4__arrow svg {
  width: 1.1rem;
  height: 1.3rem;
  transform: rotate(-45deg);
}
@media (max-width: 768px) {
  .job-detail-section4__arrow svg {
    width: 0.89rem;
    height: 0.89rem;
  }
}
.job-detail-section4__arrow svg path {
  fill: var(--wp--preset--color--white, #ffffff);
  transition: fill 0.3s ease;
}
.job-detail-section4__arrow--left svg {
  transform: rotate(-45deg) scaleX(-1) translateX(0.15rem);
}
.job-detail-section4__arrow--right svg {
  transform: rotate(-45deg) translateX(0.15rem);
}
.job-detail-section4__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: flex-start;
  gap: 1rem;
  width: 8rem;
}
@media (max-width: 768px) {
  .job-detail-section4__item {
    width: 6rem;
    gap: 0.8rem;
    align-self: center;
  }
}
.job-detail-section4__item-img {
  width: 8rem;
  height: 8rem;
  overflow: hidden;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .job-detail-section4__item-img {
    width: 5rem;
    height: 5rem;
  }
}
.job-detail-section4__item-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.job-detail-section4__item-label {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
  color: var(--wp--preset--color--black, #000000);
  transition: color 0.3s ease;
}
@media (max-width: 768px) {
  .job-detail-section4__item-label {
    width: 6rem;
    font-size: 1rem;
    line-height: 130%;
  }
}
.job-detail-section4__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.2rem 0;
  width: 16rem;
  height: 4.5rem;
  border: 2px solid var(--wp--preset--color--primary, #0e1b39);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 150%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
  flex-shrink: 0;
  align-self: center;
  transition: background-color 0.3s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
@media (hover: hover) {
  .job-detail-section4__btn:hover {
    box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
    opacity: 0.6;
  }
}
.job-detail-section4__btn:active {
  box-shadow: inset 0px 4px 4px rgba(0, 0, 0, 0.2);
  opacity: 0.6;
}
@media (max-width: 768px) {
  .job-detail-section4__btn {
    width: 11rem;
    height: 4.2rem;
    font-size: 1.2rem;
  }
}

.top-kv {
  position: relative;
  width: 100%;
  height: 80rem;
  display: flex;
  padding: 0 0 3rem;
  z-index: 5;
  overflow-x: clip;
}
@media (max-width: 1440px) {
  .top-kv {
    height: 55.5555555556vw;
  }
}
@media (max-width: 1280px) {
  .top-kv {
    margin-top: 5rem !important;
  }
}
@media (max-width: 768px) {
  .top-kv {
    height: 42rem;
  }
}
.top-kv::before, .top-kv::after {
  content: "";
  position: absolute;
  width: 23rem;
  height: 23rem;
  background-color: var(--wp--preset--color--yellow-decor, #e0b136);
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 1440px) {
  .top-kv::before, .top-kv::after {
    width: 15.9722222222vw;
    height: 15.9722222222vw;
  }
}
@media (max-width: 768px) {
  .top-kv::before, .top-kv::after {
    width: 6rem;
    height: 6rem;
  }
}
.top-kv::before {
  top: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.top-kv::after {
  right: 0;
  bottom: 0;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.top-kv__decor--corner-bl {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 7.288rem;
  height: 7.311rem;
  background-color: var(--wp--preset--color--white, #ffffff);
  opacity: 0.3;
  clip-path: polygon(0 0, 0 100%, 100% 100%);
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 1440px) {
  .top-kv__decor--corner-bl {
    width: 5.0611111111vw;
    height: 5.0770833333vw;
  }
}
@media (max-width: 768px) {
  .top-kv__decor--corner-bl {
    width: 2.431rem;
    height: 2.47rem;
  }
}
.top-kv__diamond-solid {
  position: absolute;
  background-color: var(--wp--preset--color--white, #ffffff);
  opacity: 0.3;
  transform: rotate(45deg);
  z-index: 1;
  pointer-events: none;
}
.top-kv__diamond-solid--left {
  width: 6rem;
  height: 6rem;
  left: 20.1706rem;
  bottom: 7.3446rem;
}
@media (max-width: 1440px) {
  .top-kv__diamond-solid--left {
    width: 4.1666666667vw;
    height: 4.1666666667vw;
    left: 14.0073611111vw;
    bottom: 5.1004166667vw;
  }
}
@media (max-width: 768px) {
  .top-kv__diamond-solid--left {
    width: 2rem;
    height: 2rem;
    left: 6.7632rem;
    bottom: 2.5082rem;
  }
}
.top-kv__diamond-solid--right {
  width: 16rem;
  height: 16rem;
  top: 17.5136rem;
  right: -7rem;
}
@media (max-width: 1440px) {
  .top-kv__diamond-solid--right {
    width: 11.1111111111vw;
    height: 11.1111111111vw;
    top: 12.1622222222vw;
    right: -4.8611111111vw;
  }
}
@media (max-width: 768px) {
  .top-kv__diamond-solid--right {
    width: 5rem;
    height: 5rem;
    top: 3.9655rem;
    right: -0.6145rem;
  }
}
.top-kv__diamond-solid--right-2 {
  width: 6rem;
  height: 6rem;
  top: 18.2396rem;
  right: 14.669rem;
}
@media (max-width: 1440px) {
  .top-kv__diamond-solid--right-2 {
    width: 4.1666666667vw;
    height: 4.1666666667vw;
    top: 12.6663888889vw;
    right: 10.1868055556vw;
  }
}
@media (max-width: 768px) {
  .top-kv__diamond-solid--right-2 {
    width: 1rem;
    height: 1rem;
    top: 2.2071rem;
    right: 5.7071rem;
  }
}
.top-kv__diamond-animated {
  position: absolute;
  transform: rotate(45deg);
  overflow: hidden;
  z-index: 2;
  pointer-events: none;
}
.top-kv__diamond-animated--left {
  width: 28rem;
  height: 28rem;
  left: -6.3rem;
  bottom: 13.8rem;
}
@media (max-width: 1440px) {
  .top-kv__diamond-animated--left {
    width: 19.4444444444vw;
    height: 19.4444444444vw;
    left: -4.375vw;
    bottom: 9.5833333333vw;
  }
}
@media (max-width: 768px) {
  .top-kv__diamond-animated--left {
    width: 10.04rem;
    height: 10.04rem;
    left: -3rem;
    bottom: 4.38rem;
  }
}
.top-kv__diamond-animated--right {
  width: 35.5rem;
  height: 35.5rem;
  right: 0;
  bottom: 0;
  transform-origin: bottom right;
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .top-kv__diamond-animated--right {
    width: 24.6527777778vw;
    height: 24.6527777778vw;
    right: 0;
    bottom: 0;
  }
}
@media (max-width: 768px) {
  .top-kv__diamond-animated--right {
    width: 11.691rem;
    height: 11.691rem;
    right: 0;
    bottom: 0;
  }
}
.top-kv__diamond-line {
  position: absolute;
}
.top-kv__diamond-line:nth-child(1), .top-kv__diamond-line:nth-child(3) {
  width: 100%;
  height: 1px;
}
.top-kv__diamond-line:nth-child(2), .top-kv__diamond-line:nth-child(4) {
  width: 1px;
  height: 100%;
}
.top-kv__diamond-line:nth-child(1) {
  top: 0;
  left: 0;
  background: linear-gradient(to right, transparent, var(--wp--preset--color--white, #ffffff));
  animation: kvDiamondLine1 2s linear infinite;
}
.top-kv__diamond-line:nth-child(2) {
  top: 0;
  right: 0;
  background: linear-gradient(to bottom, transparent, var(--wp--preset--color--white, #ffffff));
  animation: kvDiamondLine2 2s linear infinite;
  animation-delay: 1s;
}
.top-kv__diamond-line:nth-child(3) {
  bottom: 0;
  left: 0;
  background: linear-gradient(to left, transparent, var(--wp--preset--color--white, #ffffff));
  animation: kvDiamondLine3 2s linear infinite;
}
.top-kv__diamond-line:nth-child(4) {
  top: 0;
  left: 0;
  background: linear-gradient(to top, transparent, var(--wp--preset--color--white, #ffffff));
  animation: kvDiamondLine4 2s linear infinite;
  animation-delay: 1s;
}
.top-kv__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.top-kv__bg picture,
.top-kv__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.top-kv__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: color-mix(in srgb, var(--wp--preset--color--border-gray, #9da2ae) 50%, transparent);
  mix-blend-mode: multiply;
}
.top-kv__inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  color: var(--wp--preset--color--white, #ffffff);
  gap: 4rem;
}
@media (max-width: 768px) {
  .top-kv__inner {
    gap: 3.4rem;
  }
}
.top-kv__tx {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
  text-align: center;
}
@media (max-width: 767px) {
  .top-kv__tx {
    gap: 0.8rem;
  }
}
.top-kv__title {
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 900;
  line-height: 118%;
  text-align: center;
  color: var(--wp--preset--color--white, #ffffff);
}
.top-kv__title--1line-short {
  font-size: 16rem;
}
.top-kv__title--1line-short small {
  font-size: 12rem;
  line-height: 118%;
}
@media (max-width: 1280px) {
  .top-kv__title--1line-short {
    font-size: 10rem;
  }
  .top-kv__title--1line-short small {
    font-size: 7.5rem;
  }
}
@media (max-width: 768px) {
  .top-kv__title--1line-short {
    font-size: 8rem;
  }
  .top-kv__title--1line-short small {
    font-size: 5rem;
  }
}
@media (max-width: 767px) {
  .top-kv__title--1line-short {
    font-size: 5.6rem;
  }
  .top-kv__title--1line-short small {
    font-size: 4rem;
  }
}
.top-kv__title--1line-long {
  font-size: 12rem;
}
.top-kv__title--1line-long small {
  font-size: 9rem;
}
@media (max-width: 1280px) {
  .top-kv__title--1line-long {
    font-size: 9.6rem;
  }
  .top-kv__title--1line-long small {
    font-size: 7.2rem;
  }
}
@media (max-width: 768px) {
  .top-kv__title--1line-long {
    font-size: 5rem;
  }
  .top-kv__title--1line-long small {
    font-size: 3.8rem;
  }
}
@media (max-width: 767px) {
  .top-kv__title--1line-long {
    font-size: 4rem;
  }
  .top-kv__title--1line-long small {
    font-size: 3rem;
  }
}
.top-kv__title--2lines-short {
  font-size: 12rem;
}
.top-kv__title--2lines-short small {
  font-size: 9rem;
}
@media (max-width: 1280px) {
  .top-kv__title--2lines-short {
    font-size: 9.6rem;
  }
  .top-kv__title--2lines-short small {
    font-size: 7.2rem;
  }
}
@media (max-width: 768px) {
  .top-kv__title--2lines-short {
    font-size: 4rem;
  }
  .top-kv__title--2lines-short small {
    font-size: 2.8rem;
  }
}
@media (max-width: 767px) {
  .top-kv__title--2lines-short {
    font-size: 4rem;
  }
  .top-kv__title--2lines-short small {
    font-size: 2.8rem;
  }
}
.top-kv__title--2lines-long {
  font-size: 9rem;
}
.top-kv__title--2lines-long small {
  font-size: 6rem;
}
@media (max-width: 1280px) {
  .top-kv__title--2lines-long {
    font-size: 7.5rem;
  }
  .top-kv__title--2lines-long small {
    font-size: 5rem;
  }
}
@media (max-width: 768px) {
  .top-kv__title--2lines-long {
    font-size: 3rem;
  }
  .top-kv__title--2lines-long small {
    font-size: 2.2rem;
  }
}
@media (max-width: 767px) {
  .top-kv__title--2lines-long {
    font-size: 2.8rem;
  }
  .top-kv__title--2lines-long small {
    font-size: 2rem;
  }
}
.top-kv__sub {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 3.4rem;
  line-height: 158%;
  color: var(--wp--preset--color--white, #ffffff);
  text-align: center;
  max-width: 85.6rem;
}
.top-kv__sub--long {
  font-size: 3.2rem;
}
@media (max-width: 767px) {
  .top-kv__sub {
    font-size: 1.4rem;
    max-width: 33.5rem;
  }
  .top-kv__sub--long {
    font-size: 1.4rem;
  }
}
.top-kv__scroll {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.352rem;
  color: var(--wp--preset--color--white, #ffffff);
  transition: all 0.3s ease;
}
.top-kv__scroll-line {
  position: relative;
  width: 2px;
  height: 13.3rem;
  --scroll-line-h: 13.3rem;
  background-color: var(--wp--preset--color--white, #ffffff);
  transform: translateZ(0);
}
@media (max-width: 768px) {
  .top-kv__scroll-line {
    width: 1.24px;
    height: 7rem;
    --scroll-line-h: 7rem;
  }
}
.top-kv__scroll-diamond {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.6rem;
  height: 1.6rem;
  background-color: var(--wp--preset--color--white, #ffffff);
  transform: translate(-50%, -50%) rotate(45deg);
  animation: scrollDiamondMove 2s linear infinite;
  will-change: transform, opacity;
}
@media (max-width: 768px) {
  .top-kv__scroll-diamond {
    width: 0.8rem;
    height: 0.8rem;
  }
}
.top-kv__scroll-text {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 2rem;
  line-height: 158%;
  letter-spacing: 0.12em;
  color: var(--wp--preset--color--white, #ffffff);
  text-align: center;
  z-index: 1;
}
@media (max-width: 768px) {
  .top-kv__scroll-text {
    font-size: 1rem;
  }
}
.top-kv__banner-wrap {
  position: absolute;
  right: 3.2rem;
  bottom: -7rem;
  z-index: 50;
  pointer-events: auto;
}
@media (min-width: 1441px) {
  .top-kv__banner-wrap {
    right: 2.2222222222vw;
  }
}
@media (max-width: 768px) {
  .top-kv__banner-wrap {
    display: none;
  }
}
.top-kv__banner {
  position: relative;
  display: block;
  width: 41.8rem;
  text-decoration: none;
  z-index: 50;
  filter: drop-shadow(0px 0px 14px rgba(0, 0, 0, 0.2));
  transition: transform 0.3s ease;
}
@media (min-width: 1441px) {
  .top-kv__banner {
    width: 29.0277777778vw;
  }
}
@media (max-width: 1280px) {
  .top-kv__banner {
    width: 30rem;
  }
}
@media (max-width: 767px) {
  .top-kv__banner {
    width: 25rem;
  }
}
.top-kv__banner--floating {
  position: fixed;
  top: auto;
  left: auto;
  right: 3.2rem;
  bottom: 6rem;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6rem);
  pointer-events: none;
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.4s ease;
}
.top-kv__banner--floating.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
@media (min-width: 1441px) {
  .top-kv__banner--floating {
    right: 2.2222222222vw;
    bottom: 4.1666666667vw;
  }
}
@media (max-width: 768px) {
  .top-kv__banner--floating {
    right: 1.6rem;
    bottom: 8rem;
  }
  body.no-btn-entry .top-kv__banner--floating {
    bottom: 9rem;
  }
}
@media (hover: hover) {
  .top-kv__banner:hover .top-kv__banner-box {
    background: var(--wp--preset--color--yellow-decor, #e0b136);
  }
  .top-kv__banner:hover .top-kv__banner-text {
    color: var(--wp--preset--color--white, #ffffff);
  }
  .top-kv__banner:hover .top-kv__banner-btn {
    background: transparent;
    border-color: var(--wp--preset--color--white, #ffffff);
    transform: rotate(45deg);
  }
  .top-kv__banner:hover .top-kv__banner-btn svg {
    transform: rotate(-45deg);
  }
  .top-kv__banner:hover .top-kv__banner-btn svg polygon {
    fill: var(--wp--preset--color--white, #ffffff);
  }
}
.top-kv__banner:active .top-kv__banner-box {
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.top-kv__banner:active .top-kv__banner-text {
  color: var(--wp--preset--color--white, #ffffff);
}
.top-kv__banner:active .top-kv__banner-btn {
  background: transparent;
  border-color: var(--wp--preset--color--white, #ffffff);
  transform: rotate(45deg);
}
.top-kv__banner:active .top-kv__banner-btn svg {
  transform: rotate(-45deg);
}
.top-kv__banner:active .top-kv__banner-btn svg polygon {
  fill: var(--wp--preset--color--white, #ffffff);
}
.top-kv__banner-box {
  background: var(--wp--preset--color--white, #ffffff);
  display: flex;
  align-items: center;
  padding: 1.6rem 0 1.6rem 2.4rem;
  gap: 1rem;
  transition: background-color 0.3s ease;
}
@media (min-width: 1441px) {
  .top-kv__banner-box {
    width: 27.7777777778vw;
    padding: 1.1111111111vw 0 1.1111111111vw 1.6666666667vw;
  }
}
@media (max-width: 1280px) {
  .top-kv__banner-box {
    width: 28.5rem;
    padding: 1rem 3.2rem 1rem 1.6rem;
  }
}
@media (max-width: 767px) {
  .top-kv__banner-box {
    width: 24rem;
    padding: 0.8rem 2.4rem 0.8rem 1.6rem;
  }
}
.top-kv__banner-inner {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  width: 26rem;
  height: auto;
}
@media (min-width: 1441px) {
  .top-kv__banner-inner {
    width: 18.0555555556vw;
    gap: 1.1111111111vw;
  }
}
@media (max-width: 1280px) {
  .top-kv__banner-inner {
    width: 19.4rem;
    gap: 0.8rem;
  }
}
@media (max-width: 767px) {
  .top-kv__banner-inner {
    width: 16.2rem;
    gap: 1.2rem;
  }
}
.top-kv__banner-text {
  width: 21.6rem;
  word-break: break-all;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 148%;
  color: var(--wp--preset--color--primary, #0e1b39);
  display: flex;
  align-items: center;
  transition: color 0.3s ease;
}
@media (min-width: 1441px) {
  .top-kv__banner-text {
    width: 15vw;
    font-size: 1.6666666667vw;
  }
}
@media (max-width: 1280px) {
  .top-kv__banner-text {
    width: 15.6rem;
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  .top-kv__banner-text {
    width: 12.7rem;
    font-size: 1.4rem;
  }
}
.top-kv__banner-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.8rem;
  height: 2.8rem;
  box-sizing: border-box;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  border: 1px solid var(--wp--preset--color--yellow-decor, #e0b136);
  cursor: pointer;
  transform-origin: center center;
  transition: transform 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}
.top-kv__banner-btn svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  transform-origin: center center;
  transition: transform 0.3s ease;
}
.top-kv__banner-btn svg polygon,
.top-kv__banner-btn svg path {
  fill: var(--wp--preset--color--white, #ffffff);
  transition: fill 0.3s ease;
}
@media (max-width: 767px) {
  .top-kv__banner-btn {
    width: 2rem;
    height: 2rem;
  }
}
.top-kv__banner-ph {
  position: absolute;
  width: 11rem;
  height: 11rem;
  right: 0;
  bottom: 0.8rem;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.03));
  border: 0.2rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  overflow: hidden;
}
.top-kv__banner-ph img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: top;
}
@media (min-width: 1441px) {
  .top-kv__banner-ph {
    width: 7.6388888889vw;
    height: 7.6388888889vw;
  }
}
@media (max-width: 1280px) {
  .top-kv__banner-ph {
    width: 8.4rem;
    height: 8.4rem;
  }
}
@media (max-width: 767px) {
  .top-kv__banner-ph {
    width: 6rem;
    height: 6rem;
  }
}

@keyframes kvDiamondLine1 {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes kvDiamondLine2 {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(100%);
  }
}
@keyframes kvDiamondLine3 {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes kvDiamondLine4 {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(-100%);
  }
}
.cta {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .cta {
    min-height: auto;
    padding: 8rem 0;
  }
}
@media (max-width: 768px) {
  .cta {
    padding: 8rem 0;
  }
}
.cta__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.cta__bg-ph {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.cta__bg-ph img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.cta__bg-color {
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--blue-dark, #616b7a);
  opacity: 0.5;
  mix-blend-mode: multiply;
  pointer-events: none;
}
.cta .container-lg3 {
  position: relative;
  z-index: 1;
  max-width: 118.4rem;
}
@media (max-width: 1280px) {
  .cta .container-lg3 {
    width: 100%;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
.cta__card {
  width: 100%;
  min-height: 62.7rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8rem 12rem;
  gap: 4rem;
  background: color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 70%, transparent);
  clip-path: polygon(6rem 0%, 100% 0%, 100% calc(100% - 6rem), calc(100% - 6rem) 100%, 0% 100%, 0% 6rem);
}
@media (max-width: 1280px) {
  .cta__card {
    padding: 5rem 6rem;
    gap: 3rem;
  }
}
@media (max-width: 768px) {
  .cta__card {
    min-height: auto;
    padding: 5.4rem 3rem;
    gap: 2.4rem;
    clip-path: polygon(4rem 0%, 100% 0%, 100% calc(100% - 4rem), calc(100% - 4rem) 100%, 0% 100%, 0% 4rem);
  }
}
.cta__tx {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 88rem;
  gap: 2rem;
}
@media (max-width: 768px) {
  .cta__tx {
    gap: 1.4rem;
  }
}
.cta__title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.cta__title-en {
  width: 100%;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 18rem;
  line-height: 87%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  letter-spacing: 0.08em;
  opacity: 0.7;
  margin: 0 0 -4rem;
  background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent) 3px, transparent 4px, transparent 7px);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.cta__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
.cta__title-en .char-reveal-wrap:last-child .char-reveal-inner {
  letter-spacing: 0;
}
@media (max-width: 1280px) {
  .cta__title-en {
    font-size: 13rem;
    margin: 0 0 -2.5rem;
  }
}
@media (max-width: 768px) {
  .cta__title-en {
    font-size: 8.5rem;
    line-height: 87%;
    margin: 0 0 -1.6rem;
    letter-spacing: 0.08em;
    background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent) 2px, transparent 2px, transparent 4px);
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .cta__title-en {
    font-size: 6rem;
  }
}
.cta__title-ja {
  position: relative;
  z-index: 1;
  width: 100%;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 700;
  font-size: 5.4rem;
  line-height: 152%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .cta__title-ja {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .cta__title-ja {
    font-size: 3.2rem;
    line-height: 1.52;
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .cta__title-ja {
    font-size: 2.4rem;
  }
}
.cta__desc {
  width: 100%;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 500;
  font-size: 2rem;
  line-height: 220%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 768px) {
  .cta__desc {
    font-size: 1.6rem;
    line-height: 2.2;
    text-align: center;
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .cta__desc {
    font-size: 1.4rem;
  }
}
.cta__btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 88rem;
  gap: 8rem;
}
@media (max-width: 1280px) {
  .cta__btn-box {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .cta__btn-box {
    flex-direction: column;
    align-items: center;
    gap: 2rem;
  }
}
.cta__btn-box .c-btn {
  height: 12rem;
  padding: 0;
  background: transparent;
  transition: border 0.15s ease;
}
@media (max-width: 768px) {
  .cta__btn-box .c-btn {
    height: 7.6rem;
  }
}
.cta__btn-box .c-btn .c-btn__link {
  height: 100%;
  background: var(--wp--preset--color--gold, #f0b211);
  transition: width 0.15s ease, height 0.15s ease, background-color 0.15s ease, opacity 0.15s ease;
}
.cta__btn-box .c-btn--white .c-btn__link {
  background: var(--wp--preset--color--white, #ffffff);
}
.cta__btn-box .c-btn:hover .c-btn__text,
.cta__btn-box .c-btn:hover .c-btn__icon, .cta__btn-box .c-btn:active .c-btn__text,
.cta__btn-box .c-btn:active .c-btn__icon {
  opacity: 1;
}
.cta__btn-box .c-btn:hover {
  transform: none;
}
.cta__btn-box .c-btn:hover .c-btn__icon {
  transform: none;
}
@media (min-width: 769px) {
  .cta__btn-box .c-btn:hover {
    border: 0.8rem solid var(--wp--preset--color--primary, #0e1b39);
  }
}
@media (max-width: 768px) {
  .cta__btn-box .c-btn:hover {
    border: 0.4rem solid var(--wp--preset--color--primary, #0e1b39);
  }
}
@media (max-width: 768px) {
  .cta__btn-box .c-btn:active {
    border: 0.4rem solid var(--wp--preset--color--primary, #0e1b39);
  }
  .cta__btn-box .c-btn:active .c-btn__link {
    width: calc(100% - 1.6rem);
    height: calc(100% - 1.6rem);
    opacity: 0.8;
  }
}
@media (min-width: 769px) {
  .cta__btn-box .c-btn:active {
    border: 0.8rem solid var(--wp--preset--color--primary, #0e1b39);
  }
  .cta__btn-box .c-btn:active .c-btn__link {
    width: 36.8rem;
    height: 8.8rem;
    opacity: 0.8;
  }
}
.cta__btn-box .c-btn.is-mouseup {
  border: 0.1rem solid var(--wp--preset--color--primary, #0e1b39);
}
.cta__btn-box .c-btn.is-mouseup .c-btn__link {
  background: var(--wp--preset--color--white, #ffffff);
}
.cta__btn-box .c-btn.is-mouseup.c-btn--white .c-btn__link {
  background: var(--wp--preset--color--gold, #f0b211);
}

.work-process {
  position: relative;
  width: 100%;
  padding: 12rem 0;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  /* Decorative Graphics */
  /* Section Heading */
  /* Content List */
  /* Cassette Item */
  /* STEP Badge Box (Number) */
  /* PC Arrow under yellow badge */
  /* Content Card */
  /* SP Arrow under white card */
}
@media (max-width: 768px) {
  .work-process {
    padding: 5rem 0;
  }
}
.work-process__decor01 {
  position: absolute;
  top: 0;
  right: 0;
  width: 29.8rem;
  height: 34rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .work-process__decor01 {
    width: 24.8rem;
    height: 28rem;
  }
}
@media (max-width: 991px) {
  .work-process__decor01 {
    width: 21.5rem;
    height: 24.6rem;
  }
}
@media (max-width: 768px) {
  .work-process__decor01 {
    width: 5.8rem;
    height: 17.5rem;
    top: 2.2rem;
  }
}
.work-process__decor01-vector {
  position: absolute;
  top: 0;
  right: 0;
  width: 17rem;
  height: 34rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media (max-width: 1280px) {
  .work-process__decor01-vector {
    width: 14.7rem;
    height: 29.3rem;
  }
}
@media (max-width: 991px) {
  .work-process__decor01-vector {
    width: 13.8rem;
    height: 28rem;
  }
}
@media (max-width: 768px) {
  .work-process__decor01-vector {
    width: 5.8rem;
    height: 11.5rem;
    top: 6rem;
  }
}
.work-process__decor01-rect-gold {
  position: absolute;
  top: 22.5rem;
  right: 16.5rem;
  width: 3rem;
  height: 3rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .work-process__decor01-rect-gold {
    top: 19.5rem;
    right: 15rem;
  }
}
@media (max-width: 991px) {
  .work-process__decor01-rect-gold {
    top: 17.5rem;
    right: 14.5rem;
    width: 2rem;
    height: 2rem;
  }
}
@media (max-width: 768px) {
  .work-process__decor01-rect-gold {
    top: 4px;
    right: 1.9rem;
    width: 0.8rem;
    height: 0.8rem;
  }
}
.work-process__decor01-rect-white {
  position: absolute;
  top: 5rem;
  right: 20rem;
  width: 8rem;
  height: 8rem;
  background: var(--wp--preset--color--white, #ffffff);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .work-process__decor01-rect-white {
    right: 15rem;
  }
}
@media (max-width: 991px) {
  .work-process__decor01-rect-white {
    top: 5rem;
    width: 6rem;
    height: 6rem;
  }
}
@media (max-width: 768px) {
  .work-process__decor01-rect-white {
    top: 3.6rem;
    right: 3rem;
    width: 2rem;
    height: 2rem;
  }
}
.work-process__decor02 {
  position: absolute;
  bottom: 4rem;
  left: 0;
  width: 16.9rem;
  height: 33.9rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 768px) {
  .work-process__decor02 {
    bottom: 0;
    width: 11.5rem;
    height: 23rem;
  }
}
.work-process__decor02-vector {
  width: 100%;
  height: 100%;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.work-process__inner {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 768px) {
  .work-process__inner {
    gap: 3.4rem;
  }
}
.work-process__heading .c-section-heading__en {
  left: 0;
  text-align: left;
}
.work-process__content {
  padding: 0 10.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
  width: 100%;
}
@media (max-width: 1280px) {
  .work-process__content {
    gap: 4rem;
    padding: 0 5rem;
  }
}
@media (max-width: 991px) {
  .work-process__content {
    gap: 3rem;
    padding: 0 2rem;
  }
}
@media (max-width: 768px) {
  .work-process__content {
    padding: 0 0.75rem;
    gap: 2.6rem;
  }
}
.work-process__cassette {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 2rem;
  width: 100%;
}
.work-process__cassette:last-child .work-process__arrow,
.work-process__cassette:last-child .work-process__sp-arrow {
  display: none !important;
}
@media (max-width: 768px) {
  .work-process__cassette {
    flex-direction: column;
    gap: 0.8rem;
  }
}
.work-process__number {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  width: 20.3884%;
  height: auto;
  aspect-ratio: 1/1;
  flex-shrink: 0;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  isolation: isolate;
}
@media (max-width: 768px) {
  .work-process__number {
    flex-direction: row;
    width: 100%;
    height: 4rem;
    padding: 0;
    gap: 1rem;
  }
}
.work-process__step-lbl {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 88%;
  text-align: center;
  letter-spacing: 0.19em;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .work-process__step-lbl {
    font-size: 2.8rem;
  }
}
@media (max-width: 991px) {
  .work-process__step-lbl {
    font-size: 2.4rem;
  }
}
@media (max-width: 768px) {
  .work-process__step-lbl {
    font-size: 2rem;
  }
}
.work-process__step-num {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 8rem;
  line-height: 88%;
  text-align: center;
  letter-spacing: 0.077em;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .work-process__step-num {
    font-size: 6rem;
  }
}
@media (max-width: 991px) {
  .work-process__step-num {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .work-process__step-num {
    font-size: 1.8rem;
  }
}
.work-process__arrow {
  position: absolute;
  left: 50%;
  bottom: -1.5rem;
  transform: translateX(-50%);
  width: 3.2rem;
  height: 1.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  z-index: 2;
}
@media (max-width: 768px) {
  .work-process__arrow {
    display: none;
  }
}
.work-process__card {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 2rem 4rem;
  gap: 4rem;
  width: 100%;
  height: auto;
  flex-grow: 1;
  background: var(--wp--preset--color--white, #ffffff);
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.05);
}
@media (max-width: 991px) {
  .work-process__card {
    padding: 1.6rem 2rem;
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .work-process__card {
    flex-direction: column;
    width: 100%;
    height: auto;
    padding: 1.4rem 2rem;
    gap: 1.4rem;
    filter: drop-shadow(0 0 1.4rem rgba(0, 0, 0, 0.05));
    box-shadow: none;
  }
}
.work-process__card-tx {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  flex: 1;
}
@media (max-width: 768px) {
  .work-process__card-tx {
    padding: 0 0.4rem;
    width: 100%;
    align-items: center;
    gap: 0.8rem;
  }
}
.work-process__card-title {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 148%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .work-process__card-title {
    font-size: 2.4rem;
  }
}
@media (max-width: 991px) {
  .work-process__card-title {
    font-size: 2.2rem;
  }
}
@media (max-width: 768px) {
  .work-process__card-title {
    line-height: 150%;
    font-size: 1.8rem;
    text-align: center;
  }
}
.work-process__card-desc {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .work-process__card-desc {
    font-size: 1.3rem;
  }
}
@media (max-width: 768px) {
  .work-process__card-desc {
    font-size: 1.2rem;
    line-height: 2.167;
    text-align: left;
  }
}
.work-process__card-ph {
  position: relative;
  width: 36.112%;
  aspect-ratio: 260/170;
  height: auto;
  flex-shrink: 0;
  overflow: hidden;
}
@media (max-width: 768px) {
  .work-process__card-ph {
    width: 100%;
    height: auto;
    aspect-ratio: 26/12;
  }
}
.work-process__card-ph picture,
.work-process__card-ph img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.work-process__card-ph--icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.work-process__card-ph--icon img {
  object-fit: contain;
}
@media (max-width: 768px) {
  .work-process__card-ph--icon {
    padding: 0.8rem 0;
  }
}
.work-process__sp-arrow {
  display: none;
}
@media (max-width: 768px) {
  .work-process__sp-arrow {
    display: block;
    position: absolute;
    left: 50%;
    bottom: -1.5rem;
    transform: translateX(-50%);
    width: 3.2rem;
    height: 1.6rem;
    background: var(--wp--preset--color--white, #ffffff);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    z-index: 2;
  }
}

.work-business {
  position: relative;
  padding: 12rem 0;
}
@media (max-width: 768px) {
  .work-business {
    padding: 3.4rem 0;
  }
}
.work-business__inner {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media (max-width: 768px) {
  .work-business__inner {
    padding: 0;
    gap: 3.4rem;
  }
}
.work-business__item {
  position: relative;
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background: color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 70%, transparent);
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.05);
}
@media (min-width: 769px) {
  .work-business__item:nth-child(even) {
    flex-direction: row-reverse;
  }
}
@media (max-width: 768px) {
  .work-business__item {
    width: 88%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .work-business__item:nth-child(odd) {
    align-self: flex-end;
  }
}
.work-business__image {
  width: 48.3871%;
  height: auto;
  aspect-ratio: 6/4;
  flex-shrink: 0;
}
.work-business__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
@media (max-width: 1280px) {
  .work-business__image {
    width: 50%;
  }
}
@media (max-width: 991px) {
  .work-business__image {
    width: 52%;
  }
}
@media (max-width: 768px) {
  .work-business__image {
    width: 100%;
    height: auto;
    aspect-ratio: 33/22;
  }
}
.work-business__content {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 4rem;
  gap: 2rem;
}
.work-business__content h3 {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.6;
  color: var(--wp--preset--color--primary, #0e1b39);
}
.work-business__content p {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.2;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .work-business__content {
    padding: 3rem;
  }
  .work-business__content h3 {
    font-size: 3rem;
  }
  .work-business__content p {
    font-size: 1.8rem;
  }
}
@media (max-width: 991px) {
  .work-business__content h3 {
    font-size: 2.6rem;
  }
  .work-business__content p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .work-business__content {
    width: 100%;
    height: auto;
    padding: 2.4rem 3.2rem;
    gap: 1.4rem;
  }
  .work-business__content h3 {
    font-size: 2.2rem;
    line-height: 1.5;
  }
  .work-business__content p {
    font-size: 1.4rem;
    line-height: 2.2;
  }
}
.work-business__line {
  width: 100%;
  height: 0.2rem;
  flex-shrink: 0;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 768px) {
  .work-business__line {
    height: 0.2rem;
  }
}
.work-business__decor {
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.work-business__decor--01 {
  width: 11.4rem;
  height: 17.4rem;
  right: 4.5rem;
  top: 1rem;
}
.work-business__decor--01 span {
  position: absolute;
  display: block;
  transform: rotate(45deg);
}
.work-business__decor--01 span:first-child {
  width: 3.1rem;
  height: 3.1rem;
  left: -0.3rem;
  bottom: 1.6rem;
  background: var(--wp--preset--color--white, #ffffff);
}
.work-business__decor--01 span:last-child {
  width: 5.2rem;
  height: 5.2rem;
  right: 2.15rem;
  top: 0;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 1280px) {
  .work-business__decor--01 {
    width: 10rem;
    height: 15rem;
    right: 2rem;
  }
  .work-business__decor--01 span:first-child {
    width: 2.8rem;
    height: 2.8rem;
  }
  .work-business__decor--01 span:last-child {
    width: 4.8rem;
    height: 4.8rem;
  }
}
@media (max-width: 991px) {
  .work-business__decor--01 {
    width: 8rem;
    height: 13.7rem;
    right: 1rem;
  }
  .work-business__decor--01 span:first-child {
    width: 2.5rem;
    height: 2.5rem;
  }
  .work-business__decor--01 span:last-child {
    width: 4.4rem;
    height: 4.4rem;
  }
}
@media (max-width: 768px) {
  .work-business__decor--01 {
    width: 3.5rem;
    height: 6.7rem;
    right: 0.66rem;
  }
  .work-business__decor--01 span:first-child {
    width: 1rem;
    height: 1rem;
    bottom: 0.42rem;
  }
  .work-business__decor--01 span:last-child {
    width: 2rem;
    height: 2rem;
    right: 0.4rem;
    top: -0.5rem;
  }
}
.work-business__decor--02 {
  width: 39.5rem;
  height: 79.1rem;
  right: 0;
  top: 26.1rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media (max-width: 1280px) {
  .work-business__decor--02 {
    width: 35rem;
    height: 75rem;
  }
}
@media (max-width: 991px) {
  .work-business__decor--02 {
    width: 30rem;
    height: 70rem;
  }
}
@media (max-width: 768px) {
  .work-business__decor--02 {
    width: 7rem;
    height: 13.9rem;
    right: 0.2rem;
    top: 10.7rem;
  }
}
.work-business__decor--03 {
  width: 25.4rem;
  height: 50.9rem;
  left: 0;
  bottom: 25.6rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 1280px) {
  .work-business__decor--03 {
    width: 20rem;
    height: 45rem;
  }
}
@media (max-width: 991px) {
  .work-business__decor--03 {
    width: 15rem;
    height: 40rem;
  }
}
@media (max-width: 768px) {
  .work-business__decor--03 {
    width: 16.4rem;
    height: 32.8rem;
    left: 0;
    bottom: 37.3rem;
  }
}

.work-reward {
  position: relative;
  width: 100%;
  padding: 12rem 0;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  /* Decorative Graphics */
  /* Content Section */
  /* Photo Box */
  /* List Box */
  /* Cassette Item */
}
@media (max-width: 768px) {
  .work-reward {
    padding: 5rem 0;
  }
}
.work-reward__decor01 {
  position: absolute;
  top: 0;
  right: 0;
  width: 27rem;
  height: 50.9rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .work-reward__decor01 {
    width: 23.8rem;
    height: 49.3rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor01 {
    width: 18.5rem;
    height: 34.7rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor01 {
    width: 11.9rem;
    height: 28.2rem;
  }
}
.work-reward__decor01-vector {
  position: absolute;
  top: 0;
  right: 0;
  width: 25.5rem;
  height: 50.9rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media (max-width: 1280px) {
  .work-reward__decor01-vector {
    width: 21.5rem;
    height: 42.9rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor01-vector {
    width: 18.5rem;
    height: 34.7rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor01-vector {
    width: 11.9rem;
    height: 23.8rem;
    top: 4.4rem;
  }
}
.work-reward__decor01-rect-gold {
  position: absolute;
  top: 8rem;
  left: 1rem;
  width: 4rem;
  height: 4rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .work-reward__decor01-rect-gold {
    top: 6rem;
    left: 2rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor01-rect-gold {
    top: 2rem;
    left: 1rem;
    width: 3rem;
    height: 3rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor01-rect-gold {
    top: 1.5rem;
    left: 6rem;
    width: 2rem;
    height: 2rem;
    background: var(--wp--preset--color--yellow-decor, #e0b136);
  }
}
.work-reward__decor01-rect-outline {
  position: absolute;
  top: 2.5rem;
  left: 11.5rem;
  width: 2.5rem;
  height: 2.5rem;
  border: 0.1rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .work-reward__decor01-rect-outline {
    top: 1.75rem;
    left: 10rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor01-rect-outline {
    top: 0.6rem;
    right: 10rem;
    width: 2rem;
    height: 2rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor01-rect-outline {
    top: 0;
    right: 1.2rem;
    left: auto;
    width: 0.8rem;
    height: 0.8rem;
  }
}
.work-reward__decor02 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 31.3rem;
  height: 59.3rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .work-reward__decor02 {
    width: 23.8rem;
    height: 49.3rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor02 {
    width: 18.5rem;
    height: 34.7rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor02 {
    width: 15.5rem;
    height: 31.1rem;
  }
}
.work-reward__decor02-vector {
  width: 29.7rem;
  height: 59.3rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 1280px) {
  .work-reward__decor02-vector {
    width: 23.8rem;
    height: 49.3rem;
  }
}
@media (max-width: 991px) {
  .work-reward__decor02-vector {
    width: 18.5rem;
    height: 34.7rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor02-vector {
    width: 15.5rem;
    height: 31.1rem;
  }
}
.work-reward__decor02-rect-outline {
  position: absolute;
  bottom: 6.6rem;
  left: 21.8rem;
  width: 8rem;
  height: 8rem;
  border: 0.1rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .work-reward__decor02-rect-outline {
    width: 6rem;
    height: 6rem;
  }
}
@media (max-width: 768px) {
  .work-reward__decor02-rect-outline {
    display: none;
  }
}
.work-reward__inner {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  gap: 8rem;
}
@media (max-width: 768px) {
  .work-reward__inner {
    gap: 4rem;
  }
}
.work-reward__content {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 6rem;
  width: 100%;
}
.work-reward__content--secondary {
  align-items: center;
}
.work-reward__content--secondary .work-reward__list {
  padding-top: 0;
}
@media (max-width: 1280px) {
  .work-reward__content {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .work-reward__content {
    flex-direction: column;
    align-items: center;
    gap: 3.4rem;
  }
}
.work-reward__ph {
  width: 40.3226%;
  height: auto;
  aspect-ratio: 5/4;
  flex-shrink: 0;
  overflow: hidden;
}
@media (max-width: 768px) {
  .work-reward__ph {
    width: 100%;
    height: auto;
    aspect-ratio: 315/252;
  }
}
.work-reward__ph picture,
.work-reward__ph img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: top;
}
.work-reward__list {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-top: 5.4rem;
  gap: 3rem;
  width: 100%;
  flex: 1;
}
@media (max-width: 768px) {
  .work-reward__list {
    padding-top: 0;
    gap: 2rem;
    width: 100%;
  }
}
.work-reward__cassette {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3rem;
  width: 100%;
}
@media (max-width: 768px) {
  .work-reward__cassette {
    gap: 1.8rem;
  }
}
.work-reward__cassette:last-child .work-reward__line {
  display: none !important;
}
.work-reward__tx {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  width: 100%;
}
@media (max-width: 768px) {
  .work-reward__tx {
    gap: 0.8rem;
  }
}
.work-reward__item-head {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 2rem;
  width: 100%;
}
@media (max-width: 768px) {
  .work-reward__item-head {
    gap: 1.4rem;
  }
}
.work-reward__item-num {
  width: 5.1rem;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 4.6rem;
  line-height: 88%;
  letter-spacing: 0.1em;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  flex-shrink: 0;
  white-space: nowrap;
}
@media (max-width: 1280px) {
  .work-reward__item-num {
    width: auto;
    font-size: 4.3rem;
  }
}
@media (max-width: 991px) {
  .work-reward__item-num {
    font-size: 4rem;
  }
}
@media (max-width: 768px) {
  .work-reward__item-num {
    width: 3.5rem;
    font-size: 3.2rem;
  }
}
.work-reward__item-title {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 150%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .work-reward__item-title {
    font-size: 2.4rem;
  }
}
@media (max-width: 991px) {
  .work-reward__item-title {
    font-size: 2.2rem;
  }
}
@media (max-width: 768px) {
  .work-reward__item-title {
    font-size: 1.8rem;
  }
}
.work-reward__item-desc {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .work-reward__item-desc {
    font-size: 1.3rem;
  }
}
@media (max-width: 768px) {
  .work-reward__item-desc {
    font-size: 1.2rem;
    line-height: 2.2;
  }
}
.work-reward__line {
  width: 100%;
  height: 0.2rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.work-reward .br-sp-only {
  display: none;
}
@media (min-width: 370px) and (max-width: 375px) {
  .work-reward .br-sp-only {
    display: block;
  }
}

.about-vision {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .about-vision {
    padding: 8rem 0;
  }
}
@media (max-width: 991px) {
  .about-vision {
    padding: 5rem 0;
  }
}
.about-vision__decor01 {
  position: absolute;
  top: 6rem;
  left: 12rem;
  width: 14.8rem;
  height: 7.3rem;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .about-vision__decor01 {
    top: 4.1666666667vw;
    left: 8.3333333333vw;
    width: 10.2777777778vw;
    height: 5.0694444444vw;
  }
}
@media (max-width: 991px) {
  .about-vision__decor01 {
    top: 0;
    left: auto;
    right: 3.475rem;
    width: 5.5rem;
    height: 4.5rem;
  }
}
.about-vision__decor-diamond {
  position: absolute;
}
.about-vision__decor-diamond--gold {
  width: 4rem;
  height: 4rem;
  left: 0.8284rem;
  top: 2.4284rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .about-vision__decor-diamond--gold {
    width: 2.7777777778vw;
    height: 2.7777777778vw;
    left: 0.5752777778vw;
    top: 1.6863888889vw;
  }
}
@media (max-width: 991px) {
  .about-vision__decor-diamond--gold {
    width: 1.6rem;
    height: 1.6rem;
    left: 0.33136rem;
    top: 2.53136rem;
  }
}
.about-vision__decor-diamond--cream {
  width: 2.4rem;
  height: 2.4rem;
  right: 0.49704rem;
  top: 0.49704rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .about-vision__decor-diamond--cream {
    width: 1.6666666667vw;
    height: 1.6666666667vw;
    right: 0.3451666667vw;
    top: 0.3451666667vw;
  }
}
@media (max-width: 991px) {
  .about-vision__decor-diamond--cream {
    width: 1rem;
    height: 1rem;
    top: 0.2071rem;
    right: 0.2071rem;
  }
}
.about-vision__decor02 {
  position: absolute;
  top: 0;
  right: 0;
  width: 28.1rem;
  height: 56.2rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .about-vision__decor02 {
    width: 19.5138888889vw;
    height: 39.0277777778vw;
  }
}
@media (max-width: 991px) {
  .about-vision__decor02 {
    top: 2.8rem;
    width: 11.9rem;
    height: 23.8rem;
  }
}
.about-vision__decor03 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 25.4rem;
  height: 50.9rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .about-vision__decor03 {
    width: 17.6388888889vw;
    height: 35.3472222222vw;
  }
}
@media (max-width: 991px) {
  .about-vision__decor03 {
    top: 41.1rem;
    bottom: auto;
    width: 7.7rem;
    height: 15.4rem;
  }
}
.about-vision .container-lg3 {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  max-width: 130.4rem;
  gap: 10rem;
}
@media (max-width: 1280px) {
  .about-vision .container-lg3 {
    max-width: 100rem;
    gap: 6rem;
  }
}
@media (max-width: 991px) {
  .about-vision .container-lg3 {
    flex-direction: column;
    align-items: center;
    gap: 3.4rem;
    max-width: 100%;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
.about-vision__ph {
  position: relative;
  flex: 0 1 51rem;
  max-width: 51rem;
  height: auto;
  aspect-ratio: 510/660;
  min-width: 26rem;
}
.about-vision__ph img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: top;
}
@media (max-width: 1280px) {
  .about-vision__ph {
    flex: 0 1 36rem;
    max-width: 36rem;
  }
}
@media (max-width: 991px) {
  .about-vision__ph {
    order: 1;
    flex: none;
    max-width: 48rem;
    aspect-ratio: 1/1;
    min-width: unset;
  }
}
@media (max-width: 991px) and (max-width: 576px) {
  .about-vision__ph {
    max-width: 100%;
  }
}
.about-vision__content {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-width: 0;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .about-vision__content {
    gap: 4rem;
  }
}
@media (max-width: 991px) {
  .about-vision__content {
    display: contents;
  }
}
.about-vision__tx {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .about-vision__tx {
    gap: 4rem;
  }
}
@media (max-width: 991px) {
  .about-vision__tx {
    order: 2;
  }
}
.about-vision__title {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .about-vision__title {
    order: 0;
    align-items: center;
  }
}
.about-vision__title-en {
  margin: 0 0 -8rem;
  opacity: 0.3;
}
.about-vision__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
@media (max-width: 1280px) {
  .about-vision__title-en {
    margin: 0 0 -5.5rem;
  }
}
@media (max-width: 991px) {
  .about-vision__title-en {
    margin: 0 0 -4.5rem;
    text-align: center;
  }
}
@media (max-width: 991px) and (max-width: 576px) {
  .about-vision__title-en {
    margin: 0 0 -2.8rem;
  }
}
.about-vision__title-ja {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
}
@media (max-width: 991px) {
  .about-vision__title-ja {
    align-items: center;
    gap: 0;
  }
}
.about-vision__title-sub {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.4rem 1.2rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  color: var(--wp--preset--color--white, #ffffff);
  font-weight: 700;
  font-size: 2rem;
  line-height: 152%;
}
@media (max-width: 1280px) {
  .about-vision__title-sub {
    font-size: 1.6rem;
    padding: 0.35rem 1.1rem;
  }
}
@media (max-width: 991px) {
  .about-vision__title-sub {
    font-size: 1.4rem;
    padding: 0.3rem 0.8rem;
    line-height: 140%;
  }
}
@media (max-width: 991px) and (max-width: 576px) {
  .about-vision__title-sub {
    font-size: 1rem;
    padding: 0.2rem 0.4rem;
    line-height: 100%;
  }
}
.about-vision__title-main {
  margin: 0;
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
}
@media (max-width: 1280px) {
  .about-vision__title-main {
    font-size: 3.6rem;
    line-height: 1.45;
  }
}
@media (max-width: 991px) {
  .about-vision__title-main {
    text-align: center;
  }
}
@media (max-width: 991px) and (max-width: 576px) {
  .about-vision__title-main {
    font-size: 2.4rem;
    line-height: 1.52;
  }
}
.about-vision__desc {
  margin: 0;
  font-size: 2rem;
  line-height: 220%;
}
@media (max-width: 1280px) {
  .about-vision__desc {
    font-size: 1.6rem;
    line-height: 200%;
  }
}
@media (max-width: 991px) {
  .about-vision__desc {
    font-size: 1.7rem;
  }
}
@media (max-width: 991px) and (max-width: 576px) {
  .about-vision__desc {
    font-size: 1.4rem;
    line-height: 220%;
  }
}
.about-vision__profile {
  display: flex;
  align-items: center;
  gap: 2rem;
  font-size: 2rem;
  line-height: 220%;
}
@media (max-width: 1280px) {
  .about-vision__profile {
    font-size: 1.7rem;
    gap: 1.6rem;
  }
}
@media (max-width: 576px) {
  .about-vision__profile {
    font-size: 1.4rem;
    gap: 1.4rem;
  }
}

.top-link {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  padding: 12rem 0;
  isolation: isolate;
}
@media (max-width: 1280px) {
  .top-link {
    padding: 8rem 0;
  }
}
@media (max-width: 768px) {
  .top-link {
    padding: 5rem 0;
  }
}
.top-link__decor {
  position: absolute;
  top: 0;
  left: 0;
  width: 36rem;
  height: 36rem;
  pointer-events: none;
  z-index: 0;
}
.top-link__decor svg {
  width: 100%;
  height: 100%;
  display: block;
}
@media (max-width: 1440px) {
  .top-link__decor {
    width: 25vw;
    height: 25vw;
  }
}
@media (max-width: 768px) {
  .top-link__decor {
    width: 20rem;
    height: 20rem;
  }
}
.top-link .container-top-link {
  width: 100%;
  max-width: 128rem;
  margin: 0 auto;
  padding: 0 2rem;
}
@media (max-width: 768px) {
  .top-link .container-top-link {
    padding: 0 3rem;
  }
}
.top-link__grid {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 1rem;
  width: 100%;
  height: 73rem;
  isolation: isolate;
  overflow: hidden;
}
@media (min-width: 769px) {
  .top-link__grid::before, .top-link__grid::after {
    content: "";
    position: absolute;
    background: var(--wp--preset--color--bg-primary, #f4f5f5);
    z-index: 2;
    pointer-events: none;
  }
  .top-link__grid::before {
    top: 0;
    bottom: 0;
    left: 55.6451612903%;
    width: 1rem;
  }
  .top-link__grid::after {
    right: 0;
    top: 27rem;
    width: 43.5483870968%;
    height: 1rem;
  }
}
@media (min-width: 769px) and (max-width: 1280px) {
  .top-link__grid::after {
    top: 20rem;
  }
}
@media (max-width: 1280px) {
  .top-link__grid {
    height: auto;
  }
}
@media (max-width: 768px) {
  .top-link__grid {
    flex-direction: column;
    gap: 1rem;
    height: auto;
    overflow: visible;
  }
}
.top-link__bg-previews {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}
@media (max-width: 768px) {
  .top-link__bg-previews {
    display: none;
  }
}
.top-link__bg-item {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 1;
}
.top-link__bg-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.top-link__bg-item::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: color-mix(in srgb, var(--wp--preset--color--blue-dark, #616b7a) 50%, transparent);
  mix-blend-mode: multiply;
  z-index: 2;
  pointer-events: none;
}
.top-link__card {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 0 0 3rem 3rem;
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;
  background: transparent;
  cursor: pointer;
}
@media (max-width: 768px) {
  .top-link__card {
    padding: 0;
    background: #f4f5f5;
    box-sizing: border-box;
    border: 1px solid transparent;
    box-shadow: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
    -webkit-tap-highlight-color: transparent;
  }
  .top-link__card:active, .top-link__card.is-touch-active {
    border-color: #e0b136;
    box-shadow: inset 0px 0px 8px 6px rgba(0, 0, 0, 0.11);
  }
  .top-link__card:active .top-link__card-inner, .top-link__card.is-touch-active .top-link__card-inner {
    transform: scale(0.8);
  }
}
.top-link__card-inner {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 0 0 3rem 3rem;
  box-sizing: border-box;
  transform-origin: center center;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (max-width: 1280px) {
  .top-link__card-inner {
    padding: 1rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-inner {
    padding: 0 0 1rem 1rem;
  }
}
.top-link__card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.4s cubic-bezier(0.25, 1, 0.5, 1), transform 0.5s ease;
}
.top-link__card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s ease;
}
.top-link__card-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: color-mix(in srgb, var(--wp--preset--color--blue-dark, #616b7a) 50%, transparent);
  mix-blend-mode: multiply;
  z-index: 1;
  pointer-events: none;
}
.top-link__card-content {
  position: relative;
  z-index: 3;
  width: 100%;
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.35s ease, transform 0.35s ease;
}
.top-link__card-title-en {
  position: absolute;
  bottom: 1rem;
  left: 0;
  z-index: 1;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 10rem;
  line-height: 87%;
  letter-spacing: 0.2em;
  word-break: break-word;
  opacity: 0.5;
  margin: 0;
  pointer-events: none;
  background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent), color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 95%, transparent) 2px, transparent 2px, transparent 4px);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 1280px) {
  .top-link__card-title-en {
    font-size: 7rem;
    bottom: 0.8rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-title-en {
    font-size: 4.8rem;
    line-height: 88%;
    letter-spacing: 0.2em;
    bottom: 1rem;
  }
}
.top-link__card-row {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 3rem;
}
@media (max-width: 1280px) {
  .top-link__card-row {
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-row {
    gap: 1.5rem;
  }
}
.top-link__card-title-ja {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-style: normal;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 100%;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  text-shadow: 0px 0px 20px #000000;
  margin: 0;
  display: flex;
  align-items: center;
  max-width: 36rem;
}
@media (max-width: 1280px) {
  .top-link__card-title-ja {
    font-size: 2.8rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-title-ja {
    font-size: 2.2rem;
    letter-spacing: -0.023em;
    max-width: 100%;
  }
}
.top-link__card-btn {
  position: relative;
  width: 6.4rem;
  height: 6.4rem;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0deg);
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
  box-sizing: border-box;
}
@media (max-width: 1280px) {
  .top-link__card-btn {
    width: 5rem;
    height: 5rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-btn {
    display: none;
  }
}
.top-link__card-btn-border {
  position: absolute;
  inset: 0;
  border: 2px solid var(--wp--preset--color--yellow-decor, #e0b136);
  opacity: 0;
  transition: opacity 0.35s ease;
  pointer-events: none;
  z-index: 1;
}
.top-link__card-btn-bg {
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transition: background-color 0.35s ease, transform 0.2s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 0;
}
.top-link__card-btn-arrow {
  position: absolute;
  display: block;
  width: 1.2rem;
  height: 1.5rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
  opacity: 1;
  z-index: 2;
}
@media (max-width: 768px) {
  .top-link__card-btn-arrow {
    width: 0.9rem;
    height: 1.2rem;
  }
}
.top-link__card-btn-text {
  position: absolute;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  letter-spacing: 0.05em;
  text-align: center;
  opacity: 0;
  transform: rotate(-45deg) scale(0.6);
  transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
  pointer-events: none;
  z-index: 2;
}
@media (max-width: 1280px) {
  .top-link__card-btn-text {
    font-size: 1.3rem;
  }
}
@media (max-width: 768px) {
  .top-link__card-btn-text {
    font-size: 1.1rem;
  }
}
.top-link__card:hover .top-link__card-btn {
  transform: rotate(45deg);
}
.top-link__card:hover .top-link__card-btn-border {
  opacity: 1;
}
.top-link__card:hover .top-link__card-btn-bg {
  background: var(--wp--preset--color--white, #ffffff);
}
.top-link__card:hover .top-link__card-btn-arrow {
  opacity: 0;
  transform: scale(0.3);
}
.top-link__card:hover .top-link__card-btn-text {
  opacity: 1;
  transform: rotate(-45deg) scale(1);
}
.top-link__card:active .top-link__card-btn {
  transform: rotate(45deg);
}
.top-link__card:active .top-link__card-btn-border {
  opacity: 1;
}
.top-link__card:active .top-link__card-btn-bg {
  background: var(--wp--preset--color--white, #ffffff);
  transform: scale(0.78);
}
.top-link__card:active .top-link__card-btn-text {
  opacity: 1;
  transform: rotate(-45deg) scale(0.85);
}
.top-link__card--about {
  width: 55.6451612903%;
  flex: 0 0 55.6451612903%;
  height: 73rem;
}
.top-link__card--about .top-link__card-title-en {
  max-width: 58.2rem;
}
@media (max-width: 768px) {
  .top-link__card--about .top-link__card-title-en {
    max-width: 100%;
  }
}
@media (max-width: 1280px) {
  .top-link__card--about {
    height: 50rem;
  }
}
@media (max-width: 768px) {
  .top-link__card--about {
    flex: none;
    width: 100%;
    height: 28rem;
  }
}
.top-link__col-right {
  width: 43.5483870968%;
  flex: 0 0 43.5483870968%;
  height: 73rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (max-width: 1280px) {
  .top-link__col-right {
    height: 50rem;
  }
}
@media (max-width: 768px) {
  .top-link__col-right {
    flex: none;
    width: 100%;
    height: auto;
    gap: 1rem;
  }
}
.top-link__card--work {
  width: 100%;
  height: 27rem;
  flex: 0 0 27rem;
}
.top-link__card--work .top-link__card-title-en {
  max-width: 46rem;
}
@media (max-width: 768px) {
  .top-link__card--work .top-link__card-title-en {
    max-width: 100%;
  }
}
@media (max-width: 1280px) {
  .top-link__card--work {
    flex: 1;
    height: auto;
  }
}
@media (max-width: 768px) {
  .top-link__card--work {
    flex: none;
    height: 16rem;
    align-items: flex-end;
  }
  .top-link__card--work .top-link__card-inner {
    align-items: flex-end;
    padding: 0 1rem 1rem 0;
  }
  .top-link__card--work .top-link__card-content {
    align-items: flex-end;
    text-align: right;
  }
  .top-link__card--work .top-link__card-title-en {
    left: auto;
    right: 0;
    text-align: right;
    margin-right: -0.2em;
  }
  .top-link__card--work .top-link__card-row {
    width: 100%;
    justify-content: flex-end;
  }
  .top-link__card--work .top-link__card-title-ja {
    text-align: right;
  }
  .top-link__card--work .top-link__card-btn {
    display: none;
  }
}
.top-link__card--env {
  width: 100%;
  height: 45rem;
  flex: 1;
}
.top-link__card--env .top-link__card-title-en {
  max-width: 49.2rem;
}
@media (max-width: 768px) {
  .top-link__card--env .top-link__card-title-en {
    max-width: 100%;
  }
}
@media (max-width: 1280px) {
  .top-link__card--env {
    flex: 1.5;
    height: auto;
  }
}
@media (max-width: 768px) {
  .top-link__card--env {
    flex: none;
    height: 20rem;
  }
  .top-link__card--env .top-link__card-btn {
    display: none;
  }
}
@media (min-width: 769px) {
  .top-link__grid:has(.top-link__card--about:hover) .top-link__bg-item--about, .top-link__grid.is-hover-about .top-link__bg-item--about {
    opacity: 1;
  }
  .top-link__grid:has(.top-link__card--about:hover) .top-link__card-bg, .top-link__grid.is-hover-about .top-link__card-bg {
    opacity: 0;
  }
  .top-link__grid:has(.top-link__card--about:hover) .top-link__card--work .top-link__card-content,
  .top-link__grid:has(.top-link__card--about:hover) .top-link__card--env .top-link__card-content, .top-link__grid.is-hover-about .top-link__card--work .top-link__card-content,
  .top-link__grid.is-hover-about .top-link__card--env .top-link__card-content {
    opacity: 0;
    transform: translateY(1.2rem);
    pointer-events: none;
  }
  .top-link__grid:has(.top-link__card--about:hover) .top-link__card--about .top-link__card-content, .top-link__grid.is-hover-about .top-link__card--about .top-link__card-content {
    opacity: 1;
    transform: translateY(0);
  }
  .top-link__grid:has(.top-link__card--work:hover) .top-link__bg-item--work, .top-link__grid.is-hover-work .top-link__bg-item--work {
    opacity: 1;
  }
  .top-link__grid:has(.top-link__card--work:hover) .top-link__card-bg, .top-link__grid.is-hover-work .top-link__card-bg {
    opacity: 0;
  }
  .top-link__grid:has(.top-link__card--work:hover) .top-link__card--about .top-link__card-content,
  .top-link__grid:has(.top-link__card--work:hover) .top-link__card--env .top-link__card-content, .top-link__grid.is-hover-work .top-link__card--about .top-link__card-content,
  .top-link__grid.is-hover-work .top-link__card--env .top-link__card-content {
    opacity: 0;
    transform: translateY(1.2rem);
    pointer-events: none;
  }
  .top-link__grid:has(.top-link__card--work:hover) .top-link__card--work .top-link__card-content, .top-link__grid.is-hover-work .top-link__card--work .top-link__card-content {
    opacity: 1;
    transform: translateY(0);
  }
  .top-link__grid:has(.top-link__card--env:hover) .top-link__bg-item--env, .top-link__grid.is-hover-env .top-link__bg-item--env {
    opacity: 1;
  }
  .top-link__grid:has(.top-link__card--env:hover) .top-link__card-bg, .top-link__grid.is-hover-env .top-link__card-bg {
    opacity: 0;
  }
  .top-link__grid:has(.top-link__card--env:hover) .top-link__card--about .top-link__card-content,
  .top-link__grid:has(.top-link__card--env:hover) .top-link__card--work .top-link__card-content, .top-link__grid.is-hover-env .top-link__card--about .top-link__card-content,
  .top-link__grid.is-hover-env .top-link__card--work .top-link__card-content {
    opacity: 0;
    transform: translateY(1.2rem);
    pointer-events: none;
  }
  .top-link__grid:has(.top-link__card--env:hover) .top-link__card--env .top-link__card-content, .top-link__grid.is-hover-env .top-link__card--env .top-link__card-content {
    opacity: 1;
    transform: translateY(0);
  }
}

.about-company {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 400;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .about-company {
    padding: 8rem 0;
  }
}
@media (max-width: 991px) {
  .about-company {
    padding: 5rem 0;
  }
}
.about-company .container-lg3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8rem;
  max-width: 110.4rem;
}
@media (max-width: 1280px) {
  .about-company .container-lg3 {
    gap: 6rem;
  }
}
@media (max-width: 991px) {
  .about-company .container-lg3 {
    gap: 4rem;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
.about-company__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.about-company__title-en {
  text-align: center;
  margin: 0 0 -4.8rem;
  opacity: 0.3;
}
.about-company__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
.about-company__title-en .char-reveal-wrap:last-child .char-reveal-inner {
  letter-spacing: 0;
}
@media (max-width: 1280px) {
  .about-company__title-en {
    margin: 0 0 -3.8rem;
  }
}
@media (max-width: 991px) {
  .about-company__title-en {
    font-size: 6rem;
    margin: 0 0 -1.6rem;
  }
}
.about-company__title-ja {
  position: relative;
  z-index: 1;
  margin: 0;
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
  text-align: center;
}
@media (max-width: 1280px) {
  .about-company__title-ja {
    font-size: 3.6rem;
  }
}
@media (max-width: 991px) {
  .about-company__title-ja {
    font-size: 2.4rem;
  }
}
.about-company__ph {
  width: 100%;
  max-width: 104rem;
  height: auto;
  aspect-ratio: 1040/400;
  overflow: hidden;
}
.about-company__ph img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
@media (max-width: 991px) {
  .about-company__ph {
    aspect-ratio: 315/120;
  }
}
.about-company__contents {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 104rem;
  gap: 4rem;
}
@media (max-width: 991px) {
  .about-company__contents {
    gap: 2.4rem;
  }
}
.about-company__cassette {
  display: flex;
  flex-direction: column;
}
.about-company__txt-box {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  padding-bottom: 4rem;
  border-bottom: 1px solid var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 1280px) {
  .about-company__txt-box {
    gap: 2.5rem;
    padding-bottom: 1.6rem;
  }
}
@media (max-width: 991px) {
  .about-company__txt-box {
    flex-direction: column;
    gap: 1rem;
    padding-bottom: 2.4rem;
  }
}
.about-company__label {
  flex-shrink: 0;
  width: 24rem;
  font-weight: 700;
  font-size: 2rem;
  line-height: 150%;
}
@media (max-width: 1280px) {
  .about-company__label {
    width: 18rem;
    font-size: 1.8rem;
  }
}
@media (max-width: 991px) {
  .about-company__label {
    width: 100%;
    font-size: 1.4rem;
  }
}
.about-company__txt {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
  font-size: 2rem;
  line-height: 151%;
}
@media (max-width: 1280px) {
  .about-company__txt {
    font-size: 1.8rem;
  }
}
@media (max-width: 991px) {
  .about-company__txt {
    font-size: 1.2rem;
    width: 100%;
    gap: 0.8rem;
  }
}
.about-company__txt a {
  color: var(--wp--preset--color--primary, #0e1b39);
  text-decoration: none;
}
.about-company__txt a:hover {
  color: var(--wp--preset--color--yellow-decor, #e0b136);
}
.about-company__txt iframe {
  display: block;
  width: 100%;
  height: 100%;
  height: 40rem;
  overflow: hidden;
}
@media (max-width: 991px) {
  .about-company__txt iframe {
    height: auto;
    min-height: 16.6rem;
  }
}
.about-company__line {
  display: block;
  width: 100%;
  height: 1px;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}

.top-policy {
  position: relative;
  width: 100%;
  padding: 12rem 0 6rem;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .top-policy {
    padding: 8rem 0 4rem;
  }
}
@media (max-width: 991px) {
  .top-policy {
    padding: 6.5rem 0 3.8rem;
  }
}
@media (max-width: 768px) {
  .top-policy {
    padding: 5rem 0 3.4rem;
  }
}
.top-policy__decor01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 26.6rem;
  height: 58.2rem;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .top-policy__decor01 {
    width: 18.4722222222vw;
    height: 40.4166666667vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor01 {
    width: 9rem;
    height: 19.6rem;
  }
}
.top-policy__decor01::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80%;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(0 0, 27% 0, 100% 42%, 0 100%);
}
.top-policy__decor01-diamond {
  position: absolute;
  top: 37.63964rem;
  left: 14.33964rem;
  width: 8.4rem;
  height: 8.4rem;
  border: 2px solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .top-policy__decor01-diamond {
    top: 26.1386388889vw;
    left: 9.9580833333vw;
    width: 5.8333333333vw;
    height: 5.8333333333vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor01-diamond {
    width: 1.6rem;
    height: 1.6rem;
    top: 12.33136rem;
    left: 4.93136rem;
  }
}
.top-policy__decor01-rect {
  position: absolute;
  top: 52.1355rem;
  left: 10.0355rem;
  width: 5rem;
  height: 5rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .top-policy__decor01-rect {
    top: 36.2052083333vw;
    left: 6.9690972222vw;
    width: 3.4722222222vw;
    height: 3.4722222222vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor01-rect {
    width: 1rem;
    height: 1rem;
    top: 16.3071rem;
    left: 3.6071rem;
  }
}
.top-policy__decor02 {
  position: absolute;
  top: 32.4rem;
  right: 0;
  width: 37rem;
  height: 74rem;
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 1440px) {
  .top-policy__decor02 {
    top: 22.5vw;
    width: 25.6944444444vw;
    height: 51.3888888889vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor02 {
    top: 45.2rem;
    width: 11.7rem;
    height: 23.4rem;
  }
}
.top-policy__decor02::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.top-policy__decor02-diamond {
  position: absolute;
  top: 6.5355rem;
  right: 14.8355rem;
  width: 5rem;
  height: 5rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  transform: rotate(45deg);
}
@media (max-width: 1440px) {
  .top-policy__decor02-diamond {
    top: 4.5385416667vw;
    right: 10.3024305556vw;
    width: 3.4722222222vw;
    height: 3.4722222222vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor02-diamond {
    display: none;
  }
}
.top-policy__decor03 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 36rem;
  height: 36rem;
  pointer-events: none;
  z-index: 0;
}
.top-policy__decor03 svg {
  width: 100%;
  height: 100%;
  display: block;
}
@media (max-width: 1440px) {
  .top-policy__decor03 {
    width: 25vw;
    height: 25vw;
  }
}
@media (max-width: 768px) {
  .top-policy__decor03 {
    width: 20rem;
    height: 20rem;
  }
}
.top-policy .container-xxl {
  position: relative;
  z-index: 3;
}
.top-policy__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 9rem;
}
@media (max-width: 1280px) {
  .top-policy__inner {
    gap: 6.5rem;
  }
}
@media (max-width: 991px) {
  .top-policy__inner {
    gap: 5rem;
  }
}
@media (max-width: 768px) {
  .top-policy__inner {
    gap: 4rem;
  }
}
.top-policy__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .top-policy__head {
    gap: 4.5rem;
  }
}
@media (max-width: 991px) {
  .top-policy__head {
    gap: 3.8rem;
  }
}
@media (max-width: 768px) {
  .top-policy__head {
    gap: 3.4rem;
  }
}
.top-policy__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
@media (max-width: 768px) {
  .top-policy__heading {
    gap: 0;
  }
}
.top-policy__title-en {
  display: flex;
  align-items: center;
  align-self: flex-end;
  text-align: center;
  margin: 0 calc(15.5rem - 0.08em) -4rem 0;
}
.top-policy__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
@media (max-width: 1280px) {
  .top-policy__title-en {
    margin: 0 0 -3rem 0;
    align-self: center;
  }
}
@media (max-width: 991px) {
  .top-policy__title-en {
    margin: 0 0 -2.5rem 0;
  }
}
@media (max-width: 768px) {
  .top-policy__title-en {
    margin: 0 0 -2.2rem 0;
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .top-policy__title-en {
    margin: 0 -0.08em -1.6rem 0;
    align-self: flex-end;
    text-align: right;
  }
}
.top-policy__title-ja {
  position: relative;
  z-index: 1;
  margin: 0;
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
  text-align: center;
  padding-right: 3rem;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .top-policy__title-ja {
    font-size: 3.6rem;
    margin: 0;
    padding-right: 0;
    align-self: center;
    text-align: center;
  }
}
@media (max-width: 991px) {
  .top-policy__title-ja {
    font-size: 3rem;
  }
}
@media (max-width: 768px) {
  .top-policy__title-ja {
    font-size: 2.8rem;
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .top-policy__title-ja {
    font-size: 2.4rem;
  }
}
.top-policy__tx {
  width: 100%;
  max-width: 75rem;
  font-weight: 500;
  font-size: 2rem;
  line-height: 220%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .top-policy__tx {
    font-size: 1.8rem;
    line-height: 200%;
  }
}
@media (max-width: 991px) {
  .top-policy__tx {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .top-policy__tx {
    line-height: 220%;
  }
}
@media (max-width: 768px) and (max-width: 576px) {
  .top-policy__tx {
    font-size: 1.4rem;
  }
}
.top-policy__ph {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 6rem;
  width: 100%;
  max-width: 124rem;
}
@media (max-width: 1280px) {
  .top-policy__ph {
    gap: 3rem;
    max-width: 96rem;
  }
}
@media (max-width: 991px) {
  .top-policy__ph {
    gap: 2rem;
    max-width: 82rem;
  }
}
@media (max-width: 768px) {
  .top-policy__ph {
    flex-wrap: wrap;
    gap: 2.4rem 4rem;
    max-width: 56rem;
  }
}
@media (max-width: 576px) {
  .top-policy__ph {
    gap: 2.4rem 3.5rem;
    max-width: 100%;
  }
}
@media (max-width: 374px) {
  .top-policy__ph {
    gap: 1.6rem 2rem;
  }
}
@media (max-width: 320px) {
  .top-policy__ph {
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
  }
}
.top-policy__ph-item {
  overflow: hidden;
}
.top-policy__ph-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.top-policy__ph-item--01 {
  width: 36rem;
  height: 52.4rem;
}
@media (max-width: 1280px) {
  .top-policy__ph-item--01 {
    width: 28rem;
    height: 40.7rem;
  }
}
@media (max-width: 991px) {
  .top-policy__ph-item--01 {
    width: 24rem;
    height: 34.9rem;
  }
}
@media (max-width: 768px) {
  .top-policy__ph-item--01 {
    order: 2;
    width: calc(50% - 2rem);
    max-width: 24rem;
    height: auto;
    aspect-ratio: 24/35.6;
    margin-top: 8rem;
  }
}
@media (max-width: 576px) {
  .top-policy__ph-item--01 {
    width: calc(50% - 1.75rem);
    max-width: none;
    aspect-ratio: 14/20.8;
    margin-top: 6rem;
  }
}
@media (max-width: 374px) {
  .top-policy__ph-item--01 {
    width: calc(50% - 1rem);
    margin-top: 4rem;
  }
}
@media (max-width: 320px) {
  .top-policy__ph-item--01 {
    width: 100%;
    margin-top: 0;
  }
}
.top-policy__ph-item--02 {
  width: 40rem;
  height: 58.2rem;
  margin-top: 6rem;
}
@media (max-width: 1280px) {
  .top-policy__ph-item--02 {
    width: 30rem;
    height: 43.6rem;
    margin-top: 4rem;
  }
}
@media (max-width: 991px) {
  .top-policy__ph-item--02 {
    width: 26rem;
    height: 37.8rem;
    margin-top: 3rem;
  }
}
@media (max-width: 768px) {
  .top-policy__ph-item--02 {
    order: 1;
    width: calc(50% - 2rem);
    max-width: 24rem;
    height: auto;
    aspect-ratio: 24/35.6;
    margin-top: 0;
  }
}
@media (max-width: 576px) {
  .top-policy__ph-item--02 {
    width: calc(50% - 1.75rem);
    max-width: none;
    aspect-ratio: 14/20.8;
  }
}
@media (max-width: 374px) {
  .top-policy__ph-item--02 {
    width: calc(50% - 1rem);
  }
}
@media (max-width: 320px) {
  .top-policy__ph-item--02 {
    width: 100%;
  }
}
.top-policy__ph-item--03 {
  width: 36rem;
  height: 52.4rem;
  margin-top: 17.8rem;
}
@media (max-width: 1280px) {
  .top-policy__ph-item--03 {
    width: 28rem;
    height: 40.7rem;
    margin-top: 10rem;
  }
}
@media (max-width: 991px) {
  .top-policy__ph-item--03 {
    width: 24rem;
    height: 34.9rem;
    margin-top: 7rem;
  }
}
@media (max-width: 768px) {
  .top-policy__ph-item--03 {
    order: 3;
    width: calc(50% - 2rem);
    max-width: 24rem;
    height: auto;
    aspect-ratio: 24/35.6;
    margin-top: 0;
  }
}
@media (max-width: 576px) {
  .top-policy__ph-item--03 {
    width: calc(50% - 1.75rem);
    max-width: none;
    aspect-ratio: 14/20.8;
  }
}
@media (max-width: 374px) {
  .top-policy__ph-item--03 {
    width: calc(50% - 1rem);
  }
}
@media (max-width: 320px) {
  .top-policy__ph-item--03 {
    width: 100%;
  }
}

.environment-team {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 6rem 0;
}
@media (max-width: 768px) {
  .environment-team {
    padding: 3.4rem 0;
  }
}
.environment-team__decor01 {
  position: absolute;
  z-index: 0;
  top: 3rem;
  right: 0;
  width: 23.9rem;
  height: 63rem;
}
@media (max-width: 1280px) {
  .environment-team__decor01 {
    width: 18.6rem;
    height: 49.5rem;
  }
}
@media (max-width: 991px) {
  .environment-team__decor01 {
    width: 14.5rem;
    height: 38.6rem;
  }
}
@media (max-width: 768px) {
  .environment-team__decor01 {
    top: 0;
    right: 0;
    width: 10.7rem;
    height: 28.5rem;
  }
}
.environment-team__decor01-rect-outline {
  position: absolute;
  top: 1.2rem;
  left: 1.3rem;
  width: 5.8rem;
  height: 5.8rem;
  border: 0.2rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .environment-team__decor01-rect-outline {
    width: 5.3rem;
    height: 5.3rem;
  }
}
@media (max-width: 991px) {
  .environment-team__decor01-rect-outline {
    width: 4.3rem;
    height: 4.3rem;
  }
}
@media (max-width: 768px) {
  .environment-team__decor01-rect-outline {
    top: 0.5rem;
    left: auto;
    right: 6.3rem;
    width: 2.2rem;
    height: 2.2rem;
    border-width: 0.1rem;
  }
}
.environment-team__decor01-rect-gold {
  position: absolute;
  top: 26.3%;
  right: 0;
  width: 23.3rem;
  height: 46.3rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media (max-width: 1280px) {
  .environment-team__decor01-rect-gold {
    top: 25.9%;
    width: 17.8rem;
    height: 35.5rem;
  }
}
@media (max-width: 991px) {
  .environment-team__decor01-rect-gold {
    top: 24.6%;
    width: 14rem;
    height: 27.9rem;
  }
}
@media (max-width: 768px) {
  .environment-team__decor01-rect-gold {
    top: 33.43%;
    width: 9.5rem;
    height: 19rem;
  }
}
.environment-team__decor02 {
  position: absolute;
  z-index: 0;
  bottom: 15.4rem;
  left: 0;
  width: 18.6rem;
  height: 37.2rem;
}
@media (max-width: 1280px) {
  .environment-team__decor02 {
    bottom: 12rem;
    width: 13.9rem;
    height: 27.9rem;
  }
}
@media (max-width: 991px) {
  .environment-team__decor02 {
    bottom: 10.7rem;
    width: 10.5rem;
    height: 21rem;
  }
}
@media (max-width: 768px) {
  .environment-team__decor02 {
    bottom: 0;
    left: 0;
    width: 10.7rem;
    height: 21.4rem;
  }
}
.environment-team__decor02-vector {
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 768px) {
  .environment-team__decor02-vector {
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }
}
.environment-team__inner {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 6rem;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 768px) {
  .environment-team__inner {
    gap: 3.4rem;
    align-items: center;
  }
}
@media (max-width: 991px) {
  .environment-team__heading .c-section-heading__title {
    font-size: 3.7rem;
  }
}
@media (max-width: 768px) {
  .environment-team__heading .c-section-heading__title {
    font-size: 2.4rem;
  }
}
.environment-team__ph {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 8rem;
  width: 100%;
  height: auto;
  padding: 0 14rem;
}
@media (max-width: 1280px) {
  .environment-team__ph {
    padding: 0 5rem;
    gap: 6rem;
  }
}
@media (max-width: 768px) {
  .environment-team__ph {
    padding: 0;
    gap: 2rem;
    width: 100%;
  }
}
.environment-team__ph01 {
  width: 50%;
  aspect-ratio: 1/1;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .environment-team__ph01 {
    width: 50.7937%;
  }
}
.environment-team__ph01 img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.environment-team__ph02 {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 41.6667%;
  aspect-ratio: 1/1;
  margin-top: 16rem;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .environment-team__ph02 {
    margin-top: 14rem;
  }
}
@media (max-width: 991px) {
  .environment-team__ph02 {
    margin-top: 10rem;
  }
}
@media (max-width: 768px) {
  .environment-team__ph02 {
    width: 42.8572%;
    margin-top: 5rem;
  }
}
.environment-team__ph02 img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.environment-team__body {
  padding: 0 14rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}
@media (max-width: 1280px) {
  .environment-team__body {
    padding: 0 5rem;
  }
}
@media (max-width: 768px) {
  .environment-team__body {
    padding: 0;
    align-items: flex-start;
    width: 100%;
  }
}
.environment-team__body-text {
  width: 100%;
  margin: 0;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 500;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 991px) {
  .environment-team__body-text {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .environment-team__body-text {
    width: 100%;
    font-size: 1.4rem;
    line-height: 220%;
  }
}

.environment-benefits {
  position: relative;
  width: 100%;
  padding: 12rem 0;
  /* Decorative Graphics */
  /* Content Section */
  /* Top Row (2 Cassettes Fixed) */
  /* Bottom Row (1 to 3 Cassettes Dynamic) */
  /* Cassette Common Styles */
  /* Cassette Head & Title */
  /* Cassette Content & Values */
  /* Large Numbers / Text */
  /* Small Numbers / Text */
  /* Units */
  /* Cassette Description */
}
@media (max-width: 768px) {
  .environment-benefits {
    padding: 5rem 0;
  }
}
.environment-benefits__decor01 {
  position: absolute;
  top: 4rem;
  right: 0;
  width: 28.3rem;
  height: 61.5rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .environment-benefits__decor01 {
    width: 23.6rem;
    height: 51.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__decor01 {
    width: 18.6rem;
    height: 37.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__decor01 {
    top: 1.5rem;
    width: 11.9rem;
    height: 26.8rem;
  }
}
.environment-benefits__decor01-vector {
  position: absolute;
  top: 4.9rem;
  right: 0;
  width: 28.3rem;
  height: 56.6rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media (max-width: 1280px) {
  .environment-benefits__decor01-vector {
    width: 23.6rem;
    height: 51.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__decor01-vector {
    width: 18.6rem;
    height: 37.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__decor01-vector {
    top: 2.9rem;
    width: 11.9rem;
    height: 23.9rem;
  }
}
.environment-benefits__decor01-rect-gold {
  position: absolute;
  top: 1.3rem;
  right: 13.5rem;
  width: 6rem;
  height: 6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(45deg);
}
@media (max-width: 1280px) {
  .environment-benefits__decor01-rect-gold {
    width: 5.2rem;
    height: 5.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__decor01-rect-gold {
    width: 3.9rem;
    height: 3.9rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__decor01-rect-gold {
    top: 0.7rem;
    right: 3.5rem;
    width: 2.5rem;
    height: 2.5rem;
  }
}
.environment-benefits__decor02 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 25.5rem;
  height: 50.9rem;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .environment-benefits__decor02 {
    width: 23.6rem;
    height: 51.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__decor02 {
    width: 18.6rem;
    height: 37.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__decor02 {
    width: 17.2rem;
    height: 34.4rem;
  }
}
.environment-benefits__decor02-vector {
  width: 25.5rem;
  height: 50.9rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 1280px) {
  .environment-benefits__decor02-vector {
    width: 23.6rem;
    height: 45.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__decor02-vector {
    width: 18.6rem;
    height: 37.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__decor02-vector {
    width: 17.2rem;
    height: 34.4rem;
  }
}
.environment-benefits__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 768px) {
  .environment-benefits__inner {
    gap: 3.4rem;
  }
}
.environment-benefits__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4rem;
  width: 100%;
  padding: 0 6rem;
  filter: drop-shadow(0rem 0rem 1.4rem rgba(0, 0, 0, 0.05));
  z-index: 3;
}
@media (max-width: 1280px) {
  .environment-benefits__content {
    padding: 0 1rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__content {
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__content {
    padding: 0;
    gap: 1rem;
  }
}
.environment-benefits__top {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  gap: 4rem;
  width: 100%;
}
@media (max-width: 991px) {
  .environment-benefits__top {
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__top {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }
}
.environment-benefits__bottom {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  gap: 4rem;
  width: 100%;
}
@media (max-width: 991px) {
  .environment-benefits__bottom {
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__bottom {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }
}
.environment-benefits__heading .c-section-heading__en {
  left: 0;
  text-align: left;
}
.environment-benefits__cassette {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 70%, transparent);
  border: 0.2rem solid var(--wp--preset--color--gold, #f0b211);
}
.environment-benefits__cassette--large {
  padding: 3.8rem;
  gap: 4rem;
  width: 100%;
  height: auto;
}
@media (max-width: 991px) {
  .environment-benefits__cassette--large {
    padding: 2.6rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__cassette--large {
    width: 100%;
    padding: 2.2rem;
    gap: 2.4rem;
  }
}
.environment-benefits__cassette--small {
  padding: 3.8rem;
  gap: 2rem;
  width: calc((100% - 8rem) / 3);
}
.environment-benefits__cassette--small:first-child:nth-last-child(1) {
  width: 100%;
  max-width: 54rem;
}
.environment-benefits__cassette--small:first-child:nth-last-child(2), .environment-benefits__cassette--small:first-child:nth-last-child(2) ~ .environment-benefits__cassette--small {
  width: 100%;
}
@media (max-width: 1280px) {
  .environment-benefits__cassette--small {
    width: 33.3333333333%;
  }
}
@media (max-width: 991px) {
  .environment-benefits__cassette--small {
    padding: 2.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__cassette--small {
    width: 100%;
    gap: 1.4rem;
  }
}
.environment-benefits__cassette-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
}
@media (max-width: 768px) {
  .environment-benefits__cassette-head {
    gap: 1.4rem;
  }
}
.environment-benefits__cassette-title {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 154%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
}
@media (max-width: 1280px) {
  .environment-benefits__cassette-title {
    font-size: 2.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__cassette-title {
    font-size: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__cassette-title {
    line-height: 150%;
    font-size: 1.8rem;
  }
}
.environment-benefits__cassette-line {
  width: 100%;
  height: 0.2rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
.environment-benefits__cassette-tx {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
  width: 100%;
  flex: 1;
}
@media (max-width: 1280px) {
  .environment-benefits__cassette-tx {
    gap: 2.5rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__cassette-tx {
    gap: 2rem;
  }
}
.environment-benefits__cassette--small .environment-benefits__cassette-tx {
  gap: 2.1rem;
}
@media (max-width: 768px) {
  .environment-benefits__cassette--small .environment-benefits__cassette-tx {
    gap: 1rem;
  }
}
.environment-benefits__value-box {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  max-width: 100%;
}
@media (max-width: 768px) {
  .environment-benefits__value-box {
    min-height: 5rem;
    height: auto;
    gap: 1.6rem;
  }
}
.environment-benefits__cassette--small .environment-benefits__value-box {
  min-height: 7rem;
  height: auto;
  gap: 3rem;
}
@media (max-width: 768px) {
  .environment-benefits__cassette--small .environment-benefits__value-box {
    min-height: 3.6rem;
    height: auto;
    gap: 2rem;
  }
}
.environment-benefits__icon {
  width: 8.7rem;
  height: 8.4rem;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .environment-benefits__icon {
    width: 7rem;
    height: 7rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__icon {
    width: 6rem;
    height: 6rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__icon {
    width: 4rem;
    height: 4rem;
  }
}
.environment-benefits__icon picture,
.environment-benefits__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  object-position: top;
}
.environment-benefits__value-group {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 0.8rem;
  min-width: 0;
  max-width: 100%;
}
@media (max-width: 768px) {
  .environment-benefits__value-group {
    gap: 0.4rem;
  }
}
.environment-benefits__number--large {
  align-self: center;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 11rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  display: inline-flex;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .environment-benefits__number--large {
    font-size: 8.5rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__number--large {
    font-size: 6.8rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__number--large {
    font-size: 4.5rem;
  }
}
.environment-benefits__text--large {
  align-self: center;
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 900;
  font-size: 11rem;
  line-height: 1;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  display: inline-flex;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .environment-benefits__text--large {
    font-size: 8.5rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__text--large {
    font-size: 6.8rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__text--large {
    font-size: 5rem;
  }
}
.environment-benefits__number--small {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 6.8rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  display: inline-flex;
  align-self: center;
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .environment-benefits__number--small {
    font-size: 5.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__number--small {
    font-size: 3.6rem;
  }
}
.environment-benefits__text--small {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 900;
  font-size: 7rem;
  line-height: 1;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  display: inline-flex;
  align-items: flex-end;
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .environment-benefits__text--small {
    font-size: 4.8rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__text--small {
    font-size: 3.7rem;
  }
}
.environment-benefits__unit--large {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.2;
  color: var(--wp--preset--color--primary, #0e1b39);
  min-width: 0;
  word-break: break-word;
  overflow-wrap: anywhere;
}
@media (max-width: 1280px) {
  .environment-benefits__unit--large {
    font-size: 2.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__unit--large {
    font-size: 2rem;
  }
}
.environment-benefits__unit--small {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.2;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin-bottom: 0.3rem;
  min-width: 0;
  word-break: break-word;
  overflow-wrap: anywhere;
}
@media (max-width: 1280px) {
  .environment-benefits__unit--small {
    font-size: 2.2rem;
  }
}
@media (max-width: 991px) {
  .environment-benefits__unit--small {
    font-size: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__unit--small {
    font-size: 1.8rem;
    margin-bottom: 0.1rem;
  }
}
.environment-benefits__cassette-desc {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
  width: 100%;
}
@media (max-width: 991px) {
  .environment-benefits__cassette-desc {
    font-size: 1.2rem;
  }
}
@media (max-width: 768px) {
  .environment-benefits__cassette-desc {
    font-size: 1rem;
    line-height: 220%;
  }
}

/* Vertical Digit Reel Counter Styles */
.num-roll {
  display: inline-flex;
  flex-direction: row;
  align-items: flex-end;
  overflow: hidden;
  line-height: 1;
  vertical-align: bottom;
}
.num-roll__digit {
  display: inline-block;
  height: 1em;
  line-height: 1em;
  overflow: hidden;
  position: relative;
  vertical-align: bottom;
}
.num-roll__strip {
  display: flex;
  flex-direction: column;
  transform: translateY(0%);
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}
.num-roll__strip span {
  display: block;
  height: 1em;
  line-height: 1em;
  text-align: center;
}

.environment-faq {
  position: relative;
  width: 100%;
  padding: 12rem 0;
  isolation: isolate;
  /* Decorative Graphics */
  /* Heading */
  /* Content Section */
  /* Accordion Item */
  /* Question Trigger */
  /* Button Icon */
  /* Answer Panel */
}
@media (max-width: 768px) {
  .environment-faq {
    padding: 5rem 0;
  }
}
.environment-faq__decor01 {
  position: absolute;
  top: 0;
  right: 0;
  width: 30.8rem;
  height: 33.9rem;
  z-index: 0;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .environment-faq__decor01 {
    width: 23.6rem;
    height: 28.2rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__decor01 {
    width: 18.6rem;
    height: 24.4rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor01 {
    width: 7.1rem;
    height: 16.2rem;
  }
}
.environment-faq__decor01-vector {
  position: absolute;
  top: 0;
  right: 0;
  width: 16.95rem;
  height: 100%;
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
  background: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .environment-faq__decor01-vector {
    width: 14.3rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__decor01-vector {
    width: 10.6rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor01-vector {
    width: 7.5rem;
  }
}
.environment-faq__decor01-rect-gold {
  position: absolute;
  top: 67%;
  right: 17.4rem;
  width: 3rem;
  height: 3rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  transform: rotate(-45deg);
}
@media (max-width: 1280px) {
  .environment-faq__decor01-rect-gold {
    width: 2rem;
    height: 2rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor01-rect-gold {
    top: 27.92%;
    left: 0.2rem;
    width: 1rem;
    height: 1rem;
  }
}
.environment-faq__decor01-rect-outline {
  position: absolute;
  top: 14%;
  left: 1.8rem;
  width: 8rem;
  height: 8rem;
  border: 0.2rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(-45deg);
}
@media (max-width: 1280px) {
  .environment-faq__decor01-rect-outline {
    top: 9.3%;
    left: 1.1rem;
    width: 5.8rem;
    height: 5.8rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__decor01-rect-outline {
    top: 11%;
    left: 1.4rem;
    width: 4.8rem;
    height: 4.8rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor01-rect-outline {
    top: 0.3rem;
    left: 1.8rem;
    width: 2rem;
    height: 2rem;
    border-width: 0.1rem;
  }
}
.environment-faq__decor02 {
  position: absolute;
  bottom: -13.2rem;
  left: 0;
  width: 22.4rem;
  height: 45rem;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .environment-faq__decor02 {
    bottom: -11.8rem;
    width: 16.9rem;
    height: 34rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__decor02 {
    bottom: -10.4rem;
    width: 13.3rem;
    height: 27.3rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor02 {
    bottom: 0rem;
    width: 18.3rem;
    height: 26.7rem;
  }
}
.environment-faq__decor02-vector {
  width: 32rem;
  height: 32rem;
  border: 0.2rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform-origin: bottom left;
  transform: rotate(-45deg);
}
@media (max-width: 1280px) {
  .environment-faq__decor02-vector {
    width: 22.2rem;
    height: 22.2rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__decor02-vector {
    width: 17rem;
    height: 17rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__decor02-vector {
    width: 18.3rem;
    height: 26.5rem;
  }
}
.environment-faq__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 768px) {
  .environment-faq__inner {
    gap: 3.4rem;
  }
}
.environment-faq__heading {
  position: relative;
  z-index: 2;
}
.environment-faq__heading .c-section-heading__en {
  margin: 0 0 -4rem;
}
@media (max-width: 768px) {
  .environment-faq__heading .c-section-heading__en {
    margin: 0 0 -1.7rem;
  }
}
.environment-faq__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
  z-index: 3;
  padding: 0 2rem;
}
@media (max-width: 1280px) {
  .environment-faq__content {
    padding: 0;
  }
}
@media (max-width: 768px) {
  .environment-faq__content {
    gap: 1.4rem;
  }
}
.environment-faq__item {
  display: flex;
  flex-direction: column;
  width: 100%;
  background: var(--wp--preset--color--white, #ffffff);
  box-shadow: 0rem 0rem 1.4rem rgba(0, 0, 0, 0.05);
  transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
  /* Active / Opened State (Color Inversion to Gold) */
}
@media (max-width: 768px) {
  .environment-faq__item {
    padding: 0;
  }
}
.environment-faq__item.is-active {
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  border-color: var(--wp--preset--color--yellow-decor, #e0b136);
}
.environment-faq__item.is-active .environment-faq__q,
.environment-faq__item.is-active .environment-faq__question-text {
  color: var(--wp--preset--color--white, #ffffff);
}
.environment-faq__item.is-active .environment-faq__question-text {
  font-weight: 700;
}
.environment-faq__item.is-active .environment-faq__btn {
  background: transparent;
  border: 0.2rem solid var(--wp--preset--color--white, #ffffff);
  transform: rotate(45deg);
}
@media (max-width: 768px) {
  .environment-faq__item.is-active .environment-faq__btn {
    border-width: 0.1rem;
  }
}
.environment-faq__item.is-active .environment-faq__btn-inner::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.environment-faq__item.is-active .environment-faq__btn-inner::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(45deg);
}
.environment-faq__question {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 6rem;
  width: 100%;
  padding: 3rem 6rem;
  cursor: pointer;
  user-select: none;
}
@media (max-width: 1280px) {
  .environment-faq__question {
    padding: 2.5rem 4.5rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__question {
    gap: 1.4rem;
    padding: 2rem;
  }
}
.environment-faq__question-tx {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 4rem;
  flex: 1;
}
@media (max-width: 768px) {
  .environment-faq__question-tx {
    align-items: center;
    gap: 2.4rem;
  }
}
.environment-faq__question-text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 500;
  font-size: 2rem;
  line-height: 220%;
  color: var(--wp--preset--color--primary, #0e1b39);
  margin: 0;
  transition: color 0.3s ease, font-weight 0.3s ease;
}
@media (max-width: 1280px) {
  .environment-faq__question-text {
    font-size: 1.8rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__question-text {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__question-text {
    font-size: 1.2rem;
    line-height: 217%;
  }
}
.environment-faq__q {
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 4.6rem;
  line-height: 88%;
  color: var(--wp--preset--color--yellow-decor, #e0b136);
  flex-shrink: 0;
  transition: color 0.3s ease;
}
@media (max-width: 1280px) {
  .environment-faq__q {
    font-size: 4.2rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__q {
    font-size: 3.8rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__q {
    font-size: 2.4rem;
  }
}
.environment-faq__btn {
  position: relative;
  width: 4rem;
  height: 4rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  border: 0.2rem solid transparent;
  flex-shrink: 0;
  padding: 0;
  cursor: pointer;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), background 0.3s ease, border-color 0.3s ease;
}
@media (max-width: 1280px) {
  .environment-faq__btn {
    width: 3.5rem;
    height: 3.5rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__btn {
    width: 3rem;
    height: 3rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__btn {
    width: 2rem;
    height: 2rem;
    border-width: 0.1rem;
  }
}
.environment-faq__btn-inner {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  /* Horizontal line (-) */
  /* Vertical line (|) for (+) */
}
.environment-faq__btn-inner::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 0.2rem;
  background: var(--wp--preset--color--white, #ffffff);
  transform: translate(-50%, -50%);
  transition: background 0.3s ease, transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 768px) {
  .environment-faq__btn-inner::before {
    height: 0.1rem;
  }
}
.environment-faq__btn-inner::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.2rem;
  height: 50%;
  background: var(--wp--preset--color--white, #ffffff);
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}
@media (max-width: 768px) {
  .environment-faq__btn-inner::after {
    width: 0.1rem;
  }
}
.environment-faq__answer {
  display: none;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  padding: 0 6rem 3rem;
  cursor: default;
}
@media (max-width: 1280px) {
  .environment-faq__answer {
    padding: 0 4.5rem 2.5rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__answer {
    padding: 0 2rem 2rem;
  }
}
.environment-faq__answer:before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: var(--wp--preset--color--white, #ffffff);
  flex-shrink: 0;
}
.environment-faq__answer-inner {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 4rem;
  width: 100%;
  padding-top: 3rem;
}
@media (max-width: 1280px) {
  .environment-faq__answer-inner {
    padding-top: 2.5rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__answer-inner {
    align-items: center;
    gap: 2.4rem;
    padding-top: 2rem;
  }
}
.environment-faq__a {
  width: 2.3rem;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-weight: 400;
  font-size: 4.6rem;
  line-height: 88%;
  letter-spacing: 0.1em;
  color: var(--wp--preset--color--white, #ffffff);
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .environment-faq__a {
    font-size: 4.2rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__a {
    font-size: 3.8rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__a {
    width: 1.2rem;
    font-size: 2.4rem;
  }
}
.environment-faq__answer-text {
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 700;
  font-size: 2rem;
  line-height: 220%;
  color: var(--wp--preset--color--white, #ffffff);
  margin: 0;
  flex: 1;
}
@media (max-width: 1280px) {
  .environment-faq__answer-text {
    font-size: 1.8rem;
  }
}
@media (max-width: 991px) {
  .environment-faq__answer-text {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .environment-faq__answer-text {
    font-size: 1.2rem;
    line-height: 216.5%;
  }
}

.entry-flow {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 400;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .entry-flow {
    padding: 8rem 0;
  }
}
@media (max-width: 768px) {
  .entry-flow {
    padding: 5rem 0;
  }
}
.entry-flow__decor01 {
  position: absolute;
  width: 22.3rem;
  height: 42.4rem;
  right: 0;
  top: 0;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .entry-flow__decor01 {
    width: 15.4861111111vw;
    height: 29.4444444444vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor01 {
    width: 5.8rem;
    height: 10.9rem;
  }
}
.entry-flow__decor01-rect1 {
  position: absolute;
  right: 0;
  top: 2.8rem;
  width: 19.8rem;
  height: 39.6rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
@media (max-width: 1440px) {
  .entry-flow__decor01-rect1 {
    width: 13.75vw;
    height: 27.5vw;
    top: 1.9444444444vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor01-rect1 {
    width: 3.7rem;
    height: 7.5rem;
    top: 0;
  }
}
.entry-flow__decor01-rect2 {
  position: absolute;
  width: 4.9rem;
  height: 4.9rem;
  left: 1.01479rem;
  top: 1.01479rem;
  border: 1px solid var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(-45deg);
}
@media (max-width: 1440px) {
  .entry-flow__decor01-rect2 {
    width: 3.4027777778vw;
    height: 3.4027777778vw;
    top: 0.7047152778vw;
    left: 0.7047152778vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor01-rect2 {
    width: 1.6rem;
    height: 1.6rem;
    top: 0.33136rem;
    left: 0.33136rem;
  }
}
.entry-flow__decor01-rect3 {
  position: absolute;
  width: 3.6rem;
  height: 3.6rem;
  right: 7.24556rem;
  top: 2.74556rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  transform: rotate(-45deg);
}
@media (max-width: 1440px) {
  .entry-flow__decor01-rect3 {
    width: 2.5vw;
    height: 2.5vw;
    top: 1.9066388889vw;
    right: 5.0316388889vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor01-rect3 {
    width: 1.2rem;
    height: 1.2rem;
    top: auto;
    bottom: 0.24852rem;
    right: 1.54852rem;
  }
}
.entry-flow__decor02 {
  position: absolute;
  width: 15.5rem;
  height: 35.4rem;
  left: 0;
  bottom: 0;
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 1440px) {
  .entry-flow__decor02 {
    width: 10.7638888889vw;
    height: 24.5833333333vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor02 {
    width: 6.6rem;
    height: 12.8rem;
  }
}
.entry-flow__decor02-rect1 {
  position: absolute;
  left: 0;
  top: 4.3rem;
  width: 15.5rem;
  height: 31.1rem;
  background: var(--wp--preset--color--white, #ffffff);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 1440px) {
  .entry-flow__decor02-rect1 {
    width: 10.7638888889vw;
    height: 21.5972222222vw;
    top: 2.9861111111vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor02-rect1 {
    width: 6.3rem;
    height: 12.4rem;
    top: 0.3rem;
  }
}
.entry-flow__decor02-rect2 {
  position: absolute;
  width: 5.4rem;
  height: 5.4rem;
  right: 1.11834rem;
  top: 1.11834rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  transform: rotate(-45deg);
}
@media (max-width: 1440px) {
  .entry-flow__decor02-rect2 {
    width: 3.75vw;
    height: 3.75vw;
    top: 0.776625vw;
    right: 0.776625vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__decor02-rect2 {
    width: 2rem;
    height: 2rem;
    top: 0.4142rem;
    right: 0.4142rem;
  }
}
.entry-flow .container-xxl {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .entry-flow .container-xxl {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .entry-flow .container-xxl {
    gap: 3.4rem;
  }
}
.entry-flow__heading {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
}
.entry-flow__title-en {
  width: 100%;
  text-align: center;
  margin: 0 0 -8rem;
}
.entry-flow__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
.entry-flow__title-en .char-reveal-wrap:last-child .char-reveal-inner {
  letter-spacing: 0;
}
@media (max-width: 1280px) {
  .entry-flow__title-en {
    margin: 0 0 -5.5rem;
  }
}
@media (max-width: 768px) {
  .entry-flow__title-en {
    margin: 0 0 -2.8rem;
  }
}
.entry-flow__title-ja {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  width: 100%;
}
@media (max-width: 768px) {
  .entry-flow__title-ja {
    gap: 0;
  }
}
.entry-flow__title-sub {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.4rem 1.2rem;
  gap: 1rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  font-weight: 700;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .entry-flow__title-sub {
    font-size: 1.6rem;
    padding: 0.35rem 1.1rem;
  }
}
@media (max-width: 768px) {
  .entry-flow__title-sub {
    font-size: 1.4rem;
    padding: 0.3rem 0.8rem;
    line-height: 140%;
  }
}
@media (max-width: 576px) {
  .entry-flow__title-sub {
    font-size: 1rem;
    padding: 0.2rem 0.4rem;
    line-height: 100%;
  }
}
.entry-flow__title-main {
  margin: 0;
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
  display: flex;
  align-items: flex-end;
  text-align: center;
}
@media (max-width: 1280px) {
  .entry-flow__title-main {
    font-size: 3.6rem;
  }
}
@media (max-width: 576px) {
  .entry-flow__title-main {
    font-size: 2.4rem;
  }
}
.entry-flow__content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6rem;
  width: 100%;
  max-width: 104rem;
}
.entry-flow__content::before {
  content: "";
  position: absolute;
  top: 7rem;
  left: 6.7855rem;
  z-index: 0;
  width: 0.429rem;
  height: calc(var(--scroll-progress, 0) * var(--line-max-height, 100%) / 100);
  background: var(--wp--preset--color--yellow-decor, #e0b136);
}
@media (max-width: 1440px) {
  .entry-flow__content::before {
    top: 4.8611111111vw;
    left: 4.7048611111vw;
    width: 0.2979166667vw;
    height: calc(var(--scroll-progress, 0) * var(--line-max-height, 100%) / 100);
  }
}
@media (max-width: 768px) {
  .entry-flow__content {
    gap: 3.4rem;
    max-width: 100%;
  }
  .entry-flow__content::before {
    top: 3.1115rem;
    left: calc(3.1115rem - 1px);
    width: 0.2rem;
    height: calc(var(--scroll-progress, 0) * var(--line-max-height, 100%) / 100);
  }
}
.entry-flow__cassette {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 4rem;
  width: 100%;
  min-height: 16.9rem;
}
@media (max-width: 1440px) {
  .entry-flow__cassette {
    gap: 2.7777777778vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__cassette {
    align-items: flex-start;
    gap: 2.4rem;
    min-height: 16rem;
  }
}
.entry-flow__number {
  position: relative;
  z-index: 2;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14rem;
  height: 14rem;
}
@media (max-width: 1440px) {
  .entry-flow__number {
    width: 9.7222222222vw;
    height: 9.7222222222vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__number {
    width: 6.223rem;
    height: 6.223rem;
  }
}
.entry-flow__number-bg {
  position: absolute;
  width: 9.9rem;
  height: 9.9rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: rotate(-45deg);
}
@media (max-width: 1440px) {
  .entry-flow__number-bg {
    width: 6.875vw;
    height: 6.875vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__number-bg {
    width: 4.4rem;
    height: 4.4rem;
  }
}
.entry-flow__number-txt {
  z-index: 1;
  font-family: var(--wp--preset--font-family--anton-sc, "Anton SC", sans-serif);
  font-size: 4.6rem;
  line-height: 88%;
  letter-spacing: 0.077em;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1440px) {
  .entry-flow__number-txt {
    font-size: 3.1944444444vw;
  }
}
@media (max-width: 768px) {
  .entry-flow__number-txt {
    font-size: 2.4rem;
  }
}
.entry-flow__group {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 2.8rem 3.8rem;
  min-height: 16.9rem;
  background: var(--wp--preset--color--white, #ffffff);
  border: 2px solid var(--wp--preset--color--yellow-decor, #e0b136);
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.05);
}
@media (max-width: 768px) {
  .entry-flow__group {
    justify-content: flex-start;
    padding: 2.2rem;
    min-height: auto;
  }
}
.entry-flow__txt-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  width: 100%;
}
@media (max-width: 768px) {
  .entry-flow__txt-block {
    gap: 0.4rem;
  }
}
.entry-flow__sub-title {
  width: 100%;
  margin: 0;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 148%;
}
@media (max-width: 1280px) {
  .entry-flow__sub-title {
    font-size: 2rem;
  }
}
@media (max-width: 768px) {
  .entry-flow__sub-title {
    font-size: 1.8rem;
    line-height: 150%;
  }
}
.entry-flow__body {
  width: 100%;
  margin: 0;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 220%;
}
@media (max-width: 768px) {
  .entry-flow__body {
    font-size: 1rem;
    line-height: 221%;
  }
}

.entry-form {
  position: relative;
  width: 100%;
  background: var(--wp--preset--color--bg-primary, #f4f5f5);
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-weight: 400;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 1280px) {
  .entry-form {
    padding: 8rem 0;
  }
}
@media (max-width: 768px) {
  .entry-form {
    padding: 5rem 0;
  }
}
.entry-form__decor01 {
  position: absolute;
  width: 22.6rem;
  height: 63.2rem;
  right: 0;
  top: 0;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1440px) {
  .entry-form__decor01 {
    width: 15.6944444444vw;
    height: 43.8888888889vw;
  }
}
@media (max-width: 768px) {
  .entry-form__decor01 {
    width: 10.137rem;
    height: 20.273rem;
    top: 11.527rem;
  }
}
.entry-form__decor01-rect1 {
  position: absolute;
  right: 0;
  top: 18rem;
  width: 22.6rem;
  height: 45.2rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
@media (max-width: 1440px) {
  .entry-form__decor01-rect1 {
    width: 15.6944444444vw;
    height: 31.3888888889vw;
    top: 12.5vw;
  }
}
@media (max-width: 768px) {
  .entry-form__decor01-rect1 {
    width: 10.137rem;
    height: 20.273rem;
    top: 0;
  }
}
.entry-form__decor01-rect2 {
  position: absolute;
  right: 8.56686rem;
  top: 1.36686rem;
  width: 6.6rem;
  height: 6.6rem;
  background: var(--wp--preset--color--white, #ffffff);
  transform: rotate(-45deg);
}
@media (max-width: 1440px) {
  .entry-form__decor01-rect2 {
    width: 4.5833333333vw;
    height: 4.5833333333vw;
    top: 0.9492083333vw;
    right: 5.9492083333vw;
  }
}
@media (max-width: 768px) {
  .entry-form__decor01-rect2 {
    display: none;
  }
}
.entry-form__decor02 {
  position: absolute;
  width: 38.2rem;
  height: 76.4rem;
  left: 0;
  top: 82.6rem;
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 1440px) {
  .entry-form__decor02 {
    width: 26.5277777778vw;
    height: 53.0555555556vw;
    top: 57.3611111111vw;
  }
}
@media (max-width: 768px) {
  .entry-form__decor02 {
    width: 20.5rem;
    height: 41rem;
    top: 38rem;
  }
}
.entry-form__decor02-rect1 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.entry-form__decor03 {
  position: absolute;
  width: 59.1rem;
  height: 118.2rem;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: 2;
}
@media (max-width: 1440px) {
  .entry-form__decor03 {
    width: 41.0416666667vw;
    height: 82.0833333333vw;
  }
}
@media (max-width: 768px) {
  .entry-form__decor03 {
    width: 32.3rem;
    height: 64.6rem;
  }
}
.entry-form__decor03-rect1 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  clip-path: polygon(100% 0, 99.7% 0.5%, 0.5% 50%, 99.7% 99.5%, 100% 100%, 0 50%);
}
.entry-form .container-xxl {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}
@media (max-width: 1280px) {
  .entry-form .container-xxl {
    gap: 4rem;
  }
}
@media (max-width: 768px) {
  .entry-form .container-xxl {
    gap: 3.4rem;
  }
}
.entry-form__heading {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
}
.entry-form__title-en {
  width: 100%;
  text-align: left;
  margin: 0 0 -8rem;
}
.entry-form__title-en .char-reveal-inner {
  letter-spacing: 0.08em;
}
.entry-form__title-en .char-reveal-wrap:last-child .char-reveal-inner {
  letter-spacing: 0;
}
@media (max-width: 1280px) {
  .entry-form__title-en {
    margin: 0 0 -5.5rem;
  }
}
@media (max-width: 768px) {
  .entry-form__title-en {
    margin: 0 0 -2.8rem;
  }
}
.entry-form__title-ja {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  width: 100%;
}
@media (max-width: 768px) {
  .entry-form__title-ja {
    gap: 0;
  }
}
.entry-form__title-sub {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.4rem 1.2rem;
  gap: 1rem;
  background: var(--wp--preset--color--primary, #0e1b39);
  font-weight: 700;
  font-size: 2rem;
  line-height: 152%;
  color: var(--wp--preset--color--white, #ffffff);
}
@media (max-width: 1280px) {
  .entry-form__title-sub {
    font-size: 1.6rem;
    padding: 0.35rem 1.1rem;
  }
}
@media (max-width: 768px) {
  .entry-form__title-sub {
    font-size: 1rem;
    padding: 0.2rem 0.4rem;
    line-height: 100%;
  }
}
.entry-form__title-main {
  margin: 0;
  font-weight: 900;
  font-size: 5.4rem;
  line-height: 152%;
  display: flex;
  align-items: flex-end;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
@media (max-width: 1280px) {
  .entry-form__title-main {
    font-size: 3.6rem;
  }
}
@media (max-width: 768px) {
  .entry-form__title-main {
    font-size: 2.4rem;
    line-height: 152%;
  }
}
.entry-form__photos {
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 8rem;
  width: 100%;
}
@media (max-width: 1280px) {
  .entry-form__photos {
    gap: 3rem;
  }
}
@media (max-width: 991px) {
  .entry-form__photos {
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .entry-form__photos {
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.4rem;
  }
}
@media (max-width: 320px) {
  .entry-form__photos {
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
  }
}
.entry-form__photo-item {
  position: relative;
  flex: 1;
  max-width: 36rem;
  overflow: hidden;
}
.entry-form__photo-item picture {
  display: block;
  width: 100%;
  height: 100%;
}
.entry-form__photo-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  aspect-ratio: 360/240;
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.05);
}
.entry-form__photo-item--1 {
  margin-top: 0;
}
.entry-form__photo-item--2 {
  margin-top: 4rem;
}
.entry-form__photo-item--3 {
  margin-top: 8rem;
}
@media (max-width: 1280px) {
  .entry-form__photo-item--2 {
    margin-top: 3rem;
  }
  .entry-form__photo-item--3 {
    margin-top: 6rem;
  }
}
@media (max-width: 768px) {
  .entry-form__photo-item {
    flex: none;
    width: calc(50% - 1.2rem);
    max-width: 24rem;
  }
  .entry-form__photo-item img {
    width: 100%;
    height: auto;
    aspect-ratio: 120/80;
  }
  .entry-form__photo-item--1 {
    margin-top: 0;
  }
  .entry-form__photo-item--2 {
    margin-top: 4rem;
  }
  .entry-form__photo-item--3 {
    margin-top: 0;
  }
}
@media (max-width: 576px) {
  .entry-form__photo-item {
    width: 12rem;
    height: 8rem;
  }
  .entry-form__photo-item img {
    height: 100%;
  }
}
@media (max-width: 320px) {
  .entry-form__photo-item {
    width: 100%;
    max-width: none;
  }
  .entry-form__photo-item--2 {
    margin-top: 0;
  }
}
.entry-form__form-container {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 6.4rem;
  gap: 6.4rem;
  width: 100%;
  max-width: 96rem;
  background: var(--wp--preset--color--white, #ffffff);
  box-shadow: 0.6rem 0.6rem 2rem 0.2rem rgba(0, 0, 0, 0.1);
  border-radius: 0.8rem;
}
@media (max-width: 768px) {
  .entry-form__form-container {
    padding: 3.2rem;
    gap: 3.2rem;
    border-radius: 0.8rem;
  }
}
.entry-form__form-title {
  margin: 0;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 133%;
  text-align: center;
  color: var(--wp--preset--color--primary, #0e1b39);
}
.entry-form__iframe-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.entry-form__iframe-placeholder {
  width: 100%;
  min-height: 73.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--wp--preset--color--black, #000000);
  border-radius: 0.4rem;
}
@media (max-width: 768px) {
  .entry-form__iframe-placeholder {
    min-height: 76.5rem;
  }
}
.entry-form__iframe-placeholder p {
  margin: 0;
  font-size: 1.6rem;
  color: var(--wp--preset--color--white, #ffffff);
}

.requirement {
  position: relative;
  width: 100%;
  padding: 12rem 0;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 768px) {
  .requirement {
    padding: 5rem 0;
  }
}
.requirement__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 12rem;
  gap: 6rem;
  background: var(--wp--preset--color--white, #ffffff);
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.05);
}
@media (max-width: 1280px) {
  .requirement__inner {
    padding: 9rem;
  }
}
@media (max-width: 991px) {
  .requirement__inner {
    padding: 7rem;
  }
}
@media (max-width: 768px) {
  .requirement__inner {
    gap: 3.4rem;
    padding: 6rem 3.2rem;
  }
}
.requirement__title {
  width: 100%;
  margin: 0;
  color: var(--wp--preset--color--black, #000000);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 1280px) {
  .requirement__title {
    font-size: 2.4rem;
  }
}
@media (max-width: 768px) {
  .requirement__title {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.requirement__content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media (max-width: 768px) {
  .requirement__content {
    gap: 3.4rem;
  }
}
.requirement__item {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.requirement__trigger {
  position: relative;
  display: grid;
  grid-template-columns: 28rem minmax(0, 1fr) 4rem;
  column-gap: 4rem;
  align-items: start;
  width: 100%;
  padding: 0 1rem 4rem 0;
  border: 0;
  background: transparent;
  color: var(--wp--preset--color--primary, #0e1b39);
  text-align: left;
  cursor: pointer;
}
.requirement__trigger::after {
  content: "";
  position: absolute;
  left: 2rem;
  bottom: 0;
  width: calc(100% - 2rem);
  height: 0.1rem;
  background: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
}
@media (max-width: 768px) {
  .requirement__trigger::after {
    width: calc(100% - 3.2rem);
    left: 1.6rem;
  }
}
@media (max-width: 1280px) {
  .requirement__trigger {
    grid-template-columns: 20rem minmax(0, 1fr) 4rem;
  }
}
@media (max-width: 991px) {
  .requirement__trigger {
    grid-template-columns: 18rem minmax(0, 1fr) 2.5rem;
  }
}
@media (max-width: 768px) {
  .requirement__trigger {
    grid-template-columns: minmax(0, 1fr) 2.6rem;
    gap: 3.2rem;
    padding: 0 0 3.2rem 0;
  }
}
.requirement__job-name {
  display: flex;
  align-items: flex-start;
  padding-left: 1.6rem;
  border-left: 0.4rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 1280px) {
  .requirement__job-name {
    font-size: 1.9rem;
  }
}
@media (max-width: 991px) {
  .requirement__job-name {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .requirement__job-name {
    padding-left: 1.3rem;
    border-left-width: 0.3rem;
    font-size: 1.8rem;
  }
}
.requirement__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
  gap: 1rem;
  grid-column: 2;
}
@media (max-width: 768px) {
  .requirement__tags {
    padding-left: 1.6rem;
    grid-column: 1/-1;
    gap: 0.8rem;
  }
}
.requirement__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.421rem 1.5rem;
  border: 0.1rem solid var(--wp--preset--color--yellow-decor, #e0b136);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
}
@media (max-width: 1280px) {
  .requirement__tag {
    font-size: 1.3rem;
  }
}
@media (max-width: 768px) {
  .requirement__tag {
    padding: 0 1.1rem;
    font-size: 1.2rem;
    line-height: 2;
  }
}
.requirement__toggle {
  position: relative;
  display: block;
  grid-column: 3;
  justify-self: end;
  width: 4rem;
  height: 4rem;
}
@media (max-width: 1280px) {
  .requirement__toggle {
    width: 3rem;
    height: 3rem;
  }
}
@media (max-width: 768px) {
  .requirement__toggle {
    grid-column: 2;
    grid-row: 1;
    width: 2.6rem;
    height: 2.6rem;
  }
}
.requirement__toggle::before, .requirement__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3rem;
  height: 0.3rem;
  background: var(--wp--preset--color--yellow-decor, #e0b136);
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
@media (max-width: 991px) {
  .requirement__toggle::before, .requirement__toggle::after {
    width: 2.5rem;
  }
}
@media (max-width: 768px) {
  .requirement__toggle::before, .requirement__toggle::after {
    width: 2rem;
    height: 0.15rem;
  }
}
.requirement__toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.requirement__item.is-active .requirement__toggle::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(180deg);
}
.requirement__answer {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 6.4rem;
  padding: 4rem 0 6rem;
}
@media (max-width: 768px) {
  .requirement__answer {
    padding: 4rem 0 3.4rem;
  }
}
.requirement__detail {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  width: 100%;
}
.requirement__row {
  position: relative;
  display: grid;
  grid-template-columns: 24.6rem minmax(0, 1fr);
  column-gap: 4rem;
  width: 100%;
  padding: 0 3.2rem 4rem 3.2rem;
}
.requirement__row::after {
  content: "";
  position: absolute;
  left: 2rem;
  bottom: 0;
  width: calc(100% - 2rem);
  height: 0.1rem;
  background: color-mix(in srgb, var(--wp--preset--color--primary, #0e1b39) 40%, transparent);
}
@media (max-width: 768px) {
  .requirement__row::after {
    width: calc(100% - 3.2rem);
    left: 1.6rem;
  }
}
.requirement__row h3 {
  margin: 0;
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.45;
}
.requirement__row p,
.requirement__row ul {
  max-width: 54rem;
  margin: 0;
  color: var(--wp--preset--color--primary, #0e1b39);
  font-family: var(--wp--preset--font-family--zen-kaku-gothic-new, "Zen Kaku Gothic New", sans-serif);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 2;
}
.requirement__row ul {
  padding-left: 1.8rem;
}
.requirement__row li::marker {
  font-size: 0.8rem;
}
@media (max-width: 1280px) {
  .requirement__row {
    grid-template-columns: 16.8rem minmax(0, 1fr);
  }
}
@media (max-width: 991px) {
  .requirement__row {
    grid-template-columns: 14.8rem minmax(0, 1fr);
  }
}
@media (max-width: 768px) {
  .requirement__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0 1.6rem 2.4rem;
  }
  .requirement__row h3 {
    font-size: 1.5rem;
    line-height: 1.467;
  }
  .requirement__row p,
  .requirement__row ul {
    font-size: 1.5rem;
    line-height: 2;
    text-align: justify;
  }
  .requirement__row ul {
    padding-left: 2.25rem;
  }
}
.requirement__button {
  width: 39.5rem;
  height: 10rem;
}
@media (max-width: 1280px) {
  .requirement__button {
    width: 35rem;
    height: 9rem;
  }
}
@media (max-width: 991px) {
  .requirement__button {
    width: 30rem;
    height: 7.6rem;
  }
}
@media (max-width: 768px) {
  .requirement__button {
    width: 24.7rem;
    height: 7.6rem;
  }
}
@media (max-width: 1280px) {
  .requirement__button .c-btn__text {
    font-size: 2.8rem;
  }
}
@media (max-width: 991px) {
  .requirement__button .c-btn__text {
    font-size: 2.6rem;
  }
}
@media (max-width: 768px) {
  .requirement__button .c-btn__text {
    font-size: 2rem;
  }
}
.requirement__decor {
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.requirement__decor--01 {
  top: 28.3rem;
  right: 0;
  width: 33.9rem;
  height: 67.8rem;
  background: var(--wp--preset--color--bg-menu-sp, #f0e7cf);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
.requirement__decor--02 {
  bottom: 8.3rem;
  left: 0;
  width: 43.8rem;
  height: 87.6rem;
  background: var(--wp--preset--color--gold-decor, #e4bf5c);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 768px) {
  .requirement__decor--01 {
    top: 6.5rem;
    width: 11.9rem;
    height: 23.8rem;
  }
  .requirement__decor--02 {
    bottom: 8.1rem;
    width: 21.6rem;
    height: 43.2rem;
  }
}
.requirement:has(.requirement__content > .requirement__item:nth-child(2):last-child) .requirement__decor--01 {
  width: 23.73rem;
  height: 47.46rem;
}
.requirement:has(.requirement__content > .requirement__item:nth-child(2):last-child) .requirement__decor--02 {
  width: 30.66rem;
  height: 61.32rem;
}
@media (max-width: 768px) {
  .requirement:has(.requirement__content > .requirement__item:nth-child(2):last-child) .requirement__decor--01 {
    width: 8.33rem;
    height: 16.66rem;
  }
  .requirement:has(.requirement__content > .requirement__item:nth-child(2):last-child) .requirement__decor--02 {
    width: 15.12rem;
    height: 30.24rem;
  }
}
.requirement:has(.requirement__content > .requirement__item:only-child) .requirement__decor--01 {
  width: 16.95rem;
  height: 33.9rem;
}
.requirement:has(.requirement__content > .requirement__item:only-child) .requirement__decor--02 {
  width: 21.9rem;
  height: 43.8rem;
}
@media (max-width: 768px) {
  .requirement:has(.requirement__content > .requirement__item:only-child) .requirement__decor--01 {
    width: 5.95rem;
    height: 11.9rem;
  }
  .requirement:has(.requirement__content > .requirement__item:only-child) .requirement__decor--02 {
    width: 10.8rem;
    height: 21.6rem;
  }
}
.requirement__item:only-child .requirement__answer {
  padding-bottom: 0;
}

.btn-entry {
  display: none;
}
@media (max-width: 768px) {
  .btn-entry {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 120;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.5rem;
    gap: 0.5rem;
    background: color-mix(in srgb, var(--wp--preset--color--white, #ffffff) 70%, transparent);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    transition: transform 0.35s ease, opacity 0.35s ease, visibility 0.35s ease;
  }
  .btn-entry.is-hidden, .btn-entry.is-hide {
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    pointer-events: none;
  }
  .btn-entry .c-btn {
    flex: 1;
    width: 100%;
    max-width: 100%;
    height: 4rem;
    padding: 0;
    font-size: 1.4rem;
    font-weight: 700;
  }
}

body.is-fixed .btn-entry,
body.nav-open .btn-entry {
  display: none !important;
}

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