/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 21 2025 | 07:25:45 */
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap");
@import url("https://fonts.cdnfonts.com/css/jsmath-cmbx10");
@import url("https://fonts.googleapis.com/css2?family=Alex+Brush&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=B612:ital,wght@0,400;0,700;1,400;1,700&display=swap");
@import url("https://fonts.cdnfonts.com/css/jsmath-cmti10");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDMincho:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Antonio:wght@100..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%; /* 2 */
  -Webkit-tap-highlight-color: transparent; /* 3 */
}
html * {
  line-height: 1.15; /* 1 */
  font-feature-settings: "palt" 1;
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

.entry-content > *,
.body .article {
  margin-bottom: 0 !important;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

:is(.article ul, .article ol) {
  padding-left: 24px;
  margin-bottom: 0;
}
:is(.article ul, .article ol) li {
  margin: 0;
  list-style: initial !important;
  font-size: 14px;
  line-height: 2 !important;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  overflow: visible; /* 2 */
  clear: both;
  color: inherit;
  border-top-width: 1px;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
}
a:focus, a:focus-visible {
  outline: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle; /* 1 */
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-Webkit-inner-spin-button,
[type=number]::-Webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-Webkit-search-decoration {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-Webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button; /* 1 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-collapse: collapse;
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

a[href*=tel] {
  pointer-events: none;
}
@media (width <= 600px) {
  a[href*=tel] {
    pointer-events: auto;
  }
}

.acc-img {
  position: absolute;
  z-index: -1;
}

button:focus-visible, button:focus {
  outline: none;
}

:root {
  --color-key: #0774c1;
  --color-accent: #eaecf5;
  --color-text: #0a0a0a;
  --color-border: #707070;
  --color-border-l: #cecece;
  --color-first: #bcbcc4;
  --color-second: #aeaecb;
  --color-third: #8181c2;
  --ff-base: "Noto Sans JP", sans-serif;
  --ff-shippori: "Shippori Mincho", serif;
  --ff-zen-kaku: "Zen Kaku Gothic New", sans-serif;
  --ff-inter: "Inter", sans-serif;
  --ff-jsMath: "jsMath-cmbx10", sans-serif;
  --ff-alex: "Alex Brush", cursive;
  --ff-arimo: "Arimo", sans-serif;
  --ff-jsMath: "jsMath-cmti10", sans-serif;
  --ff-biz: "BIZ UDMincho", serif;
  --ff-antonio: "Antonio", sans-serif;
  --ff-oonishi: "ta-oonishi", sans-serif;
  --ff-yu-mincho: yu-mincho-pr6n, sans-serif;
  --contents-width: 1200px;
  --contents-space: 144px;
  --nav_height: 120px;
  --nav_height-sp: 44px;
  --r-color-key: #009dff;
  --r-color-accent: #114B98;
  --r-color-accent2: #b1cfdb;
}
@media (max-width: 820px) {
  :root {
    --contents-space: 64px;
  }
}

.l-aside {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 240px;
  height: 100vh;
  background-color: var(--color_base_gray);
  filter: drop-shadow(0 4px 24px rgba(0, 0, 0, 0.1));
}
@media screen and (max-width: 1024px) {
  .l-aside {
    position: relative;
    width: 100%;
    height: auto;
    transition: all 500ms ease-out;
  }
  .l-aside.is-scroll {
    top: -44px;
  }
}
.l-aside__nav {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 40px 24px 0 24px;
}
.l-aside__nav-anchor {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 500;
}
.l-aside__nav-anchor.is-active {
  font-weight: 700;
}
.l-aside__nav-anchor.is-active .is-active-icon {
  display: block;
}
.l-aside__nav-anchor.is-active svg:not(.is-active-icon) {
  display: none;
}
.l-aside__nav-anchor svg {
  width: 22px;
}
.l-aside__nav-anchor .is-active-icon {
  display: none;
}
.l-aside__nav--sub {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-inline: 24px;
  margin-bottom: 32px;
}
.l-aside__nav--sub a {
  font-size: 13px;
  color: var(--color_gray);
}
.l-aside .c-section-hairLine {
  width: calc(100% - 48px);
  margin-inline: auto;
}
.l-aside__copyright {
  padding-inline: 24px;
  font-family: var(--ff_roboto);
  font-size: 10px;
  line-height: 1.6;
  color: var(--color_gray);
}
@media screen and (max-width: 1024px) {
  .l-aside .l-aside__nav,
  .l-aside .c-section-hairLine,
  .l-aside .l-aside__nav--sub,
  .l-aside .l-aside__copyright {
    display: none;
  }
  .l-aside .c-hamburger--2 .l-aside__nav,
  .l-aside .c-hamburger--2 .c-section-hairLine,
  .l-aside .c-hamburger--2 .l-aside__nav--sub,
  .l-aside .c-hamburger--2 .l-aside__copyright {
    display: flex;
  }
}
.l-aside--shop {
  position: fixed;
  top: 0;
  right: 0;
  width: 436px;
  height: 100vh;
  padding-top: 90px;
  padding-bottom: 60px;
  overflow-y: auto;
  background: #fff;
  scrollbar-width: none;
  scroll-behavior: smooth;
  transition: all 150ms linear;
}
@media (max-width: 1200px) {
  .l-aside--shop {
    width: 320px;
  }
}
@media screen and (max-width: 1024px) {
  .l-aside--shop {
    position: static;
    width: 100%;
    height: auto;
    padding-top: 0;
    padding-bottom: 120px;
  }
}
.l-aside--shop::-webkit-scrollbar {
  display: none;
}

.l-contents {
  width: 100%;
  max-width: var(--contents-width);
  margin-inline: auto !important;
}

.l-main {
  width: calc(100% - 240px);
  margin-left: 240px;
}
@media screen and (max-width: 1024px) {
  .l-main {
    width: 100%;
    margin-left: 0;
  }
}
.l-main:has(.l-aside--shop) .p-contents__wrapper {
  width: calc(100% - 436px);
  height: calc(100vh - 90px);
  padding: 0;
}
@media (max-width: 1200px) {
  .l-main:has(.l-aside--shop) .p-contents__wrapper {
    width: calc(100% - 320px);
  }
}
@media screen and (max-width: 1024px) {
  .l-main:has(.l-aside--shop) .p-contents__wrapper {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    height: auto;
  }
  .l-main:has(.l-aside--shop) .p-contents__wrapper .p-contents__heading {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .l-main:has(.l-aside--shop) .p-article {
    flex-direction: column;
  }
}
@media screen and (min-width: 1025px) {
  .l-main:has(.l-aside--shop) .p-article__heading {
    display: none;
  }
}

.rl-contents {
  width: 100%;
  max-width: 728px;
  margin-inline: auto !important;
}
@media screen and (max-width: 600px) {
  .rl-contents {
    padding-inline: 16px;
  }
}
.rl-contents--w750 {
  width: 100%;
  max-width: 750px;
  margin-inline: auto !important;
}
@media screen and (max-width: 600px) {
  .rl-contents--w750 {
    padding-inline: 16px;
  }
}

.c-breadcrumbs__wrapper {
  width: 100%;
  padding: 16px 0;
  margin-bottom: 72px;
  background-color: #fff;
}
@media (max-width: 1200px) {
  .c-breadcrumbs__wrapper {
    padding-left: 24px;
  }
}
@media screen and (max-width: 1024px) {
  .c-breadcrumbs__wrapper {
    margin-bottom: 24px;
  }
}
.c-breadcrumbs__wrapper .c-breadcrumbs__item:nth-last-of-type(1) {
  pointer-events: none;
}
.c-breadcrumbs__list {
  display: flex;
  align-items: center;
  gap: 4px;
}
.c-breadcrumbs__item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 16px;
  font-weight: 500;
}
.c-breadcrumbs__item::after {
  content: ">";
}
.c-breadcrumbs__item:last-child::after {
  display: none;
}

.c-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 420px;
  height: 88px;
  padding-inline: 64px;
  margin-inline: auto;
  font-size: clamp(20px, 3.333vw, 22px);
  color: var(--color-text);
  background-color: #fff;
  border-radius: 100px;
}
@media screen and (max-width: 600px) {
  .c-btn {
    width: 100%;
    height: 62px;
    padding-inline: 32px;
  }
}
.c-btn img {
  width: 54px;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 600px) {
  .c-btn img {
    width: 38px;
  }
}

.c-company-info__box {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-bottom: 96px;
}
.c-company-info-top {
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
}
.c-company-info-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.c-company-info-bottom > div {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.c-company-name {
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 700;
  line-height: 1.5;
}
.c-company__logo {
  flex-shrink: 0;
  width: 220px;
  height: 220px;
  border-radius: 200px;
}
.c-company__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-contact {
  padding: 80px 136px;
  background-color: var(--color-key-thin2);
}
.c-contact-tel__box {
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-bottom: 16px;
  font-family: Inter;
  font-size: clamp(32px, 5.333vw, 50px);
  font-weight: 700;
  color: var(--color-key);
}
.c-contact-tel__box span {
  font-size: clamp(20px, 3.333vw, 25px);
}

.c-copyright {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  background-color: #fff;
}
.c-copyright small {
  font-size: 12px;
  color: #fff;
}

.c-detail-contents {
  padding-block: 120px;
  background-color: #fff;
  border-radius: 20px;
}
.c-detail-contents__wrapper {
  margin-top: -136px;
}
.c-detail__image {
  width: 100%;
  aspect-ratio: 11/4;
  margin-bottom: 96px;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-detail__ttl {
  font-weight: 500;
  line-height: 1.5;
  color: #000;
}
.c-detail__ttl.is-fs--32 {
  font-size: clamp(26px, 4.333vw, 32px);
}
.c-detail__ttl.is-fs--40 {
  font-size: clamp(32px, 5.333vw, 40px);
  font-weight: 700;
}
.c-detail__read {
  font-weight: 400;
  line-height: 1.66;
}
.c-detail__read.is-fs--18 {
  font-size: clamp(16px, 2.667vw, 18px);
}
.c-detail__read.is-fs--22 {
  font-size: clamp(18px, 3vw, 22px);
}
.c-detail__heading {
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 700;
  line-height: 1.3;
}
.c-detail__heading--sub {
  font-size: clamp(14px, 2.333vw, 16px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-key);
}
.c-detail__heading-box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  padding-bottom: 24px;
  margin-bottom: 72px;
  border-bottom: 1px solid var(--color-border);
}
.c-detail__heading-box::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 75px;
  height: 3px;
  content: "";
  background-color: var(--color-key);
}
.c-detail__heading.is-type2 {
  font-size: clamp(20px, 3.333vw, 24px);
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}
.c-detail__heading.is-type2::after {
  display: block;
  width: 96px;
  height: 4px;
  margin: 21px auto 56px auto;
  content: "";
  background-color: var(--color-key);
}

main:has(.c-detail-contents__wrapper) {
  padding-bottom: 112px;
  overflow: hidden;
  background-color: var(--color-gray-thin);
}

.c-digest__list {
  display: flex;
  flex-wrap: wrap;
  gap: 80px 24px;
}
.c-digest__item {
  display: block;
  padding: 40px;
  border-radius: 10px;
  background-color: #fff;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.15));
}
@media screen and (max-width: 600px) {
  .c-digest__item {
    padding: 24px;
  }
}
.c-digest__item + .c-digest__item {
  margin-top: 48px;
}
.c-digest__item:nth-last-of-type(1) {
  margin-bottom: 196px;
}
.c-digest__item-top {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}
@media screen and (max-width: 600px) {
  .c-digest__item-top {
    flex-direction: column;
    gap: 24px;
  }
}
.c-digest__item-top + .c-digest__item-bottom {
  padding-top: 24px;
  margin-top: 24px;
  border-top: 1px solid var(--color-border);
}
.c-digest__item-top img {
  width: 100%;
  max-width: 300px;
  aspect-ratio: 3/2.2;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 600px) {
  .c-digest__item-top img {
    max-width: 100%;
  }
}
.is-vertical .c-digest__item-top {
  flex-direction: column;
  padding-bottom: 0;
  border-bottom: none;
}
.c-digest__item-ttl {
  margin-bottom: 10px;
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
}
.is-vertical .c-digest__item-ttl {
  margin-bottom: 24px;
}
.c-digest__item-read {
  margin-bottom: 24px;
  font-size: clamp(16px, 2.667vw, 20px);
  line-height: 1.5;
}
.c-digest__item-read + .c-digest__item-ttl {
  margin-bottom: 32px;
}
.c-digest__item-bottom {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
}
@media screen and (max-width: 600px) {
  .c-digest__item-bottom {
    flex-direction: column;
  }
}
.c-digest__item.is-vertical {
  display: flex;
  flex-direction: column;
  width: calc((100% - 48px) / 3);
  padding: 20px;
}
.c-digest__item.is-vertical + .c-digest__item.is-vertical {
  margin-top: 0;
}
.c-digest__item.is-vertical:nth-last-of-type(1) {
  margin-bottom: 0;
}
.c-digest-recruiting {
  margin-top: 24px;
  font-size: clamp(14px, 2.333vw, 16px);
  text-align: right;
}

.is-application .c-digest__item:nth-last-of-type(1) {
  margin-bottom: 0;
}

.c-figure__box {
  display: flex;
  align-items: center;
}
@media (max-width: 1200px) {
  .c-figure__box {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .c-figure__box {
    flex-direction: column;
    padding-inline: 24px;
  }
}
@media (max-width: 1200px) {
  .c-figure__box .c-section__heading-box {
    padding-left: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-figure__box .c-section__anchor {
    padding-left: 0;
  }
}
.c-figure__box.is-about {
  gap: 104px;
}
@media screen and (max-width: 600px) {
  .c-figure__box.is-about {
    gap: 40px;
  }
}
.c-figure__box.is-about > div:has(.c9figure__image) {
  overflow: hidden;
  border-radius: 8px;
}
.c-figure__box.is-about .c-figure__image {
  width: 588px;
  aspect-ratio: 16/9;
}
.c-figure__box.is-mission {
  gap: 56px;
  padding: 80px 24px 144px 24px;
}
.c-figure__box.is-mission .c-figure__image {
  max-width: 748px;
}
@media screen and (max-width: 600px) {
  .c-figure__box.is-mission {
    padding-bottom: 56px;
  }
}
.c-figure__box.is-support {
  flex-direction: row-reverse;
  gap: 96px;
}
@media screen and (max-width: 1024px) {
  .c-figure__box.is-support {
    flex-direction: column;
    gap: 40px;
  }
}
.c-figure__box.is-support .c-figure__image {
  max-width: 709px;
}
.c-figure__box.is-strength {
  position: relative;
  z-index: 3;
  gap: 240px;
  padding-left: 80px;
}
@media screen and (max-width: 1024px) {
  .c-figure__box.is-strength {
    gap: 16px;
    padding-inline: 0;
  }
  .c-figure__box.is-strength > div {
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  .c-figure__image {
    width: 100%;
  }
}

.c-form-item {
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  font-size: clamp(14px, 2.333vw, 16px);
  font-weight: 500;
  border-top: 1px solid var(--color-border-l);
}
@media screen and (max-width: 820px) {
  .c-form-item {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    border-top: 0;
  }
}
.c-form-item dt,
.c-form-item dd {
  padding: 24px 32px 24px 0;
}
.c-form-item dt {
  min-width: 240px;
}
.c-form-item dt div {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 400;
}
@media screen and (max-width: 820px) {
  .c-form-item dt {
    width: 100%;
    min-width: initial;
    padding-right: 0;
    padding-bottom: 0;
  }
}
.c-form-item dt > p {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.c-form-item dd {
  width: calc(100% - 272px);
}
@media screen and (max-width: 820px) {
  .c-form-item dd {
    width: 100%;
    padding: 16px 0 0 0;
  }
}
.c-form-item > span {
  font-size: 12px;
}
.c-form-item textarea {
  width: 100%;
  height: 240px;
}
.c-form-item input,
.c-form-item select,
.c-form-item textarea {
  padding: 16px;
  color: var(--color-text);
  background-color: #fff;
  border: 1px solid var(--color-border-l);
  border-radius: 4px;
  transition: all 500ms ease-in;
}
.c-form-item input:focus-visible,
.c-form-item select:focus-visible,
.c-form-item textarea:focus-visible {
  color: rgba(0, 0, 0, 0.68);
  outline: 1px solid #000;
}
.c-form-item input:focus-visible::-moz-placeholder, .c-form-item select:focus-visible::-moz-placeholder, .c-form-item textarea:focus-visible::-moz-placeholder {
  color: var(--color-gray2);
}
.c-form-item input:focus-visible::placeholder,
.c-form-item select:focus-visible::placeholder,
.c-form-item textarea:focus-visible::placeholder {
  color: var(--color-gray2);
}
.c-form-item input[type=text], .c-form-item input[type=tel], .c-form-item input[type=email],
.c-form-item select[type=text],
.c-form-item select[type=tel],
.c-form-item select[type=email],
.c-form-item textarea[type=text],
.c-form-item textarea[type=tel],
.c-form-item textarea[type=email] {
  width: 100%;
}
.c-form-item input[type=text].is-small, .c-form-item input[type=tel].is-small, .c-form-item input[type=email].is-small,
.c-form-item select[type=text].is-small,
.c-form-item select[type=tel].is-small,
.c-form-item select[type=email].is-small,
.c-form-item textarea[type=text].is-small,
.c-form-item textarea[type=tel].is-small,
.c-form-item textarea[type=email].is-small {
  width: 15%;
}
@media screen and (max-width: 600px) {
  .c-form-item input[type=text].is-small, .c-form-item input[type=tel].is-small, .c-form-item input[type=email].is-small,
  .c-form-item select[type=text].is-small,
  .c-form-item select[type=tel].is-small,
  .c-form-item select[type=email].is-small,
  .c-form-item textarea[type=text].is-small,
  .c-form-item textarea[type=tel].is-small,
  .c-form-item textarea[type=email].is-small {
    width: 22%;
  }
}
.c-form-item input[type=text].is-middle, .c-form-item input[type=tel].is-middle, .c-form-item input[type=email].is-middle,
.c-form-item select[type=text].is-middle,
.c-form-item select[type=tel].is-middle,
.c-form-item select[type=email].is-middle,
.c-form-item textarea[type=text].is-middle,
.c-form-item textarea[type=tel].is-middle,
.c-form-item textarea[type=email].is-middle {
  width: 40%;
}
@media screen and (max-width: 820px) {
  .c-form-item select {
    width: 100%;
  }
}
.c-form-item .wpcf7-not-valid-tip {
  margin-top: 12px;
  font-weight: 700;
}
.c-form__heading {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  background-color: var(--color-gray2);
}
.c-form__body {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-bottom: 0;
}
.c-form__body > div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.c-form__body > div span {
  color: var(--color-gray2);
}
.c-form__body > div h4 {
  margin-left: 16px;
}
.c-form__body > div:has(select) {
  position: relative;
}
.c-form__body > div:has(select)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 42px;
  aspect-ratio: 4/5;
  content: "";
  background-color: #949494;
  background-image: url("../img/icon-triangle.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 16px 16px;
  border-radius: 0 4px 4px 0;
  pointer-events: none;
}
.c-form-ttl {
  display: flex;
  align-items: center;
  gap: 16px;
}
.c-form-ttl > p {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 0 !important;
}
.c-form--required {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 56px;
  padding: 4px 8px;
  font-size: 12px;
  color: #f33;
  border: 1px solid #f33;
}
.c-form-btn__box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  width: 100%;
  padding-bottom: 32px;
  margin: 64px auto 0;
  text-align: center;
  border-bottom: 1px solid #ccc;
}
.c-form-btn__box > input {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25%;
  padding: 16px 24px;
  font-family: "Noto Sans JP";
  font-size: clamp(1rem, 0.958rem + 0.19vw, 1.125rem);
  border-radius: 100px;
  filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.15));
  transition: all 300ms ease-in-out;
}
@media (max-width: 600px) {
  .c-form-btn__box > input {
    width: 100%;
  }
}
.c-form-btn__box > input[type=submit] {
  background-color: rgb(32, 32, 32);
  color: #fff;
  line-height: unset;
}
.c-form-btn__box > input[type=button] {
  background-color: rgb(255, 255, 255);
  color: #454545;
}
.c-form__label {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.c-form__label:has([type=radio])::before {
  display: block;
  width: 24px;
  height: 24px;
  content: "";
  border: 1px solid var(--color-border);
  border-radius: 100px;
  transition: all 250ms ease-in;
}
.c-form__label:has([type=radio])::after {
  position: absolute;
  top: 50%;
  left: 14px;
  display: block;
  width: 0;
  height: 0;
  content: "";
  opacity: 0;
  transition: all 250ms ease-in;
}
.c-form__label:has([type=checkbox])::before {
  display: block;
  width: 24px;
  height: 24px;
  content: "";
  border: 1px solid var(--color-border);
  transition: all 250ms ease-in;
}
.c-form__label:has([type=checkbox])::after {
  position: absolute;
  top: 50%;
  left: 14px;
  display: block;
  width: 0;
  height: 0;
  content: "";
  opacity: 0;
  transition: all 250ms ease-in;
}
.c-form__label:has([name=sex]:checked)::before {
  border-color: var(--color-key);
}
.c-form__label:has([name=sex]:checked)::after {
  position: absolute;
  top: 50%;
  left: 4px;
  display: block;
  width: 16px;
  height: 16px;
  background-color: var(--color-key);
  border-radius: 100px;
  opacity: 1;
  transform: translateY(-50%);
}
.c-form__label:has([name=sex]:checked:disabled)::before {
  border-color: var(--color-gray);
}
.c-form__label:has([name=sex]:checked:disabled)::after {
  background-color: var(--color-gray);
}
.c-form__label:has(#privacy:checked)::before {
  border-color: var(--color-key);
}
.c-form__label:has(#privacy:checked)::after {
  position: absolute;
  top: -13px;
  left: -6px;
  display: block;
  width: 32px;
  height: 32px;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNiIgaGVpZ2h0PSIyMiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggc3Ryb2tlPSIjOUQ5RDlFIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0ibTEuMTkzIDcuOTM4IDkuNjMzIDEyLjIxNSAxMy4yNzItMTguNTciLz4KPC9zdmc+") no-repeat center center/contain;
  opacity: 1;
}
.c-form__label:has(:disabled) {
  cursor: default;
}

input[type=submit] {
  max-width: 320px;
  text-align: center;
  border-radius: 8px;
}

p:has(input[type=submit]) {
  margin-bottom: 0;
  text-align: center;
}

input[type=radio] {
  display: none;
}

select {
  position: relative;
  color: #777 !important;
}

.c-hamburger {
  position: absolute;
  top: 85px;
  right: -100%;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 150vh;
  background-color: rgba(1, 12, 24, 0.9);
  opacity: 0;
  transition: all 500ms ease-in-out;
}
.c-hamburger-toggle {
  display: none;
}
.c-hamburger-btn {
  display: none;
}
@media screen and (max-width: 600px) {
  .c-hamburger-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: rgba(255, 255, 255, 0.5);
  }
  .c-hamburger-btn span {
    position: relative;
    width: 16px;
    margin-top: -8px;
  }
  .c-hamburger-btn span::before, .c-hamburger-btn span::after {
    position: absolute;
    display: block;
    width: 16px;
    height: 1.5px;
    content: "";
    background-color: #000;
    transition: all 300ms ease-in;
  }
  .c-hamburger-btn span::before {
    top: 8px;
  }
  .c-hamburger-btn span::after {
    top: 0;
  }
}
.c-hamburger-btn--close {
  position: absolute;
  top: 12px;
  right: 20px;
  width: 16px;
  height: 16px;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSI+CiAgPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSIjRDlEOUQ5IiByeD0iOCIvPgogIDxwYXRoIHN0cm9rZT0iIzZGNkY2RiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuMTQzIiBkPSJtNC42NjcgNC42NjcgNi42NjYgNi42NjZtMC02LjY2Ni02LjY2NyA2LjY2NiIvPgo8L3N2Zz4=") no-repeat center center/contain;
}
.c-hamburger__nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  width: 80%;
  margin-top: 64px;
}
.c-hamburger__nav a {
  color: #fff;
}
.c-hamburger__nav-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 56px;
  height: 100%;
  padding-top: 40px;
  border-right: 1px solid var(--color_border);
}
.c-hamburger .l-aside__nav {
  padding: 0;
}
.c-hamburger-search__box {
  width: calc(100% - 56px);
  padding: 40px 20px 0 20px;
}
.c-hamburger__heading {
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: 700;
}
.c-hamburger__heading--sub {
  font-size: 16px;
  color: var(--color_gray);
}
.c-hamburger__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0);
  pointer-events: none;
  transition: all 500ms ease-in-out;
}

.c-hamburger-toggle:checked ~ .c-hamburger {
  top: 85px;
  right: 0;
  opacity: 1;
}

.c-hamburger-toggle:checked ~ .c-hamburger-btn span::before {
  top: 4px;
  transform: rotate(45deg);
}
.c-hamburger-toggle:checked ~ .c-hamburger-btn span::after {
  top: 4px;
  transform: rotate(-45deg);
}

body:has(.is-open) .c-hamburger__overlay {
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}

body:has(.c-hamburger-toggle:checked) {
  overflow: hidden;
}
body:has(.c-hamburger-toggle:checked) .c-hamburger__overlay {
  pointer-events: auto;
  z-index: 0;
}

.c-heading--main {
  margin-bottom: 10px;
  font-size: clamp(22px, 3.667vw, 26px);
  font-weight: 700;
  line-height: 1.26;
  color: var(--color_main);
}
.c-heading-shop-name {
  margin-bottom: 8px;
  font-size: clamp(17px, 2.833vw, 22px);
  font-weight: 600;
}
@media screen and (max-width: 600px) {
  .c-heading-shop-name {
    margin-bottom: 5px;
    font-weight: 700;
  }
}
.c-heading-decoration {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
  font-size: clamp(20px, 3.333vw, 22px);
  font-weight: 600;
}
.c-heading-decoration::before {
  display: block;
  width: 8.35px;
  height: 22px;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2223%22%20fill%3D%22none%22%3E%3Cg%20fill%3D%22%2383D19E%22%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20d%3D%22M6.82%203.56a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%208.298a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%2013.025a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM6.82%2017.762a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%2022.489a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM1.53%203.56a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%208.298a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%2013.025a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM1.53%2017.762a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%2022.489a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06Z%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%20.5h8.35v22H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}
@media screen and (max-width: 600px) {
  .c-heading-decoration {
    font-weight: 700;
  }
}
.c-heading-check-icon {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: clamp(16px, 2.667vw, 19px);
  font-weight: 700;
}
.c-heading-check-icon::before {
  display: block;
  width: 22px;
  height: 19.5px;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2220%22%20fill%3D%22none%22%3E%3Cpath%20stroke%3D%22%2383D19E%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223%22%20d%3D%22M14.97%202.535H2.74c-.68%200-1.24.55-1.24%201.24v13.28c0%20.68.55%201.24%201.24%201.24h13.28c.68%200%201.24-.55%201.24-1.24v-6.12%22%2F%3E%3Cpath%20stroke%3D%22%2383D19E%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223%22%20d%3D%22m4.65%209.875%205.57%203.1%2010.27-11.26%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}
.c-heading-fs--14_15-bold {
  margin-bottom: 5px;
  font-size: clamp(14px, 2.333vw, 15px);
  font-weight: 700;
}
.c-heading-fs--17-bold {
  margin-bottom: 10px;
  font-size: 17px;
  font-weight: 700;
}
.c-heading-fs--17_19-bold {
  margin-bottom: 5px;
  font-size: clamp(17px, 2.833vw, 19px);
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (max-width: 600px) {
  .c-heading-fs--17_19-bold {
    font-weight: 700;
  }
}

.c-icon__list {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-key);
}
.p-company .c-icon__list {
  color: var(--color-txt);
}
.c-icon__list + .c-icon__list {
  margin-top: 8px;
}
.p-company .c-icon__list dt span[class*=icon-]::before {
  color: var(--color-text);
}
.c-icon__list dt .icon-calendar::before {
  color: var(--color-key);
}
.c-icon__list dt svg {
  width: 13px;
  height: 19px;
}
.c-icon__list dd {
  margin-bottom: 0;
  font-size: clamp(15px, 2.5vw, 16px);
  font-weight: 400;
}
.c-detail-contents .c-icon__list dd {
  font-size: clamp(17px, 2.833vw, 20px);
}
.c-icon__list + .c-tag__list {
  margin-top: 21px;
}
.c-icon__list.is-color-accent span[class*=icon-]::before {
  color: var(--color-accent);
}
.c-icon__list.is-color-accent dd {
  color: var(--color-accent);
}

.c-info-table {
  width: 100%;
}
.c-info-table td {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
}
.c-info-table a:not(.c-btn) {
  text-decoration: underline;
}
.c-info-table.is-type1 tr {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type1 th,
.c-info-table.is-type1 td {
  display: block;
  padding-block: 24px;
}
.c-info-table.is-type1 th {
  min-width: 280px;
  padding-inline: 48px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 700;
}
.c-info-table.is-type2 tr {
  display: flex;
  align-items: center;
  gap: 32px;
  border-top: 1px dotted var(--color-border);
}
.c-info-table.is-type2 th,
.c-info-table.is-type2 td {
  display: block;
  padding-block: 24px;
}
.c-info-table.is-type2 th {
  min-width: 128px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 700;
  color: var(--color-accent);
}
.c-info-table.is-type3 {
  border-top: 1px solid var(--color-border);
}
.c-info-table.is-type3 tr {
  display: flex;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type3 th,
.c-info-table.is-type3 td {
  padding: 72px 56px;
}
.c-info-table.is-type3 th {
  min-width: 256px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
  white-space: nowrap;
  background-color: var(--color-gray-thin);
}
.c-info-table.is-type3 td {
  width: 100%;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
}
.c-info-table.is-type4 tr {
  display: flex;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type4 th,
.c-info-table.is-type4 td {
  padding: 32px 40px;
}
.c-info-table.is-type4 th {
  min-width: 224px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 500;
  white-space: nowrap;
  background-color: var(--color-gray-thin);
}
.c-info-table.is-type4 td {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
}

.c-list li {
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 500;
}
.c-list li + li {
  margin-top: 24px;
}
.c-list--no {
  list-style: none;
  counter-reset: list-num;
}
.c-list--no li {
  display: flex;
  align-items: center;
  gap: 24px;
}
.c-list--no li::before {
  font-size: clamp(26px, 4.333vw, 30px);
  font-weight: 500;
  counter-increment: list-num;
  content: counter(list-num) ".";
  line-height: 1.6;
  color: var(--color-key);
}
.c-list--dot {
  padding-left: 32px;
  list-style: disc;
}
.c-list--dot li {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.7;
}
.c-list--dot li + li {
  margin-top: 16px;
}

.c-map__iframe {
  width: 100%;
  aspect-ratio: 3/4;
}
.c-map__link {
  text-decoration: underline;
}
.c-map__link-box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  margin: 4px 0 16px 0;
}
.c-map__link-box svg {
  width: 24px;
  height: 24px;
}
.c-map__link-box svg path {
  fill: var(--color_key);
}
.c-map--access-info {
  margin-bottom: 16px;
}
.c-map--access-info + .c-map--access-info {
  margin-bottom: 0;
}

.c-news-container {
  container-type: inline-size;
  container-name: news-container;
}
.c-news__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 40px;
}
.c-news__item {
  min-height: 32px;
  font-size: clamp(16px, 2.667vw, 16px);
}
.c-news__item > * {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media screen and (max-width: 600px) {
  .p-blog__header .c-news__item > * {
    gap: 16px;
  }
}
@container news-container (max-width: 400px) {
  .c-news__item > * {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
.c-news__item > * > div {
  display: flex;
  align-items: center;
  gap: 16px;
}
@container news-container (max-width: 400px) {
  .c-news__item > * > div {
    flex-direction: row-reverse;
    justify-content: flex-start;
  }
}

.c-page__heading {
  display: block;
  width: 100%;
  padding: 72px 24px;
  margin-bottom: 24px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  text-align: center;
  color: #fff;
  background: linear-gradient(60deg, rgb(49, 221, 252) 0%, rgb(100, 124, 199) 100%);
}
@media screen and (max-width: 600px) {
  .c-page__heading {
    padding-inline: 36px;
  }
}

.c-pagination {
  width: 100%;
  max-width: 736px;
  margin: 0 auto 114px auto;
}
@media screen and (max-width: 1024px) {
  .c-pagination {
    padding-inline: 32px;
  }
}
@media screen and (max-width: 600px) {
  .c-pagination {
    padding-inline: 16px;
    margin-bottom: 40px;
  }
}
.c-pagination__list {
  display: flex;
  justify-content: space-between;
  gap: 32px;
}
.c-pagination__list.is-color-accent .c-pagination__list-current {
  background-color: var(--color-accent);
}
.c-pagination__list--inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 40px;
}
@media screen and (max-width: 600px) {
  .c-pagination__list--inner {
    gap: 16px 24px;
  }
}
.c-pagination__list-item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination__list-current {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  width: 44px;
  padding: 8px;
  font-size: clamp(16px, 2.667vw, 20px);
  font-weight: 600;
  color: var(--color-gray);
  border-radius: 100px;
  position: relative;
  color: #fff;
  background-color: var(--color-key);
}
@media screen and (max-width: 600px) {
  .c-pagination__list-current {
    width: 32px;
    height: 32px;
    padding: 4px;
  }
}
.c-pagination__list-omitted {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination__list-link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  width: 44px;
  padding: 8px;
  font-size: clamp(16px, 2.667vw, 20px);
  font-weight: 600;
  color: var(--color-gray);
  border-radius: 100px;
}
@media screen and (max-width: 600px) {
  .c-pagination__list-link {
    width: 32px;
    height: 32px;
    padding: 4px;
  }
}
.c-pagination__list-link.prev .c-pagination-ico {
  transform: scaleX(-1);
}
.c-pagination__list-link.prev, .c-pagination__list-link.next {
  width: auto;
  padding-inline: 0;
}
.c-pagination__list-link.prev .icon-arrow2, .c-pagination__list-link.next .icon-arrow2 {
  font-size: 32px;
}
@media screen and (max-width: 600px) {
  .c-pagination__list-link.prev .icon-arrow2, .c-pagination__list-link.next .icon-arrow2 {
    font-size: 24px;
  }
}
.c-pagination__list-link.next .icon-arrow2 {
  transform: rotate(180deg);
}
.c-pagination__list-prev {
  margin-right: auto;
}
.c-pagination__list-next {
  margin-left: auto;
}
.c-pagination-ico {
  fill: var(--color-variable1);
  height: 16px;
  width: 16px;
}
@media screen and (max-width: 600px) {
  .c-pagination-ico {
    height: 12px;
    width: 12px;
  }
}

.c-scroll__box {
  position: fixed;
  bottom: 0;
  left: 20%;
  display: block;
  width: 1px;
  height: 100px;
  overflow: hidden;
  background-color: var(--color_border);
  transition: all 400ms ease-out;
}
.c-scroll__box.scrolled {
  opacity: 0 !important;
}
.c-scroll__bar {
  width: 1px;
  height: 100px;
  background-color: rgba(33, 33, 33, 0.85);
}

.c-section__heading {
  width: 100%;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 500;
  line-height: 1.6;
}
.c-section__heading.is-en {
  font-size: clamp(24px, 4vw, 60px);
}
.c-section__heading--sub {
  width: 100%;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(16px, 2.667vw, 20px);
  font-weight: 500;
  line-height: 1.55;
}
.c-section__heading--sub.type2 {
  color: #cecece;
}
.c-section__heading-box {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  margin: 0 auto 28px auto;
}
@media (max-width: 1200px) {
  .c-section__heading-box {
    padding-inline: 24px;
  }
}
.c-section__heading-box.is-reverse {
  flex-direction: column-reverse;
  align-items: flex-end;
  float: right;
}
@media (max-width: 1200px) {
  .c-section__heading-box.is-reverse {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    float: none;
  }
}
@media screen and (max-width: 1024px) {
  .c-section__heading-box.is-reverse {
    max-width: 720px;
  }
}
.c-section__heading-box.type2 {
  gap: 8px;
  margin-bottom: 48px;
}
.c-section__heading-tile {
  position: relative;
  display: flex;
  width: 110px;
  height: 6px;
  background-color: #cfbbe3;
}
.c-section__heading-tile::after {
  position: absolute;
  right: 0;
  width: 55px;
  height: 6px;
  content: "";
  background-color: #d1e8fa;
}
.c-section__read {
  font-size: 16px;
  line-height: 2.3;
}
.c-section__read + .c-section__read {
  margin-top: 48px;
}
@media screen and (max-width: 600px) {
  .c-section__read + .c-section__read {
    margin-top: 32px;
  }
}
.c-section__read a:not([href*=tel]) {
  text-decoration: underline;
}
.c-section__anchor {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  padding-left: 32px;
  font-size: 20px;
}
@media screen and (max-width: 600px) {
  .c-section__anchor {
    padding-left: 0;
  }
}
@media screen and (max-width: 600px) {
  .c-section__anchor.is-pc {
    display: none;
  }
}
.c-section__anchor.is-sp {
  display: none;
}
@media screen and (max-width: 600px) {
  .c-section__anchor.is-sp {
    display: flex;
  }
}
@media screen and (max-width: 600px) {
  .c-section__anchor {
    justify-content: center;
  }
}
.c-section__anchor img {
  width: 54px;
  height: 54px;
}
.c-section__hr {
  margin-block: 40px;
  border-top-color: var(--color-border);
}
@media screen and (max-width: 600px) {
  .c-section__hr {
    display: none;
  }
}

.c-sns__list {
  display: flex;
  align-items: center;
  gap: 8px;
}
.c-sns__item {
  width: 30px;
  height: 30px;
  aspect-ratio: 1/1;
}
.c-sns__item span[class*=icon-] {
  font-size: 30px;
}

:root {
  --color-tab-bg: #eaecf5;
}

.c-tab__container {
  margin: 0 auto 96px auto;
}
.c-tab__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.c-tab__btn {
  flex: 1;
  padding: 24px 16px;
  font-size: clamp(18px, 3vw, 20px);
  text-align: center;
  border-radius: 16px 16px 0 0;
  cursor: pointer;
  transition: 0.3s;
}
.c-tab__btn:hover {
  font-weight: 700;
  color: #fff;
  background-color: #e2e4ed;
}
@media screen and (max-width: 1024px) {
  .c-tab__btn:hover {
    color: var(--color-text);
  }
}
.c-tab__btn.active {
  font-weight: 700;
  background-color: var(--color-tab-bg);
}
.c-tab__content {
  display: none;
  padding: 48px;
  background-color: var(--color-tab-bg);
  border-radius: 0 0 16px 16px;
}
@media screen and (max-width: 600px) {
  .c-tab__content {
    padding: 24px;
  }
}
.c-tab__content.active {
  display: block;
}

.c-tag__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.p-information__item .c-tag__list {
  flex-wrap: nowrap;
  flex-shrink: 0;
}
.c-tag__list.is-gray {
  gap: 16px;
}
.c-tag__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  font-size: 12px;
  color: var(--color-key);
  border: 1px solid var(--color-key);
  border-radius: 100px;
}
.is-gray .c-tag__item {
  padding: 8px 12px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  color: currentColor;
  background-color: #d9d9d9;
  border: none;
  border-radius: 0;
}
.p-information__item .c-tag__item {
  font-size: clamp(14px, 2.333vw, 16px);
  color: var(--color-text);
  background-color: #dbdbdb;
  border: none;
}
.is-color-accent .c-tag__item {
  color: var(--color-accent);
  border-color: var(--color-accent);
}
.is-tag-mini .c-tag__item {
  padding: 4px 12px;
}

.rc-section {
  position: relative;
  margin-bottom: 152px;
}
@media screen and (max-width: 600px) {
  .rc-section {
    margin-bottom: 80px;
  }
}
.rc-section__ttl {
  position: relative;
  z-index: 2;
  margin-bottom: 72px;
  font-family: var(--ff-shippori);
  font-size: clamp(22px, 3.667vw, 32px);
  font-weight: 400;
  color: #fff;
}
.rc-section__ttl-box {
  margin-bottom: 72px;
  text-align: center;
}
@media screen and (max-width: 600px) {
  .rc-section__ttl-box {
    margin-bottom: 56px;
  }
}
.rc-section__read {
  font-family: var(--ff-shippori);
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  color: #fff;
}
.rc-section__read + .rc-section__read {
  margin-top: 32px;
}

.p-header {
  background-color: #fff !important;
}

.p-application-content {
  padding: 64px 64px 32px 64px;
  background-color: #fff;
}
@media screen and (max-width: 600px) {
  .p-application-content {
    padding: 24px;
  }
}
.p-application__heading {
  margin-bottom: 32px;
  font-size: clamp(20px, 3.333vw, 24px);
  font-weight: 600;
}
.p-application__box {
  padding-block: 32px;
  border-top: 1px solid var(--color-border-l);
}
@media screen and (max-width: 600px) {
  .p-application__box {
    padding: 16px;
  }
}
.p-application__box-heading {
  margin-bottom: 24px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
}
.p-application__box-read {
  font-size: 16px;
}
.p-application__box-read > * {
  line-height: 2.3;
}

.p-banner__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 60px 120px;
}
@media (max-width: 1200px) {
  .p-banner__list {
    gap: 48px;
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-banner__list {
    padding-inline: 24px;
  }
}
@media screen and (max-width: 600px) {
  .p-banner__list {
    align-items: flex-start;
    flex-direction: column;
  }
}
.p-banner__item {
  width: calc((100% - 120px) / 2);
}
.p-banner__item > *:not(h3) {
  width: 100%;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 600px) {
  .p-banner__item {
    width: 100%;
  }
}
.p-banner__heading {
  margin-top: 24px;
  font-size: 20px;
  text-align: left;
}
@media screen and (max-width: 600px) {
  .p-banner__heading {
    margin-top: 12px;
  }
}

.p-career__list {
  display: flex;
  justify-content: center;
  gap: 18px;
  padding: 64px 0 102px 0;
}
@media (max-width: 1200px) {
  .p-career__list {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-career__list {
    flex-wrap: wrap;
    gap: 36px;
    padding-inline: 24px;
  }
}
@media screen and (max-width: 600px) {
  .p-career__list {
    flex-direction: column;
    gap: 48px;
  }
}
.p-career__item {
  width: calc((100% - 36px) / 3);
}
@media screen and (max-width: 1024px) {
  .p-career__item {
    width: calc((100% - 36px) / 2);
  }
}
@media screen and (max-width: 820px) {
  .p-career__item {
    width: 100%;
  }
}
.p-career__item-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 183px;
  aspect-ratio: 1/1;
  margin: 0 auto 48px auto;
  font-family: var(--ff-base);
  font-size: 34px;
  font-weight: 500;
  background-color: #fff;
  border-width: 3px;
  border-style: solid;
  border-radius: 100px;
}
.is-first .p-career__item-icon {
  color: var(--color-first);
  border-color: var(--color-first);
}
.is-second .p-career__item-icon {
  color: var(--color-second);
  border-color: var(--color-second);
}
.is-third .p-career__item-icon {
  color: var(--color-third);
  border-color: var(--color-third);
}
.p-career__item-icon span {
  font-size: 28px;
}
.p-career__item-box {
  padding: 40px 24px 72px 24px;
  border-radius: 28px;
}
.is-first .p-career__item-box {
  background-color: var(--color-first);
}
.is-second .p-career__item-box {
  background-color: var(--color-second);
}
.is-third .p-career__item-box {
  background-color: var(--color-third);
}
.p-career__item-box-heading {
  margin-bottom: 24px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
  text-align: center;
  color: #fff;
  white-space: nowrap;
}
.p-career__item-box > div {
  padding: 24px;
  background-color: #fff;
  border-radius: 29px;
}
.p-career__read {
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 300;
  text-align: left;
  line-height: 2.3;
}
.p-career-info__list {
  display: flex;
  flex-wrap: wrap;
  gap: 80px 64px;
}
@media (max-width: 1200px) {
  .p-career-info__list {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-career-info__list {
    padding-inline: 24px;
  }
}
@media screen and (max-width: 600px) {
  .p-career-info__list {
    flex-direction: column;
    gap: 40px;
  }
}
.p-career-info__item {
  width: calc((100% - 64px) / 2);
}
@media screen and (max-width: 600px) {
  .p-career-info__item {
    width: 100%;
  }
}
.p-career-info__item img {
  width: 100%;
  margin-bottom: 24px;
}

section:has(.p-career-info__list) {
  padding-block: 72px 200px;
}
@media screen and (max-width: 600px) {
  section:has(.p-career-info__list) {
    padding: 40px 24px 96px 24px;
  }
}

.p-column__box {
  width: 100%;
  padding: 40px 72px;
  border: 1px solid var(--color-border-l);
  border-radius: 40px;
}
.p-column__box + .p-column__box {
  margin-top: 72px;
}
@media screen and (max-width: 600px) {
  .p-column__box + .p-column__box {
    margin-top: 40px;
  }
}
@media (max-width: 1200px) {
  .p-column__box {
    width: calc(100% - 80px);
    margin-inline: auto;
  }
}
@media screen and (max-width: 820px) {
  .p-column__box {
    width: calc(100% - 48px);
    padding: 32px;
    border-radius: 24px;
  }
}
.p-column--inner {
  display: flex;
  align-items: flex-start;
  gap: 72px;
}
@media screen and (max-width: 820px) {
  .p-column--inner {
    flex-direction: column-reverse;
    gap: 32px;
  }
}
.p-column__heading {
  margin-bottom: 48px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
  line-height: 2.3;
}
@media screen and (max-width: 600px) {
  .p-column__heading {
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 600px) {
  .p-column__heading br {
    display: none;
  }
}
.p-column__image {
  width: 100%;
  max-width: 450px;
  height: auto;
  margin-inline: auto;
}
@media screen and (max-width: 820px) {
  .p-column__image.is-pc {
    display: none;
  }
}
.p-column__image.is-tb_min {
  display: none;
}
@media screen and (max-width: 820px) {
  .p-column__image.is-tb_min {
    display: block;
  }
}

.p-data__heading {
  position: relative;
  margin-bottom: 26px;
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 500;
  line-height: 1.6;
}
.p-data__heading:has(.p-data__heading--small) {
  display: inline-block;
  margin-bottom: 72px;
}
.p-data__heading span {
  color: #ffcc40;
}
.p-data__heading--small {
  position: absolute;
  right: 0;
  bottom: 12px;
  font-size: 12px;
}
.p-data__heading--sub {
  font-size: 22px;
  font-weight: 600;
  padding: 0 0 16px 16px;
  margin-bottom: 72px;
  border-bottom: 1px solid #505050;
}
.p-data__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 56px;
}
.p-data__list.is-col-3 {
  gap: 32px;
}
.p-data__list.is-col-3 .p-data__item {
  width: calc((100% - 64px) / 3);
}
@media screen and (max-width: 600px) {
  .p-data__list.is-col-3 .p-data__item {
    width: 100%;
  }
}
.p-data__list.is-col-2 {
  gap: 80px 56px;
}
@media screen and (max-width: 820px) {
  .p-data__list.is-col-2 {
    gap: 32px;
  }
}
.p-data__list.is-col-2 .p-data__item {
  width: calc((100% - 56px) / 2);
}
@media screen and (max-width: 820px) {
  .p-data__list.is-col-2 .p-data__item {
    width: calc((100% - 32px) / 2);
  }
}
@media screen and (max-width: 600px) {
  .p-data__list.is-col-2 .p-data__item {
    width: 100%;
  }
}
.p-data__list.is-col-4 {
  gap: 56px;
  margin-bottom: 128px;
}
@media screen and (max-width: 820px) {
  .p-data__list.is-col-4 {
    gap: 32px;
  }
}
.p-data__list.is-col-4 .p-data__item {
  width: calc((100% - 168px) / 4);
}
@media screen and (max-width: 820px) {
  .p-data__list.is-col-4 .p-data__item {
    width: calc((100% - 96px) / 4);
  }
}
@media screen and (max-width: 600px) {
  .p-data__list.is-col-4 .p-data__item {
    width: calc((100% - 32px) / 2);
  }
}
.p-data__list.is-col-4 .p-data__item:last-child {
  width: 100%;
}
.p-data__item img {
  width: 100%;
}

.p-entry-banner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 112px 24px 88px 24px;
  text-align: center;
  color: #fff;
  background: url("https://ni-tax.com/recruit/wp-content/uploads/2025/10/312f6f385c1524fa675c6839b47dca5a-scaled.png") no-repeat center center/cover;
}
.p-entry-banner::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(19, 50, 91, 0.45);
}
.p-entry-banner > div {
  position: relative;
  z-index: 3;
}
.p-entry-banner__heading {
  margin-bottom: 13px;
  font-family: var(--ff-base);
  font-size: clamp(40px, 6.667vw, 60px);
  font-weight: 500;
  color: #fff;
}
.p-entry-banner__read {
  margin-bottom: 72px;
  font-size: clamp(16px, 2.667vw, 24px);
  font-weight: 500;
}

:not(#recruit) .p-footer {
  width: 100%;
  padding: 104px 24px 80px 24px;
  background-color: #fff;
}
:not(#recruit) .p-footer--inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 40px;
  width: 100%;
  max-width: 1480px;
  margin-inline: auto;
  margin-bottom: 160px;
}
@media screen and (max-width: 820px) {
  :not(#recruit) .p-footer--inner {
    flex-direction: column;
    align-items: center;
    gap: 24px;
    margin-bottom: 96px;
  }
}
:not(#recruit) .p-footer__logo {
  width: 360px;
  height: auto;
}
:not(#recruit) .p-footer__logo-heading {
  padding: 16px;
  margin-bottom: 32px;
  font-size: 18px;
  text-align: center;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
:not(#recruit) .p-footer__read {
  width: 100%;
  font-size: clamp(14px, 2.333vw, 16px);
  line-height: 1.7;
  text-align: left;
}
@media screen and (max-width: 820px) {
  :not(#recruit) .p-footer__read {
    text-align: center;
  }
}
:not(#recruit) .p-footer--greeting {
  text-align: center;
}
:not(#recruit) .p-footer--greeting__heading {
  padding: 16px;
  margin-bottom: 32px;
  font-size: 18px;
  text-align: center;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
@media screen and (max-width: 820px) {
  :not(#recruit) .p-footer--greeting__heading {
    margin-bottom: 64px;
  }
}
:not(#recruit) .p-footer--greeting__image {
  width: 120px;
  aspect-ratio: 1/1;
  margin-inline: auto;
  overflow: hidden;
  border-radius: 100px;
  -o-object-fit: cover;
     object-fit: cover;
}
:not(#recruit) .p-footer-copyright {
  display: inline-block;
  width: 100%;
  font-size: 12px;
  text-align: center;
}

#recruit .p-footer {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding-block: 48px 80px;
  margin-top: -19px !important;
  font-family: var(--ff-inter);
  background-color: #212e42;
}
@media screen and (max-width: 600px) {
  #recruit .p-footer {
    padding-inline: 16px;
  }
}
#recruit .p-footer__logo {
  max-width: 400px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 600px) {
  #recruit .p-footer__logo {
    max-width: 300px;
  }
}
#recruit .p-footer__read {
  width: 100%;
  max-width: 696px;
  font-size: clamp(14px, 2.333vw, 16px);
  line-height: 1.7;
  color: #fff;
  text-align: left;
}
#recruit .p-footer-copyright {
  font-size: clamp(16px, 2.667vw, 18px);
  text-align: center;
  color: #fff;
}

body:has(#recruit) footer {
  display: none;
}

.p-form {
  padding-block: 88px 104px;
}
@media screen and (max-width: 820px) {
  .p-form {
    padding-block: 40px;
  }
}
.p-form__box {
  padding: 48px;
  background-color: #fff;
  border-radius: 16px;
}
@media screen and (max-width: 600px) {
  .p-form__box {
    padding: 24px;
  }
}
.p-form-submit__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-top: 48px;
}
.p-form-submit__list input[type=submit] {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 240px;
  padding: 24px 32px;
  font-size: 20px;
  background-color: var(--color-accent);
  border-radius: 100px;
}
.p-form-submit__list input[type=button],
.p-form-submit__list a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 240px;
  padding: 24px 32px;
  font-size: 20px;
  background-color: #cfcfcf;
  border-radius: 100px;
}
.p-form-submit .wpcf7-spinner {
  display: none;
}

.p-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  padding-block: 24px !important;
  transition: all 300ms ease-in-out;
}
@media (max-width: 1200px) {
  .p-header {
    padding-inline: 24px !important;
  }
}
@media screen and (max-width: 600px) {
  .p-header {
    padding-inline: 16px;
  }
}
.has-modal-open .p-header {
  height: 100%;
}
.p-header > div {
  max-width: 1600px !important;
}
.p-header.is-fixed {
  padding-block: 8px !important;
  background-color: rgba(255, 255, 255, 0.8) !important;
  filter: drop-shadow(0 0px 8px rgba(0, 0, 0, 0.4));
}
.p-header__logo {
  width: 300px;
  transition: all 300ms ease-in-out;
}
@media (max-width: 1200px) {
  .p-header__logo {
    width: 240px;
  }
}
.is-fixed .p-header__logo {
  width: 200px;
}
@media screen and (max-width: 600px) {
  .is-fixed .p-header__logo {
    width: 136px;
  }
}
.p-header__logo img {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .p-header__logo {
    width: 200px;
  }
}
@media screen and (max-width: 600px) {
  .p-header__logo {
    width: 136px;
  }
}
.p-header .is-entry {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 48px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(60deg, rgb(49, 221, 252) 0%, rgb(100, 124, 199) 100%);
  border-radius: 100px;
}
@media (max-width: 1200px) {
  .p-header .wp-block-navigation ul {
    gap: 8px;
  }
}

.p-link-box {
  padding: 104px 24px;
}
@media screen and (max-width: 600px) {
  .p-link-box {
    padding-block: 0;
  }
}
.p-link-box--inner {
  position: relative;
  z-index: 3;
  display: flex;
  height: 360px;
}
@media screen and (max-width: 600px) {
  .p-link-box--inner {
    flex-direction: column;
    height: 640px;
  }
}
.p-link-box__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
  height: 100%;
  padding-right: 32px;
}
@media screen and (max-width: 600px) {
  .p-link-box__item {
    padding-right: 0;
  }
}
.p-link-box__item + .p-link-box__item {
  padding-left: 32px;
  border-left: 1px solid var(--color-border);
}
@media screen and (max-width: 600px) {
  .p-link-box__item + .p-link-box__item {
    padding-left: 0;
    border-top: 1px solid var(--color-border);
    border-left: none;
  }
}
.p-link-box__item:last-child {
  padding-right: 0;
}
.p-link-box__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 8px;
  font-family: var(--ff-base);
  font-size: clamp(36px, 6vw, 46px);
}
@media screen and (max-width: 600px) {
  .p-link-box__heading {
    justify-content: center;
    gap: 24px;
  }
}
.p-link-box__heading img {
  width: 36px;
  height: 36px;
}
.p-link-box__read {
  width: 100%;
  font-size: clamp(16px, 2.667vw, 13px);
  text-align: left;
}
@media screen and (max-width: 600px) {
  .p-link-box__read {
    text-align: center;
  }
}

body:has(main.is-footer-gray) .p-link-box {
  background-color: var(--color-accent);
}
body:has(main.is-footer-photo) .p-link-box {
  position: relative;
  z-index: 1;
  background: url("https://ni-tax.com/recruit/wp-content/uploads/2025/10/23303789_m-scaled.png") no-repeat center center/cover;
}
body:has(main.is-footer-photo) .p-link-box::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  content: "";
  background-color: rgba(255, 255, 255, 0.8);
}

.p-main {
  position: relative;
  width: 100vw;
  margin: 0 calc((50vw - 50%) * -1) 144px calc((50vw - 50%) * -1);
}
@media (max-width: 1200px) {
  .p-main {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-main {
    padding-inline: 24px;
  }
}
@media screen and (max-width: 600px) {
  .p-main {
    margin-bottom: 24px;
  }
}
.p-main__image {
  width: 100%;
  max-width: 1600px;
  aspect-ratio: 2/1;
  margin-inline: auto;
  overflow: hidden;
  border-radius: 32px;
}
.p-main__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 600px) {
  .p-main__image {
    aspect-ratio: 39/31;
    border-radius: 0;
  }
}
.p-main__heading {
  position: absolute;
  bottom: 130px;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  font-family: var(--ff-oonishi);
  font-size: clamp(19px, 3.167vw, 25px);
  color: #fff;
  transform: translateX(-50%);
}
@media (max-width: 1200px) {
  .p-main__heading {
    bottom: 48px;
    max-width: 90%;
  }
}
@media screen and (max-width: 1024px) {
  .p-main__heading {
    bottom: 16px;
  }
}
@media screen and (max-width: 600px) {
  .p-main__heading {
    position: static;
    align-items: center;
    gap: 8px;
    max-width: initial;
    padding: 12px 0 0 0;
    transform: translateX(0);
  }
}
.p-main__heading span {
  display: block;
  padding: 10px 24px;
  text-align: left;
  background: linear-gradient(60deg, rgb(49, 221, 252) 0%, rgb(100, 124, 199) 100%);
  border-radius: 100px;
}
@media screen and (max-width: 600px) {
  .p-main__heading span {
    width: 100%;
    padding-inline: 10px;
    text-align: center;
    border-radius: 0;
  }
}

.p-message {
  padding-block: 96px 120px;
}
@media screen and (max-width: 600px) {
  .p-message {
    padding: 48px 24px 56px 24px;
  }
}
.p-message__box {
  padding: 120px 200px;
  background-color: #fff;
}
@media screen and (max-width: 820px) {
  .p-message__box {
    padding: 80px;
  }
}
@media screen and (max-width: 600px) {
  .p-message__box {
    padding: 24px;
  }
}
.p-message__heading {
  position: relative;
  display: block;
  margin-bottom: 32px;
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 500;
  line-height: 1.6;
}
.p-message__heading::before {
  position: absolute;
  top: 3px;
  left: -20px;
  display: block;
  width: 6px;
  height: 40px;
  content: "";
  background-color: #ff8d2a;
}
@media screen and (max-width: 600px) {
  .p-message__heading::before {
    left: -24px;
  }
}
.p-message__item {
  padding-bottom: 48px;
  margin-bottom: 80px;
  border-bottom: 1px solid var(--color-border-l);
}
@media screen and (max-width: 600px) {
  .p-message__item {
    padding-bottom: 24px;
    margin-bottom: 40px;
  }
}
.p-message__item:has(img) {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 24px;
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
@media screen and (max-width: 600px) {
  .p-message__item:has(img) {
    flex-direction: column;
  }
}
.p-message__item:has(img) .p-message__heading {
  width: 100%;
}
.p-message__item:has(img) > div {
  width: calc(100% - 390px);
}
@media screen and (max-width: 600px) {
  .p-message__item:has(img) > div {
    width: 100%;
  }
}
.p-message__item:has(img) img {
  width: 366px;
}
@media screen and (max-width: 600px) {
  .p-message__item:has(img) img {
    width: 100%;
  }
}

.p-mission__box {
  margin-bottom: 144px;
  text-align: left;
}
@media (max-width: 1200px) {
  .p-mission__box {
    padding-inline: 24px;
  }
}
@media screen and (max-width: 600px) {
  .p-mission__box {
    margin-bottom: 48px;
  }
}
.p-mission__heading {
  margin-bottom: 24px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 600;
}
.p-mission__read {
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 300;
  line-height: 2.3;
}
.p-mission__read + .p-mission__read {
  margin-top: 64px;
}

.p-privacy {
  margin-bottom: 144px;
}
@media screen and (max-width: 600px) {
  .p-privacy {
    margin-bottom: 48px;
  }
}
.p-privacy__box {
  margin-bottom: 56px;
  text-align: left;
}
.p-privacy__heading {
  margin-bottom: 24px;
  font-family: var(--ff-base);
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
}

.scroll-container {
  width: 100% !important;
  height: 456px;
  overflow: hidden;
  white-space: nowrap;
}
@media screen and (max-width: 820px) {
  .scroll-container {
    height: 300px;
  }
}
.scroll-container__wrapper {
  padding: 72px 0;
  margin-bottom: 64px;
  background-color: #eaecf5;
}
@media screen and (max-width: 820px) {
  .scroll-container__wrapper {
    padding: 32px 0;
  }
}

.scroll-content {
  display: inline-block;
  animation: scroll-left var(--duration) linear infinite;
}
.scroll-content img {
  height: 456px;
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
  display: inline-block;
  vertical-align: top;
}
@media screen and (max-width: 820px) {
  .scroll-content img {
    height: 300px;
  }
}
.scroll-content img + img {
  margin-left: 40px;
}

@keyframes scroll-left {
  from {
    /* アニメーション開始時: 0% の位置 */
    transform: translateX(0);
  }
  to {
    /* アニメーション終了時: 画像1枚分完全に左に移動 */
    /* ※JSで設定する画像1枚分のネガティブ値 */
    transform: translateX(var(--scroll-distance));
  }
}
.p-service__figure-wrapper {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 1200px) {
  .p-service__figure-wrapper {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-service__figure-wrapper {
    padding-inline: 24px;
  }
}
.p-service__figure-wrapper + .p-service__figure-wrapper {
  margin-top: 120px;
}
@media screen and (max-width: 1024px) {
  .p-service__figure-wrapper + .p-service__figure-wrapper {
    margin-top: 40px;
  }
}
.p-service__figure-box {
  position: relative;
  width: 930px;
  height: 330px;
  padding: 32px 56px 32px 304px;
  margin-top: 90px;
  border: 1px solid var(--color-border-l);
}
@media (max-width: 1200px) {
  .p-service__figure-box {
    padding-left: 374px;
  }
}
@media screen and (max-width: 1024px) {
  .p-service__figure-box {
    width: 100%;
    height: auto;
    padding: 16px;
    margin-top: 0;
    text-align: center;
  }
}
.p-service__figure-image {
  position: absolute;
  top: -90px;
  left: -270px;
  width: 543px;
  height: 373px;
}
@media (max-width: 1200px) {
  .p-service__figure-image {
    left: -200px;
  }
}
@media screen and (max-width: 1024px) {
  .p-service__figure-image {
    position: static;
    width: 50%;
    height: auto;
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 820px) {
  .p-service__figure-image {
    width: 75%;
  }
}
@media screen and (max-width: 600px) {
  .p-service__figure-image {
    width: 100%;
  }
}
.p-service__figure-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  text-align: left;
  color: #343434;
  padding-bottom: 24px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--color-border-l);
}
@media screen and (max-width: 1024px) {
  .p-service__figure-heading {
    padding-bottom: 8px;
  }
}
.p-service__figure-heading::before {
  content: attr(data-no);
  font-size: clamp(48px, 8vw, 60px);
  color: #cecece;
}
.p-service-no-experience {
  width: 100%;
  max-width: 865px;
  padding: 72px 24px;
  margin-inline: auto;
}
.p-service-no-experience__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 13px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  text-align: center;
}
.p-service-no-experience__heading::after {
  display: block;
  width: 72px;
  height: 1px;
  margin: 0 auto 24px auto;
  content: "";
  background-color: #0a0a0a;
}
.p-service-no-experience__read {
  margin-bottom: 40px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(16px, 2.667vw, 20px);
  text-align: center;
}
.p-service-no-experience__box {
  width: 100%;
  padding: 64px 56px;
  background-color: #fff;
  border-radius: 24px;
}
@media screen and (max-width: 1024px) {
  .p-service-no-experience__box {
    padding: 32px;
  }
}
.p-service-no-experience__box ul {
  list-style: none;
}
.p-service-no-experience__box ul li {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  line-height: 1.8;
}
.p-service-no-experience__box ul li::before {
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 15px;
  height: 15px;
  content: "";
  background-color: var(--color-accent);
  border-radius: 100px;
}
.p-service-no-experience__box ul li + li {
  margin-top: 16px;
}

.p-staff-voices__list {
  display: flex;
  gap: 120px;
}
@media (max-width: 1200px) {
  .p-staff-voices__list {
    gap: 64px;
    padding-inline: 40px;
  }
}
@media screen and (max-width: 820px) {
  .p-staff-voices__list {
    gap: 32px;
  }
}
@media screen and (max-width: 600px) {
  .p-staff-voices__list {
    flex-direction: column;
    gap: 48px;
    padding-inline: 24px;
  }
}
.p-staff-voices__item {
  width: calc((100% - 240px) / 3);
}
@media (max-width: 1200px) {
  .p-staff-voices__item {
    width: calc((100% - 128px) / 3);
  }
}
@media screen and (max-width: 820px) {
  .p-staff-voices__item {
    width: calc((100% - 64px) / 3);
  }
}
@media screen and (max-width: 600px) {
  .p-staff-voices__item {
    width: 100%;
  }
}
.p-staff-voices__item img {
  width: 100%;
}
.p-staff-voices__heading {
  margin-block: 12px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 700;
  text-align: left;
  line-height: 2;
}
.p-staff-voices--info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  color: #5dbace;
}
@media screen and (max-width: 820px) {
  .p-staff-voices--info {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
@media screen and (max-width: 600px) {
  .p-staff-voices--info {
    flex-direction: row;
    align-items: center;
    gap: 0;
  }
}
.p-staff-voices--info .c-section__anchor {
  font-size: 16px;
}
@media screen and (max-width: 820px) {
  .p-staff-voices--info .c-section__anchor {
    padding-left: 0;
  }
}
.p-staff-voices--info .c-section__anchor img {
  width: 27px;
  height: 27px;
}
.p-staff-voices--name {
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 700;
}
@media (max-width: 1200px) {
  .p-staff-voices__box {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 1024px) {
  .p-staff-voices__box {
    padding-inline: 24px;
  }
}
.p-staff-voices__box img {
  width: 100%;
  max-width: 600px;
  margin-top: 40px;
}
@media screen and (max-width: 600px) {
  .p-staff-voices__box img {
    margin-top: 24px;
  }
}
.p-staff-voices__box + .p-staff-voices__box {
  margin-top: 104px;
}
@media screen and (max-width: 600px) {
  .p-staff-voices__box + .p-staff-voices__box {
    margin-top: 48px;
  }
}
.p-staff-voices--question {
  margin-bottom: 40px;
  font-family: var(--ff-base);
  font-size: clamp(21px, 3.5vw, 24px);
  font-weight: 500;
  line-height: 1.6;
  color: #4552ab;
}
.p-staff-voices__read {
  font-size: clamp(22px, 3.667vw, 25px);
  line-height: 2.3;
}

.p-support__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 16px 24px;
  margin: 0 auto 96px auto;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  border: 1px solid var(--color-border);
}
@media screen and (max-width: 600px) {
  .p-support__heading {
    padding: 16px;
    margin-bottom: 48px;
  }
}
.p-support__read {
  max-width: 670px;
  margin-inline: auto;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(18px, 3vw, 20px);
  line-height: 2.3;
}
.p-support__read + .p-support__read {
  margin-top: 48px;
}
@media screen and (max-width: 600px) {
  .p-support__read + .p-support__read {
    margin-top: 32px;
  }
}
.p-support__box {
  display: flex;
  align-items: center;
  gap: 48px;
  width: 100%;
  padding: 64px 80px;
  background-color: #fff;
}
@media screen and (max-width: 600px) {
  .p-support__box {
    flex-direction: column;
    justify-content: center;
    padding: 48px;
  }
}
.p-support__box + .p-support__box {
  margin-top: 24px;
}
.p-support__box img {
  flex-shrink: 0;
  width: 129px;
  aspect-ratio: 1/1;
}
.p-support__box-heading {
  margin-bottom: 24px;
  font-family: var(--ff-yu-mincho);
  font-size: clamp(24px, 4vw, 32px);
  line-height: 1.6;
  text-align: left;
}

.rp-business__heading {
  margin-block: 48px 32px;
  font-family: var(--ff-shippori);
  font-size: clamp(20px, 3.333vw, 24px);
  font-weight: 500;
  text-align: center;
  color: #fff;
}
.rp-business__list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 32px;
  margin-bottom: 72px;
}
.rp-business__item {
  width: calc((100% - 32px) / 2);
}
@media screen and (max-width: 600px) {
  .rp-business__item {
    width: 100%;
  }
}
.rp-business__item-read {
  font-family: var(--ff-zen-kaku);
  font-size: clamp(16px, 2.667vw, 16px);
  line-height: 1.6;
  text-align: left;
  color: #fff;
}
.rp-business__image {
  position: relative;
  z-index: 0;
  margin-bottom: 16px;
}
.rp-business__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.rp-business__image::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: block;
  content: "";
  background-color: rgba(35, 129, 205, 0.5);
}
.rp-business__image--caption {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 100%;
  padding-inline: 24px;
  font-size: clamp(18px, 3vw, 16px);
  font-weight: 700;
  line-height: 2;
  text-align: center;
  color: #fff;
  transform: translate(-50%, -50%);
}
.rp-business-copy__box {
  position: relative;
  z-index: 0;
  padding: 24px;
  color: #fff;
  background: linear-gradient(90deg, #3325AC 0%, #150F46 100%);
  border-radius: 30px;
}
@media screen and (max-width: 600px) {
  .rp-business-copy__box {
    padding: 16px;
    border-radius: 16px;
  }
}
.rp-business-copy__box::before {
  position: absolute;
  top: -48px;
  left: 50%;
  display: block;
  width: 1px;
  height: 72px;
  content: "";
  background-color: #fff;
  transform: translateX(-50%);
}
@media screen and (max-width: 600px) {
  .rp-business-copy__box::before {
    height: 56px;
  }
}

.rp-career {
  width: 100%;
  max-width: 900px;
  padding-bottom: 192px;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  .rp-career {
    max-width: 728px;
  }
}
@media screen and (max-width: 600px) {
  .rp-career {
    padding-bottom: 80px;
  }
}
.rp-career__box {
  margin-top: 112px;
}
@media screen and (max-width: 600px) {
  .rp-career__box {
    margin-top: 56px;
  }
}
.rp-career__box-inner {
  display: flex;
  align-items: flex-start;
  gap: 80px;
  width: 100%;
  max-width: 750px;
  margin-inline: auto;
}
@media screen and (max-width: 600px) {
  .rp-career__box-inner {
    flex-direction: column;
    gap: 32px;
  }
}
.rp-career__box-inner img {
  position: relative;
  z-index: 3;
  max-width: 250px;
  margin-top: -144px;
}
@media screen and (max-width: 820px) {
  .rp-career__box-inner img {
    margin-top: 0;
    margin-inline: auto;
  }
}
.rp-career__ttl {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  padding: 16px 96px;
  width: 100%;
  min-height: 75px;
  margin-bottom: 48px;
  font-family: var(--ff-shippori);
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 400;
  color: #fff;
  background: linear-gradient(90deg, var(--r-color-key) 36.06%, var(--r-color-accent) 100%);
}
@media screen and (max-width: 820px) {
  .rp-career__ttl {
    padding-right: 56px;
    margin-bottom: 24px;
  }
}
.rp-career__ttl::before {
  position: absolute;
  top: -32px;
  left: 32px;
  font-family: var(--ff-alex);
  font-size: clamp(64px, 10.667vw, 80px);
  content: attr(data-no);
}
.rp-career__ttl::after {
  position: absolute;
  top: -24px;
  font-size: 16px;
  font-weight: 400;
  content: "<スキルアップ・キャリア育成>";
}
@media screen and (max-width: 600px) {
  .rp-career__ttl.is-no-copy {
    padding-inline: 30px;
  }
}
.rp-career__ttl.is-no-copy::after {
  display: none;
}
.rp-career__support-box {
  width: 100%;
  max-width: 750px;
  padding: 24px 32px 32px 32px;
  margin: 80px auto 144px auto;
  text-align: center;
  color: var(--r-color-accent);
  background-color: #fff;
  border-radius: 20px;
}
@media screen and (max-width: 600px) {
  .rp-career__support-box {
    margin-block: 40px 80px;
  }
}
.rp-career__support-box-ttl {
  font-family: var(--ff-shippori);
  font-size: clamp(20px, 3.333vw, 24px);
  color: var(--r-color-accent);
}
.rp-career__support-box .u-list {
  max-width: 560px;
  margin: 24px auto 0 auto;
  text-align: left;
}
.rp-career__heading {
  margin-bottom: 40px;
  font-family: var(--ff-arimo);
  font-size: clamp(48px, 8vw, 93px);
  font-weight: 700;
  font-style: italic;
  text-align: center;
  color: var(--r-color-key);
}
.rp-career__heading span {
  color: #000;
  text-shadow: -2px -2px 0 var(--r-color-key), 2px -2px 0 var(--r-color-key), -2px 2px 0 var(--r-color-key), 2px 2px 0 var(--r-color-key);
}
@media screen and (max-width: 600px) {
  .rp-career__heading span {
    display: block;
  }
}
.rp-career__list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 56px;
  margin-top: 48px;
}
.rp-career__item {
  width: calc((100% - 112px) / 3);
}
@media screen and (max-width: 600px) {
  .rp-career__item {
    width: 100%;
  }
}
.rp-career__item-image {
  padding: 16px;
  padding: 1px;
  margin-bottom: 16px;
  border-radius: 16px;
  background: linear-gradient(to right, #009dff, #4c4ed5);
}
.rp-career__item-image > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background-color: #000;
  border-radius: 16px;
}
.rp-career__item-image img {
  width: 128px;
  height: 126px;
  margin-top: 16px;
  -o-object-fit: contain;
     object-fit: contain;
}
.rp-career__item-image-caption {
  margin-bottom: 16px;
  font-family: var(--ff-zen-kaku);
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}
.rp-career__item-read {
  font-family: var(--ff-zen-kaku);
  font-size: 16px;
  color: #fff;
}

.rp-data {
  position: relative;
  padding-block: 176px;
  background: linear-gradient(90deg, #FFF 0%, #E2E7E9 100%);
}
@media screen and (max-width: 600px) {
  .rp-data {
    padding: 80px 16px;
  }
}
.rp-data .rc-section__ttl {
  text-align: center;
  color: #000;
}
.rp-data .rc-section__ttl span {
  color: var(--r-color-key);
}
.rp-data .rp-business__heading {
  color: #000;
}
.rp-data__box {
  position: relative;
  width: 100%;
  max-width: 624px;
  margin-inline: auto;
}
.rp-data__box.is-people {
  display: flex;
  flex-wrap: wrap;
  gap: 72px 16px;
}
.rp-data__box + .rp-data__box {
  margin-top: 176px;
}
@media screen and (max-width: 600px) {
  .rp-data__box + .rp-data__box {
    margin-top: 80px;
  }
}
.rp-data__box::before {
  position: absolute;
  top: 0;
  width: 102px;
}
@media screen and (max-width: 820px) {
  .rp-data__box::before {
    display: none;
  }
}
.rp-data__box > h2 {
  display: none;
}
@media screen and (max-width: 820px) {
  .rp-data__box > h2 {
    display: block;
    width: 60%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 600px) {
  .rp-data__box > h2 {
    width: 80%;
  }
}
.rp-data__box > h2 img {
  max-width: 100%;
}
.rp-data__box.is-company::before {
  left: -144px;
  height: 356px;
  content: "";
  background: url(https://ni-tax.com/recruit/wp-content/uploads/2025/06/data-heading01.png) no-repeat top center/contain;
}
.rp-data__box.is-work::before {
  right: -144px;
  height: 449px;
  content: "";
  background: url(https://ni-tax.com/recruit/wp-content/uploads/2025/06/data-heading02.png) no-repeat top center/contain;
}
.rp-data__box.is-people::before {
  left: -144px;
  height: 269px;
  content: "";
  background: url(https://ni-tax.com/recruit/wp-content/uploads/2025/06/data-heading03.png) no-repeat top center/contain;
}
.rp-data__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: 100%;
  min-height: 240px;
  margin-top: 88px;
  background-color: #fff;
}
.is-people .rp-data__item {
  width: calc((100% - 16px) / 2);
  min-height: 328px;
  padding-top: 40px;
}
@media screen and (max-width: 600px) {
  .is-people .rp-data__item {
    width: 100%;
    margin-top: 0;
  }
}
.rp-data__item img {
  width: 100%;
  height: auto;
}
.rp-data__item-ttl {
  position: absolute;
  top: -20px;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  height: 40px;
  font-size: 16px;
  color: #fff;
  background-color: #0033cc;
  transform: translateX(-50%);
  border-radius: 100px;
}
.rp-data__item .u-ff-biz {
  font-family: var(--ff-biz);
  font-size: clamp(28px, 4.667vw, 36px);
  font-weight: 700;
}
.rp-data__num {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 24px;
  font-family: var(--ff-jsMath);
  font-size: clamp(72px, 12vw, 96px);
  font-weight: 500;
}
.rp-data__num span {
  font-family: var(--ff-biz);
  font-size: clamp(48px, 8vw, 64px);
  font-weight: 700;
}
.rp-data-note {
  font-family: var(--ff-inter);
  font-size: 14px;
  text-align: center;
}
.is-people .rp-data-note {
  font-size: clamp(13px, 2.167vw, 20px);
  font-weight: 700;
}

.rp-entry {
  position: relative;
  display: flex;
  width: 100%;
  height: 720px;
}
@media screen and (max-width: 820px) {
  .rp-entry {
    flex-direction: column;
    height: auto;
  }
}
.rp-entry > div {
  flex: 1;
}
.rp-entry-info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  padding: 80px;
  background-color: var(--r-color-accent);
}
@media screen and (max-width: 820px) {
  .rp-entry-info {
    align-items: flex-start;
  }
}
@media screen and (max-width: 600px) {
  .rp-entry-info {
    padding: 24px;
  }
}
.rp-entry-info--inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  max-width: 456px;
  text-align: left;
  color: #fff;
}
@media screen and (max-width: 600px) {
  .rp-entry-info--inner {
    max-width: initial;
  }
}
.rp-entry__heading {
  width: 100%;
  font-family: var(--ff-zen-kaku);
  font-size: clamp(38px, 6.333vw, 46px);
  font-weight: 700;
  text-align: left;
  color: #fff;
}
.rp-entry__read {
  width: 100%;
  font-family: var(--ff-zen-kaku);
  font-size: clamp(20px, 3.333vw, 26px);
  font-weight: 500;
  line-height: 1.6;
  text-align: left;
}
.rp-entry-photo {
  position: relative;
  z-index: 1;
}
.rp-entry-photo::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(17, 75, 152, 0.67);
}
.rp-entry-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.rp-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 80px;
  padding: 24px 64px;
  background: rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1024px) {
  .rp-header {
    padding: 24px;
  }
}
.rp-header__logo {
  width: 464px;
  height: 72px;
  aspect-ratio: 58/9;
}
@media screen and (max-width: 1024px) {
  .rp-header__logo {
    width: 320px;
    height: auto;
  }
}
@media screen and (max-width: 600px) {
  .rp-header__logo {
    width: 240px;
  }
}
.rp-header__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.rp-header__nav {
  display: flex;
  justify-content: space-between;
  width: 40%;
}
@media screen and (max-width: 1024px) {
  .rp-header__nav {
    width: 65%;
  }
}
@media screen and (max-width: 600px) {
  .rp-header__nav {
    display: none;
  }
}
.rp-header__nav > div {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media screen and (max-width: 1024px) {
  .rp-header__nav > div {
    gap: 16px;
  }
}
.rp-header__anchor {
  font-size: 16px;
  color: #fff;
}

.rp-main {
  position: relative;
  overflow: hidden;
}
.rp-main__image {
  position: relative;
  height: auto;
}
@media screen and (max-width: 600px) {
  .rp-main__image {
    height: 75vh;
  }
}
.rp-main__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.rp-main__heading {
  margin-bottom: 160px;
  font-family: var(--ff-shippori);
  font-size: clamp(31px, 5.167vw, 110px);
  font-weight: 400;
  color: #fff;
}
@media screen and (max-width: 600px) {
  .rp-main__heading {
    margin-bottom: 32px;
  }
}
.rp-main__heading-box {
  position: absolute;
  top: 240px;
  left: 50%;
  width: 65%;
  transform: translateX(-50%);
}
@media screen and (max-width: 600px) {
  .rp-main__heading-box {
    width: 100%;
    padding-inline: 16px;
  }
}
.rp-main__heading--sub {
  font-family: "B612", sans-serif;
  font-size: clamp(38px, 6.333vw, 48px);
  font-weight: 700;
  font-style: normal;
  font-style: italic;
  text-align: center;
  color: #fff;
}
.rp-main__heading--sub span {
  font-family: var(--ff-zen-kaku);
  font-size: clamp(16px, 2.667vw, 19px);
  font-weight: 900;
  display: block;
}

.rp-movie {
  position: relative;
  padding-block: 200px;
}
@media screen and (max-width: 600px) {
  .rp-movie {
    padding-block: 80px 64px;
  }
}
.rp-movie__heading {
  margin-bottom: 112px;
  font-family: var(--ff-arimo);
  font-size: clamp(36px, 6vw, 93px);
  font-weight: 700;
  text-align: center;
  color: var(--r-color-key);
}
@media screen and (max-width: 600px) {
  .rp-movie__heading {
    padding-inline: 16px;
    margin-bottom: 40px;
  }
}
.rp-movie__heading-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  margin-bottom: 56px;
}
@media screen and (max-width: 600px) {
  .rp-movie__heading-box {
    gap: 20px;
  }
}
.rp-movie__heading--sub {
  font-family: var(--ff-antonio);
  font-size: clamp(36px, 6vw, 64px);
  font-weight: 700;
  text-align: center;
  color: #fff;
}
.rp-movie__hairLIne {
  width: 96px;
  height: 8px;
  background-color: var(--r-color-key);
}
.rp-movie__read {
  font-family: var(--ff-antonio);
  font-size: clamp(22px, 3.667vw, 30px);
  font-weight: 700;
  color: #fff;
}
.rp-movie__item {
  width: 100%;
  max-width: 736px;
  aspect-ratio: 736/414;
  margin: 0 auto 120px auto;
}
@media screen and (max-width: 600px) {
  .rp-movie__item {
    margin-bottom: 64px;
  }
}

svg:has(#a-title.is-about) {
  max-width: 294.88px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-about) {
    height: 50px;
  }
}
svg:has(#a-title.is-service) {
  max-width: 380px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-service) {
    height: 50px;
  }
}
svg:has(#a-title.is-news) {
  max-width: 276px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-news) {
    height: 50px;
  }
}

#a-catch-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
}

.word {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 1.3;
}

.rect {
  position: absolute;
  top: 0;
  left: -75%;
  width: 172%;
  height: 47px;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0), rgb(255, 255, 255) 10%);
}

#b-path {
  fill: none;
  stroke: #f18d00;
  stroke-width: 130px;
}
#b-path path {
  stroke-dasharray: 2974;
  /* 線の長さ */
  stroke-dashoffset: 2974;
  /* 線の開始位置 */
}

#ring-path path,
#ring-path-shadow path,
#ring-path-shadow2 path {
  fill: none;
  stroke: #f18d00;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 56px;
  /* 線の太さ */
}
#ring-path path#ring-path1, #ring-path path#ring-path1-s, #ring-path path#ring-path1-s2,
#ring-path-shadow path#ring-path1,
#ring-path-shadow path#ring-path1-s,
#ring-path-shadow path#ring-path1-s2,
#ring-path-shadow2 path#ring-path1,
#ring-path-shadow2 path#ring-path1-s,
#ring-path-shadow2 path#ring-path1-s2 {
  stroke-dasharray: 420;
  /* 線の長さ */
  stroke-dashoffset: 420;
  /* 線の開始位置 */
}
#ring-path path#ring-path2, #ring-path path#ring-path2-s, #ring-path path#ring-path2-s2,
#ring-path-shadow path#ring-path2,
#ring-path-shadow path#ring-path2-s,
#ring-path-shadow path#ring-path2-s2,
#ring-path-shadow2 path#ring-path2,
#ring-path-shadow2 path#ring-path2-s,
#ring-path-shadow2 path#ring-path2-s2 {
  stroke-dasharray: 352.6;
  /* 線の長さ */
  stroke-dashoffset: 352.6;
  /* 線の開始位置 */
}
#ring-path path#ring-path3, #ring-path path#ring-path3-s, #ring-path path#ring-path3-s2,
#ring-path-shadow path#ring-path3,
#ring-path-shadow path#ring-path3-s,
#ring-path-shadow path#ring-path3-s2,
#ring-path-shadow2 path#ring-path3,
#ring-path-shadow2 path#ring-path3-s,
#ring-path-shadow2 path#ring-path3-s2 {
  stroke-dasharray: 1027.5;
  /* 線の長さ */
  stroke-dashoffset: 1027.5;
  /* 線の開始位置 */
}
#ring-path path#ring-path4, #ring-path path#ring-path4-s, #ring-path path#ring-path4-s2,
#ring-path-shadow path#ring-path4,
#ring-path-shadow path#ring-path4-s,
#ring-path-shadow path#ring-path4-s2,
#ring-path-shadow2 path#ring-path4,
#ring-path-shadow2 path#ring-path4-s,
#ring-path-shadow2 path#ring-path4-s2 {
  stroke-dasharray: 1000.8;
  /* 線の長さ */
  stroke-dashoffset: 1000.8;
  /* 線の開始位置 */
}
#ring-path-gray path,
#ring-path-shadow-gray path,
#ring-path-shadow2-gray path {
  /* 線の太さ */
  opacity: 0.5;
  fill: none;
  stroke: #e2e4ea;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 56px;
}

#ring-path-shadow path {
  opacity: 0.6;
  stroke: #1cbbce;
}

#ring-path-shadow2 path {
  opacity: 0.3;
  stroke: #838480;
}

#js-perticle {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100vh;
}

canvas {
  display: block;
}

/* ---- particles.js container ---- */
#particles-js {
  position: absolute;
  width: 100%;
  height: 100vh;
  background-color: transparent;
  background-image: url("");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

/* ---- stats.js ---- */
.count-particles {
  position: absolute;
  top: 48px;
  left: 0;
  width: 80px;
  padding-bottom: 2px;
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 0.8em;
  font-weight: bold;
  line-height: 14px;
  color: #13e8e9;
  text-align: left;
  text-indent: 4px;
  background: #002;
}

#aboutAnimation .cls-1 {
  fill: rgba(214, 220, 230, 0.6);
}
#aboutAnimation .cls-1,
#aboutAnimation .cls-2,
#aboutAnimation .cls-3,
#aboutAnimation .cls-4,
#aboutAnimation .cls-5,
#aboutAnimation .cls-6,
#aboutAnimation .cls-7,
#aboutAnimation .cls-8,
#aboutAnimation .cls-9,
#aboutAnimation .cls-10,
#aboutAnimation .cls-11,
#aboutAnimation .cls-12,
#aboutAnimation .cls-13,
#aboutAnimation .cls-14,
#aboutAnimation .cls-15,
#aboutAnimation .cls-16,
#aboutAnimation .cls-17,
#aboutAnimation .cls-18,
#aboutAnimation .cls-19,
#aboutAnimation .cls-20,
#aboutAnimation .cls-21,
#aboutAnimation .cls-22,
#aboutAnimation .cls-23 {
  stroke-width: 0;
}
#aboutAnimation .cls-24 {
  fill: none;
  stroke: #717071;
  stroke-miterlimit: 10;
  stroke-width: 1px;
}
#aboutAnimation .cls-25 {
  opacity: 0.3;
}
#aboutAnimation .cls-26 {
  opacity: 0.6;
}
#aboutAnimation .cls-27 {
  opacity: 0.5;
}
#aboutAnimation .cls-2 {
  fill: #f4ae99;
}
#aboutAnimation .cls-3 {
  fill: #77d1de;
}
#aboutAnimation .cls-4 {
  fill: #77aede;
}
#aboutAnimation .cls-5 {
  fill: #5b9199;
}
#aboutAnimation .cls-6 {
  fill: #28803a;
}
#aboutAnimation .cls-7 {
  fill: #717071;
}
#aboutAnimation .cls-8 {
  fill: #366bac;
}
#aboutAnimation .cls-9 {
  fill: #1278b2;
}
#aboutAnimation .cls-10 {
  fill: #dbac00;
}
#aboutAnimation .cls-11 {
  fill: #c0c1bf;
}
#aboutAnimation .cls-12 {
  fill: #b2cad6;
}
#aboutAnimation .cls-13 {
  fill: #bcc1c4;
}
#aboutAnimation .cls-14 {
  fill: #bfc1d9;
}
#aboutAnimation .cls-15 {
  fill: #c1cbe4;
}
#aboutAnimation .cls-16 {
  fill: #ba937e;
}
#aboutAnimation .cls-17 {
  fill: #85b22f;
}
#aboutAnimation .cls-18 {
  fill: #7d98ce;
}
#aboutAnimation .cls-19 {
  fill: #e67f11;
}
#aboutAnimation .cls-20 {
  fill: #e77e12;
}
#aboutAnimation .cls-21 {
  fill: #e4603c;
}
#aboutAnimation .cls-22 {
  fill: #e83828;
}
#aboutAnimation .cls-23 {
  fill: #e78913;
}

.ripple {
  position: absolute;
  top: 67%;
  left: 58%;
  transform: translateX(-50%);
}
.ripple span {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: animate 4.5s linear infinite;
}
@media screen and (max-width: 820px) {
  .ripple span {
    animation: animate-tb_min 4.5s linear infinite;
  }
}
@media screen and (max-width: 600px) {
  .ripple span {
    animation: animate-sp 4.5s linear infinite;
  }
}
.ripple span:nth-child(1) {
  animation-delay: 0s;
}
.ripple span:nth-child(2) {
  animation-delay: 1s;
}
.ripple span:nth-child(3) {
  animation-delay: 2s;
}
.ripple span:nth-child(4) {
  animation-delay: 3s;
}
.ripple span:nth-child(5) {
  animation-delay: 4s;
}
.ripple span:nth-child(6) {
  animation-delay: 5s;
}
.ripple span:nth-child(7) {
  animation-delay: 6s;
}
.ripple span:nth-child(8) {
  animation-delay: 7s;
}
.ripple span:nth-child(9) {
  animation-delay: 8s;
}
.ripple span:nth-child(10) {
  animation-delay: 9s;
}

@keyframes animate {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 700px;
    height: 700px;
    opacity: 1;
  }
  100% {
    width: 770px;
    height: 770px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
@keyframes animate-tb_min {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 600px;
    height: 600px;
    opacity: 1;
  }
  100% {
    width: 620px;
    height: 620px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
@keyframes animate-sp {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 300px;
    height: 300px;
    opacity: 1;
  }
  100% {
    width: 320px;
    height: 320px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
.a-hover-btn {
  position: relative;
  z-index: 1;
  overflow: hidden;
  transition: all 200ms ease;
}
.a-hover-btn span {
  position: relative;
  z-index: 3;
  color: currentcolor;
  transition: all 200ms ease;
}
.a-hover-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  content: "";
  background-color: currentcolor;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
.a-hover-btn svg path {
  transition: all 200ms ease;
}
.p-recruit__job-btn .a-hover-btn:hover {
  opacity: 1;
}
.a-hover-btn:hover span {
  color: #fff;
}
.a-hover-btn:hover::before {
  transform: scale(1, 1);
  transform-origin: left top;
}
.a-hover-btn:hover svg path {
  fill: #fff;
  stroke: currentcolor;
}
.p-recruit__job-btn .a-hover-btn:hover svg path {
  fill: var(--color-main);
  stroke: #fff;
}

.p-mission__vision-img .cls-1 {
  -webkit-mask: url("#mask");
          mask: url("#mask");
}
.p-mission__vision-img .cls-2 {
  fill: none;
  stroke-dasharray: 0 0 0 12.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 6.7px;
}
.p-mission__vision-img .cls-2,
.p-mission__vision-img .cls-3,
.p-mission__vision-img .cls-4,
.p-mission__vision-img .cls-5,
.p-mission__vision-img .cls-6 {
  stroke: #f18d00;
}
.p-mission__vision-img .cls-3 {
  stroke-width: 3.4px;
}
.p-mission__vision-img .cls-3,
.p-mission__vision-img .cls-4,
.p-mission__vision-img .cls-5,
.p-mission__vision-img .cls-7,
.p-mission__vision-img .cls-6 {
  fill: #fff;
}
.p-mission__vision-img .cls-4 {
  stroke-width: 3.2px;
}
.p-mission__vision-img .cls-8 {
  opacity: 0.6;
}
.p-mission__vision-img .cls-9 {
  fill-rule: evenodd;
}
.p-mission__vision-img .cls-9,
.p-mission__vision-img .cls-10,
.p-mission__vision-img .cls-11,
.p-mission__vision-img .cls-12,
.p-mission__vision-img .cls-13,
.p-mission__vision-img .cls-7,
.p-mission__vision-img .cls-14 {
  stroke-width: 0;
}
.p-mission__vision-img .cls-9,
.p-mission__vision-img .cls-11 {
  fill: rgba(241, 141, 0, 0.5);
}
.p-mission__vision-img .cls-5 {
  stroke-width: 4.8px;
}
.p-mission__vision-img .cls-10 {
  fill: rgba(255, 255, 255, 0.5);
}
.p-mission__vision-img .cls-15 {
  -webkit-mask: url("#mask-3");
          mask: url("#mask-3");
}
.p-mission__vision-img .cls-16 {
  -webkit-mask: url("#mask-2");
          mask: url("#mask-2");
}
.p-mission__vision-img .cls-17 {
  -webkit-mask: url("#mask-4");
          mask: url("#mask-4");
}
.p-mission__vision-img .cls-18 {
  -webkit-mask: url("#mask-1");
          mask: url("#mask-1");
}
.p-mission__vision-img .st11 {
  fill: none;
  stroke: #f18d00;
  stroke-miterlimit: 10;
  stroke-width: 1.1;
}
.p-mission__vision-img .cls-12 {
  fill: #838480;
}
.p-mission__vision-img .cls-13 {
  fill: #4d4d4d;
}
.p-mission__vision-img .cls-14 {
  fill: #f18d00;
}
.p-mission__vision-img .cls-6 {
  stroke-width: 4.2px;
}

#circle-path .cls-5 {
  fill: none;
  stroke: var(--color-main);
}

.a-line-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background-color: #fff;
}
.c-sectionTtl .a-line-mask {
  height: 25%;
}

.u-bg--accent {
  background-color: var(--color-accent);
}
.u-bg--strength {
  position: relative;
  z-index: 1;
  padding: 176px 24px;
  background: url("https://ni-tax.com/recruit/wp-content/uploads/2025/10/24843614_l.png") no-repeat center center/cover;
}
@media (max-width: 1200px) {
  .u-bg--strength {
    padding: 40px 64px 56px 64px;
  }
}
@media screen and (max-width: 600px) {
  .u-bg--strength {
    padding-inline: 24px;
    background-image: url("https://ni-tax.com/recruit/wp-content/uploads/2025/10/24843614_l-1.png");
  }
}
.u-bg--strength::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(165, 187, 238, 0.46);
}

.u-color--key {
  color: var(--color-key);
}
.u-color--accent {
  color: var(--color-accent);
}
.u-color--gray {
  color: var(--color-gray);
}
.u-color--red {
  color: var(--color-red);
}

.u-d-sp--on {
  display: none !important;
}
@media screen and (max-width: 600px) {
  .u-d-sp--on {
    display: block !important;
  }
}
.u-d-sp--off {
  display: block !important;
}
@media screen and (max-width: 600px) {
  .u-d-sp--off {
    display: none !important;
  }
}
.u-d-tb_min--on {
  display: none;
}
@media screen and (max-width: 820px) {
  .u-d-tb_min--on {
    display: block;
  }
  .u-d-tb_min--on.p-header__btnNav {
    display: flex;
  }
}
.u-d-tb_min--off {
  display: block;
}
@media screen and (max-width: 820px) {
  .u-d-tb_min--off {
    display: none;
  }
}
.u-d-tb--on {
  display: none;
}
@media screen and (max-width: 1024px) {
  .u-d-tb--on {
    display: block;
  }
}
@media (max-width: 1500px) {
  .u-d-tb--on.p-header__btnNav {
    display: flex;
  }
}
.u-d-tb--off {
  display: block;
}
@media screen and (max-width: 1024px) {
  .u-d-tb--off {
    display: none;
  }
}

.u-flex__box {
  display: flex;
  align-items: center;
  gap: 140px 40px;
  flex-wrap: wrap;
}
.u-flex__box.is-gap--16 {
  gap: 16px;
}
.u-flex__box.is-gap--16 > div {
  width: calc((100% - 16px) / 2);
}
.u-flex__box.is-gap--16 > div > img {
  max-width: 100%;
}
.u-flex--sb {
  display: flex;
  justify-content: space-between;
}
.u-flex--start {
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 600px) {
  .u-flex--start {
    flex-direction: column;
    gap: 0;
  }
}
.u-flex__item {
  width: calc(50% - 20px);
}
@media screen and (max-width: 600px) {
  .u-flex__item {
    width: 100%;
  }
}
.u-flex__item.w100 {
  width: 100%;
}
.u-flex__item ol, .u-flex__item ul {
  padding-left: 40px;
  list-style: initial;
}
@media screen and (max-width: 600px) {
  .u-flex__item ol, .u-flex__item ul {
    padding-inline: 24px;
  }
}
.u-flex__item ol li, .u-flex__item ul li {
  font-size: clamp(14px, 2.333vw, 14px);
  line-height: 2;
}

.u-ff--en {
  font-family: var(--ff-en);
}

.u-fs--12 {
  font-size: 12px;
  line-height: 1.4;
}
.u-fs--12_21 {
  font-size: clamp(12px, 2vw, 21px);
  line-height: 1.4;
}
.u-fs--13 {
  font-size: 13px;
  line-height: 1.4;
}
.u-fs--13_14 {
  font-size: clamp(13px, 2.167vw, 14px);
}
.u-fs--13_15 {
  font-size: clamp(13px, 2.167vw, 15px);
}
.u-fs--14 {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}
.u-fs--14_15 {
  font-size: clamp(14px, 2.333vw, 15px);
}
.u-fs--14_16 {
  font-size: clamp(14px, 2.333vw, 16px);
}
.u-fs--14_20 {
  font-size: clamp(14px, 2.333vw, 20px);
}
.u-fs--15 {
  font-size: 15px;
  line-height: 1.4;
}
.u-fs--16 {
  font-size: 16px;
  line-height: 1.4;
}
.u-fs--17 {
  font-size: 17px;
}
.u-fs--20 {
  font-size: 20px;
}
.u-fs--24 {
  font-size: 24px;
}
.u-fs--30_42 {
  font-size: clamp(30px, 5vw, 42px);
}
.u-fs--32 {
  font-size: 32px;
}
.u-fs--42 {
  font-size: 42px;
}
.u-fs--43_60 {
  font-size: clamp(43px, 7.167vw, 60px);
}

[class*=u-fs--] {
  font-weight: 500;
  transform: rotate(0.05deg);
}

.u-fw--400 {
  font-weight: 400;
}
.u-fw--500 {
  font-weight: 500;
}
.u-fw--600 {
  font-weight: 600;
}
.u-fw--700 {
  font-weight: 700;
}
.u-fw--800 {
  font-weight: 800;
}
.u-fw--900 {
  font-weight: 900;
}

.u-hexagon {
  position: relative;
  width: 120px;
  height: 69.28px;
  background-color: #d1e7dd;
  margin: 34.64px 0;
  text-align: center;
  line-height: 69.28px;
  font-size: 14px;
  color: #000;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}
.u-hexagon__container {
  position: relative;
  display: grid;
  gap: 10px;
}
.u-hexagon.is-center {
  background-color: #ffc107;
}
.u-hexagon.is-top {
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
}
.u-hexagon.is-right {
  position: absolute;
  right: -130px;
  top: 50%;
  transform: translateY(-50%);
}
.u-hexagon.is-bottom {
  position: absolute;
  bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
}
.u-hexagon.is-left {
  position: absolute;
  left: -130px;
  top: 50%;
  transform: translateY(-50%);
}

.u-line-clamp--1 {
  -webkit-line-clamp: 1;
}
.u-line-clamp--4 {
  -webkit-line-clamp: 4;
}

[class*=u-line-clamp] {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
}

.u-list li {
  line-height: 1.867;
  transform: rotate(0.05deg);
}
.u-list--disc {
  padding-left: 24px;
  list-style: disc;
}
.u-list--work-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
.u-list--work-info li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(50% - 10px);
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 100px;
}

.u-mx--auto {
  margin-inline: auto;
}
.u-mr--0_a {
  margin-right: auto;
}
@media screen and (max-width: 600px) {
  .u-mr--0_a {
    margin-right: 0;
  }
}
.u-mb--section {
  margin-bottom: var(--contents-space);
}
.u-mb--0 {
  margin-bottom: 0;
}
.u-mb--0_64 {
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  .u-mb--0_64 {
    margin-bottom: 0;
  }
}
.u-mb--8 {
  margin-bottom: 8px;
}
.u-mb--14 {
  margin-bottom: 14px;
}
.u-mb--16 {
  margin-bottom: 16px;
}
.u-mb--16_24 {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  .u-mb--16_24 {
    margin-bottom: 16px;
  }
}
.u-mb--18 {
  margin-bottom: 18px;
}
.u-mb--20_112 {
  margin-bottom: 112px;
}
@media screen and (max-width: 600px) {
  .u-mb--20_112 {
    margin-bottom: 20px;
  }
}
.u-mb--24 {
  margin-bottom: 24px;
}
.u-mb--24_32 {
  margin-bottom: 32px;
}
@media screen and (max-width: 600px) {
  .u-mb--24_32 {
    margin-bottom: 24px;
  }
}
.u-mb--24_96 {
  margin-bottom: 96px;
}
@media screen and (max-width: 600px) {
  .u-mb--24_96 {
    margin-bottom: 24px;
  }
}
.u-mb--32 {
  margin-bottom: 32px;
}
.u-mb--32_48 {
  margin-bottom: 48px !important;
}
@media screen and (max-width: 600px) {
  .u-mb--32_48 {
    margin-bottom: 32px !important;
  }
}
.u-mb--32_64 {
  margin-bottom: 64px !important;
}
@media screen and (max-width: 600px) {
  .u-mb--32_64 {
    margin-bottom: 32px !important;
  }
}
.u-mb--40 {
  margin-bottom: 40px;
}
.u-mb--40_64 {
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  .u-mb--40_64 {
    margin-bottom: 40px;
  }
}
.u-mb--40_80 {
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  .u-mb--40_80 {
    margin-bottom: 40px;
  }
}
.u-mb--48 {
  margin-bottom: 48px;
}
.u-mb--48_72 {
  margin-bottom: 72px;
}
@media screen and (max-width: 600px) {
  .u-mb--48_72 {
    margin-bottom: 48px;
  }
}
.u-mb--48_96 {
  margin-bottom: 96px;
}
@media screen and (max-width: 600px) {
  .u-mb--48_96 {
    margin-bottom: 48px;
  }
}
.u-mb--60_120 {
  margin-bottom: 120px;
}
@media screen and (max-width: 600px) {
  .u-mb--60_120 {
    margin-bottom: 60px;
  }
}
.u-mb--64 {
  margin-bottom: 64px;
}
.u-ml--m8 {
  margin-left: -8px;
}

.u-marker {
  display: inline;
  line-height: 1.3;
  background: linear-gradient(transparent 0%, #fff 0%);
}
.u-marker--dotted {
  display: inline;
  line-height: 2;
  background-image: radial-gradient(var(--color_accent) 40%, transparent 40%);
  background-repeat: repeat-x;
  background-size: 8px 8px;
  background-position: bottom 0 left 0;
}

.u-px--8 {
  padding-inline: 8px;
}
.u-px--16_0 {
  padding-inline: 0;
}
@media screen and (max-width: 820px) {
  .u-px--16_0 {
    padding-inline: 16px;
  }
}
.u-px--24_0 {
  padding-inline: 0;
}
@media (max-width: 1200px) {
  .u-px--24_0 {
    padding-inline: 24px;
  }
}
.u-px--40 {
  padding-inline: 40px;
}
.u-px--56 {
  padding-inline: 56px;
}
@media screen and (max-width: 1024px) {
  .u-px--tb-0 {
    padding-inline: 0;
  }
  .u-px--tb-40 {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 600px) {
  .u-px--sp-0 {
    padding-inline: 0;
  }
  .u-px--sp-16 {
    padding-inline: 16px;
  }
}
.u-py--0_80 {
  padding-block: 80px;
}
@media screen and (max-width: 600px) {
  .u-py--0_80 {
    padding-block: 0;
  }
}
.u-py--24-56_56-80 {
  padding-block: 56px 80px;
}
@media screen and (max-width: 600px) {
  .u-py--24-56_56-80 {
    padding-block: 24px 56px;
  }
}
.u-pt--40_72 {
  padding-top: 72px;
}
@media screen and (max-width: 600px) {
  .u-pt--40_72 {
    padding-top: 40px;
  }
}
.u-pl--24 {
  padding-left: 24px;
}

@media screen and (max-width: 600px) {
  .u-scroll-box {
    width: calc(100vw - 32px);
    padding-inline: 16px;
    overflow-x: auto;
  }
}

.u-ta-c {
  text-align: center !important;
}
@media screen and (max-width: 600px) {
  .is-recruit .u-ta-c {
    text-align: left !important;
  }
}

.u-ta-r {
  text-align: right !important;
}

.u-ta-l {
  text-align: left !important;
}

.u-text-underline {
  display: inline;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(#0a0a0a 100%, #0a0a0a 0%);
}

.u-td--underline {
  text-decoration: underline;
}

.u-w--20 {
  width: 100% !important;
  max-width: 20% !important;
}
@media screen and (max-width: 600px) {
  .u-w--20 {
    max-width: 33% !important;
  }
}
.u-w--45 {
  width: 100% !important;
  max-width: 45% !important;
}
@media screen and (max-width: 600px) {
  .u-w--45 {
    max-width: 100% !important;
  }
}
.u-w--100 {
  width: 100% !important;
  max-width: initial !important;
}

.u-wm--tb {
  writing-mode: vertical-rl;
}
@media screen and (max-width: 600px) {
  .u-wm--tb_sp {
    padding-right: 16px;
    writing-mode: vertical-rl;
    white-space: pre;
  }
}

@supports (-webkit-touch-callout: none) {
  html {
    height: -webkit-fill-available;
  }
  body {
    min-height: 100vh;
    height: -webkit-fill-available;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--nav_height);
}

body {
  padding-top: 128px;
  font-family: var(--ff-base) !important;
  color: var(--color-text);
  background-color: #fff !important;
}
@media screen and (max-width: 820px) {
  body {
    padding-top: 88px;
  }
}
body:has(.is-recruit-contents) {
  padding-top: 0;
}

main {
  overflow: hidden;
}

a {
  transition: all 300ms ease-in-out;
}

@media (hover: hover) {
  a:hover {
    opacity: 0.8;
  }
}
body:has(.is-recruit) header.wp-block-template-part {
  display: none;
}
body:has(.is-recruit) .panel-grid-cell .widget-title {
  display: none;
}

.has-global-padding:has(.is-recruit-contents) {
  padding-inline: 0 !important;
}

.panel-layout:has(.is-recruit-contents) {
  max-width: initial !important;
  margin-inline: 0 !important;
}

.is-recruit-contents {
  background-color: #01060e;
}

.is-line-bg {
  position: relative;
}
.is-line-bg::before, .is-line-bg::after {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  height: 100%;
  content: "";
  opacity: 0.3;
  transition: 1s ease-in-out 1.3s;
}
.is-line-bg::before {
  width: 1px;
  background-color: #9a9a9a;
  translate: -100% 0%;
}
.is-line-bg::after {
  translate: -50% 0%;
  width: 853px;
  border-right: 1px solid #9a9a9a;
  border-left: 1px solid #9a9a9a;
}
@media screen and (max-width: 820px) {
  .is-line-bg::after {
    display: none;
  }
}

/* over write */
.has-global-padding {
  padding-inline: 0;
}

.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: initial;
}

@media screen and (min-width: 601px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
}
@media screen and (min-width: 1025px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none;
  }
}

@media screen and (min-width: 601px) {
  .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
    display: flex;
  }
}/*# sourceMappingURL=style.css.map */