/*! kiso.css v1.2.1 | MIT License | https://github.com/tak-dcxi/kiso.css */
*,
::after,
::before {
  box-sizing: border-box;
}
:where(:root) {
  text-spacing-trim: trim-start;
  text-autospace: normal;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  font-family: sans-serif;
  line-break: strict;
  overflow-wrap: normal;
}
:where(body) {
  min-block-size: 100dvb;
  margin: unset;
}
:where(h1, h2, h3, h4, h5, h6) {
  text-wrap: pretty;
}
:where(h1, h2, h3, h4, h5, h6):lang(ja) {
  text-wrap: wrap;
}
:where(h1) {
  margin: 0;
  font: inherit;
  font-size: 100%;
}
:where(h2, h3, h4, h5, h6) {
  margin-block: unset;
}
:where(search) {
  display: block flow;
}
:where(p, blockquote, figure, pre, address, ul, ol, dl, menu) {
  margin-block: unset;
}
:where(blockquote, figure) {
  margin-inline: unset;
}
:where(p:lang(en)) {
  text-wrap: pretty;
}
:where(address:lang(ja)) {
  font-style: unset;
}
:where(ul, ol, menu) {
  padding-inline-start: unset;
  list-style-type: "";
}
:where(dt) {
  font-weight: bolder;
}
:where(dd) {
  margin-inline-start: unset;
}
:where(pre) {
  text-spacing-trim: space-all;
  text-autospace: no-autospace;
}
:where(em:lang(ja)) {
  font-weight: bolder;
}
:where(:is(i, cite, em, dfn, var):lang(ja)) {
  font-style: unset;
}
:where(code, kbd, samp) {
  font-feature-settings: initial;
  font-size: unset;
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
    "Courier New", monospace;
  font-variant-ligatures: none;
  font-variation-settings: initial;
}
:where(abbr[title]) {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  cursor: help;
}
:where(time) {
  text-autospace: no-autospace;
}
:where(a:-moz-any-link) {
  color: unset;
  text-decoration-line: unset;
  text-decoration-thickness: from-font;
}
:where(a:any-link) {
  color: unset;
  text-decoration-line: unset;
  text-decoration-thickness: from-font;
}
:where(img, svg, picture, video, canvas, model, audio, iframe, embed, object) {
  max-inline-size: 100%;
  block-size: auto;
  vertical-align: bottom;
}
:where(iframe) {
  border: unset;
}
:where(table) {
  border-collapse: collapse;
}
:where(caption, th) {
  text-align: unset;
}
:where(caption) {
  text-wrap: pretty;
}
::file-selector-button,
:where(button, input, select, textarea) {
  border-width: 1px;
  border-style: solid;
  border-radius: unset;
  border-color: unset;
  color: unset;
  font: unset;
  letter-spacing: unset;
  text-align: unset;
}
:where(input:is([type="radio" i], [type="checkbox" i])) {
  margin: unset;
}
:where(input[type="file" i]) {
  border: unset;
}
:where(input[type="search" i]) {
  -webkit-appearance: textfield;
}
:where(
  input:is(
      [type="tel" i],
      [type="url" i],
      [type="email" i],
      [type="number" i]
    ):not(:-moz-placeholder)
) {
  direction: ltr;
}
:where(
  input:is(
      [type="tel" i],
      [type="url" i],
      [type="email" i],
      [type="number" i]
    ):not(:placeholder-shown)
) {
  direction: ltr;
}
:where(textarea) {
  margin-block: unset;
  resize: block;
}
:where(
  input:not([type="button" i], [type="submit" i], [type="reset" i]),
  textarea,
  [contenteditable]
) {
  text-autospace: no-autospace;
}
::file-selector-button,
:where(
  button,
  input:is([type="button" i], [type="submit" i], [type="reset" i])
) {
  background-color: unset;
}
::file-selector-button,
:where(
  button,
  input:is([type="button" i], [type="submit" i], [type="reset" i]),
  [role="tab" i],
  [role="button" i],
  [role="option" i]
) {
  touch-action: manipulation;
}
:where(:enabled)::file-selector-button,
:where(
  button:enabled,
  label[for],
  select:enabled,
  input:is(
      [type="button" i],
      [type="submit" i],
      [type="reset" i],
      [type="radio" i],
      [type="checkbox" i]
    ):enabled,
  [role="tab" i],
  [role="button" i],
  [role="option" i]
) {
  cursor: pointer;
}
:where(fieldset) {
  min-inline-size: 0;
  margin-inline: unset;
  padding: unset;
  border: unset;
}
:where(legend) {
  padding-inline: unset;
}
:where(progress) {
  vertical-align: unset;
}
::-moz-placeholder {
  opacity: unset;
}
::placeholder {
  opacity: unset;
}
:where(summary) {
  list-style-type: "";
  cursor: pointer;
}
:where(summary)::-webkit-details-marker {
  display: none;
}
:where(dialog, [popover]) {
  padding: unset;
  overscroll-behavior-block: contain;
  border: unset;
}
:where(dialog:not([open], [popover]), [popover]:not(:popover-open)) {
  display: none !important;
}
:where(dialog) {
  max-inline-size: unset;
  max-block-size: unset;
}
:where(dialog)::backdrop {
  background-color: oklch(0 0 0deg / 0.3);
}
:where([popover]) {
  margin: unset;
}
:where(:focus-visible) {
  outline-offset: 3px;
}
[tabindex="-1"]:focus {
  outline: 0 !important;
}
:where(:disabled, [aria-disabled="true" i]) {
  cursor: default;
}
[hidden]:not([hidden="until-found" i]) {
  display: none !important;
}
:root {
  --text-color: #393939;
  --primary-color: #393939;
  --primary-hover-color: #606366;
  --primary-gradient-color: #0279a4;
  --primary-gradient-hover-color: #2097c2;
  --secondary-color: #bfbfbf;
  --secondary-hover-color: #d9d9d9;
  --third-color: #f7f7f7;
  --third-hover-color: #fafafa;
  --accent-color: #f89129;
  --bg-accent-color: #f07901;
  --link-color: #3c6ada;
  --text-size: 16px;
  --text-line-height: 1.5;
  --font-jp: "Noto Sans JP", sans-serif;
  --font-mincho: "Noto Sans JP", serif;
  --font-en: "Poppins", sans-serif;
  --font-zen: "Zen Kaku Gothic New", sans-serif;
  --bg-sub: var(--third-color);
  --block-main-color: #1f1d1d;
  --block-sub-color: var(--secondary-color);
  --block-bg-color: var(--third-color);
}
html {
  font-size: 100%;
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  color: var(--text-color);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  font-family: var(--font-jp);
  letter-spacing: 0.04em;
}
a {
  color: inherit;
}
img {
  max-width: 100%;
  height: auto;
}
.is-pc {
  display: block;
}
.is-sp {
  display: none;
}
.clear {
  clear: both;
}
.l-2column {
  display: grid;
  position: relative;
  grid-template-columns: 1fr 18.75rem;
  width: 100%;
  max-width: 67.9375rem;
  margin: 0 auto;
  padding: 4.1875rem 2.5rem 5rem;
  gap: 0 2.5rem;
}
.l-2column__main {
  width: 100%;
}
.l-2column__sidebar {
  position: relative;
  width: 100%;
}
.l-btn-group.l-btn-group--center {
  text-align: center;
}
.l-btn-group.l-btn-group--right {
  text-align: right;
}
.l-btn-group.l-btn-group--flex {
  display: flex;
  gap: 1.25rem;
}
.l-card {
  display: flex;
  flex-wrap: wrap;
  gap: 3.125rem 2.5rem;
}
.l-card.--news {
  flex-direction: column;
  gap: 1.5625rem;
}
.l-card.--news .l-card__item {
  width: 100%;
}
.l-card.--news .l-card__item .p-card__link {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 1rem;
}
.l-card.--news .p-card__thumb {
  aspect-ratio: 1/1;
}
.l-card.--news .p-card__thumb img {
  height: 100%;
}
.l-card.--news .p-card__body {
  margin: 0;
}
.l-card__item {
  width: calc((100% - 5rem) / 3);
}
.l-contents {
  flex: 1;
  margin-top: clamp(6.3rem, 2.55rem + 6vw, 9rem);
  padding-bottom: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.l-contents--job {
  padding-bottom: 0;
}
.l-contents.l-contents--page .c-section-title {
  flex-direction: column;
  align-items: flex-start;
  border: none;
  background: 0 0;
}
.l-contents.l-contents--page .c-section-title__en {
  padding: clamp(0.65625rem, 0.265625rem + 0.625vw, 0.9375rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  border-bottom: none;
  background-color: #fbff8a;
  color: #393939;
  font-size: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  letter-spacing: -0.01rem;
}
.l-contents.l-contents--page .c-section-title__en--blue {
  background-color: #007bc0;
  color: #fff;
}
.l-contents.l-contents--pb0 {
  padding-bottom: 0;
}
.l-contents .c-section-title__jp {
  padding: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border: 2px solid #393939;
  font-size: 0;
}
.l-contents .c-section-title__jp img {
  height: clamp(2.45rem, 0.9916666667rem + 2.3333333333vw, 3.5rem);
}
&.l-contents--form {
  padding-bottom: clamp(2.8rem, 1.1333333333rem + 2.6666666667vw, 4rem);
  background-color: #e2f5ff;
}
&.l-contents--form .l-page-header {
  padding-block: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem)
    clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
&.l-contents--single {
  padding-bottom: 0;
}
.l-footer {
  padding: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem) 0;
  border-top: 1px solid #393939;
}
.l-footer .l-inner {
  display: flex;
  justify-content: space-between;
  gap: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.l-footer:has(.p-footer__copyright-form) {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  padding: 0;
}
.l-footer:has(.p-footer__copyright-form) .p-footer__copyright-form {
  font-weight: 500;
  font-size: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
}
.c-external-link {
  display: flex;
  position: relative;
  align-items: baseline;
  gap: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  color: var(--link-color);
  font-weight: 500;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  text-decoration: underline;
  transition: all 0.3s;
}
.l-footer__logo {
  flex: 1;
}
.p-footer__logo {
  transition: all 0.3s;
}
.p-footer__logo img {
  width: min(
    14vw,
    clamp(8.96875rem, 3.6302083333rem + 8.5416666667vw, 12.8125rem)
  );
}
.p-footer__site {
  margin-top: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-footer__copyright {
  margin-top: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  color: var(--text-color);
  font-weight: 500;
  font-size: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  font-family: var(--font-en);
  letter-spacing: -0.02em;
}
.l-footer__menu {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  flex: 5;
  gap: min(1.8vw, clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem));
}
.p-footer__menu-list--company {
  grid-row: 1 / span 2;
}
.p-footer__menu-list--discussion {
  grid-column: 2;
}
.p-footer__menu-list--recruitment {
  grid-column: 3;
}
.p-footer__menu-list--entry {
  grid-column: 4;
}
.p-footer__menu-item-title {
  margin-bottom: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  padding-bottom: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border-bottom: 2px dashed var(--text-color);
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-footer__menu-item-title:last-child {
  margin-bottom: 0;
}
.p-footer__menu-item-title .p-footer__menu-link {
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  transition: all 0.3s;
}
.p-footer__menu-item-title .p-footer__menu-link svg {
  transition: all 0.3s;
}
.p-footer__menu-item {
  margin-bottom: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-footer__menu-item:last-child {
  margin-bottom: 0;
}
.p-footer__menu-link {
  display: flex;
  align-items: center;
  gap: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  font-weight: 500;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  transition: all 0.3s;
}
.p-footer__menu-link svg {
  transition: all 0.3s;
}
.l-header {
  display: flex;
  z-index: 30;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-height: clamp(6.3rem, 2.55rem + 6vw, 9rem);
  border-bottom: 2px solid #393939;
  background-color: #fff;
  transition: min-height 0.3s;
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 100%;
  padding-left: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  background: #fff;
}
.l-inner {
  width: 100%;
  max-width: clamp(78.75rem, 31.875rem + 75vw, 112.5rem);
  margin-inline: auto;
  padding-inline: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.l-inner.l-inner--wide {
  max-width: clamp(63rem, 25.5rem + 60vw, 90rem);
}
.l-inner.l-inner--narrow {
  max-width: clamp(43.75rem, 17.7083333333rem + 41.6666666667vw, 62.5rem);
}
.l-inner.l-inner--fluid {
  max-width: none;
}
.l-inner.l-inner--xs {
  max-width: clamp(38.5rem, 15.5833333333rem + 36.6666666667vw, 55rem);
}
.l-page-header {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.l-pagenation {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 4rem;
  padding: 1rem 0.75rem;
  gap: 1rem;
  background-color: #f7f7f7;
}
.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--primary-color);
  background-color: #fff;
  color: var(--primary-color);
  font-weight: 500;
  font-size: 1.125rem;
  font-family: var(--font-en);
  text-align: center;
  text-decoration: none;
  transition: all 0.3s;
}
.page-numbers.current {
  position: relative;
  border-color: var(--primary-color);
  background-color: var(--primary-color);
  color: #fff;
  pointer-events: none;
}
.page-numbers.next,
.page-numbers.prev {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--primary-color);
  transition: all 0.3s;
}
.page-numbers.next::before,
.page-numbers.prev::before {
  position: absolute;
  width: 0.3125rem;
  height: 0.3125rem;
  transform: rotate(-45deg);
  content: "";
}
.page-numbers.prev {
  margin-right: 1rem;
}
.page-numbers.prev::before {
  left: 0.5rem;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
}
.page-numbers.next {
  margin-left: 1rem;
}
.page-numbers.next::before {
  right: 0.5rem;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.page-numbers.dots {
  align-self: flex-end;
  border: none;
  background-color: transparent !important;
  color: var(--primary-color) !important;
  opacity: 1 !important;
}
.l-section {
  padding-block: clamp(3.28125rem, 1.328125rem + 3.125vw, 4.6875rem);
}
.l-section.l-section--xs {
  padding-block: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.l-section.l-section--sm {
  padding-block: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.l-section.l-section--md {
  padding-block: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.l-section.l-section--la {
  padding-block: clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem);
}
.l-section.l-section--xl {
  padding-block: clamp(5.25rem, 2.125rem + 5vw, 7.5rem);
}
.l-section + .l-section-rounded {
  margin-top: 0;
}
.l-section-rounded {
  position: relative;
  margin-top: clamp(-3.5rem, -1.4166666667rem + -3.3333333333vw, -5rem);
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
  background: #fff;
}
.l-section-rounded:has(+ .l-section-rounded) {
  padding-bottom: clamp(7rem, 2.8333333333rem + 6.6666666667vw, 10rem);
}
.l-section-rounded--blue {
  background: #e2f5ff;
}
.l-section-rounded--gray {
  background: #f4f4f4;
}
.l-section-rounded--green {
  background: #e9ffe2;
}
.l-wrapper {
  width: 100%;
  overflow: hidden;
}
.l-btn-fixed {
  display: none;
}
.c-btn-fixed {
  position: relative;
  width: 100%;
  /* padding-bottom: 0.3125rem; */
}
.c-btn-fixed .c-btn-fixed__link {
  display: block;
  position: relative;
  width: 100%;
  padding: 0.8125rem;
  border-top: 1px solid #393939;
  border-bottom: 1px solid #393939;
  box-shadow: 0 0.3125rem 0 0 #fff;
  color: #393939;
  font-weight: 700;
  font-size: 1rem;
  text-align: center;
  cursor: pointer;
}
.c-btn-fixed .c-btn-fixed__link::before {
  position: absolute;
  top: 52%;
  right: 1rem;
  width: 1.125rem;
  height: 1.125rem;
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/contain;
  content: "";
}
.c-btn-fixed.c-btn-fixed--recruitment .c-btn-fixed__link {
  background: #00f4c7;
}
.c-btn-fixed.c-btn-fixed--recruitment .c-btn-fixed__link::before {
  background: url(../img/icon_plus.svg) no-repeat center center/contain;
}
.c-btn-fixed.c-btn-fixed--recruitment .c-btn-fixed__link.is-open::before {
  background: url(../img/icon_minus.svg) no-repeat center center/contain;
}
.c-btn-fixed .c-btn-cv__submenu {
  top: auto;
  bottom: calc(100% + 0.625rem);
}
.c-btn-fixed .c-btn-cv__submenu::before {
  top: auto;
  bottom: -0.75rem;
}
.c-btn-fixed.c-btn-fixed--entry .c-btn-fixed__link {
  background: #ffa880;
}
.c-author__title {
  margin-bottom: 1.25rem;
  padding: 0 0 1rem;
  border-bottom: 1px solid #ccc;
  font-weight: 500;
  font-size: 1rem;
}
.c-author__profile {
  display: flex;
  gap: 1.0625rem;
}
.c-author__profile + .c-author__profile {
  margin-top: 1.25rem;
}
.c-author__img {
  width: 7.8125rem;
  height: 7.8125rem;
  overflow: hidden;
  border-radius: 50%;
}
.c-author__img img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-author__body {
  width: calc(100% - 8.875rem);
}
.c-author__name {
  margin-bottom: 0.5rem;
  font-weight: 500;
  font-size: 1.625rem;
}
.c-author__name a {
  text-decoration: underline;
  transition: all 0.3s;
}
.c-author__post {
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0;
}
.c-author__text {
  margin-top: 1rem;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0;
}
.c-author-parts {
  display: flex;
  margin-top: 1rem;
  gap: 0.5rem;
}
.c-author-parts__title {
  padding: 0.0625rem 0.625rem 0.1875rem;
  border-radius: 3px;
  background-color: #bababa;
  color: #fff;
  font-size: 0.875rem;
}
.c-author-parts__name {
  font-size: 1rem;
}
a.c-author-parts__name {
  text-decoration: underline;
  transition: all 0.3s;
}
.c-badge {
  min-width: 4.875rem;
  padding: 0.0625rem 0.25rem 0.125rem;
  background-color: var(--primary-color);
  color: #fff;
  font-weight: 500;
  font-size: 0.875rem;
  text-align: center;
}
.c-breadcrumb {
  border-bottom: 2px solid #393939;
  background: #f4f4f4;
}
.c-breadcrumb__container {
  max-width: clamp(78.75rem, 31.875rem + 75vw, 112.5rem);
  margin: 0 auto;
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.c-breadcrumb__list {
  display: flex;
  gap: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.c-breadcrumb__item {
  position: relative;
  color: #007bc0;
  font-weight: 500;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  white-space: nowrap;
}
.c-breadcrumb__item:not(:last-of-type)::after {
  position: absolute;
  top: 50%;
  right: clamp(-0.65625rem, -0.265625rem + -0.625vw, -0.9375rem);
  width: 1px;
  height: 100%;
  transform: translateY(-50%);
  background: #393939;
  content: "";
}
.c-breadcrumb__link {
  background-image: linear-gradient(
    90deg,
    var(--primary-color),
    var(--primary-color)
  );
  background-position: left bottom;
  background-size: 0 1px;
  background-repeat: no-repeat;
  color: #393939;
  transition: background-size 0.6s;
}
.l-breadcrumb-form .c-breadcrumb {
  border-top: 2px solid #393939;
  border-bottom: none;
}
.c-btn {
  z-index: 1;
  position: relative;
}
.c-btns--center {
  justify-content: center;
}
.c-btn--big {
  width: clamp(16.625rem, 6.7291666667rem + 15.8333333333vw, 23.75rem);
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.c-btn--lg {
  width: clamp(21rem, 8.5rem + 20vw, 30rem);
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.c-btn--lg .c-btn__link {
  width: 100%;
}
.c-btn--lg .c-btn__link::after {
  bottom: clamp(-0.7rem, -0.2833333333rem + -0.6666666667vw, -1rem);
}
.c-btn--green .c-btn__link::after {
  background: #c2ff96;
}
.c-btn.c-btn--pink .c-btn__link::after {
  background: #ffb0ce;
}
.c-btn.c-btn--yellow .c-btn__link::after {
  background: #fbff8a;
}
.c-btn--light-blue .c-btn__link::after {
  background: #00ece8;
}
.c-btn--blue .c-btn__link::after {
  background: #007bc0;
}
.c-btn__link {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  width: clamp(16.625rem, 6.7291666667rem + 15.8333333333vw, 23.75rem);
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding: clamp(0.48125rem, 0.1947916667rem + 0.4583333333vw, 0.6875rem) 0;
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #fff;
  color: #393939;
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  text-align: center;
  transition: all 0.3s;
}
.c-btn__link::before {
  position: absolute;
  top: 50%;
  right: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  width: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  height: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.c-btn__link::after {
  display: block;
  z-index: -1;
  position: absolute;
  bottom: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
  left: -2px;
  width: calc(100% + 4px);
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #666;
  content: "";
  transition: all 0.3s;
}
.c-btns {
  display: flex;
  align-items: center;
  min-height: clamp(3.71875rem, 1.5052083333rem + 3.5416666667vw, 5.3125rem);
  gap: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.c-btns--gap-m {
  gap: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.c-btn-cv__label--sp {
  display: none;
}
.c-btn-cv {
  position: relative;
  min-width: clamp(10.9375rem, 4.4270833333rem + 10.4166666667vw, 15.625rem);
}
.c-btn-cv .c-btn-cv__link {
  display: block;
  position: relative;
  width: 100%;
  padding: clamp(0.56875rem, 0.2302083333rem + 0.5416666667vw, 0.8125rem);
  border: clamp(0.0875rem, 0.0354166667rem + 0.0833333333vw, 0.125rem) solid
    #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  color: #393939;
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  text-align: center;
  cursor: pointer;
  transition: all 0.3s;
}
.c-btn-cv .c-btn-cv__link::before {
  position: absolute;
  top: 50%;
  right: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  width: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  height: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.c-btn-cv.c-btn-cv--recruitment .c-btn-cv__link {
  background: #00f4c7;
}
.c-btn-cv.c-btn-cv--recruitment .c-btn-cv__link::before {
  background: url(../img/icon_plus.svg) no-repeat center center/contain;
}
.c-btn-cv.c-btn-cv--recruitment .c-btn-cv__link.is-open::before {
  background: url(../img/icon_minus.svg) no-repeat center center/contain;
}
.c-btn-cv.c-btn-cv--entry .c-btn-cv__link {
  background: #ffa880;
}
.c-btn-cv__submenu {
  display: block;
  visibility: hidden;
  z-index: 10;
  position: absolute;
  top: calc(
    100% + clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem)
  );
  left: 0;
  width: -moz-max-content;
  width: max-content;
  min-width: 100%;
  padding: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem)
    clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  background: #fff;
  box-shadow: 0 clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem) rgba(0, 0, 0, 0.16);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
}
.c-btn-cv__submenu::before {
  position: absolute;
  top: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
  left: 0;
  width: 100%;
  height: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  content: "";
}
.is-open + .c-btn-cv__submenu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.c-btn-cv__submenu-link {
  display: block;
  padding: clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem) 0;
  color: #393939;
  font-weight: 700;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  text-align: left;
  white-space: nowrap;
  transition: all 0.3s;
}
.c-btn-cv__submenu-link::after {
  display: inline-block;
  width: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  height: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  margin-left: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  background: url(../img/icon_arrow-menu.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.l-section-cta .c-btn-cv__submenu {
  top: auto;
  bottom: 100%;
}
.l-section-cta .c-btn-cv__submenu::before {
  top: auto;
  bottom: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
}
.c-navigation .c-btn-cv {
  min-width: min(
    15vw,
    clamp(10.9375rem, 4.4270833333rem + 10.4166666667vw, 15.625rem)
  );
}
.c-navigation .c-btn-cv__link {
  font-size: min(
    1.1vw,
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem)
  );
  white-space: nowrap;
}
.c-date {
  display: block;
  position: relative;
  padding-left: 1.375rem;
  font-size: 0.875rem;
}
.c-date::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);
  content: "";
}
.c-date.c-date--publish::before {
  background: url(../img/icon_publish.svg) no-repeat center center/contain;
}
.c-date.c-date--update::before {
  background: url(../img/icon_update.svg) no-repeat center center/contain;
}
.c-faq {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.c-faq__item {
  interpolate-size: allow-keywords;
  overflow: hidden;
  border: 1px solid var(--block-main-color);
  border-radius: 0.5rem;
}
.c-faq__item:not([open])::details-content {
  block-size: 0;
}
.c-faq__item[open] .c-faq__head::after {
  transform: translateY(-50%) rotate(180deg);
}
.c-faq__head {
  display: flex;
  position: relative;
  align-items: center;
  min-height: 4.875rem;
  padding: 0.75rem 2.5rem 0.5rem 4rem;
  background-color: var(--block-main-color);
  color: #fff;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  cursor: pointer;
}
.c-faq__head::before {
  display: flex;
  position: absolute;
  top: 46%;
  left: 1.5rem;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  content: "Q";
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
}
.c-faq__head::after {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  width: 0.875rem;
  height: 0.5625rem;
  transform: translateY(-50%);
  background: url(../img/icon_faq-arrow.svg) no-repeat center center/contain;
  content: "";
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.c-faq__body {
  position: relative;
  padding: 1rem 1.5rem 1.5rem 4rem;
  background-color: var(--third-color);
  font-weight: 400;
}
.c-faq__body::before {
  display: flex;
  position: absolute;
  top: 2.25rem;
  left: 1.5rem;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  content: "A";
  color: var(--primary-color);
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
}
.c-faq__text {
  font-size: 1rem;
  line-height: 1.5;
}
.c-feature {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.c-feature.c-feature--reverse {
  flex-direction: row-reverse;
}
.c-feature + .c-feature {
  margin-top: 4rem;
}
.c-feature__body {
  width: 34.8837209302%;
}
.c-feature__title {
  font-weight: 700;
  font-size: 2.375rem;
  line-height: 1.4736842105;
  font-family: var(--font-mincho);
  letter-spacing: 0.06em;
}
.c-feature__text {
  margin-top: 1.25rem;
}
.c-feature__media {
  aspect-ratio: 328/190;
  width: 34.8837209302%;
  overflow: hidden;
}
.c-feature__media img {
  width: 100%;
}
.c-fv {
  width: 100%;
  max-height: 55rem;
  overflow: hidden;
}
.c-fv img {
  -o-object-fit: cover;
  -o-object-position: center center;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.c-logo__link {
  transition: all 0.3s;
}
.c-logo__image {
  width: clamp(7.175rem, 2.9041666667rem + 6.8333333333vw, 10.25rem);
  transition: width 0.3s;
}
.c-menu-button {
  display: none;
}
.c-menu-button.active .c-menu-button__line:nth-child(1) {
  top: 1.3125rem;
  left: 0.875rem;
  width: 50%;
  transform: translateY(0.375rem) rotate(-45deg);
}
.c-menu-button.active .c-menu-button__line:nth-child(2) {
  opacity: 0;
}
.c-menu-button.active .c-menu-button__line:nth-child(3) {
  top: 2.0625rem;
  left: 0.875rem;
  width: 50%;
  transform: translateY(-0.375rem) rotate(45deg);
}
.c-menu-button__line {
  display: inline-block;
  position: absolute;
  left: 0.875rem;
  width: 50%;
  height: 1px;
  border-radius: 2px;
  background-color: #fff;
  transition: all 0.4s;
}
.c-menu-button__line:nth-child(1) {
  top: 1.1875rem;
}
.c-menu-button__line:nth-child(2) {
  top: 1.6875rem;
}
.c-menu-button__line:nth-child(3) {
  top: 2.1875rem;
}
.c-navigation .c-navigation__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(0.8vw, clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem));
}
.c-navigation__list {
  display: flex;
  align-items: center;
}
.c-navigation__item {
  padding: 0
    min(1vw, clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem));
  border-right: 1px solid #393939;
}
.c-navigation__item:last-child {
  border-right: none;
}
.c-navigation__item.c-navigation__item--contact {
  height: auto;
  margin-left: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  padding: 0;
}
.c-navigation__item.c-navigation__item--contact a {
  display: block;
  height: 100%;
  padding: clamp(1.09375rem, 0.4427083333rem + 1.0416666667vw, 1.5625rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  background-color: var(--primary-color);
  color: #fff;
  font-weight: 700;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  text-align: center;
  transition: all 0.3s;
}
.c-navigation__item.c-navigation__item--has-child {
  position: relative;
}
.c-navigation__item.c-navigation__item--has-child::after {
  position: absolute;
  top: clamp(1.18125rem, 0.478125rem + 1.125vw, 1.6875rem);
  right: clamp(0, 0 + 0, 0);
  width: clamp(0.875rem, 0.25rem + 0.8333333333vw, 1.25rem);
  height: clamp(0.875rem, 0.25rem + 0.8333333333vw, 1.25rem);
  background: url(../img/icon_plus-nav.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.c-navigation__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-weight: 700;
  font-size: min(
    1.1vw,
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem)
  );
  white-space: nowrap;
  transition: all 0.3s;
}
.c-navigation__under {
  background-image: linear-gradient(
    90deg,
    var(--text-color),
    var(--text-color)
  );
  background-position: left bottom;
  background-size: 0 1px;
  background-repeat: no-repeat;
  color: var(--text-color);
  text-decoration: none;
  transition: background-size 0.6s;
}
.c-navigation__link--trigger {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  cursor: default;
}
.c-navigation__submenu {
  display: flex;
  visibility: hidden;
  flex-direction: column;
  z-index: 10;
  position: absolute;
  top: calc(
    100% + clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem)
  );
  left: 50%;
  width: -moz-max-content;
  width: max-content;
  max-width: min(20.5rem, 40vw);
  padding: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem)
    clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  transform: translateX(-50%);
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  background: #fff;
  box-shadow: 0 clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem) rgba(0, 0, 0, 0.16);
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.3s,
    visibility 0.3s;
}
.c-navigation__submenu::before {
  position: absolute;
  top: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
  left: 0;
  width: 100%;
  height: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  content: "";
}
.c-navigation__submenu-link {
  display: block;
  padding: clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem) 0;
  color: #393939;
  font-weight: 700;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  line-height: 1.5;
  text-align: left;
  transition: all 0.3s;
}
.c-navigation__submenu-link::after {
  display: inline-block;
  width: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  height: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  margin-left: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  background: url(../img/icon_arrow-menu.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.c-navigation__menu {
  display: none;
}
.c-navigation__group {
  margin-bottom: 1.25rem;
}
.c-navigation__group-title {
  padding-bottom: 0.75rem;
  border-bottom: 1px dashed #393939;
  color: #393939;
  font-weight: 700;
  font-size: 1.125rem;
}
.c-navigation__group-list {
  display: flex;
  flex-direction: column;
  margin-top: 1rem;
  gap: 0.5rem;
}
.c-navigation__group-link {
  display: block;
  color: #393939;
  font-weight: 500;
  font-size: 0.875rem;
  transition: all 0.3s;
}
.c-navigation__group-link::after {
  display: inline-block;
  width: 0.5rem;
  height: 0.625rem;
  margin-left: 0.625rem;
  background: url(../img/icon_arrow-menu.svg) no-repeat center center/contain;
  content: "";
}
.c-navigation__menu-row {
  display: flex;
  gap: 1.25rem;
}
.c-navigation__menu-link {
  display: flex;
  align-items: center;
  width: 9.375rem;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  gap: 0.75rem;
  border-bottom: 1px dashed #393939;
  color: #393939;
  font-weight: 700;
  font-size: 1.125rem;
  transition: all 0.3s;
}
.c-navigation__menu-link svg {
  flex-shrink: 0;
}
.c-navigation__menu-link--entry {
  margin-bottom: 0;
  white-space: nowrap;
}
.c-page-title {
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  font-family: var(--font-mincho);
  text-align: center;
}
.c-parts-background-image.lazyloaded {
  aspect-ratio: 1100/734;
  width: 100%;
  height: 100%;
  background: url(../img/img_sample_pc.jpg) no-repeat center center/cover;
}
.c-parts-page-title {
  margin: 5rem 0;
  font-weight: 700;
  font-size: 2.625rem;
  text-align: center;
}
.c-parts-title {
  margin-bottom: 5rem;
  padding: 0 1.25rem 0.3125rem;
  border-bottom: 1px solid #333;
  font-weight: 700;
  font-size: 1.75rem;
}
.c-post-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 2.5rem;
  gap: 1.25rem;
}
.c-post-links__next,
.c-post-links__prev {
  width: 100%;
}
.c-post-links__next a,
.c-post-links__prev a {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 5rem;
  padding: 0.625rem 1.75rem;
  border-radius: 100px;
  background-color: var(--third-color);
  transition: all 0.3s;
}
.c-post-links__next a::before,
.c-post-links__prev a::before {
  position: absolute;
  top: 50%;
  width: 0.375rem;
  height: 0.375rem;
  transform: rotate(-45deg) translateY(-50%);
  content: "";
}
.c-post-links__next a:hover,
.c-post-links__prev a:hover {
  opacity: 0.7;
}
.c-post-links__prev {
  justify-self: flex-start;
}
.c-post-links__prev a {
  padding-left: 2.125rem;
}
.c-post-links__prev a::before {
  left: 0.9375rem;
  border-top: 1.5px solid currentColor;
  border-left: 1.5px solid currentColor;
}
.c-post-links__next {
  justify-self: flex-end;
}
.c-post-links__next a {
  padding-right: 2.125rem;
}
.c-post-links__next a::before {
  right: 0.9375rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
}
.c-section-title {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  border: 2px solid #393939;
  background: #fff;
}
.c-section-title__en {
  padding: clamp(0.65625rem, 0.265625rem + 0.625vw, 0.9375rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border: 2px solid #393939;
  background: #393939;
  color: #fff;
  font-weight: 600;
  font-size: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  font-family: var(--font-en);
  letter-spacing: clamp(
    -0.01225rem,
    -0.0049583333rem + -0.0116666667vw,
    -0.0175rem
  );
  text-transform: uppercase;
}
.c-section-title__en--blue {
  background: #007bc0;
}
.c-section-title__jp {
  display: flex;
  align-items: center;
  padding: 0 clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem) 0
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  background-color: #fff;
}
.c-section-title__jp img {
  width: auto;
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.c-section-title-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.c-section-title-row__en {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  border: 2px solid #393939;
  background: #fbff8a;
  font-weight: 600;
  font-size: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  font-family: Poppins;
  letter-spacing: clamp(
    -0.01225rem,
    -0.0049583333rem + -0.0116666667vw,
    -0.0175rem
  );
  text-transform: uppercase;
}
.c-section-title-row__en--green {
  background: #c2ff96;
}
.c-section-title-row__en--teal {
  background: #00ece8;
}
.c-section-title-row__en--pink {
  background: #ffb0ce;
}
.c-section-title-row__en--light-blue {
  background: #e2f5ff;
}
.c-section-title-row__jp {
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  text-align: center;
}
.c-separator {
  margin: 5rem 0;
}
.c-share-block {
  margin-top: 2rem;
  padding: 1rem;
  background-color: #f7f7f7;
}
.c-share-block__sns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.0625rem;
}
.c-share-block__sns a {
  transition: all 0.3s;
}
.c-share-block__sns a:hover {
  opacity: 0.7;
}
.c-share-block__twitter img {
  width: 1.5rem;
}
.c-share-block__facebook img {
  width: 2rem;
}
.c-share-block__bing img {
  width: 2rem;
}
.c-share-block__line img {
  width: 2rem;
}
.c-submenu {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 9.375rem;
  max-width: 12.5rem;
  padding: 1.25rem;
  gap: 0.9375rem;
  background-color: var(--third-color);
}
.c-submenu__item {
  display: block;
  font-size: 1rem;
}
.c-submenu__under {
  background-image: linear-gradient(
    90deg,
    var(--text-color),
    var(--text-color)
  );
  background-position: left bottom;
  background-size: 0 1px;
  background-repeat: no-repeat;
  color: var(--text-color);
  text-decoration: none;
  transition: background-size 0.6s;
}
.c-pagetop {
  z-index: 9;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 4rem;
  height: 4rem;
  background-color: #fff;
}
.c-pagetop img {
  transition: all 0.3s;
}
.p-404 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-bottom: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  padding-inline: clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem)
    clamp(5.46875rem, 2.2135416667rem + 5.2083333333vw, 7.8125rem);
}
.p-404::after,
.p-404::before {
  position: absolute;
  top: clamp(-2.625rem, -1.0625rem + -2.5vw, -3.75rem);
  content: "";
}
.p-404::before {
  left: 0;
  width: clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem);
  height: clamp(18.8125rem, 7.6145833333rem + 17.9166666667vw, 26.875rem);
  background: url(../img/404_img-1.webp) no-repeat center center/cover;
}
.p-404::after {
  right: 0;
  width: clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem);
  height: clamp(18.8125rem, 7.6145833333rem + 17.9166666667vw, 26.875rem);
  background: url(../img/404_img-2.webp) no-repeat center center/cover;
}
.p-404__title {
  margin-bottom: clamp(2.1rem, 0.85rem + 2vw, 3rem);
  color: #007bc0;
  font-weight: 700;
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  text-align: center;
}
.p-404__text {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.6;
  text-align: center;
}
.p-404__btn {
  margin-top: 2.5rem;
}
.p-card.p-card--type01 .p-card__title {
  margin-top: 0.5rem;
}
.p-card.p-card--type02 .p-card__title {
  margin-bottom: 0.75rem;
  font-size: 1.25rem;
}
.p-card__link {
  transition: all 0.3s;
}
.p-card__thumb {
  aspect-ratio: 368/240;
  overflow: hidden;
}
.p-card__thumb img {
  -o-object-fit: cover;
  width: 100%;
  object-fit: cover;
  transition: all 0.3s;
}
.p-card__body {
  position: relative;
  margin-top: 1.25rem;
}
.p-card__body::after,
.p-card__body::before {
  display: none;
  position: absolute;
  content: "";
}
.p-card__body::before {
  right: 0;
  bottom: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--primary-color);
}
.p-card__body::after {
  right: 0.625rem;
  bottom: 0.5rem;
  width: 0.375rem;
  height: 0.375rem;
  transform: rotate(-45deg);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.p-card__detail {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.p-card__title {
  -webkit-box-orient: vertical;
  line-clamp: 2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.5555555556;
}
.p-card__text {
  -webkit-box-orient: vertical;
  line-clamp: 1;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
}
.p-card__bottom {
  position: relative;
  min-height: 1.5rem;
  margin-top: 0.625rem;
}
.p-card__bottom::after,
.p-card__bottom::before {
  position: absolute;
  content: "";
}
.p-card__bottom::before {
  right: 0;
  bottom: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--primary-color);
}
.p-card__bottom::after {
  right: 0.625rem;
  bottom: 0.5rem;
  width: 0.375rem;
  height: 0.375rem;
  transform: rotate(-45deg);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.p-card-news {
  position: relative;
}
.p-card-news.p-card-news--arrow .p-card-news__link {
  padding-right: 2.5rem;
}
.p-card-news.p-card-news--arrow::after {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  width: 0.5rem;
  height: 0.625rem;
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-black.svg) no-repeat center
    center/contain;
  content: "";
}
.p-card-news__link {
  display: flex;
  align-items: center;
  min-height: 5rem;
  padding: 0.9375rem 1.5625rem;
  gap: 1.25rem;
  background-color: var(--third-color);
  transition: all 0.3s;
}
.p-card-news__date {
  min-width: 6.25rem;
}
.p-card-news__title {
  -webkit-box-orient: vertical;
  line-clamp: 1;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.p-entry__header {
  margin-bottom: 4rem;
}
.p-entry__title {
  margin-bottom: 2.8125rem;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.3125;
  letter-spacing: 0.06em;
}
.p-entry__head-wrap {
  margin-right: auto;
}
.p-entry__head {
  margin-bottom: 1.5625rem;
}
.p-entry__head-meta {
  display: flex;
  align-items: center;
  margin-bottom: 1.25rem;
}
.p-entry__head-meta a {
  transition: all 0.3s;
}
.p-entry__head-meta a:hover {
  opacity: 0.7;
}
.p-entry__head-meta02 {
  margin-bottom: 1rem;
}
.p-entry__head-meta02 a {
  transition: all 0.3s;
}
.p-entry__head-meta02 a:hover {
  opacity: 0.7;
}
.p-entry__head-cat {
  display: inline-block;
  margin-right: 0.5rem;
  padding: 0.25rem 0.5rem 0.3125rem;
  border-radius: 4px;
  background-color: var(--block-main-color);
  color: #fff;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.4166666667;
  text-align: center;
}
.p-entry__head-publish,
.p-entry__head-update {
  margin-left: 0.5rem;
}
.p-entry__head-publish,
.p-entry__head-update {
  display: block;
  position: relative;
  padding-left: 1.375rem;
  font-size: 0.875rem;
}
.p-entry__head-publish::before,
.p-entry__head-update::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);
  content: "";
}
.p-entry__head-publish::before {
  background: url(../img/icon_publish.svg) no-repeat center center/contain;
}
.p-entry__column-head-update::before,
.p-entry__head-update::before {
  background: url(../img/icon_update.svg) no-repeat center center/contain;
}
.p-entry__head-tag {
  padding: 0.125rem 0.375rem 0.1875rem;
  border: 1px solid currentColor;
  border-radius: 4px;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.4166666667;
}
.p-entry__head-tag + .p-entry__head-tag {
  margin-left: 0.3125rem;
}
.p-entry__btn {
  margin-top: 2rem;
  text-align: center;
}
.wpcf7-turnstile {
  width: -moz-fit-content;
  width: fit-content;
  margin: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem) auto
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-widget {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.p-widget + .p-widget {
  margin-top: 2.5rem;
}
.p-widget.p-widget--sticky {
  position: sticky;
  top: 8.75rem;
}
.p-widgrt__post {
  padding: 1.25rem 1rem;
  border: 1px solid var(--primary-color);
  border-radius: 0.5rem;
}
.p-widgrt__post-category {
  font-weight: 700;
  font-size: 1.125rem;
  font-family: var(--font-mincho);
  text-align: center;
}
.p-widgrt__post-item {
  border-bottom: 1px solid #ccc;
}
.p-widgrt__post-item:last-child {
  border-bottom: none;
}
.p-widgrt__post-item:last-child .p-widgrt__post-link {
  padding-bottom: 0;
}
.p-widgrt__links-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.p-widgrt__post-link {
  display: grid;
  grid-template-columns: 0.85fr 1fr 18px;
  align-items: start;
  padding-block: 1rem;
  gap: 0.5rem;
}
.p-widgrt__post-pic img {
  -o-object-fit: cover;
  aspect-ratio: 108/60;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-widgrt__post-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.p-widgrt__post-date {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  color: #666;
  font-size: 0.75rem;
  font-family: var(--font-mincho);
}
.p-widgrt__post-date svg {
  width: 0.8125rem;
  height: 0.8125rem;
}
.p-widgrt__post-title {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #000;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  text-overflow: ellipsis;
}
.p-widgrt__post-arrow {
  align-self: end;
}
.p-widgrt__post-arrow svg {
  width: 100%;
  height: 100%;
}
.p-widget__banner {
  display: flex;
  position: sticky;
  top: 6.25rem;
  flex-direction: column;
  margin-top: 2rem;
  gap: 0.5rem;
}
.p-widget__banner img {
  width: 100%;
}
.p-widget__banner-link {
  transition: all 0.3s;
}
.p-widget__banner-link:hover {
  opacity: 0.7;
}
.search-results-count {
  margin-bottom: 24px;
  padding: 16px;
  border-left: 4px solid #007cba;
  background-color: #f8f9fa;
  color: #333;
  font-weight: 600;
}
.search-no-results {
  padding: 40px 20px;
  text-align: center;
}
.search-no-results p {
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 1.6;
}
.search-no-results p:first-child {
  color: #333;
  font-weight: 600;
}
.search-no-results p:last-child {
  color: #666;
}
.p-widget_freeword form {
  display: flex;
  gap: 8px;
}
.p-widget_freeword form input[type="text"] {
  flex: 1;
  padding: 12px 16px;
  border: 2px solid #ddd;
  border-radius: 4px;
  font-size: 14px;
  transition: border-color 0.3s ease;
}
.p-widget_freeword form input[type="text"]:focus {
  border-color: #007cba;
  outline: 0;
}
.p-widget_freeword form input[type="text"]::-moz-placeholder {
  color: #999;
}
.p-widget_freeword form input[type="text"]::placeholder {
  color: #999;
}
.p-widget_freeword form button[type="submit"] {
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  background-color: #007cba;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.p-widget_freeword form button[type="submit"]:hover {
  background-color: #005a87;
}
.p-about-sub {
  border-bottom: 1px solid #393939;
}
.p-about-sub__intro {
  padding-block: 0 clamp(7rem, 2.8333333333rem + 6.6666666667vw, 10rem);
}
.p-about-sub__intro-inner {
  display: grid;
  grid-template-columns: 90fr 73fr;
  align-items: center;
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-about-sub__intro-title {
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  letter-spacing: 0.05em;
}
.p-about-sub__intro-copy {
  margin-block: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem)
    clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem);
  color: #007bc0;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-about-sub__intro-text {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.875;
}
.p-about-sub__intro-text .is-strong {
  color: #007bc0;
}
.p-about-sub__intro-image {
  position: relative;
}
.p-about-sub__intro-image img {
  -o-object-fit: cover;
  z-index: 1;
  position: relative;
  aspect-ratio: 730/493;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-about-sub__intro-frame {
  position: absolute;
  inset: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem)
    clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #00ece8;
}
.p-about-sub__btns {
  margin-top: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem);
}
.p-about-sub__rounded-section {
  padding-block: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-about-sub__fair {
  background: #ffdbdc;
}
.p-about-sub__work-body {
  display: grid;
  grid-template-columns: clamp(27.5625rem, 11.15625rem + 26.25vw, 39.375rem) 1fr;
  align-items: center;
  margin-top: clamp(2.40625rem, 0.9739583333rem + 2.2916666667vw, 3.4375rem);
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-about-sub__work-text {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.875;
}
.p-about-sub__work-diagram {
  display: block;
  position: relative;
}
.p-about-sub__work-diagram picture {
  display: block;
}
.p-about-sub__work-diagram img {
  width: 100%;
  height: auto;
}
.p-about-sub__zoom-button {
  display: none;
}
.p-about-sub__diagram-modal {
  display: none;
}
.p-about-sub__feature-title {
  width: -moz-fit-content;
  width: fit-content;
  margin: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) auto
    clamp(2.1rem, 0.85rem + 2vw, 3rem);
  padding-bottom: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  border-bottom: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem) solid #00ece8;
  font-weight: 700;
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  letter-spacing: 0.05em;
  text-align: center;
}
.p-about-sub__feature-title--green {
  border-color: #c2ff96;
}
.p-about-sub__feature-title--yellow {
  border-color: #fbff8a;
}
.p-about-sub__feature-title--green .p-about-sub__feature-title-line {
  border-color: #c2ff96;
}
.p-about-sub__feature-title--yellow .p-about-sub__feature-title-line {
  border-color: #fbff8a;
}
.p-about-sub__grid-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-about-sub__metric-item {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem)
    clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  gap: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  border: 2px solid #393939;
  background: #fff;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  text-align: center;
}
.p-about-sub__metric-item--achievement {
  justify-content: flex-start;
  min-height: clamp(8.3125rem, 3.3645833333rem + 7.9166666667vw, 11.875rem);
}
.p-about-sub__metric-item--achievement img {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: auto;
  margin: auto;
  transform: translateX(80%);
}
.p-about-sub__metric-item--achievement .p-about-sub__metric-img01 {
  max-width: clamp(4.725rem, 1.9125rem + 4.5vw, 6.75rem);
  max-height: clamp(5.775rem, 2.3375rem + 5.5vw, 8.25rem);
}
.p-about-sub__metric-item--achievement .p-about-sub__metric-img02 {
  max-width: clamp(6.3875rem, 2.5854166667rem + 6.0833333333vw, 9.125rem);
  max-height: clamp(3.5875rem, 1.4520833333rem + 3.4166666667vw, 5.125rem);
}
.p-about-sub__metric-item--achievement .p-about-sub__metric-img03 {
  max-width: clamp(6.9125rem, 2.7979166667rem + 6.5833333333vw, 9.875rem);
  max-height: clamp(6.2125rem, 2.5145833333rem + 5.9166666667vw, 8.875rem);
}
.p-about-sub__metric-item--achievement .p-about-sub__metric-label {
  margin-bottom: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-about-sub__metric-label {
  display: block;
  z-index: 1;
  position: relative;
  font-size: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  line-height: 1.4;
  white-space: nowrap;
}
.p-about-sub__metric-detail {
  display: flex;
  z-index: 1;
  position: relative;
  align-items: baseline;
  justify-content: center;
  gap: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  line-height: 1;
  white-space: nowrap;
}
.p-about-sub__metric-value {
  font-size: clamp(2.7125rem, 1.0979166667rem + 2.5833333333vw, 3.875rem);
  font-family: var(--font-en);
}
.p-about-sub__metric-value--red {
  color: #cf0003;
}
.p-about-sub__metric-value--orange {
  display: inline;
  color: #e79a00;
}
.p-about-sub__metric-affix {
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.4;
}
.p-about-sub__metric-note {
  display: block;
  z-index: 1;
  position: relative;
  font-size: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
}
.p-about-sub__section {
  padding-block: clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem)
    clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem);
}
.p-about-sub__section--pb0 {
  padding-bottom: 0;
}
.p-about-sub__card-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  gap: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-about-sub__card {
  position: relative;
  padding-bottom: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
}
.p-about-sub__card-photo {
  display: block;
  aspect-ratio: 540/318;
  border-bottom: 2px solid #393939;
}
.p-about-sub__card-photo img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-about-sub__card-title {
  padding: clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem) 0;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  text-align: center;
}
.p-about-sub__card-text {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem) 0;
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.77;
}
.p-about-sub__data-list {
  margin-top: clamp(1.53125rem, 0.6197916667rem + 1.4583333333vw, 2.1875rem);
}
.p-about-sub__image-item {
  font-size: 0;
}
.p-about-sub__image-item img {
  width: 100%;
  height: auto;
}
.p-about-sub__metric-item--balance {
  min-height: clamp(8.3125rem, 3.3645833333rem + 7.9166666667vw, 11.875rem);
  gap: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-about-sub__metric-item--balance img {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: auto;
  margin: auto;
  transform: translateX(60%);
}
.p-about-sub__metric-item--balance .p-about-sub__metric-img01 {
  max-width: clamp(5.90625rem, 2.390625rem + 5.625vw, 8.4375rem);
  max-height: clamp(8.05rem, 3.2583333333rem + 7.6666666667vw, 11.5rem);
}
.p-about-sub__metric-item--balance .p-about-sub__metric-img02 {
  max-width: clamp(3.4125rem, 1.38125rem + 3.25vw, 4.875rem);
  max-height: clamp(8.05rem, 3.2583333333rem + 7.6666666667vw, 11.5rem);
  transform: translateX(90%);
}
.p-about-sub__metric-item--balance .p-about-sub__metric-img03 {
  max-width: clamp(4.2rem, 1.7rem + 4vw, 6rem);
  max-height: clamp(7.7rem, 3.1166666667rem + 7.3333333333vw, 11rem);
  transform: translateX(80%);
}
.p-about-sub__people-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: clamp(2.40625rem, 0.9739583333rem + 2.2916666667vw, 3.4375rem);
  gap: clamp(4.06875rem, 1.646875rem + 3.875vw, 5.8125rem);
}
.p-about-sub__people-item {
  overflow: hidden;
  border: 2px solid #393939;
  background: #fff;
}
.p-about-sub__people-item img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  width: 100%;
  object-fit: cover;
}
.p-about-sub__people-item h3 {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border-top: 2px solid #393939;
  font-weight: 700;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
}
.p-privacy {
  padding-block: 4rem 5rem;
}
.p-privacy__introduction {
  margin-bottom: 2rem;
  font-size: 1rem;
  line-height: 1.5;
}
.p-privacy__content {
  border-top: 1px solid #ccc;
}
.p-privacy__item {
  padding-block: 2rem;
}
.p-privacy__item + .p-privacy__item {
  border-top: 1px solid #ccc;
}
.p-privacy__title {
  color: var(--primary-color);
  font-weight: 700;
  font-size: 1.625rem;
  font-family: var(--font-mincho);
  letter-spacing: 0.07em;
}
.p-privacy__text {
  margin-top: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
}
.p-privacy__list {
  margin-block: 0.875rem;
  list-style-type: none;
  counter-reset: item;
}
.p-privacy__list li + li {
  margin-top: 0.25rem;
}
.p-privacy__list li {
  position: relative;
  padding-left: 1.1875rem;
}
.p-privacy__list li::before {
  position: absolute;
  left: 0;
  content: counter(item) ". ";
  color: var(--primary-color);
  font-weight: 700;
  counter-increment: item;
}
.p-privacy__date {
  font-size: 1rem;
  line-height: 1.5;
  text-align: right;
}
.p-privacy__footer {
  margin-top: 3.875rem;
}
.p-privacy__company {
  color: var(--primary-color);
  font-weight: 700;
  font-size: 1.625rem;
  font-family: var(--font-mincho);
}
.p-privacy__info {
  margin-top: 0.375rem;
  font-size: 1rem;
  line-height: 1.5;
}
.p-fv__video {
  --fv-ink: #393939;
  --fv-side-card-width: min(13.8372093023vw, 14.875rem);
  --fv-side-card-height: min(16.976744186vw, 18.25rem);
  --fv-center-card-width: min(34.8837209302vw, 37.5rem);
  --fv-center-card-height: min(42.7906976744vw, 46rem);
  --fv-card-gap: min(2.4418604651vw, 2.625rem);
  position: relative;
  min-height: 40vw;
}
.p-fv__video .carousel {
  z-index: 2;
  position: absolute;
  top: clamp(-2.625rem, -1.0625rem + -2.5vw, -3.75rem);
  right: 0;
  left: 0;
}
.p-fv__video .video-card {
  position: absolute;
  overflow: hidden;
  transform: translate(-50%, -50%);
  border: 2px solid var(--fv-ink);
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  background: #dfe8e8;
  transition:
    left 820ms cubic-bezier(0.22, 1, 0.36, 1),
    top 820ms cubic-bezier(0.22, 1, 0.36, 1),
    width 820ms cubic-bezier(0.22, 1, 0.36, 1),
    height 820ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 360ms ease,
    filter 820ms ease;
}
.p-fv__video .video-card.is-teleporting {
  transition: none;
}
.p-fv__video .video-card video {
  -o-object-fit: cover;
  -o-object-position: 48% 50%;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 48% 50%;
  transform: scale(1.1);
  transform-origin: center;
  background: #dfe8e8;
}
.p-fv__video .video-card--06 video {
  -o-object-position: 42% 50%;
  object-position: 42% 50%;
  transform: translate(2%, -4%) scale(1.1);
}
.p-fv__video .video-card::before {
  content: none;
}
.p-fv__video .slot-center {
  z-index: 5;
  top: min(18.3vw, clamp(13.78125rem, 5.578125rem + 13.125vw, 19.6875rem));
  left: 50%;
  width: var(--fv-center-card-width);
  height: var(--fv-center-card-height);
  filter: saturate(1.04);
}
.p-fv__video .slot-left-1,
.p-fv__video .slot-left-2,
.p-fv__video .slot-right-1,
.p-fv__video .slot-right-2 {
  z-index: 3;
  top: min(31.1vw, clamp(23.49375rem, 9.509375rem + 22.375vw, 33.5625rem));
  width: var(--fv-side-card-width);
  height: var(--fv-side-card-height);
  filter: saturate(0.96);
}
.p-fv__video .slot-left-2 {
  left: calc(
    50% -
      (
        var(--fv-center-card-width) / 2 + var(--fv-card-gap) * 2 +
          var(--fv-side-card-width) * 1.5
      )
  );
}
.p-fv__video .slot-left-1 {
  left: calc(
    50% -
      (
        var(--fv-center-card-width) / 2 + var(--fv-card-gap) +
          var(--fv-side-card-width) / 2
      )
  );
}
.p-fv__video .slot-right-1 {
  left: calc(
    50% + var(--fv-center-card-width) / 2 + var(--fv-card-gap) +
      var(--fv-side-card-width) / 2
  );
}
.p-fv__video .slot-right-2 {
  left: calc(
    50% + var(--fv-center-card-width) / 2 + var(--fv-card-gap) * 2 +
      var(--fv-side-card-width) * 1.5
  );
}
.p-fv__video .slot-hidden-left,
.p-fv__video .slot-hidden-right {
  z-index: 1;
  top: min(29.7vw, clamp(22.3125rem, 9.03125rem + 21.25vw, 31.875rem));
  width: var(--fv-side-card-width);
  height: var(--fv-side-card-height);
  opacity: 0;
  pointer-events: none;
}
.p-fv__video .slot-hidden-left {
  left: -12%;
}
.p-fv__video .slot-hidden-right {
  left: 112%;
}
.p-fv__video .bubble-layer {
  z-index: 10;
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.p-fv__video .bubble {
  --bubble-transform: translate3d(0, 0, 0);
  display: flex;
  position: absolute;
  align-items: center;
  justify-content: center;
  width: clamp(15.925rem, 6.4458333333rem + 15.1666666667vw, 22.75rem);
  height: clamp(5.425rem, 2.1958333333rem + 5.1666666667vw, 7.75rem);
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  transform: var(--bubble-transform) scale(1);
  transform-origin: center bottom;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  color: var(--fv-ink);
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.46;
  text-align: center;
  white-space: nowrap;
}
.p-fv__video .bubble.is-bouncing {
  animation: p-fv-bubble-pop 720ms cubic-bezier(0.16, 1, 0.3, 1) both;
}
.p-fv__video .bubble--green.is-bouncing {
  animation-delay: 90ms;
}
.p-fv__video .bubble--pink.is-bouncing {
  animation-delay: 180ms;
}
.p-fv__video .bubble__text {
  display: block;
}
.p-fv__video .bubble--yellow {
  --bubble-transform: translateX(-50%);
  top: clamp(-8.3125rem, -3.3645833333rem + -7.9166666667vw, -11.875rem);
  left: calc(50% - clamp(9.84375rem, 3.984375rem + 9.375vw, 14.0625rem));
  background-image: url(../img/bubble-yellow_pc.svg);
}
.p-fv__video .bubble--green {
  --bubble-transform: translateX(-50%);
  top: clamp(-3.0625rem, -1.2395833333rem + -2.9166666667vw, -4.375rem);
  left: calc(50% + clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem));
  background-image: url(../img/bubble-green_pc.svg);
}
.p-fv__video .bubble--pink {
  --bubble-transform: translateX(-50%);
  top: clamp(15.75rem, 6.375rem + 15vw, 22.5rem);
  left: calc(50% + clamp(10.5rem, 4.25rem + 10vw, 15rem));
  width: clamp(12.425rem, 5.0291666667rem + 11.8333333333vw, 17.75rem);
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  background-image: url(../img/bubble-pink_pc.svg);
}
.p-fv__excavator {
  z-index: 6;
  position: absolute;
  top: max(-4.5vw, clamp(-3.28125rem, -1.328125rem + -3.125vw, -4.6875rem));
  right: min(1vw, clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem));
  width: min(
    24.3vw,
    clamp(11.06875rem, 4.4802083333rem + 10.5416666667vw, 15.8125rem)
  );
  height: auto;
  transform: scale(0.62);
  transform-origin: right top;
  pointer-events: none;
}
.p-fv {
  margin-top: clamp(6.3rem, 2.55rem + 6vw, 9rem);
  overflow: hidden;
  border-bottom: 1px solid #393939;
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
}
.p-fv__body {
  position: relative;
}
.p-fv__scroll-text {
  margin-block: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  overflow: hidden;
}
.p-fv__scroll-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: p-fv-scroll 30s linear infinite;
}
.p-fv__scroll-item {
  flex-shrink: 0;
}
.p-fv__scroll-item img {
  width: auto;
  height: clamp(8.8375rem, 3.5770833333rem + 8.4166666667vw, 12.625rem);
}
.p-fv__text-1 {
  position: absolute;
  top: 0;
  left: 0;
}
.p-fv__text-1 img {
  width: min(
    26vw,
    clamp(21.875rem, 8.8541666667rem + 20.8333333333vw, 31.25rem)
  );
}
.p-fv__text-2 {
  position: absolute;
  top: -7vw;
  right: min(-5.8vw, clamp(-3.5rem, -1.4166666667rem + -3.3333333333vw, -5rem));
}
.p-fv__text-2 img {
  width: min(
    33vw,
    clamp(25.76875rem, 10.4302083333rem + 24.5416666667vw, 36.8125rem)
  );
}
.l-section--grid {
  position: relative;
  padding-bottom: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  background-image:
    linear-gradient(to right, #eee 1px, transparent 1px),
    linear-gradient(to bottom, #eee 1px, transparent 1px);
  background-size: clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem)
    clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem);
  background-color: #fff;
}
.p-message {
  position: relative;
}
.p-message::before {
  position: absolute;
  top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  right: 0;
  left: 0;
  width: 100%;
  max-width: clamp(75.25rem, 30.4583333333rem + 71.6666666667vw, 107.5rem);
  height: clamp(18.375rem, 7.4375rem + 17.5vw, 26.25rem);
  margin-inline: auto;
  background: url(../img/message_img-1.webp) no-repeat left 0;
  background-size: clamp(6.95625rem, 2.815625rem + 6.625vw, 9.9375rem)
    clamp(18.375rem, 7.4375rem + 17.5vw, 26.25rem);
  content: "";
}
.p-message::after {
  position: absolute;
  top: clamp(2.5375rem, 1.0270833333rem + 2.4166666667vw, 3.625rem);
  right: 0;
  left: 0;
  width: 100%;
  max-width: clamp(75.25rem, 30.4583333333rem + 71.6666666667vw, 107.5rem);
  height: clamp(17.2375rem, 6.9770833333rem + 16.4166666667vw, 24.625rem);
  margin-inline: auto;
  background: url(../img/message_img-2.webp) no-repeat right 0;
  background-size: clamp(10.15rem, 4.1083333333rem + 9.6666666667vw, 14.5rem)
    clamp(17.2375rem, 6.9770833333rem + 16.4166666667vw, 24.625rem);
  content: "";
}
.p-message__title {
  text-align: center;
}
.p-message__title img {
  max-width: clamp(42.74375rem, 17.3010416667rem + 40.7083333333vw, 61.0625rem);
}
.p-message__text {
  margin-top: clamp(3.0625rem, 1.2395833333rem + 2.9166666667vw, 4.375rem);
  font-weight: 500;
  font-size: min(1.4vw, clamp(1.05rem, 0.425rem + 1vw, 1.5rem));
  line-height: 1.87;
  text-align: center;
}
.p-message__text-img {
  margin-top: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  text-align: center;
}
.p-message__text-img img {
  max-width: clamp(49.875rem, 20.1875rem + 47.5vw, 71.25rem);
}
.p-about__body {
  display: flex;
  position: relative;
  min-height: clamp(17.5rem, 7.0833333333rem + 16.6666666667vw, 25rem);
  margin-top: clamp(2.0125rem, 0.8145833333rem + 1.9166666667vw, 2.875rem);
  gap: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-about__body::before {
  position: absolute;
  top: 0;
  right: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  width: clamp(27.69375rem, 11.209375rem + 26.375vw, 39.5625rem);
  height: clamp(12.6875rem, 5.1354166667rem + 12.0833333333vw, 18.125rem);
  transform: translateY(-80%);
  background: url(../img/about_illust.webp) no-repeat center center/contain;
  content: "";
}
.p-about__pic {
  display: block;
  z-index: 1;
  position: relative;
  flex: 1;
}
.p-about__pic img {
  -o-object-fit: cover;
  aspect-ratio: 830/450;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-about__pic::before {
  z-index: -1;
  position: absolute;
  right: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
  content: "";
}
.p-about__info {
  flex: 1;
  padding-top: clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem);
}
.p-about__text {
  color: #393939;
  font-weight: 500;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  line-height: 2;
}
.u-mt-m {
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-interview__body {
  position: relative;
}
.p-interview__body::before {
  position: absolute;
  top: clamp(-2.625rem, -1.0625rem + -2.5vw, -3.75rem);
  right: clamp(7.875rem, 3.1875rem + 7.5vw, 11.25rem);
  width: calc(clamp(51.45rem, 20.825rem + 49vw, 73.5rem) / 2);
  height: calc(clamp(20.3rem, 8.2166666667rem + 19.3333333333vw, 29rem) / 2);
  transform: translateY(-100%);
  background: url(../img/interview_illust_pc.webp) no-repeat center
    center/contain;
  content: "";
}
.p-interview__list {
  display: flex;
  justify-content: center;
  margin-top: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem);
  gap: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-interview__item {
  width: calc(
    25% - clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem) * 3 / 4
  );
}
.p-interview__item:nth-child(1n) .p-interview__head {
  background: url(../img/interview_bg-1.webp) no-repeat center bottom/contain;
}
.p-interview__item:nth-child(2n) .p-interview__head {
  background: url(../img/interview_bg-2.webp) no-repeat center bottom/contain;
}
.p-interview__item:nth-child(3n) .p-interview__head {
  background: url(../img/interview_bg-3.webp) no-repeat center bottom/contain;
}
.p-interview__item:nth-child(4n) .p-interview__head {
  background: url(../img/interview_bg-4.webp) no-repeat center bottom/contain;
}
.p-interview__item:nth-child(5n) .p-interview__head {
  background: url(../img/interview_bg-5.webp) no-repeat center bottom/contain;
}
.p-interview__item:nth-child(6n) .p-interview__head {
  background: url(../img/interview_bg-6.webp) no-repeat center bottom/contain;
}
.p-interview__link {
  display: block;
  transition: all 0.3s;
}
.p-interview__head {
  position: relative;
  padding-bottom: clamp(5.425rem, 2.1958333333rem + 5.1666666667vw, 7.75rem);
  background-position: 0 clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) !important;
}
.p-interview__pic img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-interview__info {
  display: flex;
  position: absolute;
  bottom: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: clamp(5.425rem, 2.1958333333rem + 5.1666666667vw, 7.75rem);
  padding-block: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  border: 2px solid #393939;
  background: #fff;
  text-align: center;
}
.p-interview__post {
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.5;
}
.p-interview__name {
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.7;
}
.p-interview__text {
  -webkit-box-orient: vertical;
  line-clamp: 2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  overflow: hidden;
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-discussion {
  overflow: hidden;
}
.p-discussion__body {
  position: relative;
  max-width: clamp(35.6125rem, 14.4145833333rem + 33.9166666667vw, 50.875rem);
  margin-inline: auto;
}
.p-discussion__body .c-bubble {
  display: flex;
  z-index: 2;
  position: absolute;
  align-items: center;
  justify-content: center;
  width: clamp(15.925rem, 6.4458333333rem + 15.1666666667vw, 22.75rem);
  height: clamp(5.425rem, 2.1958333333rem + 5.1666666667vw, 7.75rem);
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  transform: translateY(clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem))
    scale(0.62);
  transform-origin: center bottom;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.45;
  font-family: var(--font-zen);
  text-align: center;
  opacity: 0;
}
.p-discussion__body .c-bubble--green {
  top: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  right: -15vw;
}
.p-discussion__body .c-bubble--blue {
  top: clamp(7rem, 2.8333333333rem + 6.6666666667vw, 10rem);
  right: -21vw;
}
.p-discussion__body .c-bubble--yellow {
  top: clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem);
  left: -16vw;
  padding: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  background-image: none;
}
.p-discussion__body.is-bubble-visible .c-bubble {
  animation: p-discussion-bubble-pop 720ms cubic-bezier(0.16, 1, 0.3, 1) both;
}
.p-discussion__body.is-bubble-visible .c-bubble--blue {
  animation-delay: 120ms;
}
.p-discussion__body.is-bubble-visible .c-bubble--yellow {
  animation-delay: 240ms;
}
.p-discussion__list {
  display: flex;
  min-height: clamp(20.5625rem, 8.3229166667rem + 19.5833333333vw, 29.375rem);
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  padding-bottom: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  gap: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-discussion__item {
  z-index: 1;
  position: relative;
  flex: 1;
}
.p-discussion__item-link {
  display: block;
  position: relative;
  margin-right: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
  transition: all 0.3s;
}
.p-discussion__item-link::after {
  z-index: -1;
  position: absolute;
  right: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #ffdbdc;
  content: "";
  transition: all 0.3s;
}
.p-discussion__item-head {
  margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  padding-bottom: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  border-bottom: 2px solid #393939;
  color: #ec8486;
  font-weight: 600;
  font-size: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  font-family: var(--font-en);
  letter-spacing: clamp(
    -0.01225rem,
    -0.0049583333rem + -0.0116666667vw,
    -0.0175rem
  );
  text-transform: uppercase;
}
.p-discussion__item-title {
  -webkit-box-orient: vertical;
  line-clamp: 2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-discussion__item-text {
  -webkit-box-orient: vertical;
  line-clamp: 3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  margin-top: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  overflow: hidden;
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.77;
}
.p-discussion__item-more {
  position: relative;
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  padding-right: clamp(2.45rem, 0.9916666667rem + 2.3333333333vw, 3.5rem);
  font-weight: 700;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.77;
  text-align: right;
}
.p-discussion__item-more::after {
  position: absolute;
  top: clamp(-0.175rem, -0.0708333333rem + -0.1666666667vw, -0.25rem);
  right: 0;
  width: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  border: 2px solid #393939;
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center
    center/clamp(1.05rem, 0.425rem + 1vw, 1.5rem) #ffdbdc;
  content: "";
}
.p-discussion__item-link:has(.p-discussion__item-intro) {
  padding: 0;
}
.p-discussion__item-link .p-discussion__item-text {
  -webkit-box-orient: vertical;
  line-clamp: 3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-discussion__item-intro {
  display: flex;
  border-bottom: 2px solid #393939;
}
.p-discussion__item-intro .p-discussion__item-img {
  flex: 1;
  border-right: 2px solid #393939;
}
.p-discussion__item-intro .p-discussion__item-img img {
  -o-object-fit: cover;
  aspect-ratio: 203/108;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem) 0 0 0;
}
.p-discussion__item-intro .p-discussion__item-title {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-discussion__item-body {
  padding: 0 clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-occupation__body {
  position: relative;
}
.p-occupation__body::before {
  position: absolute;
  top: clamp(-1.4rem, -0.5666666667rem + -1.3333333333vw, -2rem);
  right: clamp(12.25rem, 4.9583333333rem + 11.6666666667vw, 17.5rem);
  width: calc(
    clamp(30.625rem, 12.3958333333rem + 29.1666666667vw, 43.75rem) / 2
  );
  height: calc(
    clamp(17.9375rem, 7.2604166667rem + 17.0833333333vw, 25.625rem) / 2
  );
  transform: translateY(-100%);
  background: url(../img/occupation_illust_pc.webp) no-repeat center
    center/contain;
  content: "";
}
.p-occupation__list {
  display: flex;
  min-height: clamp(24.0625rem, 9.7395833333rem + 22.9166666667vw, 34.375rem);
  margin-top: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem);
  gap: clamp(1.8375rem, 0.74375rem + 1.75vw, 2.625rem);
}
.p-occupation__item {
  flex: 0 0 calc((100% - clamp(3.675rem, 1.4875rem + 3.5vw, 5.25rem)) / 3);
  min-width: 0;
}
.p-occupation__item-link {
  display: block;
  position: relative;
  margin-right: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  transition: all 0.3s;
}
.p-occupation__item-link::after {
  z-index: 0;
  position: absolute;
  right: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
  content: "";
  transition: all 0.3s;
}
.p-occupation__item-pic {
  display: block;
  z-index: 1;
  position: relative;
}
.p-occupation__item-pic img {
  -o-object-fit: cover;
  aspect-ratio: 51/30;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem) 0 0;
}
.p-occupation__item-info {
  z-index: 1;
  position: relative;
  padding: min(1.4vw, clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem))
    min(1.4vw, clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem));
  overflow: hidden;
  border: 2px solid #393939;
  border-top: none;
  border-radius: 0 0 clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
}
.p-occupation__item-title {
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  text-align: center;
  white-space: nowrap;
}
.p-occupation__item-text {
  -webkit-box-orient: vertical;
  line-clamp: 2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  overflow: hidden;
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.77;
}
.p-occupation__item-more {
  position: relative;
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  padding-right: clamp(2.45rem, 0.9916666667rem + 2.3333333333vw, 3.5rem);
  font-weight: 700;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.77;
  text-align: right;
  white-space: nowrap;
}
.p-occupation__item-more::after {
  position: absolute;
  top: clamp(-0.175rem, -0.0708333333rem + -0.1666666667vw, -0.25rem);
  right: 0;
  width: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  border: 2px solid #393939;
  background: url(../img/icon_arrow-btn-cv-w.svg) no-repeat center
    center/clamp(1.05rem, 0.425rem + 1vw, 1.5rem) #126a9b;
  content: "";
}
.p-environment {
  background: url(../img/environment_bg_pc.webp) no-repeat center 0/100%;
}
.p-environment__body {
  position: relative;
  min-height: min(
    48vw,
    clamp(37.625rem, 15.2291666667rem + 35.8333333333vw, 53.75rem)
  );
}
.p-environment__body.is-bubble-visible .p-environment__bubble {
  animation: p-environment-bubble-pop 720ms cubic-bezier(0.16, 1, 0.3, 1) both;
}
.p-environment__body.is-bubble-visible .p-environment__bubble:nth-child(2) {
  animation-delay: 120ms;
}
.p-environment__body.is-bubble-visible .p-environment__bubble:nth-child(3) {
  animation-delay: 240ms;
}
.p-environment__body.is-bubble-visible .p-environment__bubble:nth-child(4) {
  animation-delay: 360ms;
}
.p-environment__bubble {
  --environment-bubble-transform: translate(0, 0);
  z-index: 1;
  position: absolute;
  transform: var(--environment-bubble-transform)
    translateY(clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)) scale(0.42);
  transform-origin: 50% 80%;
  opacity: 0;
  will-change: opacity, transform;
}
.p-environment__bubble:nth-child(1) {
  --environment-bubble-transform: translateX(-50%);
  top: 18%;
  left: 90%;
  width: clamp(12.25rem, 4.9583333333rem + 11.6666666667vw, 17.5rem);
}
.p-environment__bubble:nth-child(2) {
  top: -9%;
  left: 46%;
  width: clamp(15.75rem, 6.375rem + 15vw, 22.5rem);
}
.p-environment__bubble:nth-child(3) {
  top: 24%;
  left: 7%;
  width: clamp(15.75rem, 6.375rem + 15vw, 22.5rem);
}
.p-environment__bubble:nth-child(4) {
  top: 47%;
  left: 12%;
  width: clamp(15.75rem, 6.375rem + 15vw, 22.5rem);
}
.p-discussion__bubble-pic,
.p-environment__bubble-pic {
  display: block;
}
.p-discussion__bubble-pic img,
.p-environment__bubble-pic img {
  width: 100%;
}
.p-environment__info {
  position: absolute;
  right: 0;
  bottom: 0;
  max-width: clamp(31.5rem, 12.75rem + 30vw, 45rem);
  min-height: clamp(26.25rem, 10.625rem + 25vw, 37.5rem);
  padding-top: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-environment__info-text {
  font-weight: 700;
  font-size: min(1.4vw, clamp(1.05rem, 0.425rem + 1vw, 1.5rem));
  line-height: 1.58;
}
.p-environment__info-pic {
  display: block;
  padding-block: clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-environment__info-pic img {
  max-width: clamp(25.725rem, 10.4125rem + 24.5vw, 36.75rem);
}
.l-section-cta {
  overflow: hidden;
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
}
.p-cta__scroll-text {
  display: block;
  margin-bottom: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding-block: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  overflow: hidden;
  border-bottom: 2px dashed #fff;
}
.p-cta__scroll-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  animation: p-cta-scroll 25s linear infinite;
}
.p-cta__scroll-item {
  flex-shrink: 0;
}
.p-cta__scroll-item img {
  width: auto;
  height: clamp(3.5875rem, 1.4520833333rem + 3.4166666667vw, 5.125rem);
}
.p-cta__scroll-img {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
}
.p-cta__scroll-img-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: 0;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  animation: p-cta-scroll-img 30s linear infinite;
  will-change: transform;
}
.p-cta__scroll-img-item {
  flex-shrink: 0;
}
.p-cta__scroll-img-item img {
  width: auto;
  height: clamp(11.375rem, 4.6041666667rem + 10.8333333333vw, 16.25rem);
}
.p-cta__body {
  z-index: 1;
  position: relative;
  min-height: clamp(11.375rem, 4.6041666667rem + 10.8333333333vw, 16.25rem);
  margin-bottom: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding-top: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-cta__info {
  display: flex;
  z-index: 1;
  position: absolute;
  flex-direction: column;
  justify-content: center;
  max-width: clamp(36.05rem, 14.5916666667rem + 34.3333333333vw, 51.5rem);
  margin: auto;
  inset: 0;
  padding: 0 clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem)
    clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
}
.p-cta__info .c-btns {
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-cta__info .c-btn-cv {
  z-index: 1;
  position: relative;
  flex: 1;
  max-width: 100%;
}
.p-cta__info .c-btn-cv__link {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  border: 2px solid #393939;
  font-size: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  transition: all 0.3s;
}
.p-cta__info .c-btn-cv__link::after {
  z-index: -1;
  position: absolute;
  bottom: clamp(-0.6125rem, -0.2479166667rem + -0.5833333333vw, -0.875rem);
  left: -2px;
  width: calc(100% + 4px);
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #fff;
  content: "";
  transition: all 0.3s;
}
.p-form {
  width: 100%;
  max-width: 62.5rem;
  margin: 0 auto;
}
.p-form__text {
  margin-bottom: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem);
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  text-align: center;
  text-align: center;
}
.c-form.is-show .wpcf7-not-valid-tip {
  display: block;
  color: #d94141;
  font-weight: 400;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
}
.c-form.is-show .wpcf7-validates-as-required[type="email"],
.c-form.is-show .wpcf7-validates-as-required[type="password"],
.c-form.is-show .wpcf7-validates-as-required[type="tel"],
.c-form.is-show .wpcf7-validates-as-required[type="text"] {
  border: 1px solid #d94141;
}
.c-form.is-show textarea.wpcf7-validates-as-required {
  border: 1px solid #d94141;
}
.c-form.is-show .optional-question .wpcf7-not-valid-tip {
  display: none;
}
.recaptcha-text {
  margin-top: 2rem;
  color: #707070;
  font-weight: 400;
  font-size: 0.6875rem;
  line-height: 1.64;
  text-align: center;
  text-align: center;
}
.recaptcha-text a {
  display: inline;
  text-decoration: underline;
}
.grecaptcha-badge {
  visibility: hidden;
}
.p-form__dl {
  display: flex;
  align-items: center;
  padding: 1.5rem 0;
  border-top: 1px solid #393939;
}
.p-form__dl:first-of-type {
  border-top: none;
}
.p-form__dl:last-of-type {
  border-bottom: 1px solid #393939;
}
.p-form__dl.--flexstart {
  align-items: flex-start;
}
.p-form__dl.--flexstart dt {
  margin-top: 0.375rem;
}
.p-form__dl dt {
  display: flex;
  align-items: center;
  width: clamp(17.5rem, 7.0833333333rem + 16.6666666667vw, 25rem);
  gap: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  font-weight: 700;
  font-size: 1.25rem;
}
.p-form__dl .m-wd300 {
  max-width: clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem);
}
.p-form__dl dt.--column {
  flex-direction: column;
  align-items: unset;
  gap: 0;
  line-height: 1.4;
}
.p-form__dl dt.--column.--contact {
  flex-direction: row;
  flex-wrap: wrap;
}
.p-form__dl dt.--column.--contact span.--optional {
  margin-left: 1.25rem;
  padding: 0.25rem 0.5rem;
}
.p-form__dl dt.--policy {
  display: inline;
}
.p-form__dl dt span.--optional,
.p-form__dl dt span.--required {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.75rem;
  height: 1.875rem;
  border-radius: 0.25rem;
  color: #fff;
  font-weight: 500;
  font-size: 1.125rem;
}
.p-form__dl dt span.--required {
  background: #d94141;
}
.p-form__dl dt span.--optional {
  background: #7c7c7c;
}
.p-form__dl dt span.--mini {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
}
.p-form__dl dt a {
  display: inline-block;
  color: #3c6ada;
  text-decoration: underline;
  transition: 0.3s;
}
.p-form__dl dt a:hover {
  opacity: 0.7;
}
.p-form__dl dd {
  width: calc(100% - clamp(17.5rem, 7.0833333333rem + 16.6666666667vw, 25rem));
}
.p-form__dl dd.--center {
  display: flex;
  align-items: center;
}
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="text"],
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 0.75rem 1.25rem;
  border: 1px solid #393939;
  border-radius: 4px;
  background-image: none;
  background-color: #fff;
  color: inherit;
  font-size: 1.125rem;
  font-family: inherit;
}
select {
  color: #272727;
}
select option {
  color: #272727;
}
select option[value=""] {
  color: #bfbfbf;
}
select:has(option[value=""]:checked) {
  color: #bfbfbf;
}
.c-select {
  position: relative;
}
.c-select::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6' fill='none'%3E%3Cpath d='M4 6L0 0H8L4 6Z' fill='%23343430'/%3E%3C/svg%3E")
    center/.5rem 0.375rem no-repeat;
  content: "";
  pointer-events: none;
}
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
select:focus {
  border: 1px solid #007bc0;
  outline: 0;
  box-shadow: none;
}
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="text"]::-moz-placeholder,
select::-moz-placeholder {
  color: #bfbfbf;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="text"]::-moz-placeholder,
select::-moz-placeholder {
  color: #bfbfbf;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
input[type="email"]::placeholder,
input[type="password"]::placeholder,
input[type="tel"]::placeholder,
input[type="text"]::placeholder,
select::placeholder {
  color: #bfbfbf;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 10.9375rem;
  min-height: 10.9375rem;
  padding: 0.4em 0.8em;
  border: 1px solid #393939;
  border-radius: 4px;
  background-image: none;
  background-color: #fff;
  color: inherit;
  font-size: 1.125rem;
  font-family: inherit;
  resize: vertical;
}
textarea:focus {
  border: 1px solid #007bc0;
  outline: 0;
  box-shadow: none;
}
textarea::-moz-placeholder {
  color: #bfbfbf;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
textarea::placeholder {
  color: #bfbfbf;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
.p-form__submit-btnwrap {
  min-height: 5.75rem;
  margin-top: 2.5rem;
}
.p-form__submit-btn {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  cursor: pointer;
  transition: all 0.3s;
}
.p-form__submit-btn::before {
  z-index: 2;
  position: absolute;
  top: 2.5rem;
  right: 1.25rem;
  width: 1.5rem;
  height: 1.5rem;
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/contain;
  content: "";
  pointer-events: none;
  transition: all 0.3s;
}
.p-form__submit-btn::after {
  display: block;
  z-index: 0;
  position: absolute;
  bottom: -0.75rem;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: 0.375rem;
  background: #fff;
  content: "";
  transition: all 0.3s;
}
input[type="submit"] {
  -moz-appearance: none;
  -webkit-appearance: none;
  display: block;
  appearance: none;
  z-index: 1;
  position: relative;
  width: 23.75rem;
  min-height: 5rem;
  padding: 0.6875rem 0;
  border: 2px solid #393939;
  border-radius: 0.375rem;
  background: #ffa880;
  color: #393939;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 3.375rem;
  text-align: center;
  transition: all 0.3s;
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"] + span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 2.25rem;
  font-weight: 500;
  font-size: 1.25rem;
  cursor: pointer;
}
input[type="checkbox"] + span::before {
  -webkit-transform: translateY(-50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  transform: translateY(-50%);
  border: 1px solid #393939;
  border-radius: 4px;
  background: #fff;
  content: "";
}
input[type="checkbox"] + span::after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
  display: block;
  position: absolute;
  top: 59%;
  left: 5px;
  width: 14px;
  height: 8px;
  margin-top: -0.2em;
  transform: translateY(-50%) rotate(-45deg);
  border-bottom: 2px solid #007bc0;
  border-left: 2px solid #007bc0;
  content: "";
  opacity: 0;
  transition: all 0.3s ease 0s;
}
input[type="checkbox"]:checked + span::after {
  opacity: 1;
}
input[type="radio"] {
  display: none;
}
input[type="radio"] + span {
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 0 0 0 2.375rem;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  cursor: pointer;
}
input[type="radio"] + span::before {
  -webkit-transform: translateY(-50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.625rem;
  height: 1.625rem;
  transform: translateY(-50%);
  border: 1px solid #393939;
  border-radius: 50%;
  background: #fff;
  content: "";
}
input[type="radio"] + span::after {
  -webkit-transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 0.3125rem;
  width: 1rem;
  height: 1rem;
  padding: 0.25rem;
  transform: translateY(-50%);
  border: 1px solid transparent;
  border-radius: 50%;
  background: #007bc0;
  content: "";
  opacity: 0;
  transition: all 0.3s ease 0s;
}
input[type="radio"]:checked + span::after {
  opacity: 1;
}
.wpcf7-radio .wpcf7-list-item:first-of-type {
  margin-left: 0;
}
.wpcf7-radio .wpcf7-list-item:last-of-type {
  margin-left: 1.5rem;
}
.wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.wpcf7-checkbox span {
  display: block;
  margin-left: 0;
}
.wpcf7-acceptance {
  margin-left: 0;
}
.wpcf7-acceptance .wpcf7-list-item {
  margin-left: 0;
}
.p-form__banner {
  width: 100%;
  max-width: 56.25rem;
  margin: 3.75rem auto 0;
  background: #fff;
}
.p-form__banner-link {
  display: block;
  transition: 0.3s;
}
.p-form__banner-link:hover {
  filter: brightness(1.1);
}
.wpcf7 form .wpcf7-response-output {
  border: unset;
  color: #d94141;
  font-size: 1rem;
  text-align: center;
}
.wpcf7-spinner {
  display: none;
  margin-inline: auto;
}
.p-form__div-list .wpcf7-list-item {
  border-radius: 0.375rem;
  background: #fff;
}
.p-form__div-list .wpcf7-list-item label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 17.5rem;
  height: 7.5rem;
  gap: 0.625rem;
  border: 1px solid #393939;
  border-radius: 0.375rem;
  background: #fff;
  cursor: pointer;
  transition: all 0.3s;
}
.p-form__div-list .wpcf7-list-item label:has(input[type="radio"]:checked) {
  background: #fbff8a;
  cursor: default;
}
.p-form__div-list
  .wpcf7-list-item
  label:has(input[type="radio"]:checked)
  input[type="radio"]:checked
  + span::after {
  opacity: 0;
}
.p-form__div-list input[type="radio"] + span {
  padding: 0;
  font-weight: 700;
  font-size: 1.25rem;
}
.p-form__div-list input[type="radio"] + span::before {
  opacity: 0;
}
.p-form__div-list .p-form__div-list__text {
  font-weight: 500;
  font-size: 1rem;
  text-align: center;
}
.p-interview-sub .p-interview__list {
  flex-wrap: wrap;
  margin-top: 0;
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-interview-sub .p-interview__item {
  display: flex;
  width: calc(
    33.3333333333% - clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) * 2 / 3
  );
}
.p-interview-sub .p-interview__link {
  display: flex;
  position: relative;
  flex-direction: column;
  width: 100%;
}
.p-interview-sub .p-interview__head {
  flex: none;
}
.p-interview-sub .p-interview__pic img {
  height: auto;
}
.p-interview-sub .p-interview__link::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  border: 2px solid #393939;
  background: url(../img/icon_arrow-btn-cv-w.svg) no-repeat center
    center/clamp(1.05rem, 0.425rem + 1vw, 1.5rem) #126a9b;
  content: "";
}
.p-interview-sub .p-interview__text {
  display: block;
  flex: 1;
  -webkit-line-clamp: none;
  line-clamp: none;
  min-height: auto;
  margin: 0;
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  padding-bottom: calc(
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem) +
      clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem)
  );
  border: 2px solid #393939;
  border-top: none;
  background: #fff;
  overflow: visible;
}
.p-interview-sub .p-interview__text span {
  -webkit-box-orient: vertical;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-interview__title {
  margin-bottom: clamp(3.0625rem, 1.2395833333rem + 2.9166666667vw, 4.375rem);
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  text-align: center;
}
.p-interview-single {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem)
    clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem);
}
.p-interview-single .l-inner {
  max-width: clamp(56rem, 22.6666666667rem + 53.3333333333vw, 80rem);
}
.p-interview-single__head {
  display: flex;
  align-items: stretch;
  gap: 0;
  border: 2px solid #393939;
}
.p-interview-single__lead {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  background: #fff;
}
.p-interview-single__pic {
  flex-shrink: 0;
  width: clamp(21.875rem, 8.8541666667rem + 20.8333333333vw, 31.25rem);
  overflow: hidden;
  border-left: 2px solid #393939;
  background: url(../img/interview_bg-1.webp) no-repeat center center/cover;
}
.p-interview-single__pic--bg-1 {
  background-image: url(../img/interview_bg-1.webp);
}
.p-interview-single__pic--bg-2 {
  background-image: url(../img/interview_bg-2.webp);
}
.p-interview-single__pic--bg-3 {
  background-image: url(../img/interview_bg-3.webp);
}
.p-interview-single__pic--bg-4 {
  background-image: url(../img/interview_bg-4.webp);
}
.p-interview-single__pic--bg-5 {
  background-image: url(../img/interview_bg-5.webp);
}
.p-interview-single__pic--bg-6 {
  background-image: url(../img/interview_bg-6.webp);
}
.p-interview-single__pic img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-interview-single__post {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  border-bottom: 2px solid #393939;
  background: #fff;
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.7;
  text-align: center;
}
.p-interview-single__name {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border-bottom: 2px solid #393939;
  background: #fbff8a;
  font-weight: 700;
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  line-height: 1.375;
  letter-spacing: 0.04em;
  text-align: center;
}
.p-interview-single__message {
  flex: 1;
  padding: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  font-weight: 700;
  font-size: clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem);
  line-height: 1.4;
}
.p-single__body {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-single__body > * + * {
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-single__body h2 {
  position: relative;
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  padding-left: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  border: 2px solid #393939;
  background: #fff;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.4;
}
.p-single__body h2 strong {
  font-weight: 700;
}
.p-single__body h2::before {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  height: 100%;
  border-right: 2px solid #393939;
  background: #fbff8a;
  content: "";
}
.p-single__body h2.has-text-align-center {
  padding: clamp(0.30625rem, 0.1239583333rem + 0.2916666667vw, 0.4375rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  background: #fbff8a;
  text-align: center;
}
.p-single__body h2.has-text-align-center::before {
  display: none;
}
.p-single__body .career-box h2 {
  border-bottom: none;
}
.p-single__body .career-box .wp-block-table table {
  border: 2px solid #393939;
  border-top: none;
}
.p-single__body .career-box .wp-block-table td {
  padding: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  border: 2px solid;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-single__body .career-box .wp-block-table td:first-child {
  width: clamp(7.4375rem, 3.0104166667rem + 7.0833333333vw, 10.625rem);
  font-weight: 700;
}
.p-single__body li,
.p-single__body p,
.p-single__body td {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.7;
}
.p-single__body li strong,
.p-single__body p strong,
.p-single__body td strong {
  font-weight: 700;
}
.p-single__body .wp-block-image {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-single__body .wp-block-image img {
  -o-object-fit: cover;
  aspect-ratio: 32/17;
  width: 100%;
  height: auto;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-single__body .flow-list {
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  overflow: hidden;
}
.p-single__body .flow-list tbody {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-single__body .flow-list tr {
  display: flex;
  gap: 0;
}
.p-single__body .flow-list td {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)
    clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  border: 2px solid;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-single__body .flow-list td strong {
  display: contents;
}
.p-single__body .flow-list td:first-child {
  position: relative;
  min-width: clamp(4.59375rem, 1.859375rem + 4.375vw, 6.5625rem);
  max-width: clamp(4.59375rem, 1.859375rem + 4.375vw, 6.5625rem);
  border-right: none;
  background-color: #fbff8a;
  font-weight: 700;
}
.p-single__body .flow-list td:first-child::after {
  position: absolute;
  bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
  left: 50%;
  width: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  height: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  transform: translate(-50%, 50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='16' viewBox='0 0 14 16' fill='none'%3E%3Cpath d='M8 0L6 0L6 16L8 16L8 0ZM6 12L4 12L4 14L6 14L6 12ZM4 10L2 10L2 12L4 12L4 10ZM2 8L0 8L0 10L2 10L2 8ZM8 12L10 12L10 14L8 14L8 12Z' fill='%23393939'/%3E%3Cpath d='M4 10L12 10L12 12L4 12L4 10ZM2 8L14 8L14 10L2 10L2 8Z' fill='%23393939'/%3E%3C/svg%3E")
    left bottom/contain no-repeat;
  content: "";
}
.p-single__body .state-list {
  flex-wrap: wrap !important;
  justify-content: center;
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  margin-bottom: 0;
  gap: clamp(1.96875rem, 0.796875rem + 1.875vw, 2.8125rem);
}
.p-single__body .state-list .wp-block-image {
  margin-top: 0;
}
.p-single__body .state-list .wp-block-image img {
  aspect-ratio: 11/7;
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
}
.p-single__body .state-list .wp-block-column {
  display: flex;
  flex-basis: auto;
  flex-direction: column;
  max-width: calc(
    33.3333333333% - clamp(1.96875rem, 0.796875rem + 1.875vw, 2.8125rem) * 2 / 3
  );
  gap: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-discussion-single {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem)
    clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem);
}
.p-discussion-single .l-inner {
  max-width: clamp(56rem, 22.6666666667rem + 53.3333333333vw, 80rem);
}
.p-discussion-single__title {
  position: relative;
  margin-bottom: calc(
    clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem) + 2.5rem
  );
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  border: 2px solid #393939;
  border-radius: clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem);
  background: #ffdbdc;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.4;
}
.p-discussion-single__title::before {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0.375rem;
  left: 0;
  width: 2.3125rem;
  height: 2.9375rem;
  margin-inline: auto;
  transform: translateY(100%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='37' height='47' viewBox='0 0 37 47' fill='none' shape-rendering='geometricPrecision' preserveAspectRatio='xMidYMid meet'%3E%3Cpath d='M1.46875 1L35.5312 1L18.5 44.2695L1.46875 1Z' fill='%23FFDBDC' stroke='%23393939' stroke-width='2' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")
    no-repeat center/100% 100%;
  content: "";
}
.p-discussion-single__title::after {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 2.5rem;
  height: 0.5rem;
  margin-inline: auto;
  background: #ffdbdc;
  content: "";
}
.p-discussion-single__pic {
  display: block;
  position: relative;
  margin-top: calc(
    clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem) + 2.5rem
  );
}
.p-discussion-single__pic::before {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(11.375rem, 4.6041666667rem + 10.8333333333vw, 16.25rem);
  height: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem);
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem) 0;
  background: url(../img/on-air.svg) no-repeat
    center/clamp(9.23125rem, 3.7364583333rem + 8.7916666667vw, 13.1875rem) auto
    #ff0004;
  content: "";
}
.p-discussion-single__pic img {
  -o-object-fit: cover;
  position: relative;
  aspect-ratio: 32/17;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-single__body--discussion {
  margin-top: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-single__body--discussion h2::before {
  background: #ffdbdc;
}
.p-single__body--discussion .p-interview__post {
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.5;
}
.p-single__body--discussion .speech-box .icon-speech {
  display: flex;
  flex-basis: clamp(
    4.375rem,
    1.7708333333rem + 4.1666666667vw,
    6.25rem
  ) !important;
  flex-direction: column;
  gap: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
}
.p-single__body--discussion .speech-box .icon-speech .wp-block-image {
  margin-top: 0;
}
.p-single__body--discussion .speech-box .icon-speech img {
  border-radius: 50%;
  background-color: #ffdbdc;
}
.p-single__body--discussion .speech-box .icon-speech p {
  margin-top: 0;
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  text-align: center;
}
.p-single__body--discussion .speech-box p {
  margin-top: clamp(0.65625rem, 0.265625rem + 0.625vw, 0.9375rem);
}
.p-single__body--discussion .p-interview__list {
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-single__body--discussion .p-interview__item {
  width: calc(33.3333% - clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) * 2 / 3);
}
.p-single__body--discussion .p-interview__text {
  line-clamp: 50;
  -webkit-line-clamp: 50;
}
.p-single__body--discussion .p-interview__bubble {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: clamp(4.6375rem, 1.8770833333rem + 4.4166666667vw, 6.625rem);
  margin-bottom: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  padding: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  background: #fff;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New";
  text-align: center;
}
.p-single__body--discussion .p-interview__bubble::before {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  left: 0;
  width: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  height: clamp(1.4875rem, 0.6020833333rem + 1.4166666667vw, 2.125rem);
  margin-inline: auto;
  transform: translateY(100%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='34' viewBox='0 0 26 34' fill='none' shape-rendering='geometricPrecision' preserveAspectRatio='xMidYMid meet'%3E%3Cpath d='M1 1H25L13 33L1 1Z' fill='none' stroke='%23393939' stroke-width='2' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-color: inherit;
  content: "";
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.p-single__body--discussion .p-interview__bubble::after {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  height: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  margin-inline: auto;
  background: inherit;
  content: "";
}
.p-discussion-single__items {
  display: flex;
  flex-direction: column;
  padding-top: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  gap: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-jobs-single {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem) 0;
}
.p-jobs-single .p-jobs-single__inner {
  max-width: clamp(56rem, 22.6666666667rem + 53.3333333333vw, 80rem);
}
.p-jobs-single__head {
  text-align: center;
}
.p-jobs-single__title {
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.4;
  text-align: center;
}
.p-single__body--jobs {
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}

.wp-block-group.faq-box {
  margin-inline: calc(50% - 50vw);
  background: #feffd6;
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
}

.wp-block-group.faq-box .wp-block-group__inner-container {
  max-width: clamp(56rem, 22.6666666667rem + 53.3333333333vw, 80rem);
  margin-inline: auto;
  padding-inline: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}

.wp-block-group.faq-box h2 {
  background-color: transparent;
  margin-top: 0;
}
.p-single__body--jobs > * + *,
.p-single__body--region > * + * {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-single__body--jobs > p.wp-block-paragraph:first-child {
  text-align: center;
}
.p-jobs-single__eyecatch img {
  -o-object-fit: cover;
  aspect-ratio: 32/17;
  width: 100%;
  height: auto;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-single__body--jobs .job-charm-box h2.wp-block-heading,
.p-single__body--jobs .job-content-box h2.wp-block-heading,
.p-single__body--jobs h2.wp-block-heading.has-text-align-center,
.p-single__body--region .job-charm-box h2.wp-block-heading,
.p-single__body--region .job-content-box h2.wp-block-heading,
.p-single__body--region .job-environment-box h2.wp-block-heading,
.p-single__body--region > h2.wp-block-heading {
  margin: 0;
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  border: none;
  background: #007bc0;
  color: #fff;
  font-weight: 700;
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  line-height: 1.4;
  text-align: center;
}
.p-single__body--jobs .job-charm-box h2.wp-block-heading strong,
.p-single__body--jobs .job-content-box h2.wp-block-heading strong,
.p-single__body--jobs h2.wp-block-heading.has-text-align-center strong,
.p-single__body--region .job-charm-box h2.wp-block-heading strong,
.p-single__body--region .job-content-box h2.wp-block-heading strong,
.p-single__body--region .job-environment-box h2.wp-block-heading strong,
.p-single__body--region > h2.wp-block-heading strong {
  font-weight: 700;
}
.p-single__body--jobs .job-charm-box h2.wp-block-heading::before,
.p-single__body--jobs .job-content-box h2.wp-block-heading::before,
.p-single__body--jobs h2.wp-block-heading.has-text-align-center::before,
.p-single__body--region .job-charm-box h2.wp-block-heading::before,
.p-single__body--region .job-content-box h2.wp-block-heading::before,
.p-single__body--region .job-environment-box h2.wp-block-heading::before,
.p-single__body--region > h2.wp-block-heading::before {
  content: none;
}
.p-single__body--jobs .job-charm-box h2.wp-block-heading br,
.p-single__body--jobs .job-content-box h2.wp-block-heading br,
.p-single__body--jobs h2.wp-block-heading.has-text-align-center br,
.p-single__body--region .job-charm-box h2.wp-block-heading br,
.p-single__body--region .job-content-box h2.wp-block-heading br,
.p-single__body--region .job-environment-box h2.wp-block-heading br,
.p-single__body--region > h2.wp-block-heading br {
  display: none;
}
.p-single__body--jobs h2.wp-block-heading.has-text-align-center,
.p-single__body--region > h2.wp-block-heading {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
  border: 2px solid #393939;
}
.p-single__body .faq-box h2.wp-block-heading {
  padding: 0;
  border: none;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  text-align: center;
}
.p-single__body .faq-box h2.wp-block-heading::before {
  display: none;
}
.p-single__body--jobs .job-charm-box,
.p-single__body--jobs .job-content-box,
.p-single__body--region .job-charm-box,
.p-single__body--region .job-content-box {
  border: 2px solid #393939;
}
.p-single__body--jobs .job-charm-box > .wp-block-group__inner-container,
.p-single__body--jobs .job-content-box > .wp-block-group__inner-container,
.p-single__body--region .job-charm-box > .wp-block-group__inner-container,
.p-single__body--region .job-content-box > .wp-block-group__inner-container {
  padding: 0;
}
.p-single__body--jobs .job-charm-box > .wp-block-group__inner-container > *,
.p-single__body--jobs .job-content-box > .wp-block-group__inner-container > *,
.p-single__body--region .job-charm-box > .wp-block-group__inner-container > *,
.p-single__body--region
  .job-content-box
  > .wp-block-group__inner-container
  > * {
  margin-block: 0;
}
.p-single__body--jobs .job-content-item,
.p-single__body--region .job-content-item {
  position: relative;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  border-top: 2px solid #393939;
}
.p-single__body--jobs .job-content-item > .wp-block-group__inner-container,
.p-single__body--region .job-content-item > .wp-block-group__inner-container {
  padding: 0;
}
.p-single__body--jobs .job-content-item > .wp-block-group__inner-container > *,
.p-single__body--region
  .job-content-item
  > .wp-block-group__inner-container
  > * {
  margin-block: 0;
}
.p-single__body--jobs
  .job-content-item
  > .wp-block-group__inner-container
  > *
  + *,
.p-single__body--region
  .job-content-item
  > .wp-block-group__inner-container
  > *
  + * {
  margin-top: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-single__body--jobs .job-content-title,
.p-single__body--region .job-content-title {
  position: relative;
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.4;
}
.p-single__body--jobs .job-content-title strong,
.p-single__body--region .job-content-title strong {
  font-weight: 700;
}
.p-single__body--jobs .job-content-box .job-content-title,
.p-single__body--region .job-content-box .job-content-title {
  padding-left: clamp(1.88125rem, 0.7614583333rem + 1.7916666667vw, 2.6875rem);
}
.p-single__body--jobs .job-content-box .job-content-title::before,
.p-single__body--region .job-content-box .job-content-title::before {
  position: absolute;
  top: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  left: 0;
  width: clamp(1.18125rem, 0.478125rem + 1.125vw, 1.6875rem);
  height: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  background: url(../img/icon_jobs.svg) no-repeat center center/contain;
  content: "";
}
.p-single__body--jobs .job-charm-box {
  counter-reset: charm;
}
.p-single__body--jobs .job-charm-box .job-content-item {
  counter-increment: charm;
}
.p-single__body--jobs .job-charm-box .job-content-title {
  padding-left: clamp(3.15rem, 1.275rem + 3vw, 4.5rem);
}
.p-single__body--jobs .job-charm-box .job-content-title::before {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem);
  height: clamp(2.0125rem, 0.8145833333rem + 1.9166666667vw, 2.875rem);
  border: 2px solid #393939;
  border-radius: clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem);
  background: #fbff8a;
  content: counter(charm, decimal-leading-zero);
  color: #393939;
  font-weight: 600;
  font-size: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  line-height: 1;
  font-family: var(--font-en);
  letter-spacing: -0.03em;
}
.p-single__body--region .job-charm-box p {
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-single__body--region .job-charm-box p + p {
  padding-top: 0;
}
.p-single__body--jobs .state-list {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-jobs-state-marquee__group,
.p-jobs-state-marquee__track {
  display: contents;
}
.p-jobs-state-marquee__group--clone {
  display: none !important;
}
.p-single__body--jobs .job-flow {
  display: flex;
  align-items: flex-start;
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  gap: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-single__body--jobs .job-flow > .wp-block-column {
  flex: 1 1 auto;
  min-width: 0;
}
.p-single__body--jobs .job-flow > .flow-photo {
  flex: 0 0 auto;
  width: clamp(16.1875rem, 6.5520833333rem + 15.4166666667vw, 23.125rem);
}
.p-single__body--jobs .job-flow .flow-list {
  margin-top: 0;
}
.p-single__body--jobs .flow-list td,
.p-single__body--region .flow-list td {
  line-height: 1.5;
}
.p-single__body--jobs .flow-list td code,
.p-single__body--region .flow-list td code {
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  font-family: "Noto Sans JP";
}
.p-single__body--jobs .flow-list td code + br,
.p-single__body--region .flow-list td code + br {
  display: none;
}
.p-single__body--jobs .flow-list td:first-child,
.p-single__body--region .flow-list td:first-child {
  min-width: clamp(9.625rem, 3.8958333333rem + 9.1666666667vw, 13.75rem);
  max-width: clamp(9.625rem, 3.8958333333rem + 9.1666666667vw, 13.75rem);
}
.p-single__body--jobs .flow-list td:first-child {
  background-color: #c2ff96;
}
.p-single__body--region .flow-list td a {
  display: inline;
  color: #3c6ada;
  text-decoration: underline;
  transition: all 0.3s;
}
.p-single__body--region .flow-list td a:hover {
  opacity: 0.7;
}
.p-single__body--region .flow-list td:not(:first-child) {
  display: block;
  align-content: center;
}
.p-single__body--region .flow-list td code {
  color: #007bc0;
}
.p-single__body--region .flow-list td code + br {
  display: none;
}
.p-single__body--jobs .flow-list td:not(:first-child),
.p-single__body--region .flow-list td:not(:first-child) {
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
}
.p-single__body--jobs .flow-photo {
  display: flex;
  flex-direction: column;
  gap: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-single__body--jobs .flow-photo .wp-block-image {
  margin-top: 0;
}
.p-single__body--jobs .flow-photo .wp-block-image img {
  aspect-ratio: 37/23;
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
}
.p-jobs-flow-marquee__group,
.p-jobs-flow-marquee__track {
  display: contents;
}
.p-jobs-flow-marquee__group--clone {
  display: none !important;
}
.p-single__body--jobs .l-section-rounded {
  margin-top: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  margin-inline: calc(50% - 50vw);
}
.p-single__body--jobs .l-section-rounded h2.p-interview__title {
  position: static;
  margin-top: 0;
  padding: 0;
  border: none;
  background: 0 0;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.5;
}
.p-single__body--jobs .l-section-rounded h2.p-interview__title::before {
  content: none;
}
.p-single__body--jobs .l-section-rounded .p-interview__post {
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.5;
}
.p-single__body--jobs .l-section-rounded .p-interview__text {
  line-height: 1.5;
}
.p-single__body--jobs .l-section-rounded li {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
}
.p-single__body--jobs .p-jobs-discussion {
  margin-top: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding-bottom: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-single__body--jobs .p-jobs-discussion__title {
  position: static;
  margin-top: 0;
  padding: 0;
  border: none;
  background: 0 0;
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.5;
  text-align: center;
}
.p-single__body--jobs .p-jobs-discussion__title::before {
  content: none;
}
.p-jobs-discussion .p-discussion__item {
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-jobs-discussion .p-discussion__item-intro .p-discussion__item-img {
  flex: 0 0 51.2821%;
  min-width: 0;
}
.p-jobs-discussion .p-discussion__item-intro .p-discussion__item-title {
  min-width: 0;
}
.p-single__body--jobs > h2.wp-block-heading {
  margin-top: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding: 0;
  border: none;
  background: 0 0;
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.4;
  text-align: center;
}
.p-single__body--jobs > h2.wp-block-heading::before {
  display: none;
}
.p-single__body--jobs .faq-title {
  display: flex;
  position: relative;
  align-items: center;
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  border: 2px solid #393939;
  background: #fff;
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.4;
}
.p-single__body--jobs .faq-title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  height: 100%;
  border-right: 2px solid #393939;
  background: #ffb0ce;
  content: "";
}
.p-single__body--jobs h2.wp-block-heading + .faq-title {
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-single__body--jobs .faq-title + .wp-block-paragraph {
  margin-top: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-work-sub {
  border-bottom: 1px solid #393939;
}
.p-work-sub__intro {
  padding-bottom: clamp(4.375rem, 1.7708333333rem + 4.1666666667vw, 6.25rem);
  max-width: 1200px;
  margin-inline: auto;
}
.p-work-sub__intro-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 60px;
}
.p-work-sub__intro-copy {
  margin-bottom: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem);
  font-weight: 700;
  font-size: clamp(1.8375rem, 0.74375rem + 1.75vw, 2.625rem);
  line-height: 1.7;
  letter-spacing: 0.04em;
}
.p-work-sub__intro-text {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.9;
}
.p-work-sub__diagram {
  width: 100%;
}
.p-work-sub__flow-item {
  display: flex;
  position: relative;
  margin-bottom: 2.5rem;
  border: 2px solid #393939;
  border-radius: 20px;
}
.p-work-sub__flow-item::after {
  position: absolute;
  bottom: -1.875rem;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 1.25rem solid #007bc0;
  border-right: 2.125rem solid transparent;
  border-left: 2.125rem solid transparent;
  transform: translateX(-50%);
  content: "";
}
.p-work-sub__flow-item--client {
  background: #f4f4f4;
}
.p-work-sub__flow-item--sales,
.p-work-sub__flow-item--coordinator {
  background: #e2f5ff;
}
.p-work-sub__flow-item--staff {
  background: #fbf0e5;
}
.p-work-sub__flow-label {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: calc(320 / 1200 * 100%);
  padding: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem)
    clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  gap: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  border-right: 2px solid #393939;
  border-radius: 18px 0 0 18px;
  color: #fff;
}
.p-work-sub__flow-item--client .p-work-sub__flow-label {
  background: #393939;
}
.p-work-sub__flow-item--sales .p-work-sub__flow-label,
.p-work-sub__flow-item--coordinator .p-work-sub__flow-label {
  background: #007bc0;
}
.p-work-sub__flow-item--staff .p-work-sub__flow-label {
  background: #806b62;
}
.p-work-sub__flow-num {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: clamp(1.925rem, 0.7791666667rem + 1.8333333333vw, 2.75rem);
  height: clamp(1.925rem, 0.7791666667rem + 1.8333333333vw, 2.75rem);
  border: 2px solid #393939;
  border-radius: 10px;
  background: #fff;
  color: #393939;
  font-weight: 600;
  font-size: clamp(1.18125rem, 0.478125rem + 1.125vw, 1.6875rem);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: -0.01em;
}
.p-work-sub__flow-role {
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.45;
  text-align: center;
  white-space: nowrap;
}
.p-work-sub__flow-role-line {
  display: block;
}
.p-work-sub__flow-body {
  flex: 1;
  min-width: 0;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-work-sub__flow-card {
  display: flex;
  align-items: center;
  height: 100%;
  padding: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  gap: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  border: 2px solid #393939;
  border-radius: 20px;
  background: #fff;
}
.p-work-sub__flow-figure {
  flex-shrink: 0;
  width: calc(93 / 776 * 100%);
  height: auto;
}
.p-work-sub__flow-content {
  flex: 1;
  min-width: 0;
}
.p-work-sub__flow-title {
  margin-bottom: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.45;
}
.p-work-sub__flow-item--sales .p-work-sub__flow-title,
.p-work-sub__flow-item--coordinator .p-work-sub__flow-title {
  color: #007bc0;
}
.p-work-sub__flow-item--staff .p-work-sub__flow-title {
  color: #806b62;
}
.p-work-sub__flow-text {
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.45;
}
.p-work-sub__flow-text + .p-work-sub__flow-text {
  margin-top: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-work-sub__flow-em {
  color: #007bc0;
}
.p-work-sub__flow-checks {
  display: grid;
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
}
.p-work-sub__flow-check {
  display: flex;
  align-items: center;
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  line-height: 1.45;
}
.p-work-sub__flow-check::before {
  flex-shrink: 0;
  width: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  height: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  background: url(../img/icon_check-blue.svg) no-repeat center center/contain;
  content: "";
}
.p-work-sub__flow-item--staff .p-work-sub__flow-check::before {
  background-image: url(../img/icon_check-brown.svg);
}
.p-work-sub__cycle {
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  border: 2px solid #007bc0;
  border-radius: 30px;
  background: #e2f5ff;
}
.p-work-sub__cycle-title {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  color: #007bc0;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.45;
  text-align: center;
}
.p-work-sub__cycle-title::before,
.p-work-sub__cycle-title::after {
  flex-shrink: 0;
  width: clamp(2.0125rem, 0.8145833333rem + 1.9166666667vw, 2.875rem);
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  background: url(../img/work-sub_cycle-sparkle.svg) no-repeat center
    center/contain;
  content: "";
}
.p-work-sub__cycle-title::after {
  transform: scaleX(-1);
}
.p-work-sub__cycle-columns {
  display: flex;
  position: relative;
  align-items: flex-start;
  gap: clamp(6.3rem, 2.55rem + 6vw, 9rem);
}
.p-work-sub__cycle-column {
  flex: 1;
  min-width: 0;
  border: 2px solid #393939;
  border-radius: 20px;
}
.p-work-sub__cycle-column--client {
  background: #f4f4f4;
}
.p-work-sub__cycle-column--staff {
  background: #fbf0e5;
}
.p-work-sub__cycle-head {
  padding: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  border-bottom: 2px solid #393939;
  border-radius: 18px 18px 0 0;
  color: #fff;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.45;
  text-align: center;
}
.p-work-sub__cycle-head--client {
  background: #393939;
}
.p-work-sub__cycle-head--staff {
  background: #806b62;
}
.p-work-sub__cycle-list {
  display: grid;
  padding: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
}
.p-work-sub__cycle-item {
  display: flex;
  align-items: center;
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  line-height: 1.45;
}
.p-work-sub__cycle-item::before {
  flex-shrink: 0;
  width: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  height: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  background: url(../img/icon_comment-dark.svg) no-repeat center center/contain;
  content: "";
}
.p-work-sub__cycle-column--staff .p-work-sub__cycle-item::before {
  background-image: url(../img/icon_comment-brown.svg);
}
.p-work-sub__cycle-emblem {
  z-index: 1;
  position: absolute;
  top: clamp(2.45rem, 0.9916666667rem + 2.3333333333vw, 3.5rem);
  left: 50%;
  width: clamp(7.875rem, 3.1875rem + 7.5vw, 11.25rem);
  aspect-ratio: 1;
  transform: translateX(-50%);
  background: url(../img/work-sub_cycle-ring.svg) no-repeat center
    center/contain;
}
.p-work-sub__cycle-emblem img {
  position: absolute;
  top: calc(31 / 180 * 100%);
  left: calc(31 / 180 * 100%);
  width: calc(122 / 180 * 100%);
  height: auto;
}
.p-work-sub__voice {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
  background: #bffffe;
}
.p-work-sub__voice-heading {
  margin-bottom: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-work-sub__voice-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem)
    clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem);
}
.p-work-sub__voice-item {
  min-width: 0;
}
.p-work-sub__voice-card {
  display: flex;
  align-items: center;
  height: 100%;
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: 30px;
  background: #fff;
}
.p-work-sub__voice-pic {
  width: calc(200 / 830 * 100%);
  height: 100%;
  flex-shrink: 0;
  display: block;
  border-right: 2px solid #393939;
}
.p-work-sub__voice-pic img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-work-sub__voice-text {
  width: calc(630 / 830 * 100%);
  padding: 1.5rem;
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: calc(45 / 24);
}
.p-work-sub__jobs {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  /* border: 2px solid #393939;
  border-bottom: none;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
  background: #ffdbdc; */
}
.p-work-sub__jobs-heading {
  margin-bottom: clamp(3.7625rem, 1.5229166667rem + 3.5833333333vw, 5.375rem);
}
.p-work-sub__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-work-sub__item {
  min-width: 0;
}
.p-work-sub__item--featured {
  grid-column: 1/-1;
}
.p-work-sub__item--featured .p-work-sub__item-card {
  grid-template-columns: 80fr 89fr;
}
.p-work-sub__item--featured .p-work-sub__item-title {
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-work-sub__item--featured .p-work-sub__item-catch {
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-work-sub__item--featured .p-work-sub__item-pic {
  border-bottom: none;
}
.p-work-sub__item--featured .p-work-sub__item-pic img {
  height: 100%;
  min-height: clamp(20.65rem, 8.3583333333rem + 19.6666666667vw, 29.5rem);
}
.p-work-sub__item--featured .p-work-sub__item-info {
  display: flex;
  flex-direction: column;
}
.p-work-sub__item--featured .p-work-sub__item-head {
  min-height: 0;
  padding: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem)
    clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem) 0;
  border-bottom: none;
}
.p-work-sub__item--featured .p-work-sub__item-text {
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.87;
}
.p-work-sub__item--featured .p-work-sub__item-more {
  margin-right: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  margin-bottom: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-work-sub__item-link {
  --item-offset: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  display: block;
  position: relative;
  margin-right: var(--item-offset);
  margin-bottom: var(--item-offset);
}
.p-work-sub__item-link::after {
  z-index: 0;
  position: absolute;
  inset: 0;
  transform: translate(var(--item-offset), var(--item-offset));
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
  content: "";
  transition: all 0.3s;
}
.p-work-sub__item-card {
  display: grid;
  z-index: 1;
  position: relative;
  grid-template-columns: 1fr 1.2fr;
  min-height: clamp(18.33125rem, 7.4197916667rem + 17.4583333333vw, 26.1875rem);
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
  transition: all 0.3s;
}
.p-work-sub__item-title {
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.5;
}
.p-work-sub__item-catch {
  margin-top: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  color: #007bc0;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.6;
}
.p-work-sub__item-pic {
  display: block;
  border-right: 2px solid #393939;
  border-bottom: 2px solid #393939;
}
.p-work-sub__item-pic img {
  -o-object-fit: cover;
  aspect-ratio: 800/472;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-work-sub__item-info {
  display: contents;
  min-width: 0;
}
.p-work-sub__item-head {
  min-height: clamp(10.325rem, 4.1791666667rem + 9.8333333333vw, 14.75rem);
  padding: clamp(2.1rem, 0.85rem + 2vw, 3rem)
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  border-bottom: 2px solid #393939;
}
.p-work-sub__item-text {
  grid-column: 1/-1;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem)
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem) 0;
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.78;
}
.p-work-sub__item-text p {
  margin: 0;
}
.p-work-sub__item-more {
  position: relative;
  grid-column: 1/-1;
  align-self: flex-end;
  justify-self: end;
  margin: clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem) 0;
  padding-right: clamp(2.45rem, 0.9916666667rem + 2.3333333333vw, 3.5rem);
  font-weight: 700;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  white-space: nowrap;
}
.p-work-sub__item-more::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  height: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  transform: translateY(-50%);
  border: 2px solid #393939;
  background: url(../img/icon_arrow-btn-cv-w.svg) no-repeat
    center/clamp(1.05rem, 0.425rem + 1vw, 1.5rem) #126a9b;
  content: "";
}
.p-jobs-single--region {
  padding-bottom: clamp(6.125rem, 2.4791666667rem + 5.8333333333vw, 8.75rem);
}
.p-region__anchors {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  gap: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-region__anchor {
  width: clamp(11.8125rem, 4.78125rem + 11.25vw, 16.875rem);
}
.p-region__anchor-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  border: 2px solid #393939;
  background: #c2ff96;
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  line-height: 1.4;
  transition: all 0.3s;
}
.p-region__anchor-link::after {
  flex-shrink: 0;
  width: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  height: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='16' viewBox='0 0 14 16' fill='none'%3E%3Cpath d='M8 0L6 0L6 16L8 16L8 0ZM6 12L4 12L4 14L6 14L6 12ZM4 10L2 10L2 12L4 12L4 10ZM2 8L0 8L0 10L2 10L2 8ZM8 12L10 12L10 14L8 14L8 12Z' fill='%23393939'/%3E%3Cpath d='M4 10L12 10L12 12L4 12L4 10ZM2 8L14 8L14 10L2 10L2 8Z' fill='%23393939'/%3E%3C/svg%3E")
    no-repeat center center/contain;
  content: "";
}
.p-region-recruit,
.p-single__body--region h2.wp-block-heading {
  scroll-margin-top: clamp(
    7.4375rem,
    3.0104166667rem + 7.0833333333vw,
    10.625rem
  );
}
.p-region-recruit .l-inner {
  max-width: clamp(56rem, 22.6666666667rem + 53.3333333333vw, 80rem);
}
.p-region__eyecatch {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem);
}
.p-region__eyecatch img {
  -o-object-fit: cover;
  aspect-ratio: 32/17;
  width: 100%;
  height: auto;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-single__body--region .job-charm-box .wp-block-list {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  gap: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  background: url(../img/jobs_portrait.webp) no-repeat right
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem) bottom/contain;
  background-size: clamp(
    14.0875rem,
    5.7020833333rem + 13.4166666667vw,
    20.125rem
  );
}
.p-single__body--region .job-charm-box .wp-block-list li {
  position: relative;
  padding-left: clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem);
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.5;
}
.p-single__body--region .job-charm-box .wp-block-list li::before {
  position: absolute;
  top: clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem);
  left: 0;
  width: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  height: clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem);
  background: url(../img/icon_check.svg) no-repeat center center/contain;
  content: "";
}
.p-single__body--region .state-list .wp-block-column {
  overflow: hidden;
  gap: 0;
  border: 2px solid #393939;
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  background: #fff;
}
.p-single__body--region .state-list .wp-block-image img {
  aspect-ratio: 8/5;
  border: none;
  border-bottom: 2px solid #393939;
  border-radius: 0;
}
.p-single__body--region .state-list .wp-block-paragraph {
  padding: clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(1.1375rem, 0.4604166667rem + 1.0833333333vw, 1.625rem)
    clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.7777777778;
}
.p-single__body--region .state-list .wp-block-paragraph strong {
  display: block;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.4;
  text-align: center;
}
.p-single__body--region .state-list .wp-block-paragraph + .wp-block-paragraph {
  margin-top: clamp(-0.35rem, -0.1416666667rem + -0.3333333333vw, -0.5rem);
  padding-top: 0;
}
.p-single__body--region .wp-block-buttons {
  justify-content: center;
  min-height: clamp(3.675rem, 1.4875rem + 3.5vw, 5.25rem);
  margin-block: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-single__body--region .wp-block-button {
  z-index: 1;
  position: relative;
}
.p-single__body--region .wp-block-button__link {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  width: clamp(16.625rem, 6.7291666667rem + 15.8333333333vw, 23.75rem);
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding: clamp(0.48125rem, 0.1947916667rem + 0.4583333333vw, 0.6875rem) 0;
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #fff;
  color: #393939;
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  line-height: 1.5;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s;
}
.p-single__body--region .wp-block-button__link strong {
  font-weight: 700;
}
.p-single__body--region .wp-block-button__link::before {
  position: absolute;
  top: 50%;
  right: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  width: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  height: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  transform: translateY(-50%);
  background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/contain;
  content: "";
  transition: all 0.3s;
}
.p-single__body--region .wp-block-button__link::after {
  display: block;
  z-index: -1;
  position: absolute;
  bottom: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
  left: -2px;
  width: calc(100% + 4px);
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #007bc0;
  content: "";
  transition: all 0.3s;
}
.p-region-recruit__title {
  margin-bottom: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  text-align: center;
}
.p-region-recruit__table {
  width: 100%;
  border: 2px solid #393939;
  border-collapse: collapse;
  background: #fff;
}
.p-region-recruit__table tr:not(:first-child) td,
.p-region-recruit__table tr:not(:first-child) th {
  border-top: 2px solid #393939;
}
.p-region-recruit__table th {
  width: clamp(5.95rem, 2.4083333333rem + 5.6666666667vw, 8.5rem);
  padding: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  border-right: 2px solid #393939;
  background: #00ece8;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
}
.p-region-recruit__table td {
  padding: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.5;
  vertical-align: top;
}
.p-vision__intro {
  padding-top: clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem);
}
.p-vision__intro-inner {
  -moz-column-gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  display: grid;
  grid-template-columns: 1fr clamp(
      31.9375rem,
      12.9270833333rem + 30.4166666667vw,
      45.625rem
    );
  grid-template-areas: "catch photo" "text  photo";
  column-gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  align-content: start;
}
.p-vision__catch {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: catch;
  align-self: start;
  max-width: clamp(39.24375rem, 15.884375rem + 37.375vw, 56.0625rem);
}
.p-vision__catch img {
  width: 100%;
  height: auto;
}
.p-vision__intro-body {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: text;
  margin-top: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-vision__lead {
  color: #007bc0;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.4;
}
.p-vision__text {
  margin-block: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  color: #393939;
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.85;
}
.p-vision__intro-photo {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  position: relative;
  grid-area: photo;
  align-self: start;
}
.p-vision__frame {
  position: absolute;
  top: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  left: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #ffb0ce;
}
.p-vision__pic {
  z-index: 1;
  position: relative;
  aspect-ratio: 730/493;
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
}
.p-vision__pic img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-vision-message {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  background: #e2f5ff;
}
.p-vision-message__head {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  gap: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-vision-concept__badge,
.p-vision-message__badge {
  display: inline-block;
  padding: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem)
    clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  border: 2px solid #393939;
  color: #393939;
  font-weight: 600;
  font-size: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  line-height: 1;
  font-family: var(--font-en);
}
.p-vision-message__badge {
  background: #c2ff96;
}
.p-vision-concept__title,
.p-vision-message__title {
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1;
}
.p-vision-message__body {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-vision-message__text {
  flex: 1;
}
.p-vision-message__paragraph {
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.85;
}
.p-vision-message__sign {
  display: flex;
  align-items: baseline;
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  gap: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-vision-message__sign-post {
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-vision-message__sign-name {
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-vision-message__photo {
  position: relative;
  flex-shrink: 0;
  width: min(
    40vw,
    clamp(31.9375rem, 12.9270833333rem + 30.4166666667vw, 45.625rem)
  );
}
.p-vision-message__frame {
  position: absolute;
  top: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  left: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  width: 100%;
  height: 100%;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: linear-gradient(112deg, #00a3ff 0, #007bc0 71.03%);
}
.p-vision-message__pic {
  z-index: 1;
  position: relative;
  aspect-ratio: 730/600;
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
}
.p-vision-message__pic img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-vision-message__bubble {
  z-index: 2;
  position: absolute;
  top: clamp(1.6625rem, 0.6729166667rem + 1.5833333333vw, 2.375rem);
  left: clamp(-175px, 80.365px - 15.0215vw, -35px);
  width: clamp(15.75rem, 6.375rem + 15vw, 22.5rem);
}
.p-vision-concept .l-inner {
  position: relative;
  min-height: min(
    55vw,
    clamp(42.4375rem, 17.1770833333rem + 40.4166666667vw, 60.625rem)
  );
}
.p-vision-concept .l-inner::after {
  position: absolute;
  bottom: 0;
  left: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  width: min(42vw, clamp(30.31875rem, 12.271875rem + 28.875vw, 43.3125rem));
  height: min(
    33vw,
    clamp(22.09375rem, 8.9427083333rem + 21.0416666667vw, 31.5625rem)
  );
  background: url(../img/vision_concept-people-img.webp) no-repeat center
    bottom/contain;
  content: "";
}
.p-vision-concept__head {
  display: flex;
  align-items: center;
  margin-bottom: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  gap: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-vision-concept__badge {
  background: #ffb0ce;
}
.p-vision-concept__catch {
  display: block;
  width: min(
    44vw,
    clamp(33.5125rem, 13.5645833333rem + 31.9166666667vw, 47.875rem)
  );
}
.p-vision-concept__lead {
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  color: #000;
  font-weight: 500;
  font-size: min(1.4vw, clamp(1.05rem, 0.425rem + 1vw, 1.5rem));
}
.p-vision-concept__diagram {
  position: absolute;
  top: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  right: 0;
  width: min(56.8vw, clamp(45.15rem, 18.275rem + 43vw, 64.5rem));
  padding-inline: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
}
.p-environment__intro {
  padding-bottom: clamp(4.025rem, 1.6291666667rem + 3.8333333333vw, 5.75rem);
}
.p-environment__intro-inner {
  display: grid;
  grid-template-columns: 90fr 73fr;
  align-items: center;
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-environment__intro-title {
  color: #393939;
  font-weight: 700;
  font-size: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.p-environment__intro-text {
  margin-top: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.875;
}
.p-environment__intro-image {
  position: relative;
}
.p-environment__intro-image img {
  -o-object-fit: cover;
  display: block;
  z-index: 1;
  position: relative;
  aspect-ratio: 730/493;
  object-fit: cover;
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
}
.p-environment__intro-frame {
  position: absolute;
  inset: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem)
    clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  border: 2px solid #393939;
  border-radius: clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #c2ff96;
}
.p-environment__nav .c-btns {
  display: grid;
  grid-template-columns: repeat(
    2,
    minmax(0, clamp(16.625rem, 6.7291666667rem + 15.8333333333vw, 23.75rem))
  );
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  gap: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-environment__nav .c-btn__link {
  width: 100%;
  min-height: clamp(3.0625rem, 1.2395833333rem + 2.9166666667vw, 4.375rem);
}
.p-environment__nav .c-btn__link::before {
  transform: rotate(90deg) translate(-50%, -25%);
}
.p-environment__nav .c-btn__link:hover::before {
  right: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  transform: rotate(90deg) translate(-50%, -25%);
}
.p-environment__nav-link {
  display: grid;
  z-index: 1;
  position: relative;
  place-items: center;
  height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #fff;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-environment__nav-link::before {
  z-index: -1;
  position: absolute;
  inset: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) 0
    clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
  border: 2px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #fff;
  content: "";
}
.p-environment__nav-link::after {
  position: absolute;
  right: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  width: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  height: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  transform: rotate(45deg) translateY(-25%);
  border-right: 2px solid #393939;
  border-bottom: 2px solid #393939;
  content: "";
}
.p-environment__section {
  padding-block: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  scroll-margin-top: clamp(
    7.4375rem,
    3.0104166667rem + 7.0833333333vw,
    10.625rem
  );
}
.p-environment__section--growth {
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
  background: #feffd6;
}
.p-environment__section--work-style {
  border: 2px solid #393939;
  border-radius: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem)
    clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem) 0 0;
  background: #bffffe;
}
.p-environment__lead {
  margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  font-weight: 500;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.875;
  text-align: center;
}
.p-about-sub__grid-list--orange {
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-about-sub__grid-list--orange .p-about-sub__metric-value--orange {
  color: #ec8486;
}
.p-environment__feature-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: clamp(2.3625rem, 0.95625rem + 2.25vw, 3.375rem);
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-environment__feature {
  display: grid;
  grid-template-columns: 37fr 46fr;
  overflow: hidden;
  border: 2px solid #393939;
  border-radius: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  background: #fff;
}
.p-environment__feature img {
  -o-object-fit: cover;
  grid-row: 1/3;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-right: 2px solid #393939;
}
.p-environment__feature-title {
  display: flex;
  align-items: center;
  padding: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem) 0;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.5;
}
.p-environment__feature p {
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem)
    clamp(1.05rem, 0.425rem + 1vw, 1.5rem)
    clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.78;
}
.p-environment__case-heading {
  width: -moz-fit-content;
  width: fit-content;
  margin: clamp(3.28125rem, 1.328125rem + 3.125vw, 4.6875rem) auto
    clamp(2.40625rem, 0.9739583333rem + 2.2916666667vw, 3.4375rem);
  padding-bottom: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  border-bottom: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem) solid #ffb0ce;
  font-weight: 700;
  font-size: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-environment__case-tabs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  max-width: clamp(52.5rem, 21.25rem + 50vw, 75rem);
  margin-inline: auto;
  border: 2px solid #393939;
  overflow: hidden;
}
.p-environment__case-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
  padding-inline: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  gap: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  background: #fff;
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  cursor: pointer;
  transition:
    background 0.3s,
    color 0.3s;
}
.p-environment__case-tab + .p-environment__case-tab {
  border-left: 2px solid #393939;
}
.p-environment__case-tab.is-active {
  background: #007bc0;
  color: #fff;
}
.p-environment__case-tab.is-active::before {
  flex: none;
  width: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
  height: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  background: url(../img/icon_hand-tab.svg) no-repeat center center/contain;
  content: "";
}
.p-environment__case-panel {
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-environment__case-panel[hidden] {
  display: none;
}
.p-environment__step-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: start;
  margin-top: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
  gap: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-environment__step {
  display: flex;
  flex-direction: column;
  border: 2px solid #393939;
  border-radius: 1.875rem clamp(3.9375rem, 1.59375rem + 3.75vw, 5.625rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem)
    clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  background: #fff;
  overflow: hidden;
}
.p-environment__step-image img {
  -o-object-fit: cover;
  display: block;
  aspect-ratio: 540/318;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-environment__step-body {
  display: flex;
  flex-direction: column;
  padding: clamp(1.225rem, 0.4958333333rem + 1.1666666667vw, 1.75rem);
}
.p-environment__step-period {
  display: grid;
  place-items: center;
  min-height: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #007bc0;
  color: #fff;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-environment__step-title {
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  line-height: 1.45;
}
.p-environment__step-text {
  display: flex;
  flex-direction: column;
  margin-top: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  gap: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  font-weight: 500;
  font-size: clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem);
  line-height: 1.78;
}
.p-environment__step-tasks {
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
  padding: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  border: 1px solid #393939;
  border-radius: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  background: #e2f5ff;
}
.p-environment__step-tasks-title {
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
}
.p-environment__step-tasks ul {
  margin-top: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  font-weight: 500;
  font-size: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  line-height: 2;
}
.p-environment__step-tasks li {
  display: flex;
}
.p-environment__step-tasks li::before {
  content: "・";
}
.p-environment__work-style {
  padding-bottom: clamp(3.5rem, 1.4166666667rem + 3.3333333333vw, 5rem);
}
.p-environment__metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: clamp(2.3625rem, 0.95625rem + 2.25vw, 3.375rem);
  gap: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
}
.p-environment__metrics li {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  align-content: center;
  align-items: baseline;
  justify-content: center;
  min-height: clamp(9.1875rem, 3.71875rem + 8.75vw, 13.125rem);
  padding: clamp(0.9625rem, 0.3895833333rem + 0.9166666667vw, 1.375rem);
  border: 2px solid #393939;
  background: #fff;
  text-align: center;
}
.p-environment__metrics span {
  flex-basis: 100%;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
  line-height: 1.35;
}
.p-environment__metrics strong {
  color: #ec8486;
  font-size: clamp(2.84375rem, 1.1510416667rem + 2.7083333333vw, 4.0625rem);
  line-height: 1.2;
  font-family: var(--font-en);
  letter-spacing: -0.01em;
}
.p-environment__metrics em {
  font-style: normal;
  font-weight: 700;
  font-size: clamp(1.05rem, 0.425rem + 1vw, 1.5rem);
}
.p-environment__metric-image {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  width: auto;
  transform: translate(55%, 20%);
}
.p-environment__metric-image--01 {
  max-width: clamp(5.90625rem, 2.390625rem + 5.625vw, 8.4375rem);
  max-height: clamp(8.05rem, 3.2583333333rem + 7.6666666667vw, 11.5rem);
}
.p-environment__metric-image--02 {
  max-width: clamp(3.4125rem, 1.38125rem + 3.25vw, 4.875rem);
  max-height: clamp(8.05rem, 3.2583333333rem + 7.6666666667vw, 11.5rem);
}
.p-environment__metric-image--03 {
  max-width: clamp(4.15625rem, 1.6822916667rem + 3.9583333333vw, 5.9375rem);
  max-height: clamp(7.7rem, 3.1166666667rem + 7.3333333333vw, 11rem);
}
.p-environment__benefits {
  padding-bottom: 0;
}
.p-environment__benefit-list {
  display: flex;
  flex-direction: column;
  margin-top: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
  gap: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-environment__benefit-group {
  display: grid;
  grid-template-columns: clamp(13.65rem, 5.525rem + 13vw, 19.5rem) 1fr;
  gap: clamp(1.75rem, 0.7083333333rem + 1.6666666667vw, 2.5rem);
}
.p-environment__benefit-title {
  display: grid;
  place-items: center;
  min-height: clamp(5.5125rem, 2.23125rem + 5.25vw, 7.875rem);
  border: 2px solid #393939;
  border-radius: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
  color: #393939;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem);
}
.p-environment__benefit-group:has(li:nth-child(7))
  .p-environment__benefit-title {
  align-self: start;
}
.p-environment__benefit-group:nth-child(1) .p-environment__benefit-title {
  background: #00ece8;
}
.p-environment__benefit-group:nth-child(2) .p-environment__benefit-title {
  background: #fbff8a;
}
.p-environment__benefit-group:nth-child(3) .p-environment__benefit-title {
  background: #c2ff96;
}
.p-environment__benefit-group:nth-child(4) .p-environment__benefit-title {
  background: #ffb0ce;
}
.p-environment__benefit-group ul {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: clamp(0.4375rem, 0.1770833333rem + 0.4166666667vw, 0.625rem);
}
.p-environment__benefit-group li {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: clamp(5.5125rem, 2.23125rem + 5.25vw, 7.875rem);
  padding: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  border: 2px solid #393939;
  border-radius: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
  background: #f4f4f4;
  text-align: center;
}
.p-environment__benefit-group img {
  width: auto;
  max-width: 100%;
  height: clamp(2.1875rem, 0.8854166667rem + 2.0833333333vw, 3.125rem);
}
.p-environment__benefit-group p {
  display: flex;
  align-items: baseline;
  margin-top: clamp(0.65625rem, 0.265625rem + 0.625vw, 0.9375rem);
  gap: clamp(0.2625rem, 0.10625rem + 0.25vw, 0.375rem);
  font-weight: 700;
  font-size: clamp(0.875rem, 0.3541666667rem + 0.8333333333vw, 1.25rem);
  line-height: 1.45;
}
.p-environment__benefit-group small {
  font-size: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
}
.u-bg-main {
  background-color: var(--primary-color);
}
.u-bg-sub {
  background-color: var(--secondary-color);
}
.u-bg-third {
  background-color: var(--third-color);
}
.u-inline-block {
  display: inline-block !important;
}
.u-block {
  display: block !important;
}
.u-inline {
  display: inline !important;
}
.u-pc {
  display: block !important;
}
.u-sp {
  display: none !important;
}
.u-flex {
  display: flex !important;
  flex-wrap: wrap;
}
.u-jc-start {
  justify-content: flex-start !important;
}
.u-jc-center {
  justify-content: center !important;
}
.u-jc-end {
  justify-content: flex-end !important;
}
.u-jc-between {
  justify-content: space-between !important;
}
.u-jc-around {
  justify-content: space-around !important;
}
.u-jc-evenly {
  justify-content: space-evenly !important;
}
.u-ac-start {
  align-content: flex-start !important;
}
.u-ac-center {
  align-content: center !important;
}
.u-ac-end {
  align-content: flex-end !important;
}
.u-ac-between {
  align-content: space-between !important;
}
.u-ac-around {
  align-content: space-around !important;
}
.u-ac-evenly {
  align-content: space-evenly !important;
}
.u-gap-s {
  gap: 0.5rem;
}
.u-gap-m {
  gap: 1rem;
}
.u-gap-l {
  gap: 1.5rem;
}
.u-fw-bl {
  font-weight: 900 !important;
}
.u-fw-b {
  font-weight: 700 !important;
}
.u-fw-sb {
  font-weight: 600 !important;
}
.u-fw-m {
  font-weight: 500 !important;
}
.u-fw-r {
  font-weight: 400 !important;
}
.u-fw-l {
  font-weight: 300 !important;
}
.u-mt-1 {
  margin-top: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-mt-2 {
  margin-top: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-mt-3 {
  margin-top: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem) !important;
}
.u-mt-4 {
  margin-top: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-mt-5 {
  margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-mt-6 {
  margin-top: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-mt-7 {
  margin-top: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem) !important;
}
.u-mt-8 {
  margin-top: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-mt-9 {
  margin-top: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-mt-10 {
  margin-top: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-mt-11 {
  margin-top: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-mt-12 {
  margin-top: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-mb-1 {
  margin-bottom: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-mb-2 {
  margin-bottom: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-mb-3 {
  margin-bottom: clamp(
    0.7rem,
    0.2833333333rem + 0.6666666667vw,
    1rem
  ) !important;
}
.u-mb-4 {
  margin-bottom: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-mb-5 {
  margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-mb-6 {
  margin-bottom: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-mb-7 {
  margin-bottom: clamp(
    1.4rem,
    0.5666666667rem + 1.3333333333vw,
    2rem
  ) !important;
}
.u-mb-8 {
  margin-bottom: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-mb-9 {
  margin-bottom: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-mb-10 {
  margin-bottom: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-mb-11 {
  margin-bottom: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-mb-12 {
  margin-bottom: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-mr-1 {
  margin-right: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-mr-2 {
  margin-right: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-mr-3 {
  margin-right: clamp(
    0.7rem,
    0.2833333333rem + 0.6666666667vw,
    1rem
  ) !important;
}
.u-mr-4 {
  margin-right: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-mr-5 {
  margin-right: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-mr-6 {
  margin-right: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-mr-7 {
  margin-right: clamp(
    1.4rem,
    0.5666666667rem + 1.3333333333vw,
    2rem
  ) !important;
}
.u-mr-8 {
  margin-right: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-mr-9 {
  margin-right: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-mr-10 {
  margin-right: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-mr-11 {
  margin-right: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-mr-12 {
  margin-right: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-ml-1 {
  margin-left: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-ml-2 {
  margin-left: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-ml-3 {
  margin-left: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem) !important;
}
.u-ml-4 {
  margin-left: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-ml-5 {
  margin-left: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-ml-6 {
  margin-left: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-ml-7 {
  margin-left: clamp(1.4rem, 0.5666666667rem + 1.3333333333vw, 2rem) !important;
}
.u-ml-8 {
  margin-left: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-ml-9 {
  margin-left: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-ml-10 {
  margin-left: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-ml-11 {
  margin-left: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-ml-12 {
  margin-left: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-my-1 {
  margin-block: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-my-2 {
  margin-block: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-my-3 {
  margin-block: clamp(
    0.7rem,
    0.2833333333rem + 0.6666666667vw,
    1rem
  ) !important;
}
.u-my-4 {
  margin-block: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-my-5 {
  margin-block: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-my-6 {
  margin-block: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-my-7 {
  margin-block: clamp(
    1.4rem,
    0.5666666667rem + 1.3333333333vw,
    2rem
  ) !important;
}
.u-my-8 {
  margin-block: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-my-9 {
  margin-block: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-my-10 {
  margin-block: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-my-11 {
  margin-block: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-my-12 {
  margin-block: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-mx-1 {
  margin-inline: clamp(
    0.35rem,
    0.1416666667rem + 0.3333333333vw,
    0.5rem
  ) !important;
}
.u-mx-2 {
  margin-inline: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem) !important;
}
.u-mx-3 {
  margin-inline: clamp(
    0.7rem,
    0.2833333333rem + 0.6666666667vw,
    1rem
  ) !important;
}
.u-mx-4 {
  margin-inline: clamp(
    0.875rem,
    0.3541666667rem + 0.8333333333vw,
    1.25rem
  ) !important;
}
.u-mx-5 {
  margin-inline: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
}
.u-mx-6 {
  margin-inline: clamp(
    1.225rem,
    0.4958333333rem + 1.1666666667vw,
    1.75rem
  ) !important;
}
.u-mx-7 {
  margin-inline: clamp(
    1.4rem,
    0.5666666667rem + 1.3333333333vw,
    2rem
  ) !important;
}
.u-mx-8 {
  margin-inline: clamp(1.575rem, 0.6375rem + 1.5vw, 2.25rem) !important;
}
.u-mx-9 {
  margin-inline: clamp(
    1.75rem,
    0.7083333333rem + 1.6666666667vw,
    2.5rem
  ) !important;
}
.u-mx-10 {
  margin-inline: clamp(
    1.925rem,
    0.7791666667rem + 1.8333333333vw,
    2.75rem
  ) !important;
}
.u-mx-11 {
  margin-inline: clamp(2.1rem, 0.85rem + 2vw, 3rem) !important;
}
.u-mx-12 {
  margin-inline: clamp(
    2.275rem,
    0.9208333333rem + 2.1666666667vw,
    3.25rem
  ) !important;
}
.u-text-base {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.7777777778;
  font-family: var(--font-jp);
  letter-spacing: 0.04em;
}
.u-text-emphasis {
  color: red;
}
.u-ta-c {
  text-align: center !important;
}
.u-ta-r {
  text-align: right !important;
}
.u-ta-l {
  text-align: left !important;
}
.u-ta-j {
  text-align: justify !important;
}
@media (forced-colors: active) {
  :where(mark) {
    background-color: Highlight;
    color: HighlightText;
  }
}
@media (any-hover: hover) {
  .c-external-link:hover {
    opacity: 0.7;
  }
  .p-footer__logo:hover {
    opacity: 0.7;
  }
  .p-footer__menu-item-title .p-footer__menu-link:hover {
    color: var(--link-color);
  }
  .p-footer__menu-item-title .p-footer__menu-link:hover svg {
    transform: translateX(
      clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem)
    );
  }
  .p-footer__menu-link:hover {
    color: var(--link-color);
  }
  .p-footer__menu-link:hover svg {
    transform: translateX(
      clamp(0.175rem, 0.0708333333rem + 0.1666666667vw, 0.25rem)
    );
  }
  .c-author__name a:hover {
    opacity: 0.7;
  }
  a.c-author-parts__name:hover {
    opacity: 0.7;
  }
  .c-breadcrumb__link:hover {
    background-size: 100% 1px;
  }
  .c-btn__link:hover {
    margin-top: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
    margin-bottom: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
    color: #747474;
  }
  .c-btn__link:hover::before {
    right: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
  }
  .c-btn__link:hover::after {
    bottom: 0;
  }
  .c-btn-cv .c-btn-cv__link:hover {
    color: #747474;
  }
  .c-btn-cv .c-btn-cv__link:hover::before {
    right: clamp(0.35rem, 0.1416666667rem + 0.3333333333vw, 0.5rem);
  }
  .c-btn-cv.c-btn-cv--recruitment .c-btn-cv__link:hover {
    background: #53ffdf;
  }
  .c-btn-cv.c-btn-cv--recruitment .c-btn-cv__link:hover::before {
    right: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  }
  .c-btn-cv.c-btn-cv--entry .c-btn-cv__link:hover {
    background: #ffb796;
  }
  .c-btn-cv__submenu-link:hover {
    color: var(--link-color);
  }
  .c-btn-cv__submenu-link:hover::after {
    margin-left: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  }
  .c-logo__link:hover {
    opacity: 0.7;
  }
  .c-navigation__item.c-navigation__item--contact a:hover {
    background-color: var(--primary-hover-color);
  }
  .c-navigation__item.c-navigation__item--has-child:hover
    .c-navigation__submenu {
    display: flex !important;
  }
  .c-navigation__item.c-navigation__item--has-child:hover::after {
    background: url(../img/icon_minus-nav.svg) no-repeat center center/contain;
  }
  .c-navigation__item:hover .c-navigation__under {
    background-size: 100% 1px;
  }
  .c-navigation__link:hover {
    color: var(--link-color);
  }
  .c-navigation__group-link:hover {
    color: var(--link-color);
  }
  .c-navigation__menu-link:hover {
    color: var(--link-color);
  }
  .c-pagetop:hover img {
    opacity: 0.7;
  }
  .p-interview__link:hover {
    opacity: 0.7;
  }
  .p-discussion__item-link:hover {
    margin-top: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
    margin-right: 0;
    margin-bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
    margin-left: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  }
  .p-discussion__item-link:hover::after {
    right: 0;
    bottom: 0;
  }
  .p-jobs-discussion .p-discussion__item {
    transition: transform 0.3s;
  }
  .p-jobs-discussion .p-discussion__item:has(.p-discussion__item-link:hover) {
    transform: translate(
      clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem),
      clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem)
    );
  }
  .p-jobs-discussion .p-discussion__item-link:hover {
    margin: 0 clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem) 0 0;
  }
  .p-occupation__item-link:hover {
    margin-top: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
    margin-right: 0;
    margin-bottom: clamp(-1.3125rem, -0.53125rem + -1.25vw, -1.875rem);
    margin-left: clamp(1.3125rem, 0.53125rem + 1.25vw, 1.875rem);
  }
  .p-occupation__item-link:hover::after {
    right: 0;
    bottom: 0;
  }
  .p-cta__info .c-btn-cv:hover .c-btn-cv__link {
    margin-top: clamp(0.6125rem, 0.2479166667rem + 0.5833333333vw, 0.875rem);
    margin-bottom: clamp(
      -0.6125rem,
      -0.2479166667rem + -0.5833333333vw,
      -0.875rem
    );
  }
  .p-cta__info .c-btn-cv:hover .c-btn-cv__link::after {
    bottom: 0;
  }
  .p-form__submit-btn:hover {
    transform: translateY(0.75rem);
  }
  .p-form__submit-btn:hover::before {
    right: 0.75rem;
  }
  .p-form__submit-btn:hover::after {
    bottom: 0;
  }
  .p-form__div-list .wpcf7-list-item label:hover {
    opacity: 0.7;
  }
  .p-form__div-list
    .wpcf7-list-item
    label:hover:has(input[type="radio"]:checked) {
    opacity: 1;
  }
  .p-region__anchor-link:hover {
    opacity: 0.7;
  }
  .p-single__body--region .wp-block-button__link:hover {
    margin-top: clamp(0.525rem, 0.2125rem + 0.5vw, 0.75rem);
    margin-bottom: clamp(-0.525rem, -0.2125rem + -0.5vw, -0.75rem);
    color: #747474;
  }
  .p-single__body--region .wp-block-button__link:hover::after {
    bottom: 0;
  }
}
@media (hover: hover) {
  .page-numbers:active,
  .page-numbers:hover {
    opacity: 0.7;
  }
  .p-card__link:active,
  .p-card__link:hover {
    opacity: 0.7;
  }
  .p-card__link:active .p-card__thumb img,
  .p-card__link:hover .p-card__thumb img {
    transform: scale(1.1);
  }
  .p-card-news__link:active,
  .p-card-news__link:hover {
    opacity: 0.7;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .c-faq__item::details-content {
    transition-behavior: allow-discrete;
    overflow: clip;
    transition-duration: 0.3s;
    transition-property: content-visibility, block-size;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-fv__video .bubble.is-bouncing {
    animation: none;
  }
  .p-discussion__body.is-bubble-visible .c-bubble {
    transform: translateY(0) scale(1);
    animation: none;
    opacity: 1;
  }
  .p-environment__body.is-bubble-visible .p-environment__bubble {
    transform: var(--environment-bubble-transform) translateY(0) scale(1);
    animation: none;
    opacity: 1;
  }
}
@media screen and (max-width: 767px) and (min-width: 550px) {
  .p-discussion__body .c-bubble {
    width: 16.1777777778vw;
    height: 9.3333333334vw;
    padding: 1.792vw 0.84vw 1.12vw;
    transform: translateY(2.4888888889vw) scale(0.62);
    font-size: 1.5555555556vw;
  }
  .p-discussion__body .c-bubble--green {
    height: 10.08vw;
  }
  .p-discussion__body .c-bubble--blue {
    height: 10.08vw;
    padding-block: 2.464vw 1.5555555556vw;
  }
  .p-discussion__body .c-bubble--yellow {
    height: 11.2vw;
    padding-block: 3.248vw 1.2444444444vw;
  }
}
@media screen and (min-width: 768px) {
  .c-submenu__item:active .c-submenu__under,
  .c-submenu__item:hover .c-submenu__under {
    background-size: 100% 1px;
  }
  .p-privacy__inner {
    max-width: 58.75rem;
  }
  .p-environment__info .c-btn {
    width: -moz-fit-content;
    width: fit-content;
    transition: all 0.3s;
  }
  .p-environment__info .c-btn:hover {
    margin-top: clamp(2.275rem, 0.9208333333rem + 2.1666666667vw, 3.25rem);
  }
  .p-cta__scroll-img {
    -webkit-mask-image: linear-gradient(
      to right,
      #000 0,
      #000
        calc(
          50% - clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      transparent
        calc(
          50% - clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      transparent
        calc(
          50% + clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      #000
        calc(
          50% + clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      #000 100%
    );
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-image: linear-gradient(
      to right,
      #000 0,
      #000
        calc(
          50% - clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      transparent
        calc(
          50% - clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      transparent
        calc(
          50% + clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      #000
        calc(
          50% + clamp(18.025rem, 7.2958333333rem + 17.1666666667vw, 25.75rem)
        ),
      #000 100%
    );
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
  }
}
@media (any-hover: hover) and (min-width: 768px) {
  .p-work-sub__item-link:hover .p-work-sub__item-card {
    transform: translate(var(--item-offset), var(--item-offset));
  }
}
@media screen and (min-width: 1201px) and (any-hover: hover) {
  .c-navigation__item.c-navigation__item--has-child:hover
    .c-navigation__submenu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .c-navigation__submenu-link:hover {
    color: var(--link-color);
  }
  .c-navigation__submenu-link:hover::after {
    margin-left: clamp(0.7rem, 0.2833333333rem + 0.6666666667vw, 1rem);
  }
  .c-btn-cv.c-btn-cv--recruitment:hover .c-btn-cv__submenu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .c-btn-cv.c-btn-cv--recruitment:hover .c-btn-cv__link {
    background: #53ffdf;
    color: #747474;
  }
  .c-btn-cv.c-btn-cv--recruitment:hover .c-btn-cv__link::before {
    background: url(../img/icon_minus.svg) no-repeat center center/contain;
  }
}
@media screen and (min-width: 1201px) {
  .l-header.is-scrolled {
    min-height: calc(clamp(6.3rem, 2.55rem + 6vw, 9rem) * 0.7);
  }
  .l-header.is-scrolled .c-logo__image {
    width: calc(
      clamp(7.175rem, 2.9041666667rem + 6.8333333333vw, 10.25rem) * 0.78
    );
  }
  .c-navigation__item.c-navigation__item--has-child {
    display: flex;
    align-items: center;
    cursor: default;
  }
  .c-navigation__item.c-navigation__item--has-child::after {
    position: static;
    top: auto;
    right: auto;
    flex-shrink: 0;
    margin-left: 0.5em;
  }
  .c-navigation__item.c-navigation__item--has-child:focus-within
    .c-navigation__submenu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
}
@media (min-width: 1720px) {
  .p-fv__video {
    min-height: clamp(30.625rem, 12.3958333333rem + 29.1666666667vw, 43.75rem);
  }
  .p-fv__text-2 {
    right: clamp(-4.375rem, -1.7708333333rem + -4.1666666667vw, -6.25rem);
  }
  .p-discussion__body .c-bubble--green {
    right: clamp(-14.4375rem, -5.84375rem + -13.75vw, -20.625rem);
  }
  .p-discussion__body .c-bubble--blue {
    right: clamp(-21.875rem, -8.8541666667rem + -20.8333333333vw, -31.25rem);
  }
  .p-discussion__body .c-bubble--yellow {
    left: clamp(-15.75rem, -6.375rem + -15vw, -22.5rem);
  }
}
@media screen and (max-width: 1400px) {
  .p-environment__bubble:nth-child(1) {
    top: 14%;
    left: 90%;
    width: clamp(9.1875rem, 3.71875rem + 8.75vw, 13.125rem);
  }
  .p-environment__bubble:nth-child(2) {
    top: -9%;
    left: 46%;
    width: clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem);
  }
  .p-environment__bubble:nth-child(3) {
    top: 24%;
    left: 7%;
    width: clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem);
  }
  .p-environment__bubble:nth-child(4) {
    top: 45%;
    left: 12%;
    width: clamp(13.125rem, 5.3125rem + 12.5vw, 18.75rem);
  }
  .p-environment__info {
    min-height: clamp(30.625rem, 12.3958333333rem + 29.1666666667vw, 43.75rem);
    padding-top: clamp(8.75rem, 3.5416666667rem + 8.3333333333vw, 12.5rem);
  }
}
@media screen and (max-width: 1300px) {
  .p-single__body .flow-list td:first-child::after {
    bottom: clamp(-1.09375rem, -0.4427083333rem + -1.0416666667vw, -1.5625rem);
  }
}
@media screen and (max-width: 1200px) {
  .l-footer {
    padding: 2rem 0 5rem;
  }
  .l-header {
    z-index: 40;
    border-bottom: none;
  }
  .l-header::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #393939;
    content: "";
  }
  .l-btn-fixed {
    display: grid;
    z-index: 30;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background-color: #393939;
  }
  .c-navigation .c-btns {
    flex-direction: column;
    width: 100%;
    max-width: 25rem;
    min-height: auto;
    margin-inline: auto;
    gap: 1.5rem;
  }
  .c-navigation .c-btn-cv {
    z-index: 1;
    width: 100%;
    min-width: 0;
  }
  .c-navigation .c-btn-cv__label--pc {
    display: none;
  }
  .c-navigation .c-btn-cv__label--sp {
    display: inline;
  }
  .c-navigation .c-btn-cv__link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 3.75rem;
    padding: 0.375rem;
    border: 1px solid #393939;
    border-radius: 0.375rem;
    font-size: 1.125rem;
  }
  .c-navigation .c-btn-cv__link::before {
    right: 0.75rem;
    width: 1.125rem;
    height: 1.125rem;
  }
  .c-navigation .c-btn-cv__link::after {
    display: block;
    z-index: -1;
    position: absolute;
    bottom: -0.75rem;
    left: -1px;
    width: calc(100% + 2px);
    height: 100%;
    border: 1px solid #393939;
    border-radius: 0.375rem;
    background: #fff;
    content: "";
  }
  .c-navigation .c-btn-cv__submenu {
    top: auto;
    bottom: calc(100% + 0.75rem);
    width: 100%;
    padding: 0.375rem 1rem;
    border: 1px solid #393939;
    border-radius: 0.375rem;
    box-shadow: none;
  }
  .c-navigation .c-btn-cv__submenu::before {
    top: auto;
    bottom: -0.875rem;
    height: 0.875rem;
  }
  .c-navigation .c-btn-cv__submenu-link {
    padding: 0.25rem 0;
    font-size: 0.875rem;
  }
  .c-navigation .c-btn-cv__submenu-link::after {
    width: 0.5rem;
    height: 0.625rem;
    margin-left: 0.625rem;
  }
  .c-menu-button {
    display: flex;
    z-index: 40;
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 3.375rem;
    height: 3.375rem;
    gap: 0.375rem;
    background: #393939;
    cursor: pointer;
  }
  .c-navigation {
    visibility: hidden;
    z-index: -1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    transition: all 0.4s;
  }
  .c-navigation .c-navigation__inner {
    -webkit-overflow-scrolling: touch;
    z-index: 40;
    position: relative;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    height: 100vh;
    padding: 9.375rem 1.25rem 3.75rem;
    overflow: auto;
    gap: 0;
  }
  .c-navigation.panelactive {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .c-navigation__list {
    display: none;
    z-index: 40;
    flex-direction: column;
    width: 100%;
    max-width: clamp(17.5rem, 7.0833333333rem + 16.6666666667vw, 25rem);
    margin: 0 auto;
    gap: 0;
  }
  .c-navigation__item {
    width: 100%;
    height: auto;
    padding: 0;
  }
  .c-navigation__item:not(:last-child) {
    border-bottom: 1px solid #ccc;
  }
  .c-navigation__item.c-navigation__item--contact {
    margin-top: clamp(2.625rem, 1.0625rem + 2.5vw, 3.75rem);
    margin-left: 0;
  }
  .c-navigation__item.c-navigation__item--has-child {
    cursor: pointer;
  }
  .c-navigation__item.c-navigation__item--has-child.active::after {
    background: url(../img/icon_minus-nav.svg) no-repeat center center/contain;
  }
  .c-navigation__menu {
    display: block;
    width: 100%;
    max-width: 25rem;
    margin-bottom: 1.5rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 1200px) and (max-width: 767px) {
  .c-navigation .c-navigation__inner {
    padding: 5.125rem 1.25rem 3.75rem;
  }
}
@media screen and (max-width: 1010px) {
  html {
    font-size: 1.584vw;
  }
}
@media screen and (max-width: 1000px) {
  .p-environment__info {
    min-height: clamp(31.5rem, 12.75rem + 30vw, 45rem);
    padding-top: clamp(11.375rem, 4.6041666667rem + 10.8333333333vw, 16.25rem);
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 100%;
  }
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block;
  }
  .l-2column {
    display: block;
    padding: 0.875rem 1rem 2rem;
    overflow: hidden;
  }
  .l-2column__sidebar {
    margin-top: 2rem;
  }
  .l-btn-group.l-btn-group--flex {
    flex-direction: column;
  }
  .l-card {
    flex-direction: column;
    gap: 2.5rem;
  }
  .l-card.--news .l-card__item .p-card__link {
    grid-template-columns: 80px 1fr;
    gap: 0.5rem;
  }
  .l-card__item {
    width: 100%;
  }
  .l-contents {
    margin-top: 3.375rem;
    padding-bottom: 2.75rem;
  }
  .l-contents--job {
    padding-bottom: 0;
  }
  .l-contents.l-contents--page .c-section-title__en {
    padding: 0.375rem 0.75rem 0.25rem;
    border-width: 1px;
    font-size: 1rem;
    letter-spacing: -0.01rem;
  }
  .l-contents.l-contents--page {
    padding: 0;
    border-width: 1px;
    font-size: 1rem;
  }
  .l-contents .c-section-title__jp {
    padding: 0.5rem 0.75rem;
    border-width: 1px;
  }
  .l-contents .c-section-title__jp img {
    height: 1.1875rem;
  }
  &.l-contents--form .l-page-header {
    padding-block: 1.75rem 1.5rem;
  }
  .l-footer .l-inner {
    flex-direction: column;
    gap: 2rem;
  }
  .c-external-link {
    gap: 0.5rem;
    font-size: 0.875rem;
  }
  .c-external-link svg {
    width: 0.625rem;
    height: 0.625rem;
  }
  .p-footer__logo img {
    width: 6.4375rem;
  }
  .p-footer__site {
    margin-top: 0;
    font-size: 0.875rem;
  }
  .p-footer__copyright {
    margin-top: 0.75rem;
    font-size: 0.625rem;
  }
  .l-footer__menu {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
  .p-footer__menu-list--company,
  .p-footer__menu-list--discussion,
  .p-footer__menu-list--recruitment,
  .p-footer__menu-list--entry {
    grid-row: auto;
    grid-column: 1/-1;
  }
  .p-footer__menu-item-title {
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px dashed var(--text-color);
    font-size: 1.125rem;
  }
  .p-footer__menu-item-title .p-footer__menu-link {
    font-size: 1.125rem;
  }
  .p-footer__menu-item {
    margin-bottom: 0.5rem;
  }
  .p-footer__menu-link {
    gap: 0.75rem;
    font-size: 0.875rem;
  }
  .l-header {
    min-height: 3.375rem;
    border-bottom: none;
  }
  .l-header::after {
    height: 1px;
  }
  .l-header__inner {
    padding-left: 1.25rem;
    background-color: #fff;
  }
  .l-header__inner.l-inner {
    padding-right: 0;
  }
  .l-inner {
    padding-inline: 1.25rem;
  }
  .l-page-header {
    padding-block: 2rem 1.5rem;
  }
  .l-pagenation {
    margin-top: 2rem;
    padding: 0.5rem 0.75rem;
    gap: 0.5rem;
  }
  .page-numbers {
    font-size: 1.25rem;
  }
  .page-numbers.prev {
    margin-right: 0.5rem;
  }
  .page-numbers.next {
    margin-left: 0.5rem;
  }
  .l-section {
    padding-block: 2rem;
  }
  .l-section-rounded {
    margin-top: -1.875rem;
    padding-block: 2rem;
    border: 1px solid #393939;
    border-radius: 1.875rem 1.875rem 0 0;
  }
  .l-section-rounded:has(+ .l-section-rounded) {
    padding-bottom: 5.625rem;
  }
  .c-author__title {
    margin-bottom: 0.625rem;
  }
  .c-author__profile {
    gap: 1.5rem;
  }
  .c-author__profile + .c-author__profile {
    margin-top: 0.625rem;
  }
  .c-author__img {
    width: 5rem;
    height: 5rem;
  }
  .c-author__body {
    width: calc(100% - 6.5rem);
  }
  .c-author__name {
    font-size: 1.25rem;
  }
  .c-author__post {
    margin-top: 0;
    font-size: 0.875rem;
  }
  .c-author__text {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
  .c-badge {
    font-size: 0.75rem;
  }
  .c-breadcrumb {
    overflow: auto;
    border-bottom: 1px solid #393939;
  }
  .c-breadcrumb__container {
    width: -moz-max-content;
    width: max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    margin: 0;
    padding: 0.625rem 1rem 0.5625rem 0.25rem;
  }
  .c-breadcrumb__list {
    gap: 2rem;
  }
  .c-breadcrumb__item:not(:last-of-type) {
    right: -1rem;
  }
  .c-breadcrumb__item {
    font-size: 0.875rem;
  }
  .l-breadcrumb-form .c-breadcrumb {
    border-top: 1px solid #393939;
    border-bottom: none;
  }
  .c-btn {
    width: 100%;
    max-width: 25rem;
  }
  .c-btn--lg {
    width: 20rem;
    max-width: 100%;
  }
  .c-btn--lg .c-btn__link::after {
    bottom: -0.75rem;
  }
  .c-btn__link {
    width: 100%;
    min-height: 3.75rem;
    padding: 0.375rem;
    border: 1px solid #393939;
    border-radius: 0.375rem;
    font-size: 1rem;
  }
  .c-btn__link::before {
    right: 0.75rem;
    width: 1.125rem;
    height: 1.125rem;
  }
  .c-btn__link::after {
    bottom: -0.75rem;
    left: -1px;
    width: calc(100% + 2px);
    border: 1px solid #393939;
    border-radius: 0.375rem;
  }
  .c-btns {
    flex-direction: column;
    min-height: auto;
    gap: 1.5rem;
  }
  .c-btns--gap-m {
    gap: 1.5rem;
  }
  .c-btn-cv__submenu {
    top: calc(100% + 0.625rem);
    padding: 0.5rem 0.75rem;
    border-radius: 0.625rem;
  }
  .c-btn-cv__submenu-link {
    padding: 0.5rem 0;
    font-size: 0.875rem;
  }
  .c-btn-cv__submenu-link::after {
    width: 0.5rem;
    height: 0.625rem;
    margin-left: 0.625rem;
  }
  .l-section-cta .c-btn-cv__submenu {
    bottom: calc(100% + 0.625rem);
  }
  .c-faq__item {
    margin-block: 1rem;
  }
  .c-faq__head::before {
    left: 0.625rem;
  }
  .c-faq__head::after {
    right: 0.625rem;
  }
  .c-faq__head {
    min-height: 3.875rem;
    padding: 0.625rem 2.125rem 0.875rem 3.75rem;
    font-size: 0.875rem;
  }
  .c-faq__body {
    padding: 1rem 1.5rem 1.5rem 4rem;
  }
  .c-faq__body::before {
    left: 0.625rem;
  }
  .c-faq__text {
    font-size: 0.875rem;
  }
  .c-feature {
    flex-direction: column;
    gap: 0.625rem;
  }
  .c-feature.c-feature--reverse {
    flex-direction: column;
  }
  .c-feature + .c-feature {
    margin-top: 2rem;
  }
  .c-feature__body {
    order: 1;
    width: 100%;
  }
  .c-feature__title {
    order: 0;
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
  .c-feature__text {
    order: 2;
    margin-top: 0.625rem;
  }
  .c-feature__media {
    order: 0;
    width: 100%;
  }
  .c-logo__image {
    width: 3.875rem;
  }
  .c-navigation__menu {
    max-width: 100%;
  }
  .c-page-title {
    font-size: 1.5rem;
  }
  .c-parts-page-title {
    font-size: 2rem;
  }
  .c-parts-title {
    margin-bottom: 2rem;
    font-size: 1.375rem;
  }
  .c-post-links {
    display: block;
    margin-top: 2rem;
  }
  .c-post-links li + li {
    margin-top: 0.5rem;
  }
  .c-post-links__next,
  .c-post-links__prev {
    max-width: 20rem;
  }
  .c-post-links__next a,
  .c-post-links__prev a {
    min-height: 3.75rem;
    margin-bottom: 0.5rem;
    padding-top: 0.5rem;
    border-radius: 8px;
  }
  .c-post-links__prev {
    margin-right: auto;
  }
  .c-post-links__next {
    margin-left: auto;
  }
  .c-section-title {
    flex-direction: column;
    align-items: flex-start;
    border: none;
    background: 0 0;
  }
  .c-section-title__en {
    padding: 0.375rem 0.75rem 0.25rem;
    font-size: 1rem;
    letter-spacing: -0.01rem;
  }
  .c-section-title__jp {
    padding: 0.5rem 0.75rem 0.5rem;
    border: 1px solid #393939;
    font-size: 0;
  }
  .c-section-title__jp img {
    width: auto;
    height: 1.25rem;
  }
  .c-section-title-row {
    flex-direction: column;
    gap: 0.75rem;
  }
  .c-section-title-row--sp-row {
    flex-direction: row;
  }
  .c-section-title-row__en {
    padding: 0.3125rem 0.75rem 0.25rem;
    border-width: 1px;
    font-size: 1rem;
    letter-spacing: -0.0075rem;
  }
  .c-section-title-row__jp {
    font-size: 1.5rem;
  }
  .c-share-block {
    margin-top: 1.5rem;
    padding: 1.5625rem 1rem;
  }
  .c-submenu {
    min-width: 0;
    max-width: 100%;
  }
  .c-pagetop {
    bottom: 4.875rem;
    width: 1.875rem;
    height: 1.875rem;
  }
  .p-404 {
    padding-bottom: 2.5rem;
    padding-inline: 0;
  }
  .p-404::after,
  .p-404::before {
    top: -0.5rem;
    transform: translateY(-50%);
  }
  .p-404::before {
    width: 2.25rem;
    height: 7.25rem;
  }
  .p-404::after {
    width: 2.25rem;
    height: 7.25rem;
  }
  .p-404__title {
    margin-bottom: 1.5rem;
    font-size: 1.625rem;
  }
  .p-404__text {
    font-size: 1rem;
    text-align: left;
  }
  .p-404__btn {
    margin-top: 1.25rem;
  }
  .p-card.p-card--type02 .p-card__title {
    margin-bottom: 0.5rem;
    font-size: 1rem;
  }
  .p-card__body {
    padding-right: 2.5rem;
  }
  .p-card__body::after,
  .p-card__body::before {
    display: block;
  }
  .p-card__title {
    font-size: 1rem;
    line-height: 1.5;
  }
  .p-card__bottom::after,
  .p-card__bottom::before {
    display: none;
  }
  .p-entry__header {
    margin-bottom: 2rem;
  }
  .p-entry__title {
    margin-top: 0.3125rem;
    margin-bottom: 2rem;
    font-size: 1.25rem;
    line-height: 1.6;
  }
  .p-entry__head {
    margin-bottom: 0.625rem;
  }
  .p-entry__head-meta {
    margin-bottom: 0.5rem;
  }
  .p-entry__head-meta02 {
    margin-bottom: 0.75rem;
  }
  .wpcf7-turnstile {
    margin: 0.5rem auto 1rem;
  }
  .p-widget.p-widget--sticky {
    position: relative;
    top: auto;
  }
  .p-widget__banner {
    position: relative;
    top: 0;
    margin-top: 1rem;
  }
  .p-about-sub__intro {
    padding-block: 0 4rem;
  }
  .p-about-sub__intro-inner {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  .p-about-sub__intro-title {
    font-size: 1.5rem;
    text-align: center;
  }
  .p-about-sub__title-image img {
    height: 3.75rem !important;
  }
  .p-about-sub__intro-copy {
    margin-block: 1rem 0.25rem;
    font-size: 1.25rem;
    text-align: center;
  }
  .p-about-sub__intro-text {
    font-size: 1rem;
    line-height: 1.7;
    text-align: center;
  }
  .p-about-sub__intro-image {
    order: -1;
  }
  .p-about-sub__intro-image img {
    aspect-ratio: 308/208;
    border-width: 1px;
    border-radius: 3.75rem 3.75rem 1.25rem 1.25rem;
  }
  .p-about-sub__intro-frame {
    inset: 0.75rem -0.75rem -0.75rem 0.75rem;
    border-width: 1px;
    border-radius: 3.75rem 3.75rem 1.25rem 1.25rem;
  }
  .p-about-sub__btns {
    margin-top: 1.5rem;
  }
  .p-about-sub__rounded-section {
    padding-block: 2rem 2.5rem;
  }
  .p-about-sub__fair {
    margin-top: 0.0625rem;
  }
  .p-about-sub__work-body {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 1.75rem;
    gap: 1.5rem;
  }
  .p-about-sub__work-text {
    font-size: 1rem;
    line-height: 1.6;
  }
  .p-about-sub__zoom-button {
    display: block;
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    padding: 0;
    border: none;
  }
  .p-about-sub__work-diagram .p-about-sub__zoom-icon {
    position: absolute;
    right: 0.1875rem;
    bottom: 0.1875rem;
    width: 2.125rem;
    height: 2.125rem;
  }
  .p-about-sub__diagram-modal {
    z-index: 10000;
    position: fixed;
    align-items: center;
    justify-content: center;
    inset: 0;
    padding: 3.25rem 1rem 1.5rem;
    background: rgba(0, 0, 0, 0.75);
  }
  .p-about-sub__diagram-modal.is-open {
    display: flex;
  }
  .p-about-sub__diagram-modal-close {
    position: absolute;
    top: 0.75rem;
    right: 1rem;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: none;
    color: #fff;
    font-size: 2rem;
    line-height: 1;
  }
  .p-about-sub__diagram-modal-body {
    -webkit-overflow-scrolling: touch;
    width: 100%;
    max-height: 100%;
    padding: 0.5rem 0.5rem 0.75rem;
    overflow: auto;
    border-radius: 0.75rem;
    background: #fff;
  }
  .p-about-sub__diagram-modal-body img {
    display: block;
    width: 40rem;
    max-width: none;
    height: auto;
  }
  .p-about-sub__feature-title {
    margin: 2.125rem auto 1.5rem;
    padding-bottom: 0;
    border-bottom: 0;
    font-size: 1.5rem;
  }
  .p-about-sub__feature-title-line {
    display: inline-block;
    padding-bottom: 0.25rem;
    border-bottom: 0.125rem solid #00ece8;
  }
  .p-about-sub__grid-list {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 1.125rem;
    padding-bottom: 0.25rem;
    gap: 1.25rem;
  }
  .p-about-sub__metric-item {
    padding: 0.75rem 0.25rem;
    border-width: 1px;
    font-size: 0.875rem;
  }
  .p-about-sub__metric-item--achievement {
    justify-content: center;
    height: 5.625rem;
    min-height: 0;
    padding-block: 0.5rem;
    gap: 0.5rem;
  }
  .p-about-sub__metric-item--achievement img {
    right: -0.625rem;
    max-width: 4rem;
    max-height: 4.875rem;
    transform: translateX(50%);
  }
  .p-about-sub__metric-item--achievement .p-about-sub__metric-img01 {
    max-width: 2.375rem;
    max-height: 2.875rem;
  }
  .p-about-sub__metric-item--achievement .p-about-sub__metric-img02 {
    top: auto;
    right: 0.875rem;
    bottom: -1.875rem;
    left: auto;
    max-width: 3.875rem;
    max-height: 4rem;
    transform: translateX(0);
  }
  .p-about-sub__metric-item--achievement .p-about-sub__metric-img03 {
    max-width: 4.25rem;
    max-height: 3.875rem;
  }
  .p-about-sub__metric-item--achievement .p-about-sub__metric-label {
    margin-bottom: 0.25rem;
    font-size: 1rem;
  }
  .p-about-sub__metric-label {
    font-size: 1rem;
  }
  .p-about-sub__metric-value {
    font-size: 1.75rem;
  }
  .p-about-sub__metric-affix {
    font-size: 0.875rem;
  }
  .p-about-sub__metric-note {
    font-weight: 500;
    font-size: 0.75rem;
  }
  .p-about-sub__metric-item--achievement .p-about-sub__metric-note {
    position: absolute;
    top: calc(100% + 0.25rem);
    left: 50%;
    width: -moz-max-content;
    width: max-content;
    transform: translateX(-50%);
  }
  .p-about-sub__section {
    padding-block: 2rem;
  }
  .p-about-sub__section--pb0 {
    padding-bottom: 2.5rem;
  }
  .p-about-sub__card-list {
    grid-template-columns: 1fr;
    margin-top: 1.75rem;
    gap: 1.25rem;
  }
  .p-about-sub__card {
    padding-bottom: 1.125rem;
    border-width: 1px;
    border-radius: 1.25rem 3.75rem 1.25rem 1.25rem;
  }
  .p-about-sub__card-photo {
    border-width: 1px;
  }
  .p-about-sub__card-title {
    padding: 1rem 1rem 0;
    font-size: 1.125rem;
  }
  .p-about-sub__card-text {
    padding: 0.75rem 1rem 0;
    font-size: 0.875rem;
  }
  .p-about-sub__data-list {
    margin-top: 1.5rem;
  }
  .p-about-sub__image-item {
    width: 100%;
  }
  .p-about-sub__metric-item--balance {
    min-height: 7.5rem;
  }
  .p-about-sub__metric-item--balance img {
    right: -0.625rem;
    max-width: 4rem;
    max-height: 4.875rem;
  }
  .p-about-sub__metric-item--balance .p-about-sub__metric-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 2.875rem;
  }
  .p-about-sub__metric-item--balance .p-about-sub__metric-img01 {
    max-width: 3.75rem;
    max-height: 5.125rem;
    transform: translateX(50%);
  }
  .p-about-sub__metric-item--balance .p-about-sub__metric-img02 {
    top: auto;
    right: 0.5rem;
    bottom: -2.5rem;
    left: auto;
    max-width: 2.1875rem;
    max-height: 5.125rem;
    transform: translateX(0);
  }
  .p-about-sub__metric-item--balance .p-about-sub__metric-img03 {
    max-width: 2.625rem;
    max-height: 4.875rem;
    transform: translateX(50%);
  }
  .p-about-sub__people-list {
    grid-template-columns: 1fr;
    margin-top: 2rem;
    gap: 3.625rem;
  }
  .p-about-sub__people-item {
    border-width: 1px;
  }
  .p-about-sub__people-item h3 {
    padding: 0.75rem;
    border-width: 1px;
    font-size: 1rem;
  }
  .p-privacy {
    padding-block: 2rem;
  }
  .p-privacy__title {
    font-size: 1.25rem;
    line-height: 1.6;
  }
  .p-privacy__text {
    margin-top: 0.75rem;
  }
  .p-privacy__list {
    margin-block: 0.625rem;
  }
  .p-privacy__footer {
    margin-top: 2rem;
  }
  .p-privacy__company {
    font-size: 1.25rem;
  }
  .p-privacy__info {
    margin-top: 0.75rem;
  }
  .p-fv__video {
    min-height: 94vw;
    margin-top: -48.8888888889vw;
  }
  .p-fv__video .carousel {
    top: 0;
  }
  .p-fv__video .slot-center {
    top: 47.8vw;
    left: 37vw;
    width: 63.8888888889vw;
    height: 77.7777777778vw;
  }
  .p-fv__video .slot-right-1 {
    top: 69.4444444444vw;
    left: calc(100% - 13.8888888889vw);
    width: 27.7777777778vw;
    height: 34.1666666667vw;
    opacity: 1;
  }
  .p-fv__video .slot-hidden-left,
  .p-fv__video .slot-hidden-right,
  .p-fv__video .slot-left-1,
  .p-fv__video .slot-left-2,
  .p-fv__video .slot-right-2 {
    top: 69.4444444444vw;
    width: 27.7777777778vw;
    height: 34.1666666667vw;
    opacity: 0;
    pointer-events: none;
  }
  .p-fv__video .slot-left-1,
  .p-fv__video .slot-left-2 {
    left: -16.6666666667vw;
  }
  .p-fv__video .slot-hidden-right,
  .p-fv__video .slot-right-2 {
    left: calc(100% + 16.6666666667vw);
  }
  .p-fv__video .slot-hidden-left {
    left: -22.2222222222vw;
  }
  .p-fv__video .video-card {
    border: 1px solid #393939;
    border-radius: 0.375rem;
  }
  .p-fv__video .video-card::after {
    right: 1.6666666667vw;
    bottom: 1.3888888889vw;
    width: 3.6111111111vw;
    height: 3.6111111111vw;
  }
  .p-fv__video .bubble {
    width: 29.4444444444vw;
    height: 19.4444444444vw;
    padding: 0 1vw;
    font-size: 2.7777777778vw;
    line-height: 1.42;
  }
  .p-fv__video .bubble--yellow {
    --bubble-transform: translate3d(0, 0, 0);
    top: 4vw;
    left: 1.5vw;
    background-image: url(../img/bubble-yellow_sp.svg);
  }
  .p-fv__video .bubble--yellow .bubble__text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 18vw;
    padding-bottom: 2.5vw;
  }
  .p-fv__video .bubble--green {
    --bubble-transform: translate3d(0, 0, 0);
    top: 12vw;
    left: 46vw;
    height: 20.2777777778vw;
    background-image: url(../img/bubble-green_sp.svg);
  }
  .p-fv__video .bubble--green .bubble__text .bubble__text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 18vw;
    padding-top: 1.2vw;
  }
  .p-fv__video .bubble--pink {
    --bubble-transform: translate3d(0, 0, 0);
    top: 65vw;
    left: 7vw;
    background-image: url(../img/bubble-pink_sp.svg);
  }
  .p-fv__video .bubble--pink .bubble__text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 18vw;
    padding-top: 3.5vw;
  }
  .p-fv__excavator {
    top: 0.75rem;
    right: 0;
    width: 8.25rem;
    transform: none;
  }
  .p-fv {
    margin-top: 3.375rem;
  }
  .p-fv .l-inner {
    padding-inline: 0;
  }
  .p-fv__body {
    margin-top: -6.6667vw;
  }
  .p-fv__scroll-text {
    margin-block: 1.25rem 0;
  }
  .p-fv__scroll-item img {
    width: auto;
    height: 16.6667vw;
  }
  .p-fv__text-1 {
    position: relative;
    padding-inline: 1.25rem;
  }
  .p-fv__text-1 img {
    width: calc(100% - 2.5rem);
  }
  .p-fv__text-2 {
    display: flex;
    position: relative;
    top: 0;
    right: 0;
    flex-direction: column;
    align-items: flex-end;
    margin-top: 0.75rem;
  }
  .p-fv__text-2 img {
    width: 39vw;
  }
  .l-section--grid {
    padding-block: 2.5rem 5.625rem;
  }
  .p-message::before {
    top: -1.5rem;
    right: auto;
    left: 1.25rem;
    max-width: 2.75rem;
    height: 6.1875rem;
    background-size: contain;
  }
  .p-message::after {
    top: -1.1875rem;
    right: 1.25rem;
    left: auto;
    max-width: 3.4375rem;
    height: 5.8125rem;
    background-size: contain;
  }
  .p-message__title img {
    max-width: 12.125rem;
  }
  .p-message__text {
    margin-top: 1.75rem;
    font-size: 1rem;
    line-height: 1.7;
    text-align: left;
  }
  .p-message__text-img {
    margin-top: 0.8125rem;
  }
  .p-message__text-img img {
    max-width: 16.875rem;
  }
  .p-about__body {
    flex-direction: column;
    min-height: auto;
    margin-top: 1.75rem;
    gap: 0.75rem;
  }
  .p-about__body::before {
    top: -5.25rem;
    right: 0.75rem;
    width: 12.25rem;
    height: 5.625rem;
    transform: translateY(-100%);
  }
  .p-about__pic {
    margin-right: 0.75rem;
  }
  .p-about__pic img {
    aspect-ratio: 71/40;
    border-radius: 1.25rem;
  }
  .p-about__pic::before {
    right: -0.75rem;
    bottom: -0.75rem;
    border-radius: 1.25rem;
  }
  .p-about__info {
    padding-top: 1.25rem;
  }
  .p-about__text {
    font-size: 1rem;
    line-height: 1.5;
  }
  .u-mt-m {
    margin-top: 1.75rem;
  }
  .p-interview__body::before {
    top: 0;
    right: 0;
    width: 11.3125rem;
    height: 10.3125rem;
    background: url(../img/interview_illust_sp.webp) no-repeat center
      center/contain;
  }
  .p-interview__list {
    flex-direction: column;
    margin-top: 1.75rem;
    gap: 1.75rem;
  }
  .p-interview__item {
    width: 100%;
  }
  .p-interview__head {
    padding-bottom: 0;
    background-position: center bottom !important;
  }
  .p-interview__info {
    position: relative;
    min-height: auto;
    padding: 0.625rem 0;
    gap: 0.25rem;
    border-width: 1px;
  }
  .p-interview__post {
    font-size: 1rem;
  }
  .p-interview__name {
    font-size: 1.5rem;
  }
  .p-interview__text {
    margin-top: 1.25rem;
    font-weight: 700;
    font-size: 1rem;
  }
  .p-discussion {
    padding-bottom: 1.5rem;
    overflow: visible;
  }
  .p-discussion__body {
    max-width: -moz-max-content;
    max-width: max-content;
    margin-inline: -1.25rem;
    padding-top: 1.75rem;
  }
  .p-discussion__body .c-bubble {
    width: 28.8888888889vw;
    height: 16.6666666667vw;
    padding: 3.2vw 1.5vw 2vw;
    transform: translateY(4.4444444444vw) scale(0.62);
    font-size: 2.77vw;
    line-height: 1.45;
  }
  .p-discussion__body .c-bubble--green {
    top: -15vw;
    right: 1vw;
    height: 18vw;
  }
  .p-discussion__body .c-bubble--blue {
    top: 50vw;
    right: 15vw;
    height: 18vw;
    padding-block: 4.4vw 2.7777777778vw;
  }
  .p-discussion__body .c-bubble--yellow {
    top: 44vw;
    left: 11vw;
    height: 20vw;
  }
  .p-discussion__pic img {
    width: calc(100% + 2.5rem);
  }
  .p-discussion__list {
    flex-direction: column;
    min-height: auto;
    margin-top: 1.5rem;
    padding-bottom: 0.75rem;
    gap: 2rem;
  }
  .p-discussion__item {
    margin-right: 0.75rem;
  }
  .p-discussion__item-link {
    margin-right: 0;
    padding: 0.75rem 1rem 1rem;
    border: 1px solid #393939;
    border-radius: 1.25rem;
  }
  .p-discussion__item-link::after {
    right: -0.75rem;
    bottom: -0.75rem;
    border: 1px solid #393939;
    border-radius: 1.25rem;
  }
  .p-discussion__item-head {
    margin-bottom: 0.625rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #393939;
    font-size: 1rem;
    letter-spacing: -0.01rem;
  }
  .p-discussion__item-title {
    font-size: 1rem;
  }
  .p-discussion__item-text {
    margin-top: 0.75rem;
    font-size: 0.875rem;
  }
  .p-discussion__item-more {
    margin-top: 0.75rem;
    padding-right: 1.875rem;
    font-size: 0.875rem;
  }
  .p-discussion__item-more::after {
    top: 0.125rem;
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #393939;
    background: url(../img/icon_arrow-btn-cv.svg) no-repeat center center/1rem
      #ffdbdc;
  }
  .p-discussion__item-link .p-discussion__item-text {
    margin-top: 0;
    font-size: 0.875rem;
  }
  .p-discussion__item-intro {
    flex-direction: column;
    border-bottom: none;
  }
  .p-discussion__item-intro .p-discussion__item-img {
    border-right: none;
    border-bottom: 1px solid #393939;
    border-radius: 1.25rem 1.25rem 0 0;
  }
  .p-discussion__item-intro .p-discussion__item-img img {
    border-radius: 1.25rem 1.25rem 0 0;
  }
  .p-discussion__item-intro .p-discussion__item-title {
    padding: 1rem 1rem 0.75rem;
    font-size: 1.125rem;
  }
  .p-discussion__item-body {
    padding: 0 1rem 1rem;
  }
  .p-occupation__body::before {
    top: -2rem;
    right: 0;
    width: 9.125rem;
    height: 9.375rem;
    background: url(../img/occupation_illust_sp.webp) no-repeat center
      center/contain;
  }
  .p-occupation__list {
    flex-direction: column;
    min-height: auto;
    margin-top: 1.75rem;
    gap: 2rem;
  }
  .p-occupation__item {
    flex-basis: auto;
    width: 100%;
    margin-right: 0.75rem;
  }
  .p-occupation__item-link {
    margin-right: 0;
  }
  .p-occupation__item-link::after {
    right: -0.75rem;
    bottom: -0.75rem;
    border: 1px solid #393939;
    border-radius: 1.25rem 3.75rem 1.25rem 1.25rem;
  }
  .p-occupation__item-pic img {
    border: 1px solid #393939;
    border-radius: 1.25rem 3.75rem 0 0;
  }
  .p-occupation__item-info {
    padding: 1rem;
    border: 1px solid #393939;
    border-radius: 0 0 1.25rem 1.25rem;
  }
  .p-occupation__item-title {
    font-size: 1.125rem;
  }
  .p-occupation__item-text {
    -webkit-box-orient: vertical;
    line-clamp: 3;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    margin-top: 0.75rem;
    overflow: hidden;
    font-size: 0.875rem;
  }
  .p-occupation__item-more {
    margin-top: 0.75rem;
    padding-right: 1.875rem;
    font-size: 0.875rem;
  }
  .p-occupation__item-more::after {
    top: 0.125rem;
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #393939;
    background: url(../img/icon_arrow-btn-cv-w.svg) no-repeat center
      center/.75rem #126a9b;
  }
  .p-environment {
    padding-bottom: 1.75rem;
    background: url(../img/environment_bg_sp.webp) no-repeat center 10vw/100%;
  }
  .p-environment__bubble {
    width: 28.8888888889vw;
  }
  .p-environment__bubble:nth-child(1) {
    --environment-bubble-transform: translate(0, 0);
    top: -24vw;
    left: 52.5vw;
    width: 28.8888888889vw;
  }
  .p-environment__bubble:nth-child(2) {
    top: 3vw;
    left: 19vw;
    width: 28.8888888889vw;
  }
  .p-environment__bubble:nth-child(3) {
    top: 45vw;
    left: 16vw;
    width: 28.8888888889vw;
  }
  .p-environment__bubble:nth-child(4) {
    top: 66vw;
    left: 60vw;
    width: 28.8888888889vw;
  }
  .p-environment__info {
    position: relative;
    max-width: -moz-max-content;
    max-width: max-content;
    min-height: auto;
    padding-top: 123vw;
  }
  .p-environment__info-text {
    font-size: 1rem;
  }
  .p-environment__info-pic {
    padding-block: 1rem 0.75rem;
  }
  .p-environment__info-pic img {
    max-width: 20rem;
  }
  .p-cta__scroll-text {
    margin-bottom: 2rem;
    padding-block: 1.25rem;
  }
  .p-cta__scroll-track {
    gap: 2rem;
  }
  .p-cta__scroll-item img {
    height: 3.25rem;
  }
  .p-cta__scroll-img {
    position: relative;
    right: auto;
    left: auto;
    width: auto;
    margin-top: 1.5rem;
  }
  .p-cta__scroll-img-item img {
    height: 7.5rem;
  }
  .p-cta__body {
    min-height: 10rem;
    margin-bottom: 1.75rem;
    padding-top: 0;
  }
  .p-cta__info {
    position: relative;
    max-width: -moz-max-content;
    max-width: max-content;
    padding: 0 1.25rem 0.75rem;
    background: 0 0;
  }
  .p-cta__info .c-btns {
    margin-top: 1.75rem;
  }
  .p-cta__info .c-btn-cv {
    width: 100%;
  }
  .p-cta__info .c-btn-cv__link {
    min-height: 3.75rem;
    border: 1px solid #393939;
    font-size: 1.125rem;
  }
  .p-cta__info .c-btn-cv__link::after {
    bottom: -0.75rem;
    left: -1px;
    width: calc(100% + 2px);
    border: 1px solid #393939;
    border-radius: 0.375rem;
  }
  .p-cta__title img {
    width: 20rem;
  }
  .p-form__text {
    margin-bottom: 1.5rem;
    font-size: 1rem;
  }
  .p-form__dl .m-wd300 {
    max-width: 100%;
  }
  .p-form__dl dt.--policy {
    text-align: center;
  }
  .p-form__dl dt span.--optional,
  .p-form__dl dt span.--required {
    width: 3rem;
    height: 1.625rem;
    font-size: 1rem;
  }
  .p-form__submit-btnwrap {
    width: 100%;
    min-height: 3.75rem;
    margin-top: 1.75rem;
  }
  .p-form__submit-btn {
    width: 100%;
    max-width: 23.75rem;
  }
  .p-form__submit-btn::before {
    top: 1.875rem;
    right: 0.75rem;
    width: 1.125rem;
    height: 1.125rem;
  }
  .p-form__submit-btn::after {
    bottom: -0.75rem;
    border: 1px solid #393939;
    border-radius: 0.375rem;
  }
  input[type="submit"] {
    width: 100%;
    min-height: 3.75rem;
    padding: 0.375rem;
    border: 1px solid #393939;
    border-radius: 0.375rem;
    font-size: 1rem;
    line-height: 2.875rem;
  }
  .p-form__div-list {
    gap: 0.75rem;
  }
  .p-form__div-list .wpcf7-list-item label {
    width: 100%;
    height: 5.625rem;
    gap: 0.5rem;
  }
  .p-form__div-list input[type="radio"] + span {
    font-size: 1.125rem;
  }
  .p-form__div-list .p-form__div-list__text {
    font-size: 0.875rem;
  }
  .p-form__dl {
    flex-direction: column;
    padding: 1rem 0;
    gap: 0.75rem;
  }
  .p-form__dl dt {
    width: 100%;
    gap: 1rem;
    font-size: 1.125rem;
  }
  .p-form__dl dt.--column.--policy {
    flex-direction: row;
    justify-content: center;
  }
  .p-form__dl dt.--column.--contact {
    flex-direction: row;
    align-items: center;
    margin-bottom: 0.5rem;
    white-space: nowrap;
  }
  .p-form__dl dt.--column.--contact span.--optional {
    margin-left: 0;
  }
  .p-form__dl dt span {
    width: 2.625rem;
    height: 1.5rem;
    font-size: 0.75rem;
  }
  .p-form__dl dt span.--mini {
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 1rem;
    line-height: 1.85;
  }
  .p-form__dl dd {
    width: 100%;
  }
  .p-form__dl dd.--center {
    flex-direction: column;
    justify-content: flex-start;
  }
  .p-form__dl dd.--center .wpcf7-form-control-wrap {
    text-align: center;
  }
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="text"] {
    padding: 0.75rem;
    font-size: 1.125rem;
  }
  input[type="email"]::-moz-placeholder,
  input[type="password"]::-moz-placeholder,
  input[type="tel"]::-moz-placeholder,
  input[type="text"]::-moz-placeholder {
    font-size: 1.125rem;
  }
  input[type="email"]::-moz-placeholder,
  input[type="password"]::-moz-placeholder,
  input[type="tel"]::-moz-placeholder,
  input[type="text"]::-moz-placeholder {
    font-size: 1.125rem;
  }
  input[type="email"]::placeholder,
  input[type="password"]::placeholder,
  input[type="tel"]::placeholder,
  input[type="text"]::placeholder {
    font-size: 1.125rem;
  }
  textarea {
    padding: 0.75rem;
    font-size: 1.125rem;
  }
  textarea::-moz-placeholder {
    font-size: 1.125rem;
  }
  textarea::placeholder {
    font-size: 1.125rem;
  }
  input[type="submit"] {
    height: 3.125rem;
    font-size: 1.125rem;
    line-height: 2.25rem;
  }
  input[type="radio"] + span {
    padding-left: 2rem;
    font-size: 1.125rem;
  }
  input[type="radio"] + span::before {
    width: 1.5rem;
    height: 1.5rem;
  }
  input[type="radio"] + span::after {
    left: 0.25rem;
  }
  .wpcf7-radio .wpcf7-list-item {
    width: 100%;
  }
  .wpcf7-radio .wpcf7-list-item:last-of-type {
    margin-top: 0.75rem;
    margin-left: 0;
  }
  .optional-question .wpcf7-form-control {
    display: flex;
    align-items: center;
    gap: 1.5rem;
  }
  .optional-question .wpcf7-radio .wpcf7-list-item {
    width: -moz-fit-content;
    width: fit-content;
  }
  .optional-question .wpcf7-list-item.last {
    margin-top: 0;
  }
  .p-interview-sub .p-interview__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem;
  }
  .p-interview-sub .p-interview__item {
    width: 100%;
  }
  .p-interview-sub .p-interview__link::after {
    top: auto;
    bottom: 0;
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #393939;
    background: url(../img/icon_arrow-btn-cv-w.svg) no-repeat center
      center/.75rem #126a9b;
  }
  .p-interview-sub .p-interview__text {
    min-height: auto;
    padding: 0.75rem;
    padding-bottom: 2rem;
    border-width: 1px;
  }
  .p-interview-sub .p-interview__text span {
    font-weight: 700;
    font-size: 1rem;
  }
  .p-interview__title {
    margin-bottom: 1.75rem;
    font-size: 1.5rem;
  }
  .p-interview-single {
    padding-block: 2rem 3.75rem;
  }
  .p-interview-single__head {
    flex-direction: column-reverse;
    border-width: 1px;
  }
  .p-interview-single__pic {
    width: 100%;
    border-left: none;
  }
  .p-interview-single__post {
    padding: 0.625rem;
    border-width: 1px;
    font-size: 1rem;
    line-height: 1.6;
  }
  .p-interview-single__name {
    padding: 0.6875rem;
    border-top: 1px solid #393939;
    border-width: 1px;
    font-size: 1.25rem;
  }
  .p-interview-single__message {
    padding: 0.75rem;
    font-size: 1.25rem;
  }
  .p-single__body {
    margin-top: 1.5rem;
  }
  .p-single__body > * + * {
    margin-top: 1rem;
  }
  .p-single__body h2 {
    margin-top: 1.5rem;
    padding: 0.75rem;
    padding-left: 1.25rem;
    border-width: 1px;
    font-size: 1.125rem;
  }
  .p-single__body h2::before {
    width: 0.625rem;
    border-width: 1px;
  }
  .p-single__body h2.has-text-align-center {
    padding: 0.75rem;
  }
  .p-single__body .career-box .wp-block-table table {
    border-width: 1px;
  }
  .p-single__body .career-box .wp-block-table td {
    padding: 0.5rem 0.75rem;
    border-width: 1px;
    font-size: 0.875rem;
  }
  .p-single__body .career-box .wp-block-table td:first-child {
    width: 6.5rem;
    font-size: 1rem;
    vertical-align: top;
    white-space: nowrap;
  }
  .p-single__body li,
  .p-single__body p,
  .p-single__body td {
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .p-single__body .wp-block-image {
    margin-top: 1.5rem;
  }
  .p-single__body .wp-block-image img {
    border-width: 1px;
    border-radius: 1.25rem;
  }
  .p-single__body .flow-list {
    margin-top: 1rem;
  }
  .p-single__body .flow-list tbody {
    gap: 2rem;
  }
  .p-single__body .flow-list td {
    padding: 0.5rem 0.75rem;
    border-width: 1px;
    font-size: 0.875rem;
  }
  .p-single__body .flow-list td:first-child {
    min-width: 4.1875rem;
    max-width: 4.1875rem;
    font-size: 1rem;
  }
  .p-single__body .flow-list td:first-child::after {
    bottom: -1rem;
    width: 0.875rem;
    height: 1rem;
  }
  .p-single__body .state-list {
    flex-direction: column;
    margin-top: 1rem;
    gap: 1.25rem;
  }
  .p-single__body .state-list .wp-block-image {
    flex: 112;
  }
  .p-single__body .state-list .wp-block-image img {
    border-radius: 0.625rem;
  }
  .p-single__body .state-list .wp-block-column {
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    gap: 0.75rem;
  }
  .p-single__body .state-list .wp-block-paragraph {
    flex: 198;
    font-weight: 700;
  }
  .l-section-rounded:has(.p-interview__title) {
    padding-bottom: 3.75rem;
  }
  .p-discussion-single {
    padding-block: 2rem 3.75rem;
  }
  .p-discussion-single__title {
    margin-bottom: 2.25rem;
    padding: 1rem 2.1875rem;
    border-radius: 6.25rem;
    font-size: 1.25rem;
  }
  .p-discussion-single__title::before {
    width: 1.375rem;
    height: 1.875rem;
  }
  .p-discussion-single__pic {
    margin-top: 2.25rem;
  }
  .p-discussion-single__pic::before {
    width: 5.625rem;
    height: 1.875rem;
    border-width: 1px;
    border-radius: 1.25rem 0;
    background: url(../img/on-air_sp.svg) no-repeat center/3.875rem auto #ff0004;
  }
  .p-discussion-single__pic img {
    border-width: 1px;
    border-radius: 1.25rem;
  }
  .p-single__body--discussion {
    margin-top: 1rem;
  }
  .p-single__body--discussion li,
  .p-single__body--discussion p,
  .p-single__body--discussion td {
    font-size: 1rem;
  }
  .p-single__body--discussion .p-interview__post {
    font-size: 0.875rem;
  }
  .p-single__body--discussion .speech-box {
    margin-bottom: 1rem;
    gap: 1rem;
  }
  .p-single__body--discussion .speech-box .icon-speech {
    flex-basis: 4rem !important;
    gap: 0.5rem;
  }
  .p-single__body--discussion .speech-box .icon-speech p {
    font-size: 0.875rem !important;
  }
  .p-single__body--discussion .speech-box p {
    margin-top: 0;
    font-size: 0.875rem !important;
  }
  .p-single__body--discussion .p-interview__list {
    margin-top: 1.75rem;
    gap: 1.75rem;
  }
  .p-single__body--discussion .p-interview__item {
    width: 100%;
  }
  .p-single__body--discussion .p-interview__head {
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: 1.5rem;
    background-position: 0 2.5rem !important;
    background-size: 41% !important;
  }
  .p-single__body--discussion .p-interview__pic {
    display: block;
    aspect-ratio: 27/35;
  }
  .p-single__body--discussion .p-interview__info {
    align-items: flex-start;
    min-height: clamp(5.425rem, 2.1958333333rem + 5.1666666667vw, 7.75rem);
    border: none;
    text-align: left;
  }
  .p-single__body--discussion .p-interview__name {
    font-size: 5.2vw;
  }
  .p-single__body--discussion .p-interview__text {
    margin-top: 1rem;
    font-size: 1rem;
  }
  .p-single__body--discussion .p-interview__bubble {
    min-height: 4.375rem;
    padding: 0.75rem 1rem;
    font-size: 1rem;
  }
  .p-discussion-single__items {
    padding-top: 1rem;
    gap: 2.5rem;
  }
  .p-jobs-single {
    padding-block: 2rem 0;
  }
  .p-jobs-single .p-jobs-single__inner {
    max-width: 100%;
  }
  .p-jobs-single__title {
    font-size: 1.5rem;
  }
  .p-single__body--jobs {
    margin-top: 1.75rem;
  }
  .p-single__body--jobs > * + *,
  .p-single__body--region > * + * {
    margin-top: 1.5rem;
  }
  .p-single__body--jobs > p.wp-block-paragraph:first-child {
    font-size: 1rem;
  }
  .p-jobs-single__eyecatch img {
    border-width: 1px;
    border-radius: 1.25rem;
  }
  .p-single__body--jobs .job-charm-box h2.wp-block-heading,
  .p-single__body--jobs .job-content-box h2.wp-block-heading,
  .p-single__body--jobs h2.wp-block-heading.has-text-align-center,
  .p-single__body--region .job-charm-box h2.wp-block-heading,
  .p-single__body--region .job-content-box h2.wp-block-heading,
  .p-single__body--region .job-environment-box h2.wp-block-heading,
  .p-single__body--region > h2.wp-block-heading {
    padding: 0.75rem;
    font-size: 1.125rem;
  }
  .p-single__body--jobs .job-charm-box h2.wp-block-heading br,
  .p-single__body--jobs .job-content-box h2.wp-block-heading br,
  .p-single__body--jobs h2.wp-block-heading.has-text-align-center br,
  .p-single__body--region .job-charm-box h2.wp-block-heading br,
  .p-single__body--region .job-content-box h2.wp-block-heading br,
  .p-single__body--region .job-environment-box h2.wp-block-heading br,
  .p-single__body--region > h2.wp-block-heading br {
    display: block;
  }
  .p-single__body--jobs h2.wp-block-heading.has-text-align-center,
  .p-single__body--region > h2.wp-block-heading {
    margin-top: 1.5rem;
    border-width: 1px;
  }
  .p-single__body .faq-box h2.wp-block-heading {
    font-size: 1.5rem;
  }
  .p-single__body--jobs .job-charm-box,
  .p-single__body--jobs .job-content-box,
  .p-single__body--region .job-charm-box,
  .p-single__body--region .job-content-box {
    border-width: 1px;
  }
  .p-single__body--jobs .job-content-item,
  .p-single__body--region .job-content-item {
    padding: 0.75rem;
    border-top-width: 1px;
  }
  .p-single__body--jobs
    .job-content-item
    > .wp-block-group__inner-container
    > *
    + *,
  .p-single__body--region
    .job-content-item
    > .wp-block-group__inner-container
    > *
    + * {
    margin-top: 0.5rem;
  }
  /* .wp-block-group__inner-container {
    padding: 0 20px;
  } */
  .p-single__body--jobs .job-content-title,
  .p-single__body--region .job-content-title {
    font-size: 1.125rem;
  }
  .p-single__body--jobs .job-content-box .job-content-title,
  .p-single__body--region .job-content-box .job-content-title {
    padding-left: 1.9375rem;
  }
  .p-single__body--jobs .job-content-box .job-content-title::before,
  .p-single__body--region .job-content-box .job-content-title::before {
    top: 50%;
    width: 1.25rem;
    height: 1.1875rem;
    transform: translateY(-50%);
  }
  .p-single__body--jobs .job-charm-box .job-content-title {
    padding-left: 2.75rem;
  }
  .p-single__body--jobs .job-charm-box .job-content-title::before {
    top: 50%;
    width: 1.875rem;
    height: 1.625rem;
    transform: translateY(-50%);
    border-width: 1px;
    border-radius: 0.25rem;
    font-size: 1rem;
  }
  .p-single__body--region .job-charm-box p {
    padding: 0.75rem;
  }
  .p-single__body--region .job-charm-box p + p {
    padding-top: 0;
  }
  .p-single__body--jobs .state-list {
    flex-direction: row;
    flex-wrap: nowrap !important;
    width: 100vw;
    margin-top: 1.5rem;
    margin-inline: calc(50% - 50vw);
    overflow-x: auto;
    gap: 0.75rem;
  }
  .p-single__body--jobs .state-list .wp-block-column {
    flex: 0 0 auto;
    width: 9.6875rem;
    max-width: 9.6875rem;
  }
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready {
    display: block;
    overflow: hidden;
  }
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready
    .p-jobs-state-marquee__track {
    display: flex;
    width: -moz-max-content;
    width: max-content;
    animation: p-jobs-state-marquee var(--state-list-duration, 15s) linear
      infinite;
    will-change: transform;
  }
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready
    .p-jobs-state-marquee__group {
    display: flex;
    flex: 0 0 auto;
    padding-right: 0.75rem;
    gap: 0.75rem;
  }
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready
    .p-jobs-state-marquee__group--clone {
    display: flex !important;
  }
  .p-single__body--jobs .job-flow {
    flex-direction: column-reverse;
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
  .p-single__body--jobs .job-flow > .flow-photo {
    width: 100%;
  }
  .p-single__body--jobs .flow-list td code,
  .p-single__body--region .flow-list td code {
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
  }
  .p-single__body--jobs .flow-list td,
  .p-single__body--region .flow-list td {
    line-height: 1.4;
  }
  .p-single__body--jobs .flow-list td:first-child,
  .p-single__body--region .flow-list td:first-child {
    min-width: 9.0625rem;
    max-width: 9.0625rem;
  }
  .p-single__body--jobs .flow-list td:not(:first-child),
  .p-single__body--region .flow-list td:not(:first-child) {
    font-size: 0.875rem;
  }
  .p-single__body--jobs .flow-photo {
    flex-direction: row;
    overflow-x: auto;
    gap: 0.75rem;
  }
  .p-single__body--jobs .flow-photo .wp-block-image {
    flex: 0 0 auto;
    width: 9.0625rem;
  }
  .p-single__body--jobs .flow-photo .wp-block-image img {
    border-radius: 0.625rem;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready {
    display: block;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    overflow: hidden;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready
    .p-jobs-flow-marquee__track {
    display: flex;
    width: -moz-max-content;
    width: max-content;
    animation: p-jobs-flow-marquee var(--flow-photo-duration, 16s) linear
      infinite;
    will-change: transform;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready
    .p-jobs-flow-marquee__group {
    display: flex;
    flex: 0 0 auto;
    padding-right: 0.75rem;
    gap: 0.75rem;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready
    .p-jobs-flow-marquee__group--clone {
    display: flex !important;
  }
  .p-single__body--jobs .l-section-rounded {
    margin-top: 2rem;
  }
  .p-single__body--jobs .p-jobs-discussion {
    margin-top: 2rem;
    padding-bottom: 0.75rem;
  }
  .p-single__body--jobs .p-jobs-discussion__title {
    font-size: 1.5rem;
  }
  .p-jobs-discussion .p-discussion__item {
    margin-top: 1.5rem;
  }
  .p-jobs-discussion .p-discussion__item-intro .p-discussion__item-img {
    flex: 0 0 auto;
  }
  .p-jobs-discussion .p-discussion__item:has(.p-discussion__item-link:hover) {
    transform: translate(0.75rem, 0.75rem);
  }
  .p-jobs-discussion .p-discussion__item-link:hover {
    margin-right: 0;
  }
  .p-single__body--jobs .l-section-rounded h2.p-interview__title {
    font-size: 1.5rem;
  }
  .p-single__body--jobs .l-section-rounded .p-interview__post {
    font-size: 1rem;
  }
  .p-single__body--jobs .l-section-rounded .p-interview__text {
    font-weight: 700;
    font-size: 1rem;
  }
  .p-single__body--jobs > h2.wp-block-heading {
    margin-top: 2rem;
    font-size: 1.5rem;
  }
  .p-single__body--jobs .faq-title {
    min-height: 2.625rem;
    margin-top: 1.5rem;
    padding: 0.625rem 0.75rem 0.625rem 1.125rem;
    border-width: 1px;
    font-size: 1.125rem;
  }
  .p-single__body--jobs .faq-title::before {
    width: 0.625rem;
    border-right-width: 1px;
  }
  .p-single__body--jobs h2.wp-block-heading + .faq-title {
    margin-top: 1.75rem;
  }
  .p-single__body--jobs .faq-title + .wp-block-paragraph {
    margin-top: 1rem;
  }
  .p-work-sub__intro {
    padding-bottom: 2rem;
  }
  .p-work-sub__intro-inner {
    gap: 28px;
  }
  .p-work-sub__intro-content {
    width: 100%;
  }
  .p-work-sub__intro-copy {
    margin-bottom: 1rem;
    font-size: 1.5rem;
    line-height: 1.5;
    text-align: center;
  }
  .p-work-sub__intro-text {
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-work-sub__flow-item {
    display: block;
    margin-bottom: 34px;
    border-width: 1px;
  }
  .p-work-sub__flow-item::after {
    bottom: -22px;
    border-top-width: 10px;
    border-right-width: 17px;
    border-left-width: 17px;
  }
  .p-work-sub__flow-label {
    flex-direction: row;
    width: 100%;
    padding: 7px 12px;
    gap: 12px;
    border-right: none;
    border-bottom: 1px solid #393939;
    border-radius: 19px 19px 0 0;
  }
  .p-work-sub__flow-num {
    width: 26px;
    height: 26px;
    border-width: 1px;
    border-radius: 4px;
    font-size: 1rem;
  }
  .p-work-sub__flow-role {
    font-size: 1rem;
  }
  .p-work-sub__flow-role-line {
    display: inline;
  }
  .p-work-sub__flow-role-line + .p-work-sub__flow-role-line {
    margin-left: 0.4em;
  }
  .p-work-sub__flow-body {
    padding: 12px;
  }
  .p-work-sub__flow-card {
    padding: 12px;
    gap: 12px;
    border-width: 1px;
    border-radius: 10px;
  }
  .p-work-sub__flow-figure {
    width: calc(69 / 272 * 100%);
  }
  .p-work-sub__flow-figure--pc {
    display: none;
  }
  .p-work-sub__flow-title {
    margin-bottom: 8px;
    font-size: 0.875rem;
  }
  .p-work-sub__flow-card--sp-full .p-work-sub__flow-title {
    text-align: center;
  }
  .p-work-sub__flow-text {
    font-size: 0.875rem;
  }
  .p-work-sub__flow-text + .p-work-sub__flow-text {
    margin-top: 8px;
  }
  .p-work-sub__flow-checks {
    gap: 8px;
  }
  .p-work-sub__flow-check {
    gap: 6px;
    font-size: 0.875rem;
  }
  .p-work-sub__flow-check::before {
    width: 16px;
    height: 16px;
  }
  .p-work-sub__cycle {
    padding: 16px 12px 12px;
    border-width: 1px;
    border-radius: 20px;
  }
  .p-work-sub__cycle-title {
    margin-bottom: 12px;
    gap: 8px;
    font-size: 1rem;
  }
  .p-work-sub__cycle-title::before,
  .p-work-sub__cycle-title::after {
    width: 21px;
    height: 18px;
  }
  .p-work-sub__cycle-columns {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .p-work-sub__cycle-column {
    border-width: 1px;
    border-radius: 10px;
  }
  .p-work-sub__cycle-head {
    padding: 6px 10px;
    border-bottom-width: 1px;
    border-radius: 9px 9px 0 0;
    font-size: 0.875rem;
  }
  .p-work-sub__cycle-list {
    padding: 12px;
    gap: 8px;
  }
  .p-work-sub__cycle-item {
    gap: 6px;
    font-size: 0.875rem;
  }
  .p-work-sub__cycle-item::before {
    width: 16px;
    height: 16px;
  }
  .p-work-sub__cycle-emblem {
    position: relative;
    top: auto;
    left: auto;
    width: 112px;
    margin: -12px auto -8px;
    transform: none;
  }
  .p-work-sub__cycle-emblem::before,
  .p-work-sub__cycle-emblem::after {
    position: absolute;
    background: url(../img/work-sub_cycle-sparkle.svg) no-repeat center
      center/contain;
    content: "";
  }
  .p-work-sub__cycle-emblem::before {
    top: 17.9%;
    left: 86.6%;
    width: 41px;
    height: 36px;
  }
  .p-work-sub__cycle-emblem::after {
    top: 54.5%;
    left: -14.3%;
    width: 32px;
    height: 28px;
    transform: scaleX(-1);
  }
  .p-work-sub__voice {
    border-radius: 30px 30px 0 0;
    padding-block: 32px;
  }

  .p-work-sub__voice-panel {
    border-width: 1px;
  }
  .p-work-sub__voice-heading {
    margin-bottom: 1.75rem;
  }
  .p-work-sub__voice-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .p-work-sub__voice-card {
    border-width: 1px;
    border-radius: 1rem;
  }
  .p-work-sub__voice-pic {
    border-right-width: 1px;
    width: calc(97 / 320 * 100%);
  }
  .p-work-sub__voice-text {
    width: calc(223 / 320 * 100%);
    padding: 15px 12px;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
  .p-work-sub__jobs {
    padding-block: 1.9375rem 2rem;
    border-width: 1px;
    border-radius: 1.875rem 1.875rem 0 0;
  }
  .p-work-sub__jobs-heading .c-section-title-row__en {
    flex-shrink: 0;
    width: 10.1875rem;
    height: 2.1875rem;
    padding: 0.3125rem 0.6875rem 0.25rem;
    font-size: 1rem;
  }
  .p-work-sub__jobs-heading .c-section-title-row__jp {
    font-size: 1.5rem;
    white-space: nowrap;
  }
  .p-work-sub__jobs-heading {
    flex-direction: column;
    margin-bottom: 1.9375rem;
    gap: 0.5625rem;
  }
  .p-work-sub__list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }
  .p-work-sub__item--featured .p-work-sub__item-card {
    grid-template-columns: 1fr;
  }
  .p-work-sub__item--featured .p-work-sub__item-pic {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #393939;
  }
  .p-work-sub__item--featured .p-work-sub__item-pic img {
    aspect-ratio: 308/182;
    height: auto;
    min-height: 0;
  }
  .p-work-sub__item--featured .p-work-sub__item-info {
    display: flex;
  }
  .p-work-sub__item--featured .p-work-sub__item-head {
    display: block;
    padding: 1rem 1rem 0;
    border-bottom: none;
    text-align: left;
  }
  .p-work-sub__item--featured .p-work-sub__item-title {
    display: block;
    border-bottom: none;
    font-size: 1.25rem;
    text-align: center;
  }
  .p-work-sub__item--featured .p-work-sub__item-catch {
    width: 100%;
    margin-top: 0.75rem;
    padding: 0;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .p-work-sub__item--featured .p-work-sub__item-text {
    width: auto;
    padding: 0.5625rem 1rem 0;
    font-size: 1rem;
    line-height: 1.6;
  }
  .p-work-sub__item--featured .p-work-sub__item-more {
    margin: 0.75rem 1rem 1rem auto;
  }
  .p-work-sub__item-link::after {
    border-width: 1px;
    border-radius: 1rem 3rem 1rem 1rem;
  }
  .p-work-sub__item-link {
    --item-offset: 0.75rem;
  }
  .p-work-sub__item-card {
    min-height: auto;
    border-width: 1px;
    border-radius: 1rem 3rem 1rem 1rem;
  }
  .p-work-sub__item-title {
    display: flex;
    grid-row: 1;
    grid-column: 2;
    align-items: center;
    justify-content: flex-start;
    padding-inline: 1rem;
    border-bottom: 1px solid #393939;
    font-size: 1.125rem;
    text-align: center;
  }
  .p-work-sub__item-catch {
    grid-column: 1/-1;
    margin: 0;
    padding: 0.75rem 1rem 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .p-work-sub__item-pic {
    grid-row: 1;
    grid-column: 1;
    width: 100%;
    border-right: 1px solid #393939;
    border-bottom: 1px solid #393939;
  }
  .p-work-sub__item-pic img {
    aspect-ratio: 160/94;
    height: auto;
  }
  .p-work-sub__item-info {
    display: contents;
  }
  .p-work-sub__item-head {
    display: contents;
  }
  .p-work-sub__item-text {
    grid-column: 1/-1;
    padding: 0.75rem 1rem 0;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .p-work-sub__item-more::after {
    width: 1.25rem;
    height: 1.25rem;
    border-width: 1px;
    background-size: 0.75rem;
  }
  .p-work-sub__item-more {
    grid-column: 1/-1;
    margin: 0.5rem 1rem 1rem 0;
    padding-right: 1.75rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  .p-jobs-single--region {
    padding-bottom: 5rem;
  }
  .p-region__anchors {
    margin-top: 1.75rem;
    gap: 0.75rem;
  }
  .p-region__anchor {
    width: calc(50% - 0.375rem);
  }
  .p-region__anchor-link::after {
    width: 0.5625rem;
    height: 0.625rem;
  }
  .p-region__anchor-link {
    min-height: 3.125rem;
    padding: 0.375rem;
    gap: 0.5rem;
    border-width: 1px;
    font-size: 1.125rem;
  }
  .p-region-recruit,
  .p-single__body--region h2.wp-block-heading {
    scroll-margin-top: 4.375rem;
  }
  .p-region-recruit {
    padding-bottom: 2.75rem;
  }
  .p-region-recruit .l-inner {
    max-width: 100%;
  }
  .p-region__eyecatch {
    margin-top: 1.5rem;
  }
  .p-region__eyecatch img {
    border-width: 1px;
    border-radius: 1.25rem;
  }
  .p-single__body--region .job-charm-box .wp-block-list {
    padding: 0.75rem 0.75rem 9.875rem;
    gap: 0.75rem;
    background-position: center bottom;
    background-size: 9.75rem;
  }
  .p-single__body--region .job-charm-box .wp-block-list li::before {
    top: 0.1875rem;
    width: 1.125rem;
    height: 1.125rem;
  }
  .p-single__body--region .job-charm-box .wp-block-list li {
    padding-left: 1.875rem;
    font-size: 1rem;
  }
  .p-single__body--region .state-list .wp-block-column {
    flex-direction: column;
    width: 100%;
    gap: 0;
    border-width: 1px;
    border-radius: 0.625rem;
  }
  .p-single__body--region .state-list {
    gap: 1rem;
  }
  .p-single__body--region .state-list .wp-block-image {
    flex: none;
  }
  .p-single__body--region .state-list .wp-block-image img {
    border-bottom-width: 1px;
    border-radius: 0;
  }
  .p-single__body--region .state-list .wp-block-paragraph {
    flex: none;
    padding: 0.75rem 0.75rem 1rem;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5;
  }
  .p-single__body--region .state-list .wp-block-paragraph strong {
    font-size: 1.125rem;
  }
  .p-single__body--region .wp-block-buttons {
    margin-top: 1.5rem;
  }
  .p-single__body--region .wp-block-button {
    width: 100%;
    max-width: 25rem;
    margin-inline: auto;
  }
  .p-single__body--region .wp-block-button__link::before {
    right: 0.75rem;
    width: 1.125rem;
    height: 1.125rem;
  }
  .p-single__body--region .wp-block-button__link::after {
    bottom: -0.75rem;
    left: -1px;
    width: calc(100% + 2px);
    border: 1px solid #393939;
    border-radius: 0.375rem;
  }
  .p-single__body--region .wp-block-button__link {
    width: 100%;
    min-height: 3.75rem;
    padding: 0.375rem;
    border-width: 1px;
    border-radius: 0.375rem;
    font-size: 1rem;
  }
  .p-region-recruit__title {
    margin-bottom: 1.75rem;
    font-size: 1.5rem;
  }
  .p-region-recruit__table {
    border-width: 1px;
  }
  .p-region-recruit__table tr:not(:first-child) td,
  .p-region-recruit__table tr:not(:first-child) th {
    border-top-width: 1px;
  }
  .p-region-recruit__table th {
    width: 5.375rem;
    padding: 0.625rem 0.75rem;
    border-right-width: 1px;
    font-size: 0.875rem;
    white-space: normal;
  }
  .p-region-recruit__table td {
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
  }
  .p-vision__intro {
    padding-block: 0 2rem;
  }
  .p-vision__intro-inner {
    grid-template-columns: 1fr;
    grid-template-areas: "photo" "catch" "text";
    row-gap: 1.5rem;
  }
  .p-vision__catch {
    width: 100%;
    max-width: 18.75rem;
    margin-top: 1rem;
    margin-inline: auto;
  }
  .p-vision__intro-body {
    margin-top: 0;
  }
  .p-vision__lead {
    font-size: 1.25rem;
    text-align: center;
  }
  .p-vision__text {
    margin-block: 0.5rem;
    font-size: 1rem;
    text-align: center;
  }
  .p-vision__catch {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-vision__intro-body {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-vision__intro-photo {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .p-vision__intro-photo {
    max-width: 25rem;
    margin-inline: auto;
  }
  .p-vision__frame {
    top: 0.75rem;
    left: 0.75rem;
    border: 1px solid #393939;
    border-radius: 3.75rem 3.75rem 1.25rem 1.25rem;
  }
  .p-vision__pic {
    border: 1px solid #393939;
    border-radius: 2.5rem 2.5rem 1rem 1rem;
  }
  .p-vision-message {
    padding-block: 2rem;
  }
  .p-vision-message__head {
    margin-bottom: 1.75rem;
    gap: 0.75rem;
  }
  .p-vision-concept__badge,
  .p-vision-message__badge {
    padding: 0.625rem 0.75rem 0.4375rem;
    border: 1px solid #393939;
    font-size: 1rem;
  }
  .p-vision-concept__title,
  .p-vision-message__title {
    font-size: 1.5rem;
  }
  .p-vision-message__body {
    flex-direction: column;
    gap: 2.5rem;
  }
  .p-vision-message__paragraph {
    font-size: 0.9375rem;
  }
  .p-vision-message__sign {
    margin-top: 1.25rem;
    gap: 0.625rem;
  }
  .p-vision-message__sign-post {
    font-size: 0.8125rem;
  }
  .p-vision-message__sign-name {
    font-size: 1.125rem;
  }
  .p-vision-message__photo {
    order: -1;
    width: 100%;
    max-width: 25rem;
    margin-inline: auto;
  }
  .p-vision-message__frame {
    top: 0.875rem;
    left: 0.875rem;
    border: 1px solid #393939;
    border-radius: 2.5rem 1rem 1rem 1rem;
  }
  .p-vision-message__pic {
    border: 1px solid #393939;
    border-radius: 2.5rem 1rem 1rem 1rem;
  }
  .p-vision-message__bubble {
    top: 1.25rem;
    left: 0.625rem;
    width: 7.5rem;
  }
  .p-vision-concept .l-inner::after {
    display: none;
  }
  .p-vision-concept__head {
    justify-content: center;
    margin-bottom: 1.75rem;
    gap: 0.75rem;
  }
  .p-vision-concept__catch {
    width: 100%;
    max-width: 22.5rem;
    margin-inline: auto;
  }
  .p-vision-concept__lead {
    margin-top: 1.25rem;
    font-size: 1rem;
    text-align: center;
  }
  .p-vision-concept__contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 2rem;
    gap: 1rem 0.9375rem;
  }
  .p-vision-concept__contents .p-vision-concept__item {
    width: 100%;
    max-width: 10rem;
    padding: 0.375rem;
    border: 1px solid #393939;
    border-radius: 0.25rem;
    background: #fff;
  }
  .p-vision-concept__contents .p-vision-concept__item:nth-child(1) {
    background: #00ece8;
  }
  .p-vision-concept__contents .p-vision-concept__item:nth-child(2) {
    background: #fbff8a;
  }
  .p-vision-concept__contents .p-vision-concept__item:nth-child(3) {
    background: #c2ff96;
  }
  .p-vision-concept__contents .p-vision-concept__item:nth-child(4) {
    background: #ffb0ce;
  }
  .p-vision-concept__contents .p-vision-concept__item:nth-child(5) {
    background: #e2f5ff;
  }
  .p-vision-concept__contents .p-vision-concept__item-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.5rem 0.375rem;
    gap: 0.25rem;
    border: 1px solid #393939;
    border-radius: 0.25rem;
    background-color: #fff;
  }
  .p-vision-concept__contents .p-vision-concept__item-title {
    font-weight: 700;
    font-size: 1.125rem;
    text-align: center;
    white-space: nowrap;
  }
  .p-vision-concept__contents .p-vision-concept__item-text {
    color: #000;
    font-weight: 500;
    font-size: 0.875rem;
  }
  .p-environment__intro {
    padding-top: 0.25rem;
    padding-bottom: 2.75rem;
  }
  .p-environment__intro-inner {
    display: flex;
    flex-direction: column;
    gap: 2.25rem;
  }
  .p-environment__intro-title {
    font-size: 1.4375rem;
    text-align: center;
    white-space: nowrap;
  }
  .p-environment__intro-text {
    margin-top: 1.25rem;
    font-size: 1rem;
    line-height: 1.5625;
    text-align: center;
  }
  .p-environment__intro-image {
    order: -1;
  }
  .p-environment__intro-image img {
    border-width: 1px;
    border-radius: 3.75rem 3.75rem 1.25rem 1.25rem;
  }
  .p-environment__intro-frame {
    inset: 0.75rem -0.75rem -0.75rem 0.75rem;
    border-width: 1px;
    border-radius: 3.75rem 3.75rem 1.25rem 1.25rem;
  }
  .p-environment__nav .c-btns {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 1.75rem;
    gap: 2rem 1.25rem;
  }
  .p-environment__nav .c-btn__link {
    min-height: 3.125rem;
    padding-block: 0.125rem;
    border-radius: 0.25rem;
    line-height: 1.3;
  }
  .p-environment__nav .c-btn__link::after {
    border-radius: 0.25rem;
  }
  .p-environment__nav-link {
    height: 3.125rem;
    border-width: 1px;
    border-radius: 0.25rem;
    font-size: 1rem;
  }
  .p-environment__nav-link::before {
    inset: 0.5rem 0 -0.5rem;
    border-width: 1px;
    border-radius: 0.25rem;
  }
  .p-environment__nav-link::after {
    right: 1rem;
    width: 0.4375rem;
    height: 0.4375rem;
    border-width: 0 1px 1px 0;
  }
  .p-environment__section {
    padding-block: 2rem;
    scroll-margin-top: 4.375rem;
  }
  .p-environment__section--growth {
    border-width: 1px;
    border-radius: 1.875rem 1.875rem 0 0;
  }
  .p-environment__section--growth .c-section-title-row {
    flex-direction: row;
  }
  .p-environment__section--growth .p-environment__lead {
    margin-top: 1.25rem;
  }
  .p-environment__section--work-style {
    border-width: 1px;
    border-radius: 1.875rem 1.875rem 0 0;
  }
  .p-environment__section--work-style .c-section-title-row {
    flex-direction: row;
  }
  .p-environment__section--work-style .p-environment__lead {
    margin-top: 1.25rem;
  }
  .p-environment__lead {
    margin-top: 1.25rem;
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-environment__feature-list {
    grid-template-columns: 1fr;
    margin-top: 1.75rem;
    gap: 1.25rem;
  }
  .p-environment__feature {
    grid-template-columns: 30fr 46fr;
    border-width: 1px;
    border-radius: 1.25rem;
  }
  .p-environment__feature img {
    height: 5rem;
    border-bottom: 1px solid #393939;
    border-right-width: 1px;
  }
  .p-environment__feature-title {
    display: flex;
    align-items: center;
    min-height: 5rem;
    padding: 1rem 0.75rem;
    border-bottom: 1px solid #393939;
    font-size: 1rem;
    line-height: 1.45;
  }
  .p-environment__feature p {
    grid-column: 1/3;
    padding: 0.75rem 1rem 1rem;
    font-size: 0.875rem;
    line-height: 1.4285714286;
  }
  .p-environment__case-heading {
    margin: 2rem auto 1.375rem;
    padding-bottom: 0.25rem;
    border-bottom-width: 0.125rem;
    font-size: 1.375rem;
    line-height: 1;
  }
  .p-environment__cases {
    gap: 2rem;
  }
  .p-environment__case-tabs {
    max-width: none;
    border-width: 1px;
  }
  .p-environment__case-tab {
    min-height: 4.3125rem;
    padding-inline: 0.5rem;
    gap: 0.375rem;
    font-size: 1.125rem;
    line-height: 1.45;
    text-align: center;
  }
  .p-environment__case-tab + .p-environment__case-tab {
    border-left-width: 1px;
  }
  .p-environment__case-tab.is-active::before {
    width: 1.1875rem;
    height: 1.03125rem;
  }
  .p-environment__case-panel {
    margin-top: 1.5rem;
  }
  /* 入社後の成長イメージのリード文はSPのみ左揃え */
  .p-environment__case-panel .p-environment__lead {
    text-align: left;
  }
  .p-environment__step-list {
    grid-template-columns: 1fr;
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
  .p-environment__step {
    border-width: 1px;
    border-radius: 1.25rem 3.75rem 1.25rem 1.25rem;
  }
  .p-environment__step-body {
    padding: 1rem;
  }
  .p-environment__step-period {
    min-height: 1.8125rem;
    font-size: 1.125rem;
  }
  .p-environment__step-title {
    margin-top: 1rem;
    font-size: 1.125rem;
    text-align: center;
  }
  .p-environment__step-text {
    margin-top: 0.5rem;
    gap: 1.25rem;
    font-size: 0.875rem;
    line-height: 1.43;
  }
  .p-environment__step-tasks {
    margin-top: 1rem;
    padding: 0.75rem;
  }
  .p-environment__step-tasks-title {
    font-size: 1rem;
  }
  .p-environment__step-tasks ul {
    margin-top: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.7;
  }
  .p-environment__work-style {
    padding-bottom: 2rem;
  }
  .p-environment__work-style .p-about-sub__grid-list--orange {
    margin-top: 1.75rem;
    gap: 1.25rem;
  }
  .p-environment__work-style .p-about-sub__metric-item--balance {
    height: 7.0625rem;
    min-height: 7.0625rem;
  }
  .p-environment__metrics {
    grid-template-columns: repeat(2, 9.375rem);
    margin-top: 1.5rem;
    gap: 1.25rem;
  }
  .p-environment__metrics li {
    min-height: 7.0625rem;
    padding: 0.5rem;
    border-width: 1px;
  }
  .p-environment__metrics span {
    font-size: 1rem;
  }
  .p-environment__metrics strong {
    font-size: 1.75rem;
  }
  .p-environment__metrics em {
    font-size: 0.875rem;
  }
  .p-environment__metric-image {
    transform: translate(48%, 18%);
  }
  .p-environment__metric-image--01 {
    max-width: 3.375rem;
    max-height: 4.625rem;
  }
  .p-environment__metric-image--02 {
    max-width: 1.9375rem;
    max-height: 4.625rem;
  }
  .p-environment__metric-image--03 {
    max-width: 2.375rem;
    max-height: 4.375rem;
  }
  .p-environment__benefits {
    padding-bottom: 2rem;
  }
  .p-environment__benefits .c-section-title-row {
    flex-direction: row;
  }
  .p-environment__benefits .p-environment__lead {
    margin-top: 1.25rem;
  }
  .p-environment__benefit-list {
    margin-top: 1.75rem;
    gap: 1.5rem;
  }
  .p-environment__benefit-group {
    display: block;
  }
  .p-environment__benefit-title {
    min-height: 3.125rem;
    border-width: 1px;
    border-radius: 0.625rem;
    font-size: 1.125rem;
  }
  .p-environment__benefit-group ul {
    grid-template-columns: repeat(3, 1fr);
    margin-top: 1rem;
    gap: 0.625rem;
  }
  .p-environment__benefit-group li {
    min-height: 6.375rem;
    padding: 0.6875rem 0.375rem 0.5625rem;
    gap: 0.5625rem;
    border-width: 1px;
    border-radius: 0.625rem;
  }
  .p-environment__benefit-group img {
    max-width: 100%;
    height: 1.875rem;
  }
  .p-environment__benefit-group p {
    margin-top: 0;
    font-size: 0.875rem;
    line-height: 1.43;
  }
  .p-environment__benefit-group small {
    position: absolute;
    bottom: -0.3125rem;
    left: 0;
    width: 100%;
    transform: translateY(100%);
    font-size: 0.75rem;
  }
  .p-environment__intro-body {
    width: 100%;
  }
  .u-pc {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
  .u-mt-1 {
    margin-top: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mb-1 {
    margin-bottom: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mr-1 {
    margin-right: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-ml-1 {
    margin-left: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-my-1 {
    margin-block: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mx-1 {
    margin-inline: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mt-2 {
    margin-top: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mb-2 {
    margin-bottom: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mr-2 {
    margin-right: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-ml-2 {
    margin-left: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-my-2 {
    margin-block: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mx-2 {
    margin-inline: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mt-3 {
    margin-top: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mb-3 {
    margin-bottom: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mr-3 {
    margin-right: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-ml-3 {
    margin-left: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-my-3 {
    margin-block: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mx-3 {
    margin-inline: clamp(
      0.35rem,
      0.1416666667rem + 0.3333333333vw,
      0.5rem
    ) !important;
  }
  .u-mt-4 {
    margin-top: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mb-4 {
    margin-bottom: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mr-4 {
    margin-right: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-ml-4 {
    margin-left: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-my-4 {
    margin-block: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mx-4 {
    margin-inline: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mt-5 {
    margin-top: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mb-5 {
    margin-bottom: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mr-5 {
    margin-right: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-ml-5 {
    margin-left: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-my-5 {
    margin-block: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mx-5 {
    margin-inline: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mt-6 {
    margin-top: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mb-6 {
    margin-bottom: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mr-6 {
    margin-right: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-ml-6 {
    margin-left: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-my-6 {
    margin-block: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mx-6 {
    margin-inline: clamp(
      0.7rem,
      0.2833333333rem + 0.6666666667vw,
      1rem
    ) !important;
  }
  .u-mt-7 {
    margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mb-7 {
    margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mr-7 {
    margin-right: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-ml-7 {
    margin-left: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-my-7 {
    margin-block: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mx-7 {
    margin-inline: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mt-8 {
    margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mb-8 {
    margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mr-8 {
    margin-right: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-ml-8 {
    margin-left: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-my-8 {
    margin-block: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mx-8 {
    margin-inline: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mt-9 {
    margin-top: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mb-9 {
    margin-bottom: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mr-9 {
    margin-right: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-ml-9 {
    margin-left: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-my-9 {
    margin-block: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mx-9 {
    margin-inline: clamp(1.05rem, 0.425rem + 1vw, 1.5rem) !important;
  }
  .u-mt-10 {
    margin-top: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mb-10 {
    margin-bottom: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mr-10 {
    margin-right: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-ml-10 {
    margin-left: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-my-10 {
    margin-block: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mx-10 {
    margin-inline: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mt-11 {
    margin-top: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mb-11 {
    margin-bottom: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mr-11 {
    margin-right: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-ml-11 {
    margin-left: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-my-11 {
    margin-block: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mx-11 {
    margin-inline: clamp(
      1.4rem,
      0.5666666667rem + 1.3333333333vw,
      2rem
    ) !important;
  }
  .u-mt-12 {
    margin-top: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-mb-12 {
    margin-bottom: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-mr-12 {
    margin-right: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-ml-12 {
    margin-left: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-my-12 {
    margin-block: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-mx-12 {
    margin-inline: clamp(
      1.75rem,
      0.7083333333rem + 1.6666666667vw,
      2.5rem
    ) !important;
  }
  .u-text-base {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (prefers-reduced-motion: reduce) and (max-width: 767px) {
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready {
    overflow-x: auto;
  }
  .p-single__body--jobs
    .state-list.js-state-list-marquee.is-state-marquee-ready
    .p-jobs-state-marquee__track {
    animation: none;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready {
    overflow-x: auto;
  }
  .p-single__body--jobs
    .job-flow-box
    .flow-photo.js-flow-photo-marquee.is-flow-photo-marquee-ready
    .p-jobs-flow-marquee__track {
    animation: none;
  }
}
@media screen and (max-width: 375px) {
  html {
    font-size: 4.267vw;
  }
}
@media print {
  :where(mark) {
    border-width: 1px;
    border-style: dotted;
  }
}
@keyframes p-fv-bubble-pop {
  0% {
    transform: var(--bubble-transform) scale(0.35);
    opacity: 0;
  }
  48% {
    transform: var(--bubble-transform) scale(1.13);
    opacity: 1;
  }
  68% {
    transform: var(--bubble-transform) scale(0.92);
  }
  84% {
    transform: var(--bubble-transform) scale(1.04);
  }
  100% {
    transform: var(--bubble-transform) scale(1);
    opacity: 1;
  }
}
@keyframes p-fv-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@keyframes p-discussion-bubble-pop {
  0% {
    transform: translateY(clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem))
      scale(0.42);
    opacity: 0;
  }
  48% {
    transform: translateY(0) scale(1.12);
    opacity: 1;
  }
  68% {
    transform: translateY(0) scale(0.92);
  }
  84% {
    transform: translateY(0) scale(1.04);
  }
  100% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}
@keyframes p-environment-bubble-pop {
  0% {
    transform: var(--environment-bubble-transform)
      translateY(clamp(0.7875rem, 0.31875rem + 0.75vw, 1.125rem)) scale(0.42);
    opacity: 0;
  }
  48% {
    transform: var(--environment-bubble-transform) translateY(0) scale(1.12);
    opacity: 1;
  }
  68% {
    transform: var(--environment-bubble-transform) translateY(0) scale(0.92);
  }
  84% {
    transform: var(--environment-bubble-transform) translateY(0) scale(1.04);
  }
  100% {
    transform: var(--environment-bubble-transform) translateY(0) scale(1);
    opacity: 1;
  }
}
@keyframes p-cta-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@keyframes p-cta-scroll-img {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
@keyframes p-jobs-state-marquee {
  100% {
    transform: translateX(-50%);
  }
}
@keyframes p-jobs-flow-marquee {
  100% {
    transform: translateX(-50%);
  }
}
