/**
 * 1202 Staff Job
 * /staff-job/
 * 仕事内容・職種紹介ページ専用CSS
 */

/* =========================================================
   1202：仕事内容・職種紹介
   01 JOB｜ファーストビュー
========================================================= */

.staff-job-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(
      circle at 88% 18%,
      rgba(217, 138, 58, 0.10) 0,
      rgba(217, 138, 58, 0.10) 150px,
      transparent 151px
    ),
    linear-gradient(
      135deg,
      var(--recruit-white) 0%,
      #fffaf5 58%,
      var(--recruit-ivory) 100%
    );
}

.staff-job-hero::before {
  content: "";
  position: absolute;
  bottom: -150px;
  left: -130px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: rgba(115, 133, 104, 0.06);
  pointer-events: none;
}

.staff-job-hero__inner {
  position: relative;
  z-index: 1;
  width: min(100% - 48px, 1180px);
  min-height: 500px;
  margin: 0 auto;
}

.staff-job-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 900px;
  min-height: 500px;
  padding: 72px 0 80px;
}

.staff-job-hero__eyebrow {
  margin: 0 0 18px;
  color: var(--recruit-orange-dark);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.18em;
}

.staff-job-hero__title {
  margin: 0;
  color: var(--recruit-brown);
  font-size: clamp(40px, 4vw, 56px);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.03em;
}

.staff-job-hero__text {
  max-width: 820px;
  margin: 28px 0 0;
  color: var(--recruit-text);
  font-size: 16px;
  line-height: 2;
}

.staff-job-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 36px;
}

/* Gutenberg の余白をリセット */
.staff-job-hero__inner,
.staff-job-hero__content,
.staff-job-hero__buttons {
  margin-block-start: 0;
  margin-block-end: 0;
}

/* =========================================================
   1202：01 JOB｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .staff-job-hero {
    background:
      radial-gradient(
        circle at 100% 8%,
        rgba(217, 138, 58, 0.08) 0,
        rgba(217, 138, 58, 0.08) 90px,
        transparent 91px
      ),
      linear-gradient(
        180deg,
        var(--recruit-white) 0%,
        #fffaf5 58%,
        var(--recruit-ivory) 100%
      );
  }

  .staff-job-hero::before {
    bottom: -100px;
    left: -100px;
    width: 240px;
    height: 240px;
  }

  .staff-job-hero__inner {
    width: min(100% - 32px, 1120px);
    min-height: auto;
  }

  .staff-job-hero__content {
    min-height: auto;
    padding: 56px 0 64px;
  }

  .staff-job-hero__eyebrow {
    margin-bottom: 14px;
    font-size: 12px;
  }

  .staff-job-hero__title {
    font-size: 32px;
    line-height: 1.5;
  }

  .staff-job-hero__text {
    max-width: 100%;
    margin-top: 22px;
    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-hero__buttons {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 28px;
  }

  .staff-job-hero__buttons .wp-block-button,
  .staff-job-hero__buttons .wp-block-button__link {
    width: 100%;
  }

}
/* =========================================================
1202：仕事内容・職種紹介
02 ABOUT THE JOB｜だいこん畑の仕事
========================================================= */

.staff-job-about {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background:
linear-gradient(
180deg,
#ffffff 0%,
#fffaf5 48%,
var(--recruit-ivory) 100%
);
}

.staff-job-about::before {
content: "";
position: absolute;
top: -120px;
left: -120px;
width: 300px;
height: 300px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-about::after {
content: "";
position: absolute;
right: -130px;
bottom: -130px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.06);
pointer-events: none;
}

.staff-job-about__inner {
position: relative;
z-index: 1;
max-width: 1120px;
margin: 0 auto;
}

.staff-job-about__heading {
margin-bottom: 0 !important;
}

.staff-job-about__lead {
max-width: 820px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Cards
========================================================= */

.staff-job-about__cards {
align-items: stretch !important;
gap: 20px !important;
margin: 0 !important;
}

.staff-job-about__cards--top {
margin-bottom: 20px !important;
}

.staff-job-about__cards > .wp-block-column {
display: flex;
}

.staff-job-about__card {
position: relative;
width: 100%;
height: 100%;
min-height: 230px;
padding: 34px 30px 30px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 68%,
#f8eedf 100%
);
box-shadow: 0 14px 34px rgba(90, 64, 48, 0.07);
transition:
transform 0.25s ease,
box-shadow 0.25s ease,
border-color 0.25s ease;
}

.staff-job-about__card::before {
content: "";
position: absolute;
top: 0;
left: 30px;
width: 52px;
height: 4px;
border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

.staff-job-about__card::after {
content: "";
position: absolute;
top: -44px;
right: -44px;
width: 120px;
height: 120px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-about__card:hover {
transform: translateY(-5px);
border-color: rgba(185, 104, 40, 0.26);
box-shadow: 0 20px 42px rgba(90, 64, 48, 0.11);
}

.staff-job-about__number,
.staff-job-about__card-title,
.staff-job-about__card-text {
position: relative;
z-index: 1;
}

.staff-job-about__number {
margin: 0 0 14px;
color: var(--recruit-orange-dark);
font-size: 14px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-about__card-title {
margin: 0;
color: var(--recruit-brown);
font-size: 21px;
font-weight: 700;
line-height: 1.6;
}

.staff-job-about__card-text {
margin: 14px 0 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

/* Gutenberg余白リセット */
.staff-job-about__inner,
.staff-job-about__heading,
.staff-job-about__cards,
.staff-job-about__card {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：02 ABOUT THE JOB｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-about {
padding: 64px 16px 72px;
}

.staff-job-about::before {
top: -90px;
left: -90px;
width: 220px;
height: 220px;
}

.staff-job-about::after {
right: -100px;
bottom: -100px;
width: 240px;
height: 240px;
}

.staff-job-about__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-about__cards {
display: block !important;
}

.staff-job-about__cards--top {
margin-bottom: 0 !important;
}

.staff-job-about__cards > .wp-block-column {
margin-bottom: 14px;
}

.staff-job-about__cards--bottom > .wp-block-column:last-child {
margin-bottom: 0;
}

.staff-job-about__card {
min-height: auto;
padding: 28px 24px 26px;
border-radius: 19px;
}

.staff-job-about__card::before {
left: 24px;
width: 46px;
}

.staff-job-about__number {
margin-bottom: 11px;
font-size: 13px;
}

.staff-job-about__card-title {
font-size: 19px;
}

.staff-job-about__card-text {
margin-top: 11px;
font-size: 15px;
line-height: 1.9;
}

}
/* =========================================================
1202：仕事内容・職種紹介
03 JOBS｜職種紹介
========================================================= */

.staff-job-jobs {
position: relative;
overflow: hidden;
padding: 88px 24px 104px;
background: #fff;
}

.staff-job-jobs::before {
content: "";
position: absolute;
top: -140px;
right: -120px;
width: 340px;
height: 340px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-jobs::after {
content: "";
position: absolute;
bottom: -150px;
left: -130px;
width: 360px;
height: 360px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.05);
pointer-events: none;
}

.staff-job-jobs__inner {
position: relative;
z-index: 1;
max-width: 1120px;
margin: 0 auto;
}

.staff-job-jobs__heading {
margin-bottom: 0 !important;
}

.staff-job-jobs__lead {
max-width: 820px;
margin: 26px auto 48px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Job Card
========================================================= */

.staff-job-jobs__card {
position: relative;
margin: 0 0 28px !important;
padding: 44px 42px 40px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 26px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 68%,
var(--recruit-ivory) 100%
);
box-shadow: 0 16px 38px rgba(90, 64, 48, 0.08);
}

.staff-job-jobs__card:last-child {
margin-bottom: 0 !important;
}

.staff-job-jobs__card::before {
content: "";
position: absolute;
top: 0;
left: 42px;
width: 64px;
height: 5px;
border-radius: 0 0 5px 5px;
background: var(--recruit-orange-dark);
}

.staff-job-jobs__card::after {
content: "";
position: absolute;
top: -70px;
right: -70px;
width: 190px;
height: 190px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-jobs__number,
.staff-job-jobs__title,
.staff-job-jobs__role-label,
.staff-job-jobs__role,
.staff-job-jobs__subheading,
.staff-job-jobs__list,
.staff-job-jobs__text,
.staff-job-jobs__tags {
position: relative;
z-index: 1;
}

.staff-job-jobs__number {
margin: 0 0 10px;
color: var(--recruit-orange-dark);
font-size: 14px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-jobs__title {
margin: 0;
color: var(--recruit-brown);
font-size: clamp(28px, 3vw, 36px);
font-weight: 700;
line-height: 1.5;
letter-spacing: 0.02em;
}

.staff-job-jobs__role-label {
margin: 26px 0 6px;
color: var(--recruit-orange-dark);
font-size: 12px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-jobs__role {
margin: 0;
color: var(--recruit-brown);
font-size: 19px;
font-weight: 700;
line-height: 1.7;
}

.staff-job-jobs__subheading {
margin: 30px 0 14px;
padding-bottom: 8px;
border-bottom: 1px solid rgba(185, 104, 40, 0.16);
color: var(--recruit-brown);
font-size: 17px;
font-weight: 700;
line-height: 1.6;
}

/* =========================================================
Job List
========================================================= */

.staff-job-jobs__list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px 28px;
margin: 0;
padding: 0;
list-style: none;
}

.staff-job-jobs__list li {
position: relative;
margin: 0;
padding-left: 20px;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.8;
}

.staff-job-jobs__list li::before {
content: "";
position: absolute;
top: 0.75em;
left: 2px;
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--recruit-orange);
transform: translateY(-50%);
}

.staff-job-jobs__text {
margin: 0;
color: var(--recruit-text);
font-size: 16px;
line-height: 1.95;
}

/* =========================================================
Experience Tags
========================================================= */

.staff-job-jobs__tags {
margin: 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 2;
}

/* Gutenberg余白リセット */
.staff-job-jobs__inner,
.staff-job-jobs__heading,
.staff-job-jobs__card {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：03 JOBS｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-jobs {
padding: 64px 16px 76px;
}

.staff-job-jobs::before {
top: -100px;
right: -100px;
width: 240px;
height: 240px;
}

.staff-job-jobs::after {
bottom: -110px;
left: -110px;
width: 260px;
height: 260px;
}

.staff-job-jobs__lead {
max-width: 100%;
margin: 22px auto 34px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-jobs__card {
margin-bottom: 18px !important;
padding: 34px 24px 30px;
border-radius: 21px;
}

.staff-job-jobs__card::before {
left: 24px;
width: 52px;
height: 4px;
}

.staff-job-jobs__card::after {
top: -52px;
right: -52px;
width: 140px;
height: 140px;
}

.staff-job-jobs__number {
margin-bottom: 8px;
font-size: 13px;
}

.staff-job-jobs__title {
font-size: 25px;
}

.staff-job-jobs__role-label {
margin-top: 22px;
}

.staff-job-jobs__role {
font-size: 17px;
line-height: 1.7;
}

.staff-job-jobs__subheading {
margin-top: 26px;
margin-bottom: 12px;
font-size: 16px;
}

.staff-job-jobs__list {
grid-template-columns: 1fr;
gap: 7px;
}

.staff-job-jobs__list li {
font-size: 15px;
}

.staff-job-jobs__text {
font-size: 15px;
line-height: 1.9;
}

.staff-job-jobs__tags {
font-size: 15px;
line-height: 1.9;
}

}
/* =========================================================
1202：仕事内容・職種紹介
04 ONE SUPPORT｜一人の利用者を、複数の職種で支える
========================================================= */

.staff-job-support {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background:
linear-gradient(
180deg,
var(--recruit-ivory) 0%,
#fffaf5 50%,
#ffffff 100%
);
}

.staff-job-support::before {
content: "";
position: absolute;
top: -130px;
left: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-support::after {
content: "";
position: absolute;
right: -130px;
bottom: -140px;
width: 340px;
height: 340px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.06);
pointer-events: none;
}

.staff-job-support__inner {
position: relative;
z-index: 1;
max-width: 1040px;
margin: 0 auto;
}

.staff-job-support__heading {
margin-bottom: 0 !important;
}

.staff-job-support__lead {
max-width: 780px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Support Flow
========================================================= */

.staff-job-support__flow {
max-width: 780px;
margin: 0 auto !important;
}

.staff-job-support__item {
position: relative;
padding: 30px 34px 28px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 68%,
var(--recruit-ivory) 100%
);
box-shadow: 0 14px 32px rgba(90, 64, 48, 0.07);
}

.staff-job-support__item::before {
content: "";
position: absolute;
top: 0;
left: 34px;
width: 52px;
height: 4px;
border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

.staff-job-support__item::after {
content: "";
position: absolute;
top: -42px;
right: -42px;
width: 120px;
height: 120px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-support__number,
.staff-job-support__title,
.staff-job-support__text {
position: relative;
z-index: 1;
}

.staff-job-support__number {
margin: 0 0 10px;
color: var(--recruit-orange-dark);
font-size: 13px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-support__title {
margin: 0;
color: var(--recruit-brown);
font-size: 22px;
font-weight: 700;
line-height: 1.6;
}

.staff-job-support__text {
margin: 12px 0 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

/* =========================================================
Arrow
========================================================= */

.staff-job-support__arrow {
margin: 8px 0 !important;
color: var(--recruit-orange-dark);
font-size: 26px;
font-weight: 700;
line-height: 1;
text-align: center;
}

/* =========================================================
Message
========================================================= */

.staff-job-support__message {
max-width: 780px;
margin: 42px auto 0;
padding: 24px 28px;
border-left: 4px solid var(--recruit-orange-dark);
border-radius: 0 16px 16px 0;
background: rgba(255, 255, 255, 0.82);
color: var(--recruit-brown);
font-size: 16px;
font-weight: 700;
line-height: 1.9;
}

/* Gutenberg余白リセット */
.staff-job-support__inner,
.staff-job-support__heading,
.staff-job-support__flow,
.staff-job-support__item {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：04 ONE SUPPORT｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-support {
padding: 64px 16px 72px;
}

.staff-job-support::before {
top: -90px;
left: -90px;
width: 220px;
height: 220px;
}

.staff-job-support::after {
right: -100px;
bottom: -100px;
width: 240px;
height: 240px;
}

.staff-job-support__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-support__flow {
max-width: 100%;
}

.staff-job-support__item {
padding: 26px 24px 24px;
border-radius: 19px;
}

.staff-job-support__item::before {
left: 24px;
width: 46px;
}

.staff-job-support__item::after {
top: -36px;
right: -36px;
width: 100px;
height: 100px;
}

.staff-job-support__number {
margin-bottom: 8px;
font-size: 12px;
}

.staff-job-support__title {
font-size: 20px;
}

.staff-job-support__text {
margin-top: 10px;
font-size: 15px;
line-height: 1.9;
}

.staff-job-support__arrow {
margin: 6px 0 !important;
font-size: 22px;
}

.staff-job-support__message {
max-width: 100%;
margin-top: 32px;
padding: 20px 20px;
font-size: 15px;
line-height: 1.9;
}

}
/* =========================================================
   1202：仕事内容・職種紹介
   05 TEAMWORK｜職員同士の連携
========================================================= */

.staff-job-teamwork {
  position: relative;
  overflow: hidden;
  padding: 88px 24px 96px;
  background:
    linear-gradient(
      135deg,
      #fffdf9 0%,
      #fff6eb 50%,
      #f8eedf 100%
    );
}

.staff-job-teamwork::before {
  content: "";
  position: absolute;
  top: -150px;
  left: -130px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: rgba(217, 138, 58, 0.08);
  pointer-events: none;
}

.staff-job-teamwork::after {
  content: "";
  position: absolute;
  right: -150px;
  bottom: -160px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: rgba(115, 133, 104, 0.06);
  pointer-events: none;
}

.staff-job-teamwork__inner {
  position: relative;
  z-index: 1;
  max-width: 1120px;
  margin: 0 auto;
}

.staff-job-teamwork__heading {
  margin-bottom: 0 !important;
}

.staff-job-teamwork__lead {
  max-width: 820px;
  margin: 24px auto 40px !important;
  color: var(--recruit-text);
  font-size: 16px;
  line-height: 2;
  text-align: center !important;
}

/* Cards */
.staff-job-teamwork__cards {
  align-items: stretch !important;
  gap: 20px !important;
  margin: 0 0 20px !important;
}

.staff-job-teamwork__cards--bottom {
  max-width: 760px;
  margin: 0 auto !important;
}

.staff-job-teamwork__cards > .wp-block-column {
  display: flex;
}

.staff-job-teamwork__card {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 220px;
  padding: 30px 26px 24px !important;
  overflow: hidden;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 22px;
  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fffaf5 68%,
      var(--recruit-ivory) 100%
    );
  box-shadow: 0 14px 34px rgba(90, 64, 48, 0.07);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.staff-job-teamwork__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 26px;
  width: 52px;
  height: 4px;
  border-radius: 0 0 4px 4px;
  background: var(--recruit-orange-dark);
}

.staff-job-teamwork__card::after {
  content: "";
  position: absolute;
  top: -42px;
  right: -42px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: rgba(217, 138, 58, 0.06);
  pointer-events: none;
}

.staff-job-teamwork__card:hover {
  transform: translateY(-4px);
  border-color: rgba(185, 104, 40, 0.24);
  box-shadow: 0 18px 40px rgba(90, 64, 48, 0.11);
}

.staff-job-teamwork__number {
  position: absolute !important;
  top: 12px;
  right: 18px;
  z-index: 1;
  margin: 0 !important;
  color: rgba(185, 104, 40, 0.09);
  font-size: 100px !important;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  pointer-events: none;
}

.staff-job-teamwork__title,
.staff-job-teamwork__text {
  position: relative;
  z-index: 2;
}

.staff-job-teamwork__title {
  margin: 0;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(185, 104, 40, 0.12);
  color: var(--recruit-brown);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
}

.staff-job-teamwork__text {
  margin: 14px 0 0 !important;
  color: var(--recruit-text);
  font-size: 15px;
  line-height: 1.9;
}

/* Message */
.staff-job-teamwork__message {
  max-width: 820px;
  margin: 24px auto 0 !important;
  padding: 26px 30px;
  border-left: 4px solid var(--recruit-orange-dark);
  border-radius: 0 18px 18px 0;
  background: var(--recruit-ivory);
  color: var(--recruit-brown);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.9;
}

/* Gutenberg余白リセット */
.staff-job-teamwork__inner,
.staff-job-teamwork__heading,
.staff-job-teamwork__card {
  margin-block-start: 0;
  margin-block-end: 0;
}

/* Smartphone */
@media screen and (max-width: 781px) {

  .staff-job-teamwork {
    padding: 64px 16px 72px;
  }

  .staff-job-teamwork::before {
    top: -90px;
    left: -90px;
    width: 220px;
    height: 220px;
  }

  .staff-job-teamwork::after {
    right: -100px;
    bottom: -110px;
    width: 240px;
    height: 240px;
  }

  .staff-job-teamwork__lead {
    max-width: 100%;
    margin: 22px auto 32px !important;
    font-size: 15px;
    line-height: 1.9;
    text-align: center !important;
  }

  .staff-job-teamwork__cards,
  .staff-job-teamwork__cards--bottom {
    display: block !important;
    max-width: 100%;
    margin-bottom: 0 !important;
  }

  .staff-job-teamwork__cards > .wp-block-column {
    margin-bottom: 14px;
  }

  .staff-job-teamwork__cards--bottom > .wp-block-column:last-child {
    margin-bottom: 0;
  }

  .staff-job-teamwork__card {
    min-height: auto;
    padding: 26px 22px 22px !important;
    border-radius: 18px;
  }

  .staff-job-teamwork__card::before {
    left: 22px;
    width: 46px;
  }

  .staff-job-teamwork__number {
    top: 10px;
    right: 14px;
    font-size: 72px !important;
  }

  .staff-job-teamwork__title {
    padding-bottom: 10px;
    font-size: 20px;
  }

  .staff-job-teamwork__text {
    margin-top: 12px !important;
    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-teamwork__message {
    max-width: 100%;
    margin-top: 24px !important;
    padding: 20px;
    font-size: 15px;
    line-height: 1.9;
  }

}
/* =========================================================
1202：仕事内容・職種紹介
07 CAREER｜経験を次の役割へ
========================================================= */

/* =========================================================
Career Flow
========================================================= */

/* =========================================================
Note
========================================================= */

/* =========================================================
Button
========================================================= */

/* Gutenberg余白リセット */

/* =========================================================
1202：07 CAREER｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

}
/* =========================================================
1202：仕事内容・職種紹介
07 CAREER｜経験を次の役割へ
========================================================= */

.staff-job-career {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background: #fff;
}

.staff-job-career::before {
content: "";
position: absolute;
top: -130px;
right: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-career::after {
content: "";
position: absolute;
bottom: -140px;
left: -130px;
width: 340px;
height: 340px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.05);
pointer-events: none;
}

.staff-job-career__inner {
position: relative;
z-index: 1;
max-width: 1040px;
margin: 0 auto;
}

.staff-job-career__heading {
margin-bottom: 0 !important;
}

.staff-job-career__lead {
max-width: 820px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Career Flow
========================================================= */

.staff-job-career__flow {
max-width: 780px;
margin: 0 auto !important;
}

.staff-job-career__step {
position: relative;
padding: 30px 34px 28px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 70%,
var(--recruit-ivory) 100%
);
box-shadow: 0 14px 32px rgba(90, 64, 48, 0.07);
}

.staff-job-career__step::before {
content: "";
position: absolute;
top: 0;
left: 34px;
width: 52px;
height: 4px;
border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

.staff-job-career__step::after {
content: "";
position: absolute;
top: -42px;
right: -42px;
width: 120px;
height: 120px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-career__step--goal {
border-color: rgba(185, 104, 40, 0.28);
background:
linear-gradient(
145deg,
#fffaf5 0%,
#f8eedf 100%
);
}

.staff-job-career__number,
.staff-job-career__title,
.staff-job-career__text {
position: relative;
z-index: 1;
}

.staff-job-career__number {
margin: 0 0 10px;
color: var(--recruit-orange-dark);
font-size: 13px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-career__title {
margin: 0;
color: var(--recruit-brown);
font-size: 22px;
font-weight: 700;
line-height: 1.6;
}

.staff-job-career__text {
margin: 12px 0 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

.staff-job-career__arrow {
margin: 8px 0 !important;
color: var(--recruit-orange-dark);
font-size: 26px;
font-weight: 700;
line-height: 1;
text-align: center;
}

/* =========================================================
Note
========================================================= */

.staff-job-career__note {
max-width: 820px;
margin: 40px auto 0;
padding: 24px 28px;
border-left: 4px solid var(--recruit-orange-dark);
border-radius: 0 16px 16px 0;
background: var(--recruit-ivory);
color: var(--recruit-text);
font-size: 16px;
line-height: 1.9;
}

/* =========================================================
Button
========================================================= */

.staff-job-career__button {
justify-content: center;
margin-top: 34px;
}

/* Gutenberg余白リセット */
.staff-job-career__inner,
.staff-job-career__heading,
.staff-job-career__flow,
.staff-job-career__step {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：07 CAREER｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-career {
padding: 64px 16px 72px;
}

.staff-job-career::before {
top: -90px;
right: -90px;
width: 220px;
height: 220px;
}

.staff-job-career::after {
bottom: -100px;
left: -100px;
width: 240px;
height: 240px;
}

.staff-job-career__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-career__flow {
max-width: 100%;
}

.staff-job-career__step {
padding: 26px 24px 24px;
border-radius: 19px;
}

.staff-job-career__step::before {
left: 24px;
width: 46px;
}

.staff-job-career__number {
margin-bottom: 8px;
font-size: 12px;
}

.staff-job-career__title {
font-size: 20px;
}

.staff-job-career__text {
margin-top: 10px;
font-size: 15px;
line-height: 1.9;
}

.staff-job-career__arrow {
margin: 6px 0 !important;
font-size: 22px;
}

.staff-job-career__note {
max-width: 100%;
margin-top: 30px;
padding: 20px;
font-size: 15px;
line-height: 1.9;
}

.staff-job-career__button {
margin-top: 28px;
}

.staff-job-career__button,
.staff-job-career__button .wp-block-button,
.staff-job-career__button .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：仕事内容・職種紹介
08 WORK SCENE｜実際の仕事場面
========================================================= */

.staff-job-scene {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background:
linear-gradient(
180deg,
#fffaf5 0%,
var(--recruit-ivory) 52%,
#ffffff 100%
);
}

.staff-job-scene::before {
content: "";
position: absolute;
top: -130px;
left: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-scene::after {
content: "";
position: absolute;
right: -140px;
bottom: -150px;
width: 360px;
height: 360px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.06);
pointer-events: none;
}

.staff-job-scene__inner {
position: relative;
z-index: 1;
max-width: 1120px;
margin: 0 auto;
}

.staff-job-scene__heading {
margin-bottom: 0 !important;
}

.staff-job-scene__lead {
max-width: 820px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Cards
========================================================= */

.staff-job-scene__cards {
align-items: stretch !important;
gap: 20px !important;
margin: 0 0 20px !important;
}

.staff-job-scene__cards--bottom {
margin-bottom: 0 !important;
}

.staff-job-scene__cards > .wp-block-column {
display: flex;
}

.staff-job-scene__card {
position: relative;
width: 100%;
height: 100%;
min-height: 220px;
padding: 32px 28px 28px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 70%,
var(--recruit-ivory) 100%
);
box-shadow: 0 14px 34px rgba(90, 64, 48, 0.07);
}

.staff-job-scene__card::before {
content: "";
position: absolute;
top: 0;
left: 28px;
width: 50px;
height: 4px;
border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

.staff-job-scene__card::after {
content: "";
position: absolute;
top: -42px;
right: -42px;
width: 115px;
height: 115px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.065);
pointer-events: none;
}

.staff-job-scene__number,
.staff-job-scene__title,
.staff-job-scene__text {
position: relative;
z-index: 1;
}

.staff-job-scene__number {
margin: 0 0 12px;
color: var(--recruit-orange-dark);
font-size: 13px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-scene__title {
margin: 0;
color: var(--recruit-brown);
font-size: 20px;
font-weight: 700;
line-height: 1.6;
}

.staff-job-scene__text {
margin: 14px 0 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

/* Gutenberg余白リセット */
.staff-job-scene__inner,
.staff-job-scene__heading,
.staff-job-scene__cards,
.staff-job-scene__card {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：08 WORK SCENE｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-scene {
padding: 64px 16px 72px;
}

.staff-job-scene::before {
top: -90px;
left: -90px;
width: 220px;
height: 220px;
}

.staff-job-scene::after {
right: -100px;
bottom: -100px;
width: 240px;
height: 240px;
}

.staff-job-scene__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-scene__cards,
.staff-job-scene__cards--bottom {
display: block !important;
margin-bottom: 0 !important;
}

.staff-job-scene__cards > .wp-block-column {
margin-bottom: 14px;
}

.staff-job-scene__cards--bottom > .wp-block-column:last-child {
margin-bottom: 0;
}

.staff-job-scene__card {
min-height: auto;
padding: 28px 24px 25px;
border-radius: 19px;
}

.staff-job-scene__card::before {
left: 24px;
width: 46px;
}

.staff-job-scene__number {
margin-bottom: 10px;
font-size: 12px;
}

.staff-job-scene__title {
font-size: 19px;
}

.staff-job-scene__text {
margin-top: 11px;
font-size: 15px;
line-height: 1.9;
}

}
/* =========================================================
1202：仕事内容・職種紹介
09 DAY｜一日の仕事
========================================================= */

.staff-job-day {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background: #fff;
}

.staff-job-day::before {
content: "";
position: absolute;
top: -120px;
right: -110px;
width: 300px;
height: 300px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-day::after {
content: "";
position: absolute;
bottom: -130px;
left: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.05);
pointer-events: none;
}

.staff-job-day__inner {
position: relative;
z-index: 1;
max-width: 980px;
margin: 0 auto;
}

.staff-job-day__heading {
margin-bottom: 42px !important;
}

/* =========================================================
Panel
========================================================= */

.staff-job-day__panel {
position: relative;
max-width: 820px;
margin: 0 auto !important;
padding: 46px 42px 42px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 28px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 62%,
var(--recruit-ivory) 100%
);
box-shadow: 0 18px 42px rgba(90, 64, 48, 0.08);
}

.staff-job-day__panel::before {
content: "";
position: absolute;
top: -80px;
right: -70px;
width: 200px;
height: 200px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-day__text,
.staff-job-day__button {
position: relative;
z-index: 1;
}

.staff-job-day__text {
max-width: 680px;
margin: 0 auto;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

.staff-job-day__button {
justify-content: center;
margin-top: 30px;
}

/* Gutenberg余白リセット */
.staff-job-day__inner,
.staff-job-day__heading,
.staff-job-day__panel {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：09 DAY｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-day {
padding: 64px 16px 72px;
}

.staff-job-day::before {
top: -90px;
right: -90px;
width: 220px;
height: 220px;
}

.staff-job-day::after {
bottom: -100px;
left: -100px;
width: 240px;
height: 240px;
}

.staff-job-day__heading {
margin-bottom: 32px !important;
}

.staff-job-day__panel {
max-width: 100%;
padding: 32px 22px 28px;
border-radius: 22px;
}

.staff-job-day__panel::before {
top: -55px;
right: -50px;
width: 145px;
height: 145px;
}

.staff-job-day__text {
max-width: 100%;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-day__button {
margin-top: 26px;
}

.staff-job-day__button,
.staff-job-day__button .wp-block-button,
.staff-job-day__button .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：仕事内容・職種紹介
10 MATCH｜これまでの経験から、自分に合う仕事を考える
========================================================= */

.staff-job-match {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background:
linear-gradient(
180deg,
#fffaf5 0%,
var(--recruit-ivory) 52%,
#ffffff 100%
);
}

.staff-job-match::before {
content: "";
position: absolute;
top: -130px;
left: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-match::after {
content: "";
position: absolute;
right: -140px;
bottom: -150px;
width: 360px;
height: 360px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.06);
pointer-events: none;
}

.staff-job-match__inner {
position: relative;
z-index: 1;
max-width: 1040px;
margin: 0 auto;
}

.staff-job-match__heading {
margin-bottom: 0 !important;
}

.staff-job-match__lead {
max-width: 820px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Match List
========================================================= */

.staff-job-match__list {
max-width: 860px;
margin: 0 auto !important;
}

.staff-job-match__item {
display: grid;
grid-template-columns: minmax(0, 1fr) 42px minmax(260px, 0.8fr);
align-items: center;
gap: 18px;
margin: 0 0 14px !important;
padding: 22px 28px;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 18px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 100%
);
box-shadow: 0 10px 26px rgba(90, 64, 48, 0.06);
}

.staff-job-match__item:last-child {
margin-bottom: 0 !important;
}

.staff-job-match__experience,
.staff-job-match__arrow,
.staff-job-match__job {
margin: 0;
}

.staff-job-match__experience {
color: var(--recruit-text);
font-size: 16px;
font-weight: 600;
line-height: 1.7;
}

.staff-job-match__arrow {
color: var(--recruit-orange-dark);
font-size: 22px;
font-weight: 700;
line-height: 1;
text-align: center;
}

.staff-job-match__job {
color: var(--recruit-brown);
font-size: 17px;
font-weight: 700;
line-height: 1.7;
}

/* =========================================================
Note
========================================================= */

.staff-job-match__note {
max-width: 860px;
margin: 28px auto 0;
color: var(--recruit-text);
font-size: 14px;
line-height: 1.8;
text-align: center;
}

/* =========================================================
Button
========================================================= */

.staff-job-match__button {
justify-content: center;
margin-top: 32px;
}

/* Gutenberg余白リセット */
.staff-job-match__inner,
.staff-job-match__heading,
.staff-job-match__list,
.staff-job-match__item {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：10 MATCH｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-match {
padding: 64px 16px 72px;
}

.staff-job-match::before {
top: -90px;
left: -90px;
width: 220px;
height: 220px;
}

.staff-job-match::after {
right: -100px;
bottom: -100px;
width: 240px;
height: 240px;
}

.staff-job-match__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-match__list {
max-width: 100%;
}

.staff-job-match__item {
display: grid;
grid-template-columns: 1fr;
gap: 8px;
margin-bottom: 12px !important;
padding: 22px 20px;
border-radius: 17px;
}

.staff-job-match__experience {
font-size: 15px;
}

.staff-job-match__arrow {
font-size: 20px;
text-align: left;
transform: rotate(90deg);
transform-origin: center;
width: fit-content;
}

.staff-job-match__job {
font-size: 16px;
}

.staff-job-match__note {
max-width: 100%;
margin-top: 24px;
font-size: 13px;
line-height: 1.8;
text-align: left;
}

.staff-job-match__button {
margin-top: 28px;
}

.staff-job-match__button,
.staff-job-match__button .wp-block-button,
.staff-job-match__button .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：仕事内容・職種紹介
11 MESSAGE｜仕事について伝えたいこと
========================================================= */

.staff-job-message {
position: relative;
overflow: hidden;
padding: 88px 24px 96px;
background: #fff;
}

.staff-job-message::before {
content: "";
position: absolute;
top: -130px;
right: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.06);
pointer-events: none;
}

.staff-job-message::after {
content: "";
position: absolute;
bottom: -140px;
left: -130px;
width: 340px;
height: 340px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.05);
pointer-events: none;
}

.staff-job-message__inner {
position: relative;
z-index: 1;
max-width: 1040px;
margin: 0 auto;
}

.staff-job-message__heading {
margin-bottom: 42px !important;
}

/* =========================================================
Message Panel
========================================================= */

.staff-job-message__panel {
position: relative;
max-width: 860px;
margin: 0 auto !important;
padding: 48px 46px 44px;
overflow: hidden;
border-radius: 28px;
background:
linear-gradient(
135deg,
var(--recruit-brown) 0%,
#684936 100%
);
box-shadow: 0 20px 46px rgba(90, 64, 48, 0.16);
}

.staff-job-message__panel::before {
content: "";
position: absolute;
top: -100px;
right: -80px;
width: 250px;
height: 250px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.14);
pointer-events: none;
}

.staff-job-message__panel::after {
content: "";
position: absolute;
bottom: -120px;
left: -100px;
width: 260px;
height: 260px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.04);
pointer-events: none;
}

.staff-job-message__lead,
.staff-job-message__roles,
.staff-job-message__role,
.staff-job-message__text {
position: relative;
z-index: 1;
}

.staff-job-message__lead {
margin: 0 0 28px;
color: #fff;
font-size: 20px;
font-weight: 700;
line-height: 1.8;
text-align: center;
}

/* =========================================================
Roles
========================================================= */

.staff-job-message__roles {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
margin: 0 !important;
}

.staff-job-message__role {
margin: 0;
padding: 14px 16px;
border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: 14px;
background: rgba(255, 255, 255, 0.08);
color: #fff;
font-size: 15px;
font-weight: 700;
line-height: 1.6;
text-align: center;
}

.staff-job-message__text {
max-width: 720px;
margin: 30px auto 0;
color: rgba(255, 255, 255, 0.86);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* Gutenberg余白リセット */
.staff-job-message__inner,
.staff-job-message__heading,
.staff-job-message__panel,
.staff-job-message__roles {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：11 MESSAGE｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-message {
padding: 64px 16px 72px;
}

.staff-job-message::before {
top: -90px;
right: -90px;
width: 220px;
height: 220px;
}

.staff-job-message::after {
bottom: -100px;
left: -100px;
width: 240px;
height: 240px;
}

.staff-job-message__heading {
margin-bottom: 32px !important;
}

.staff-job-message__panel {
max-width: 100%;
padding: 34px 20px 30px;
border-radius: 22px;
}

.staff-job-message__lead {
margin-bottom: 22px;
font-size: 18px;
text-align: left;
}

.staff-job-message__roles {
grid-template-columns: 1fr;
gap: 9px;
}

.staff-job-message__role {
padding: 12px 15px;
font-size: 15px;
text-align: left;
}

.staff-job-message__text {
max-width: 100%;
margin-top: 24px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

}
/* =========================================================
1202：仕事内容・職種紹介
12 NEXT｜次に見るページ
========================================================= */

.staff-job-next {
position: relative;
overflow: hidden;
padding: 88px 24px 104px;
background:
linear-gradient(
180deg,
#fffaf5 0%,
var(--recruit-ivory) 52%,
#ffffff 100%
);
}

.staff-job-next::before {
content: "";
position: absolute;
top: -130px;
left: -120px;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.07);
pointer-events: none;
}

.staff-job-next::after {
content: "";
position: absolute;
right: -140px;
bottom: -150px;
width: 360px;
height: 360px;
border-radius: 50%;
background: rgba(115, 133, 104, 0.06);
pointer-events: none;
}

.staff-job-next__inner {
position: relative;
z-index: 1;
max-width: 1120px;
margin: 0 auto;
}

.staff-job-next__heading {
margin-bottom: 0 !important;
}

.staff-job-next__lead {
max-width: 760px;
margin: 26px auto 46px;
color: var(--recruit-text);
font-size: 16px;
line-height: 2;
text-align: center;
}

/* =========================================================
Next Cards
========================================================= */

.staff-job-next__cards {
align-items: stretch !important;
gap: 20px !important;
margin: 0 !important;
}

.staff-job-next__cards > .wp-block-column {
display: flex;
}

.staff-job-next__card {
position: relative;
display: flex;
flex-direction: column;
width: 100%;
min-height: 330px;
padding: 34px 28px 30px;
overflow: hidden;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 70%,
var(--recruit-ivory) 100%
);
box-shadow: 0 14px 34px rgba(90, 64, 48, 0.07);
}

.staff-job-next__card::before {
content: "";
position: absolute;
top: 0;
left: 28px;
width: 50px;
height: 4px;
border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

.staff-job-next__card::after {
content: "";
position: absolute;
top: -42px;
right: -42px;
width: 115px;
height: 115px;
border-radius: 50%;
background: rgba(217, 138, 58, 0.065);
pointer-events: none;
}

.staff-job-next__number,
.staff-job-next__title,
.staff-job-next__text,
.staff-job-next__button {
position: relative;
z-index: 1;
}

.staff-job-next__number {
margin: 0 0 12px;
color: var(--recruit-orange-dark);
font-size: 13px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
}

.staff-job-next__title {
margin: 0;
color: var(--recruit-brown);
font-size: 21px;
font-weight: 700;
line-height: 1.6;
}

.staff-job-next__text {
margin: 14px 0 0;
color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

.staff-job-next__button {
justify-content: center;
margin-top: auto;
padding-top: 28px;
}

/* =========================================================
Entry
========================================================= */

.staff-job-next__entry {
max-width: 820px;
margin: 42px auto 0 !important;
padding: 30px 32px 28px;
border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 12px 30px rgba(90, 64, 48, 0.06);
}

.staff-job-next__entry-text {
margin: 0;
color: var(--recruit-text);
font-size: 16px;
line-height: 1.9;
text-align: center;
}

.staff-job-next__entry-button {
justify-content: center;
margin-top: 24px;
}

/* Gutenberg余白リセット */
.staff-job-next__inner,
.staff-job-next__heading,
.staff-job-next__cards,
.staff-job-next__card,
.staff-job-next__entry {
margin-block-start: 0;
margin-block-end: 0;
}

/* =========================================================
1202：12 NEXT｜Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-next {
padding: 64px 16px 76px;
}

.staff-job-next::before {
top: -90px;
left: -90px;
width: 220px;
height: 220px;
}

.staff-job-next::after {
right: -100px;
bottom: -100px;
width: 240px;
height: 240px;
}

.staff-job-next__lead {
max-width: 100%;
margin: 22px auto 32px;
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-next__cards {
display: block !important;
}

.staff-job-next__cards > .wp-block-column {
margin-bottom: 14px;
}

.staff-job-next__cards > .wp-block-column:last-child {
margin-bottom: 0;
}

.staff-job-next__card {
min-height: auto;
padding: 28px 24px 26px;
border-radius: 19px;
}

.staff-job-next__card::before {
left: 24px;
width: 46px;
}

.staff-job-next__number {
margin-bottom: 10px;
font-size: 12px;
}

.staff-job-next__title {
font-size: 19px;
}

.staff-job-next__text {
margin-top: 11px;
font-size: 15px;
line-height: 1.9;
}

.staff-job-next__button {
justify-content: stretch;
padding-top: 24px;
}

.staff-job-next__button,
.staff-job-next__button .wp-block-button,
.staff-job-next__button .wp-block-button__link {
width: 100%;
}

.staff-job-next__entry {
max-width: 100%;
margin-top: 32px !important;
padding: 24px 20px 22px;
border-radius: 19px;
}

.staff-job-next__entry-text {
font-size: 15px;
line-height: 1.9;
text-align: left;
}

.staff-job-next__entry-button {
margin-top: 22px;
}

.staff-job-next__entry-button,
.staff-job-next__entry-button .wp-block-button,
.staff-job-next__entry-button .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：JOB HERO Buttons
========================================================= */

.staff-job-hero__buttons {
position: relative;
display: flex !important;
justify-content: center !important;
align-items: center;
flex-wrap: wrap;
gap: 16px;
max-width: 660px;
margin: 36px auto 0 !important;
padding: 24px 28px;

border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 24px;

background:
radial-gradient(
circle at 12% 18%,
rgba(217, 138, 58, 0.10) 0,
rgba(217, 138, 58, 0.10) 70px,
transparent 71px
),
radial-gradient(
circle at 88% 80%,
rgba(115, 133, 104, 0.08) 0,
rgba(115, 133, 104, 0.08) 90px,
transparent 91px
),
linear-gradient(
135deg,
rgba(255, 255, 255, 0.96) 0%,
rgba(255, 250, 245, 0.96) 55%,
rgba(248, 238, 223, 0.96) 100%
);

box-shadow:
0 16px 38px rgba(90, 64, 48, 0.08);
}

/* 2つのボタン幅を統一 */


/* 少し立体感を追加 */
.staff-job-hero__buttons .wp-block-button__link {
box-shadow:
0 8px 20px rgba(90, 64, 48, 0.08);
}

.staff-job-hero__buttons .wp-block-button__link:hover,
.staff-job-hero__buttons .wp-block-button__link:focus-visible {
box-shadow:
0 12px 26px rgba(90, 64, 48, 0.12);
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-hero__buttons {
width: 100%;
max-width: 100%;
margin-top: 28px !important;
padding: 20px 16px;
gap: 12px;
border-radius: 20px;
}

.staff-job-hero__buttons .wp-block-button {
width: 100%;
}

.staff-job-hero__buttons .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：JOB HERO Buttons
背景なし・幅統一・中央配置
========================================================= */

.staff-job-hero__buttons {
display: flex !important;
justify-content: center !important;
align-items: center;
flex-wrap: wrap;
gap: 16px;

max-width: 660px;
margin: 36px auto 0 !important;
padding: 0;

background: none;
border: 0;
box-shadow: none;
}

/* 2つのボタン幅を統一 */


.staff-job-hero__buttons .wp-block-button__link {
width: 100%;
min-height: 56px;
justify-content: center;
text-align: center;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-hero__buttons {
width: 100%;
max-width: 100%;
margin-top: 28px !important;
gap: 12px;
}

.staff-job-hero__buttons .wp-block-button {
width: 100%;
}

.staff-job-hero__buttons .wp-block-button__link {
width: 100%;
}

}
/* =========================================================
1202：JOB HERO
おしゃれな背景 + ボタン中央配置
========================================================= */

.staff-job-hero {
position: relative;
display: flex;
align-items: center;
justify-content: center;

min-height: 320px;
padding: 72px 24px;

overflow: hidden;

background:
radial-gradient(
circle at 14% 22%,
rgba(217, 138, 58, 0.12) 0,
rgba(217, 138, 58, 0.12) 100px,
transparent 101px
),
radial-gradient(
circle at 86% 78%,
rgba(115, 133, 104, 0.09) 0,
rgba(115, 133, 104, 0.09) 130px,
transparent 131px
),
linear-gradient(
135deg,
#fffdf9 0%,
#fff8ef 48%,
#f8eedf 100%
);
}

/* 左上の装飾 */
.staff-job-hero::before {
content: "";
position: absolute;
top: -130px;
left: -120px;

width: 330px;
height: 330px;

border-radius: 50%;

background:
linear-gradient(
135deg,
rgba(217, 138, 58, 0.10),
rgba(245, 223, 199, 0.02)
);

pointer-events: none;
}

/* 右下の装飾 */
.staff-job-hero::after {
content: "";
position: absolute;
right: -140px;
bottom: -150px;

width: 360px;
height: 360px;

border-radius: 50%;

background:
linear-gradient(
135deg,
rgba(115, 133, 104, 0.09),
rgba(248, 238, 223, 0.02)
);

pointer-events: none;
}

/* 中身を前面へ */
.staff-job-hero > .wp-block-group {
position: relative;
z-index: 1;

width: 100%;
}

/* =========================================================
Buttons
========================================================= */

.staff-job-hero__buttons {
display: flex !important;
align-items: center !important;
justify-content: center !important;
flex-wrap: wrap;

width: 100%;
max-width: 620px;

margin: 0 auto !important;
padding: 0;

gap: 16px;
}

/* ボタン幅・高さ統一 */
.staff-job-hero__buttons .wp-block-button {
width: 250px;
margin: 0 !important;
}

.staff-job-hero__buttons .wp-block-button__link {
display: flex;
align-items: center;
justify-content: center;

width: 100%;
min-height: 58px;

padding: 14px 26px;

text-align: center;

box-shadow:
0 9px 22px rgba(90, 64, 48, 0.09);
}

/* hover */
.staff-job-hero__buttons .wp-block-button__link:hover,
.staff-job-hero__buttons .wp-block-button__link:focus-visible {
box-shadow:
0 13px 28px rgba(90, 64, 48, 0.13);
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-hero {
min-height: 280px;
padding: 56px 16px;
}

.staff-job-hero::before {
top: -90px;
left: -90px;

width: 230px;
height: 230px;

}

.staff-job-hero::after {
right: -100px;
bottom: -110px;

width: 260px;
height: 260px;

}

.staff-job-hero__buttons {
flex-direction: column;
max-width: 100%;
gap: 12px;
}

.staff-job-hero__buttons .wp-block-button {
width: 100%;
}

.staff-job-hero__buttons .wp-block-button__link {
width: 100%;
min-height: 56px;
}

}
/* =========================================================
1202：JOB HERO
ボタン上下余白をさらに縮小
========================================================= */

.staff-job-hero {
min-height: 0;
padding: 24px 24px;
}

@media screen and (max-width: 781px) {

.staff-job-hero {
min-height: 0;
padding: 22px 16px;
}

}
/* =========================================================
1202：ABOUT THE JOB
カード数字を右上の背景風に変更
========================================================= */


.staff-job-about__number {
position: absolute;
top: 14px;
right: 18px;

margin: 0;
font-size: 100px;
font-weight: 700;
line-height: 1;
letter-spacing: 0;

color: rgba(185, 104, 40, 0.10);

z-index: 0;
pointer-events: none;
}

/* タイトルと本文を数字より前面に */
.staff-job-about__card-title,
.staff-job-about__card-text {
position: relative;
z-index: 1;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-about__number {
top: 12px;
right: 14px;
font-size: 72px;
}

}
/* =========================================================
1202：ABOUT THE JOB
カード数字を右下へ
========================================================= */

.staff-job-about__number {
top: auto;
right: 18px;
bottom: 16px;

font-size: 100px;
line-height: 1;

color: rgba(185, 104, 40, 0.10);
}

/* Smartphone */
@media screen and (max-width: 781px) {

.staff-job-about__number {
right: 14px;
bottom: 12px;
font-size: 72px;
}

}
/* =========================================================
1202：ABOUT THE JOB
背景数字・右下表示 修正
========================================================= */

.staff-job-about__card {
position: relative;
overflow: hidden;
}

/* 数字 */
.staff-job-about__number {
position: absolute !important;

top: auto !important;
right: 18px !important;
bottom: 8px !important;

margin: 0 !important;

color: rgba(185, 104, 40, 0.10) !important;

font-size: 50px !important;
font-weight: 700 !important;
line-height: 1 !important;
letter-spacing: -0.05em !important;

z-index: 1 !important;

pointer-events: none;
}

/* 文章は数字より前 */
.staff-job-about__card-title,
.staff-job-about__card-text {
position: relative;
z-index: 2;
}

/* Smartphone */
@media screen and (max-width: 781px) {

.staff-job-about__number {
right: 12px !important;
bottom: 6px !important;
font-size: 72px !important;
}

}
/* =========================================================
1202：JOBS
職種カードをおしゃれに
========================================================= */

/* 「サービス管理責任者」など各職種グループ */
.staff-job-jobs__number,
.staff-job-jobs__title,
.staff-job-jobs__role-label,
.staff-job-jobs__role {
position: relative;
z-index: 2;
}

/* 親グループをカード化 */
.wp-block-group:has(> .staff-job-jobs__number) {
position: relative;
overflow: hidden;

padding: 38px 34px 34px;

border: 1px solid rgba(185, 104, 40, 0.16);
border-radius: 24px;

background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 62%,
#f8eedf 100%
);

box-shadow:
0 14px 34px rgba(90, 64, 48, 0.08);

transition:
transform 0.25s ease,
box-shadow 0.25s ease,
border-color 0.25s ease;
}

/* 上部アクセント */
.wp-block-group:has(> .staff-job-jobs__number)::before {
content: "";
position: absolute;
top: 0;
left: 34px;

width: 58px;
height: 4px;

border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

/* 右上の装飾円 */
.wp-block-group:has(> .staff-job-jobs__number)::after {
content: "";
position: absolute;
top: -55px;
right: -55px;

width: 150px;
height: 150px;

border-radius: 50%;
background: rgba(217, 138, 58, 0.07);

pointer-events: none;
}

/* hover */
.wp-block-group:has(> .staff-job-jobs__number):hover {
transform: translateY(-4px);

border-color: rgba(185, 104, 40, 0.28);

box-shadow:
0 20px 44px rgba(90, 64, 48, 0.12);
}

/* =========================================================
背景数字
========================================================= */

.staff-job-jobs__number {
position: absolute !important;

top: 18px;
right: 24px;

margin: 0 !important;

color: rgba(185, 104, 40, 0.09);

font-size: 92px !important;
font-weight: 700;
line-height: 1;
letter-spacing: -0.05em;

pointer-events: none;
}

/* =========================================================
職種名
========================================================= */

.staff-job-jobs__title {
margin: 0 0 24px;

color: var(--recruit-brown);

font-size: 26px;
font-weight: 700;
line-height: 1.5;
letter-spacing: 0.02em;
}

/* =========================================================
ROLE
========================================================= */

.staff-job-jobs__role-label {
display: inline-block;

margin: 0 0 10px;
padding: 5px 13px;

border-radius: 999px;

background: var(--recruit-orange-light);
color: var(--recruit-orange-dark);

font-size: 12px;
font-weight: 700;
line-height: 1.5;
letter-spacing: 0.08em;
}

.staff-job-jobs__role {
margin: 0;

color: var(--recruit-brown);

font-size: 18px;
font-weight: 700;
line-height: 1.8;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.wp-block-group:has(> .staff-job-jobs__number) {
padding: 30px 22px 26px;
border-radius: 20px;
}

.wp-block-group:has(> .staff-job-jobs__number)::before {
left: 22px;
width: 48px;
}

.staff-job-jobs__number {
top: 14px;
right: 16px;

font-size: 68px !important;

}

.staff-job-jobs__title {
margin-bottom: 20px;

font-size: 22px;

}

.staff-job-jobs__role {
font-size: 16px;
}

}
.staff-job-jobs__role-label {
font-size: 16px !important;
}
/* =========================================================
1202：JOBS
主な仕事内容リストをおしゃれに
========================================================= */

.staff-job-jobs__list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px 18px;

margin: 18px 0 0 !important;
padding: 0 !important;

list-style: none !important;
}

.staff-job-jobs__list li {
position: relative;

margin: 0 !important;
padding: 13px 16px 13px 42px;

border: 1px solid rgba(185, 104, 40, 0.12);
border-radius: 14px;

background:
linear-gradient(
135deg,
rgba(255, 255, 255, 0.96) 0%,
rgba(255, 250, 245, 0.96) 100%
);

color: var(--recruit-text);

font-size: 15px;
line-height: 1.75;

box-shadow:
0 6px 16px rgba(90, 64, 48, 0.04);
}

/* 左側の丸アイコン */
.staff-job-jobs__list li::before {
content: "";

position: absolute;
top: 50%;
left: 17px;

width: 9px;
height: 9px;

border-radius: 50%;

background: var(--recruit-orange);

transform: translateY(-50%);

box-shadow:
0 0 0 5px rgba(217, 138, 58, 0.10);
}

/* WordPress標準のリストマーカーを確実に消す */
.staff-job-jobs__list li::marker {
content: "";
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-jobs__list {
grid-template-columns: 1fr;
gap: 10px;

margin-top: 16px !important;

}

.staff-job-jobs__list li {
padding: 12px 14px 12px 40px;

border-radius: 12px;

font-size: 15px;

}

.staff-job-jobs__list li::before {
left: 16px;

width: 8px;
height: 8px;

box-shadow:
  0 0 0 4px rgba(217, 138, 58, 0.10);

}

}
/* =========================================================
1202：JOBS
大切なこと + 活かせる経験
========================================================= */

/* この仕事で大切なこと */
.staff-job-jobs__text {
position: relative;

margin: 24px 0 0 !important;
padding: 20px 22px 20px 24px;

border-left: 4px solid var(--recruit-orange-dark);
border-radius: 0 16px 16px 0;

background:
linear-gradient(
90deg,
rgba(245, 223, 199, 0.45) 0%,
rgba(255, 250, 245, 0.88) 100%
);

color: var(--recruit-text);

font-size: 16px;
line-height: 1.9;

box-shadow:
0 8px 20px rgba(90, 64, 48, 0.04);
}

/* 小さな装飾 */
.staff-job-jobs__text::before {
content: "POINT";

display: block;

margin-bottom: 8px;

color: var(--recruit-orange-dark);

font-size: 12px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.14em;
}

/* =========================================================
活かせる経験
========================================================= */

.staff-job-jobs__tags {
position: relative;

margin: 18px 0 0 !important;
padding: 18px 20px;

border: 1px solid rgba(115, 133, 104, 0.18);
border-radius: 16px;

background:
linear-gradient(
135deg,
rgba(115, 133, 104, 0.07) 0%,
rgba(255, 255, 255, 0.96) 100%
);

color: var(--recruit-brown);

font-size: 15px;
font-weight: 600;
line-height: 2;
}

/* ラベル */
.staff-job-jobs__tags::before {
content: "活かせる経験";

display: inline-block;

margin-right: 14px;
padding: 5px 12px;

border-radius: 999px;

background: var(--recruit-green);
color: #fff;

font-size: 12px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.05em;

vertical-align: middle;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-jobs__text {
margin-top: 20px !important;
padding: 17px 18px 17px 20px;

font-size: 15px;
line-height: 1.9;

}

.staff-job-jobs__tags {
margin-top: 14px !important;
padding: 16px 17px;

font-size: 15px;
line-height: 1.9;

}

.staff-job-jobs__tags::before {
display: block;
width: fit-content;

margin: 0 0 10px;

}

}
/* =========================================================
1202：JOBS
活かせる経験ラベルを非表示
========================================================= */

.staff-job-jobs__tags::before {
content: none !important;
display: none !important;
}

.staff-job-jobs__tags {
margin-top: 18px !important;
padding: 16px 18px;

border: 1px solid rgba(115, 133, 104, 0.16);
border-radius: 14px;

background:
linear-gradient(
135deg,
rgba(115, 133, 104, 0.06) 0%,
rgba(255, 255, 255, 0.96) 100%
);

color: var(--recruit-brown);

font-size: 15px;
font-weight: 600;
line-height: 1.9;
}

@media screen and (max-width: 781px) {

.staff-job-jobs__tags {
margin-top: 14px !important;
padding: 14px 16px;

font-size: 15px;
line-height: 1.9;

}

}
.staff-job-jobs__subheading {
margin-top: 20px !important;
}
.staff-job-jobs__role {
margin-top: 6px !important;
}
.staff-job-jobs__role-label {
  margin-bottom: 4px !important;
}

.staff-job-jobs__role {
  margin-top: 0 !important;
}
/* =========================================================
1202：ONE SUPPORT
2列カードをおしゃれに
========================================================= */

.staff-job-support__flow {
max-width: 980px;
margin: 0 auto !important;
}

/* 2列全体 */
.staff-job-support__flow > .wp-block-columns {
align-items: stretch !important;
gap: 24px !important;
margin: 0 !important;
}

.staff-job-support__flow > .wp-block-columns > .wp-block-column {
display: flex;
flex-direction: column;
gap: 20px;
}

/* カード */
.staff-job-support__item {
position: relative;
overflow: hidden;

padding: 30px 26px 24px;

border: 1px solid rgba(185, 104, 40, 0.14);
border-radius: 22px;

background:
linear-gradient(
145deg,
#ffffff 0%,
#fffaf5 68%,
var(--recruit-ivory) 100%
);

box-shadow:
0 14px 34px rgba(90, 64, 48, 0.07);

transition:
transform 0.25s ease,
box-shadow 0.25s ease,
border-color 0.25s ease;
}

/* 上部アクセント */
.staff-job-support__item::before {
content: "";
position: absolute;
top: 0;
left: 26px;

width: 52px;
height: 4px;

border-radius: 0 0 4px 4px;
background: var(--recruit-orange-dark);
}

/* 右上の装飾 */
.staff-job-support__item::after {
content: "";
position: absolute;
top: -42px;
right: -42px;

width: 120px;
height: 120px;

border-radius: 50%;
background: rgba(217, 138, 58, 0.06);

pointer-events: none;
}

/* hover */
.staff-job-support__item:hover {
transform: translateY(-4px);
border-color: rgba(185, 104, 40, 0.24);
box-shadow:
0 18px 40px rgba(90, 64, 48, 0.11);
}

/* タイトル */
.staff-job-support__title {
position: relative;
z-index: 1;

margin: 0;
padding-bottom: 12px;

color: var(--recruit-brown);
font-size: 22px;
font-weight: 700;
line-height: 1.6;

border-bottom: 1px solid rgba(185, 104, 40, 0.12);
}

/* 本文 */
.staff-job-support__text {
position: relative;
z-index: 1;

margin: 14px 0 0 !important;

color: var(--recruit-text);
font-size: 15px;
line-height: 1.9;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-support__flow > .wp-block-columns {
display: block !important;
}

.staff-job-support__flow > .wp-block-columns > .wp-block-column {
gap: 14px;
margin-bottom: 14px;
}

.staff-job-support__flow > .wp-block-columns > .wp-block-column:last-child {
margin-bottom: 0;
}

.staff-job-support__item {
padding: 26px 22px 22px;
border-radius: 18px;
}

.staff-job-support__item::before {
left: 22px;
width: 46px;
}

.staff-job-support__title {
font-size: 20px;
padding-bottom: 10px;
}

.staff-job-support__text {
margin-top: 12px !important;
font-size: 15px;
line-height: 1.9;
}

}
.staff-job-support__number {
  display: none !important;
}

.staff-job-support__item + .staff-job-support__item {
  margin-top: 10px !important;
}
/* =========================================================
1202：ONE SUPPORT
まとめメッセージ
========================================================= */

.staff-job-support__message {
position: relative;

max-width: 820px;
margin: 34px auto 0 !important;
padding: 24px 30px 24px 34px;

overflow: hidden;

border: 1px solid rgba(185, 104, 40, 0.14);
border-left: 5px solid var(--recruit-orange-dark);
border-radius: 0 20px 20px 0;

background:
linear-gradient(
135deg,
rgba(255, 250, 245, 0.98) 0%,
rgba(248, 238, 223, 0.92) 100%
);

color: var(--recruit-brown);

font-size: 17px;
font-weight: 600;
line-height: 2;

box-shadow:
0 12px 28px rgba(90, 64, 48, 0.06);
}

/* 右側の薄い装飾 */
.staff-job-support__message::before {
content: "";

position: absolute;
top: -55px;
right: -45px;

width: 140px;
height: 140px;

border-radius: 50%;

background: rgba(217, 138, 58, 0.07);

pointer-events: none;
}

/* =========================================================
Smartphone
========================================================= */

@media screen and (max-width: 781px) {

.staff-job-support__message {
max-width: 100%;

margin-top: 26px !important;
padding: 20px 20px 20px 24px;

border-left-width: 4px;
border-radius: 0 16px 16px 0;

font-size: 15px;
line-height: 1.9;

}

}
/* =========================================================
   1202：ONE SUPPORT
   背景全体をおしゃれに
========================================================= */

.staff-job-support-area {
  position: relative;
  overflow: hidden;

  max-width: 1120px;
  margin: 0 auto !important;
  padding: 42px 28px 36px;

  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 28px;

  background:
    radial-gradient(
      circle at 10% 18%,
      rgba(217, 138, 58, 0.10) 0,
      rgba(217, 138, 58, 0.10) 90px,
      transparent 91px
    ),
    radial-gradient(
      circle at 88% 82%,
      rgba(115, 133, 104, 0.08) 0,
      rgba(115, 133, 104, 0.08) 110px,
      transparent 111px
    ),
    linear-gradient(
      135deg,
      #fffdf9 0%,
      #fff8ef 50%,
      #f8eedf 100%
    );

  box-shadow:
    0 18px 42px rgba(90, 64, 48, 0.08);
}

.staff-job-support-area::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -110px;

  width: 280px;
  height: 280px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.05);

  pointer-events: none;
}

.staff-job-support-area::after {
  content: "";
  position: absolute;
  bottom: -130px;
  left: -120px;

  width: 300px;
  height: 300px;

  border-radius: 50%;
  background: rgba(115, 133, 104, 0.05);

  pointer-events: none;
}

/* 中身を前面へ */
.staff-job-support-area > .wp-block-group,
.staff-job-support-area .staff-job-support__flow,
.staff-job-support-area .staff-job-support__message {
  position: relative;
  z-index: 1;
}

/* flow と message の間隔 */
.staff-job-support-area .staff-job-support__flow {
  margin-bottom: 22px !important;
}

/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .staff-job-support-area {
    padding: 26px 16px 22px;
    border-radius: 22px;
  }

  .staff-job-support-area::before {
    top: -80px;
    right: -80px;
    width: 180px;
    height: 180px;
  }

  .staff-job-support-area::after {
    bottom: -90px;
    left: -90px;
    width: 200px;
    height: 200px;
  }

  .staff-job-support-area .staff-job-support__flow {
    margin-bottom: 18px !important;
  }

}
/* =========================================================
   1202：ONE SUPPORT｜メッセージ
========================================================= */

.staff-job-support__message {
  position: relative;
  max-width: 820px;
  margin: 28px auto 0 !important;
  padding: 24px 30px 24px 34px;
  overflow: hidden;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-left: 4px solid var(--recruit-orange-dark);
  border-radius: 0 18px 18px 0;
  background:
    radial-gradient(
      circle at 92% 20%,
      rgba(217, 138, 58, 0.06) 0,
      rgba(217, 138, 58, 0.06) 70px,
      transparent 71px
    ),
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fffdf9 100%
    );
  color: var(--recruit-brown);
  font-size: 16px;
  font-weight: 600;
  line-height: 2;
  box-shadow: 0 10px 28px rgba(90, 64, 48, 0.06);
}

@media screen and (max-width: 781px) {
  .staff-job-support__message {
    margin-top: 22px !important;
    padding: 20px 20px 20px 23px;
    border-radius: 0 15px 15px 0;
    font-size: 15px;
    line-height: 1.9;
  }
}


/* =========================================================
   1202：TEAMWORK｜白基調背景・リード
========================================================= */

.recruit-page.staff-job-teamwork {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fffdf9 55%,
      #fffaf5 100%
    ) !important;
}

.recruit-page.staff-job-teamwork::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: -150px !important;
  left: -130px !important;
  width: 320px !important;
  height: 320px !important;
  border-radius: 50% !important;
  background: rgba(217, 138, 58, 0.035) !important;
  pointer-events: none;
}

.recruit-page.staff-job-teamwork::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  right: -150px !important;
  bottom: -150px !important;
  width: 340px !important;
  height: 340px !important;
  border-radius: 50% !important;
  background: rgba(115, 133, 104, 0.025) !important;
  pointer-events: none;
}

.recruit-page.staff-job-teamwork .staff-job-teamwork__inner {
  position: relative;
  z-index: 1;
}

.staff-job-teamwork__lead {
  position: relative;
  max-width: 860px;
  margin: 24px auto 42px !important;
  padding: 22px 30px;
  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 250, 245, 0.92) 100%
    );
  color: var(--recruit-brown);
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  text-align: center !important;
  box-shadow: 0 10px 28px rgba(90, 64, 48, 0.05);
}

.staff-job-teamwork__lead::before,
.staff-job-teamwork__lead::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 26px;
  height: 2px;
  background: var(--recruit-orange-dark);
  opacity: 0.5;
  transform: translateY(-50%);
}

.staff-job-teamwork__lead::before {
  left: 14px;
}

.staff-job-teamwork__lead::after {
  right: 14px;
}

@media screen and (max-width: 781px) {
  .recruit-page.staff-job-teamwork::before {
    top: -90px !important;
    left: -90px !important;
    width: 210px !important;
    height: 210px !important;
  }

  .recruit-page.staff-job-teamwork::after {
    right: -100px !important;
    bottom: -100px !important;
    width: 230px !important;
    height: 230px !important;
  }

  .staff-job-teamwork__lead {
    max-width: 100%;
    margin: 20px auto 30px !important;
    padding: 18px 20px;
    border-radius: 15px;
    font-size: 15px;
    line-height: 1.9;
    text-align: left !important;
  }

  .staff-job-teamwork__lead::before,
  .staff-job-teamwork__lead::after {
    display: none;
  }
}


/* =========================================================
   1202：BEYOND THE ROLE｜カード・メッセージ
========================================================= */

.staff-job-beyond__card {
  position: relative;
  min-height: 150px;
  padding: 28px 24px 24px !important;
  overflow: hidden;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 20px;
  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fffaf5 72%,
      var(--recruit-ivory) 100%
    );
  box-shadow: 0 12px 28px rgba(90, 64, 48, 0.06);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.staff-job-beyond__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 24px;
  width: 44px;
  height: 4px;
  border-radius: 0 0 4px 4px;
  background: var(--recruit-orange-dark);
}

.staff-job-beyond__card::after {
  content: "";
  position: absolute;
  top: -34px;
  right: -34px;
  width: 94px;
  height: 94px;
  border-radius: 50%;
  background: rgba(217, 138, 58, 0.06);
  pointer-events: none;
}

.staff-job-beyond__card:hover {
  transform: translateY(-4px);
  border-color: rgba(185, 104, 40, 0.24);
  box-shadow: 0 18px 38px rgba(90, 64, 48, 0.10);
}

.staff-job-beyond__number {
  position: absolute !important;
  top: -4px !important;
  right: 16px;
  z-index: 1;
  margin: 0 !important;
  color: rgba(185, 104, 40, 0.09);
  font-size: 100px !important;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  pointer-events: none;
}

.staff-job-beyond__title {
  position: relative;
  z-index: 2;
  margin: 0;
  color: var(--recruit-brown);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.65;
}

.staff-job-beyond__cards--bottom {
  margin-top: 20px !important;
}

.staff-job-beyond__message {
  position: relative;
  max-width: 820px;
  margin: 32px auto 0 !important;
  padding: 24px 28px 24px 32px;
  overflow: hidden;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-left: 4px solid var(--recruit-orange-dark);
  border-radius: 0 18px 18px 0;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 250, 245, 0.94) 100%
    );
  color: var(--recruit-brown);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
  box-shadow: 0 12px 28px rgba(90, 64, 48, 0.06);
}

.staff-job-beyond__message::before {
  content: "";
  position: absolute;
  top: -40px;
  right: -36px;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: rgba(217, 138, 58, 0.06);
  pointer-events: none;
}

.staff-job-beyond__sub {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 22px !important;
  padding: 8px 16px 8px 14px;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 999px;
  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fff8f0 100%
    );
  color: var(--recruit-brown);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
  box-shadow: 0 6px 16px rgba(90, 64, 48, 0.05);
}

.staff-job-beyond__sub::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: var(--recruit-orange);
  box-shadow: 0 0 0 5px rgba(217, 138, 58, 0.10);
}

@media screen and (max-width: 781px) {
  .staff-job-beyond__card {
    min-height: auto;
    padding: 25px 22px 22px !important;
    border-radius: 18px;
  }

  .staff-job-beyond__card::before {
    left: 22px;
    width: 42px;
  }

  .staff-job-beyond__number {
    top: -2px !important;
    right: 12px;
    font-size: 72px !important;
  }

  .staff-job-beyond__title {
    font-size: 17px;
  }

  .staff-job-beyond__message {
    max-width: 100%;
    margin-top: 24px !important;
    padding: 20px 20px 20px 24px;
    border-radius: 0 15px 15px 0;
    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-beyond__sub {
    margin-bottom: 18px !important;
    padding: 7px 14px 7px 12px;
    font-size: 14px;
  }
}


/* =========================================================
   1202：CAREER｜ステップアップ
========================================================= */

.recruit-page.staff-job-career {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fffdf9 52%,
      #fff8f0 100%
    ) !important;
}

.recruit-page.staff-job-career::before {
  content: "";
  position: absolute;
  top: -150px;
  right: auto;
  left: -130px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: rgba(217, 138, 58, 0.045);
  pointer-events: none;
}

.recruit-page.staff-job-career::after {
  content: "";
  position: absolute;
  right: -150px;
  bottom: -160px;
  left: auto;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: rgba(115, 133, 104, 0.035);
  pointer-events: none;
}

.recruit-page.staff-job-career .staff-job-career__inner {
  position: relative;
  z-index: 1;
  max-width: 1120px;
  margin: 0 auto;
}

.staff-job-career__flow {
  position: relative;
  max-width: 900px;
  margin: 0 auto !important;
  padding: 12px 24px;
  border-radius: 28px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.70) 0%,
      rgba(255, 250, 245, 0.78) 100%
    );
}

.staff-job-career__flow::before {
  content: "";
  position: absolute;
  top: 24px;
  bottom: 24px;
  left: 12px;
  width: 2px;
  background:
    linear-gradient(
      180deg,
      rgba(217, 138, 58, 0.22) 0%,
      rgba(217, 138, 58, 0.48) 55%,
      rgba(185, 104, 40, 0.70) 100%
    );
}

.staff-job-career__step {
  position: relative;
  margin: 0 !important;
  padding: 28px 28px 24px 30px;
  overflow: hidden;
  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 22px;
  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fffaf5 72%,
      var(--recruit-ivory) 100%
    );
  box-shadow: 0 14px 32px rgba(90, 64, 48, 0.07);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.staff-job-career__step + .staff-job-career__step {
  margin-top: 24px !important;
}

.staff-job-career__step::before {
  content: "";
  position: absolute;
  top: 34px;
  left: -24px;
  width: 18px;
  height: 18px;
  border: 4px solid var(--recruit-orange-dark);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 6px rgba(217, 138, 58, 0.10);
}

.staff-job-career__step::after {
  content: "";
  position: absolute;
  top: 0;
  left: 30px;
  width: 56px;
  height: 4px;
  border-radius: 0 0 4px 4px;
  background: var(--recruit-orange-dark);
}

.staff-job-career__step:hover {
  transform: translateY(-4px);
  border-color: rgba(185, 104, 40, 0.24);
  box-shadow: 0 18px 40px rgba(90, 64, 48, 0.10);
}

.staff-job-career__step--goal {
  border-color: rgba(185, 104, 40, 0.28);
  background:
    linear-gradient(
      145deg,
      #fffaf5 0%,
      #f8eedf 100%
    );
  box-shadow: 0 18px 40px rgba(90, 64, 48, 0.10);
}

.staff-job-career__step--goal::before {
  border-color: var(--recruit-brown);
  box-shadow: 0 0 0 7px rgba(185, 104, 40, 0.12);
}

.staff-job-career__number {
  position: absolute !important;
  top: 10px;
  right: 18px;
  z-index: 1;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  color: rgba(185, 104, 40, 0.09) !important;
  font-size: 150px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
  pointer-events: none;
}

.staff-job-career__title,
.staff-job-career__text {
  position: relative;
  z-index: 2;
}

.staff-job-career__title {
  margin: 0 !important;
  color: var(--recruit-brown);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
}

.staff-job-career__text {
  margin: 12px 0 0 !important;
  color: var(--recruit-text);
  font-size: 15px;
  line-height: 1.9;
}

.staff-job-career__note {
  position: relative;
  max-width: 860px;
  margin: 34px auto 0 !important;
  padding: 22px 26px;
  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.96) 0%,
      rgba(255, 250, 245, 0.92) 100%
    );
  box-shadow: 0 10px 24px rgba(90, 64, 48, 0.05);
}


@media screen and (max-width: 781px) {
  .recruit-page.staff-job-career::before {
    top: -90px;
    left: -90px;
    width: 210px;
    height: 210px;
  }

  .recruit-page.staff-job-career::after {
    right: -100px;
    bottom: -110px;
    width: 230px;
    height: 230px;
  }

  .staff-job-career__flow {
    padding: 0 24px;
    background: none;
  }

  .staff-job-career__flow::before {
    left: 9px;
  }

  .staff-job-career__step {
    padding: 24px 22px 22px;
    border-radius: 18px;
  }

  .staff-job-career__step + .staff-job-career__step {
    margin-top: 18px !important;
  }

  .staff-job-career__step::before {
    top: 28px;
    left: -18px;
    width: 14px;
    height: 14px;
    border-width: 3px;
  }

  .staff-job-career__step::after {
    left: 22px;
    width: 48px;
  }

  .staff-job-career__number {
    top: 8px;
    right: 12px;
    font-size: 90px !important;
  }

  .staff-job-career__title {
    font-size: 20px;
  }

  .staff-job-career__text {
    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-career__note {
    max-width: 100%;
    margin-top: 26px !important;
    padding: 18px;
    border-radius: 15px;
    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-career__button {
    margin-top: 24px;
  }

  .staff-job-career__button,
  .staff-job-career__button .wp-block-button,
  .staff-job-career__button .wp-block-button__link {
    width: 100%;
  }
}
.staff-job-jobs__number {
  font-size: 150px !important;
}
@media screen and (max-width: 781px) {
  .staff-job-jobs__number {
    font-size: 90px !important;
  }
}
.staff-job-career__number {
  font-size: 100px !important;
}
@media screen and (max-width: 781px) {
  .staff-job-career__number {
    font-size: 72px !important;
  }
}
/* =========================================================
   1202：CAREER
   おしゃれな背景
========================================================= */

.recruit-page.staff-job-career {
  position: relative;
  overflow: hidden;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fffdf9 52%,
      #fff8f0 100%
    ) !important;
}

/* 左上のやわらかい装飾 */
.recruit-page.staff-job-career::before {
  content: "";
  position: absolute;
  top: -150px;
  left: -130px;

  width: 320px;
  height: 320px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.045);

  pointer-events: none;
}

/* 右下のやわらかい装飾 */
.recruit-page.staff-job-career::after {
  content: "";
  position: absolute;
  right: -150px;
  bottom: -160px;

  width: 360px;
  height: 360px;

  border-radius: 50%;
  background: rgba(115, 133, 104, 0.035);

  pointer-events: none;
}

/* 中身を前面へ */
.recruit-page.staff-job-career .staff-job-career__inner {
  position: relative;
  z-index: 1;

  max-width: 1120px;
  margin: 0 auto;
}

/* flow 全体の背景面 */
.staff-job-career__flow {
  position: relative;

  max-width: 900px;
  margin: 0 auto !important;
  padding: 32px 32px 36px;

  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.72) 0%,
      rgba(255, 250, 245, 0.80) 100%
    );
}

/* NOTE を背景になじませる */
.staff-job-career__note {
  position: relative;

  max-width: 860px;
  margin: 34px auto 0 !important;
  padding: 22px 26px;

  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 18px;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.96) 0%,
      rgba(255, 250, 245, 0.92) 100%
    );

  box-shadow:
    0 10px 24px rgba(90, 64, 48, 0.05);
}

/* ボタン中央 */
.staff-job-career__button {
  justify-content: center;
  margin-top: 28px;
}


/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .recruit-page.staff-job-career::before {
    top: -90px;
    left: -90px;
    width: 210px;
    height: 210px;
  }

  .recruit-page.staff-job-career::after {
    right: -100px;
    bottom: -110px;
    width: 230px;
    height: 230px;
  }

  .staff-job-career__flow {
    max-width: 100%;
    padding: 20px 16px 24px;
    border-radius: 20px;
  }

  .staff-job-career__note {
    max-width: 100%;
    margin-top: 26px !important;
    padding: 18px 18px;

    border-radius: 15px;

    font-size: 15px;
    line-height: 1.9;
  }

  .staff-job-career__button {
    margin-top: 24px;
  }

  .staff-job-career__button,
  .staff-job-career__button .wp-block-button,
  .staff-job-career__button .wp-block-button__link {
    width: 100%;
  }

}
/* =========================================================
   1202：CAREER
   NOTE + BUTTON パネル
========================================================= */


/* 左上アクセント */


/* NOTE */


/* ボタン */


/* =========================================================
   Smartphone
========================================================= */


/* =========================================================
   1202：CAREER
   NOTE + BUTTON パネル
========================================================= */

.staff-job-career__inner
.wp-block-group:has(> .staff-job-career__note) {
  position: relative;

  max-width: 900px;
  margin: 34px auto 0 !important;
  padding: 34px 36px 30px;

  overflow: hidden;

  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 92% 14%,
      rgba(217, 138, 58, 0.06) 0,
      rgba(217, 138, 58, 0.06) 90px,
      transparent 91px
    ),
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fffdf9 55%,
      #fff8f1 100%
    );

  box-shadow:
    0 16px 36px rgba(90, 64, 48, 0.07);
}

/* 左上アクセント */
.staff-job-career__inner
.wp-block-group:has(> .staff-job-career__note)::before {
  content: "";

  position: absolute;
  top: 0;
  left: 36px;

  width: 58px;
  height: 4px;

  border-radius: 0 0 5px 5px;
  background: var(--recruit-orange-dark);
}

/* NOTE */
.staff-job-career__note {
  position: relative;
  z-index: 1;

  max-width: 760px;
  margin: 0 auto !important;
  padding: 0 !important;

  border: 0 !important;
  background: none !important;
  box-shadow: none !important;

  color: var(--recruit-brown);

  font-size: 16px;
  font-weight: 500;
  line-height: 2;

  text-align: center;
}

/* ボタン */
.staff-job-career__button {
  position: relative;
  z-index: 1;

  justify-content: center;
  margin-top: 26px !important;
}


/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .staff-job-career__inner
  .wp-block-group:has(> .staff-job-career__note) {
    margin-top: 26px !important;
    padding: 28px 20px 24px;

    border-radius: 20px;
  }

  .staff-job-career__inner
  .wp-block-group:has(> .staff-job-career__note)::before {
    left: 20px;
    width: 48px;
  }

  .staff-job-career__note {
    max-width: 100%;

    font-size: 15px;
    line-height: 1.9;

    text-align: left;
  }

  .staff-job-career__button {
    margin-top: 22px !important;
  }

}
.staff-job-scene__card {
  position: relative;
  overflow: hidden;
}

.staff-job-scene__number {
  position: absolute !important;
  top: 12px;
  right: 18px;

  margin: 0 !important;

  color: rgba(185, 104, 40, 0.09);

  font-size: 100px !important;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;

  z-index: 1;
  pointer-events: none;
}

.staff-job-scene__title,
.staff-job-scene__text {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 781px) {
  .staff-job-scene__number {
    top: 10px;
    right: 14px;
    font-size: 72px !important;
  }
}
.staff-job-day__panel {
  padding-top: 32px;
  padding-bottom: 32px;
}
.staff-job-day__panel {
  padding: 32px 24px;
}
@media screen and (max-width: 781px) {
  .staff-job-day__panel {
    padding: 24px 16px;
  }
}
.staff-job-career__note {
  margin-top: 16px !important;
}
/* =========================================================
   1202：MATCH
   インパクトのあるおしゃれなカード
========================================================= */

/* 全体 */
.staff-job-match__list {
  max-width: 1040px;
  margin: 0 auto;
}

/* カラム間隔 */
.staff-job-match__list > .wp-block-columns {
  gap: 24px !important;
  align-items: stretch !important;
}

/* 各カラム内を縦並び */
.staff-job-match__list .wp-block-column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* 各カード */
.staff-job-match__list .wp-block-column > .wp-block-group {
  position: relative;
  overflow: hidden;

  padding: 24px 24px 22px !important;

  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fffaf5 72%,
      var(--recruit-ivory) 100%
    );

  box-shadow:
    0 14px 32px rgba(90, 64, 48, 0.07);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

/* 上部アクセント */
.staff-job-match__list .wp-block-column > .wp-block-group::before {
  content: "";
  position: absolute;
  top: 0;
  left: 24px;

  width: 54px;
  height: 4px;

  border-radius: 0 0 4px 4px;
  background: var(--recruit-orange-dark);
}

/* 右上の薄い装飾 */
.staff-job-match__list .wp-block-column > .wp-block-group::after {
  content: "";
  position: absolute;
  top: -40px;
  right: -40px;

  width: 110px;
  height: 110px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.06);

  pointer-events: none;
}

/* hover */
.staff-job-match__list .wp-block-column > .wp-block-group:hover {
  transform: translateY(-4px);
  border-color: rgba(185, 104, 40, 0.24);

  box-shadow:
    0 18px 40px rgba(90, 64, 48, 0.10);
}

/* 経験・得意なこと */
.staff-job-match__experience {
  position: relative;
  z-index: 2;

  margin: 0 !important;
  padding: 0 0 18px;

  color: var(--recruit-brown);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;

  border-bottom: 1px solid rgba(185, 104, 40, 0.12);
}

/* 矢印っぽい導線 */
.staff-job-match__job::before {
  content: "→";
  display: inline-block;
  margin-right: 10px;

  color: var(--recruit-orange-dark);
  font-weight: 700;
}

/* 向いている職種 */
.staff-job-match__job {
  position: relative;
  z-index: 2;

  margin: 16px 0 0 !important;

  color: var(--recruit-orange-dark);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: 0.02em;
}


/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .staff-job-match__list > .wp-block-columns {
    display: block !important;
  }

  .staff-job-match__list .wp-block-column {
    display: block;
    margin: 0 0 16px !important;
  }

  .staff-job-match__list .wp-block-column:last-child {
    margin-bottom: 0 !important;
  }

  .staff-job-match__list .wp-block-column > .wp-block-group {
    margin-bottom: 14px !important;
    padding: 22px 20px 20px !important;

    border-radius: 18px;
  }

  .staff-job-match__list .wp-block-column > .wp-block-group:last-child {
    margin-bottom: 0 !important;
  }

  .staff-job-match__list .wp-block-column > .wp-block-group::before {
    left: 20px;
    width: 48px;
  }

  .staff-job-match__experience {
    padding-bottom: 14px;
    font-size: 16px;
  }

  .staff-job-match__job {
    margin-top: 14px !important;
    font-size: 21px;
  }

}
/* =========================================================
   1202：MATCH
   NOTE + BUTTON パネル
========================================================= */

.staff-job-match
.wp-block-group:has(> .staff-job-match__note) {
  position: relative;

  max-width: 860px;
  margin: 34px auto 0 !important;
  padding: 30px 32px 28px;

  overflow: hidden;

  border: 1px solid rgba(185, 104, 40, 0.12);
  border-radius: 22px;

  background:
    radial-gradient(
      circle at 92% 18%,
      rgba(217, 138, 58, 0.06) 0,
      rgba(217, 138, 58, 0.06) 90px,
      transparent 91px
    ),
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fffdf9 58%,
      #fff8f1 100%
    );

  box-shadow:
    0 14px 34px rgba(90, 64, 48, 0.06);
}

/* 上部アクセント */
.staff-job-match
.wp-block-group:has(> .staff-job-match__note)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 32px;

  width: 54px;
  height: 4px;

  border-radius: 0 0 4px 4px;
  background: var(--recruit-orange-dark);
}

/* 注釈 */
.staff-job-match__note {
  position: relative;
  z-index: 1;

  max-width: 720px;
  margin: 0 auto !important;

  color: var(--recruit-brown);

  font-size: 15px;
  line-height: 1.9;

  text-align: center;
}

/* ボタンを左右中央へ */


.staff-job-match__button .wp-block-button {
  margin: 0 auto !important;
}


/* Smartphone */
@media screen and (max-width: 781px) {

  .staff-job-match
  .wp-block-group:has(> .staff-job-match__note) {
    max-width: 100%;
    margin-top: 26px !important;
    padding: 26px 20px 24px;

    border-radius: 18px;
  }

  .staff-job-match
  .wp-block-group:has(> .staff-job-match__note)::before {
    left: 20px;
    width: 46px;
  }

  .staff-job-match__note {
    max-width: 100%;
    font-size: 14px;
    line-height: 1.85;
    text-align: left;
  }

  .staff-job-match__button {
    margin-top: 20px !important;
  }

}
/* =========================================================
   1202：MATCH
   メリハリのある背景
========================================================= */

.recruit-page.staff-job-match {
  position: relative;
  overflow: hidden;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fffdf9 42%,
      #f8eedf 100%
    ) !important;
}

/* 左上の薄いオレンジ装飾 */
.recruit-page.staff-job-match::before {
  content: "";
  position: absolute;
  top: -140px;
  left: -120px;

  width: 320px;
  height: 320px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.07);

  pointer-events: none;
}

/* 右下の薄いグリーン装飾 */
.recruit-page.staff-job-match::after {
  content: "";
  position: absolute;
  right: -150px;
  bottom: -150px;

  width: 360px;
  height: 360px;

  border-radius: 50%;
  background: rgba(115, 133, 104, 0.05);

  pointer-events: none;
}

/* 中身を前面へ */
.staff-job-match__inner {
  position: relative;
  z-index: 1;

  max-width: 1120px;
  margin: 0 auto;
}


/* =========================================================
   6つのカードを置くエリア
========================================================= */

.staff-job-match__list {
  position: relative;

  max-width: 1040px;
  margin: 0 auto !important;
  padding: 34px;

  border: 1px solid rgba(185, 104, 40, 0.10);
  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.86) 0%,
      rgba(255, 250, 245, 0.82) 100%
    );

  box-shadow:
    0 14px 36px rgba(90, 64, 48, 0.05);
}


/* =========================================================
   NOTE + BUTTON
   少し濃い背景にしてセクションを締める
========================================================= */

.staff-job-match__inner
.wp-block-group:has(> .staff-job-match__note) {
  position: relative;

  max-width: 860px;
  margin: 36px auto 0 !important;
  padding: 30px 32px 28px;

  overflow: hidden;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      var(--recruit-brown) 0%,
      #684936 100%
    );

  box-shadow:
    0 18px 40px rgba(90, 64, 48, 0.14);
}

/* オレンジの装飾 */
.staff-job-match__inner
.wp-block-group:has(> .staff-job-match__note)::before {
  content: "";
  position: absolute;
  top: -70px;
  right: -55px;

  width: 180px;
  height: 180px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.16);

  pointer-events: none;
}

/* 注釈 */
.staff-job-match__note {
  position: relative;
  z-index: 1;

  max-width: 720px;
  margin: 0 auto !important;

  color: rgba(255, 255, 255, 0.88) !important;

  font-size: 15px;
  line-height: 1.9;

  text-align: center;
}

/* ボタン中央 */


/* 暗背景用ボタン */
.staff-job-match__button
.recruit-btn--secondary
.wp-block-button__link {
  border-color: rgba(255, 255, 255, 0.80);
  background: #ffffff;
  color: var(--recruit-brown);
}

.staff-job-match__button
.recruit-btn--secondary
.wp-block-button__link:hover {
  border-color: #ffffff;
  background: var(--recruit-orange-light);
  color: var(--recruit-brown);
}


/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .recruit-page.staff-job-match::before {
    top: -90px;
    left: -90px;

    width: 210px;
    height: 210px;
  }

  .recruit-page.staff-job-match::after {
    right: -100px;
    bottom: -110px;

    width: 230px;
    height: 230px;
  }

  .staff-job-match__list {
    max-width: 100%;
    padding: 20px 16px;

    border-radius: 20px;
  }

  .staff-job-match__inner
  .wp-block-group:has(> .staff-job-match__note) {
    max-width: 100%;
    margin-top: 28px !important;
    padding: 26px 20px 24px;

    border-radius: 20px;
  }

  .staff-job-match__note {
    max-width: 100%;

    font-size: 14px;
    line-height: 1.85;

    text-align: left;
  }

  .staff-job-match__button {
    margin-top: 20px !important;
  }

}
/* =========================================================
   1202：MATCH
   NOTE + BUTTON 濃い背景
========================================================= */

.staff-job-match__inner
.wp-block-group:has(> .staff-job-match__note) {
  position: relative;

  max-width: 860px;
  margin: 36px auto 0 !important;
  padding: 30px 32px 28px;

  overflow: hidden;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      #5a4030 0%,
      #6a4935 55%,
      #4f382b 100%
    );

  box-shadow:
    0 18px 40px rgba(90, 64, 48, 0.18);
}

/* 右上のアクセント */
.staff-job-match__inner
.wp-block-group:has(> .staff-job-match__note)::before {
  content: "";
  position: absolute;
  top: -75px;
  right: -60px;

  width: 190px;
  height: 190px;

  border-radius: 50%;
  background: rgba(217, 138, 58, 0.18);

  pointer-events: none;
}

/* 注釈 */
.staff-job-match__note {
  position: relative;
  z-index: 1;

  max-width: 720px;
  margin: 0 auto !important;

  color: rgba(255, 255, 255, 0.90) !important;

  font-size: 15px;
  line-height: 1.9;

  text-align: center;
}

/* ボタン */
.staff-job-match__button {
  position: relative;
  z-index: 1;

  justify-content: center !important;
  margin: 24px auto 0 !important;
}

/* 白ボタンに変更 */
.staff-job-match__button
.recruit-btn--secondary
.wp-block-button__link {
  border-color: #ffffff;
  background: #ffffff;
  color: var(--recruit-brown);
}

.staff-job-match__button
.recruit-btn--secondary
.wp-block-button__link:hover {
  border-color: var(--recruit-orange-light);
  background: var(--recruit-orange-light);
  color: var(--recruit-brown);
}


/* Smartphone */
@media screen and (max-width: 781px) {

  .staff-job-match__inner
  .wp-block-group:has(> .staff-job-match__note) {
    margin-top: 28px !important;
    padding: 26px 20px 24px;

    border-radius: 20px;
  }

  .staff-job-match__note {
    font-size: 14px;
    line-height: 1.85;
    text-align: left;
  }

}
/* =========================================================
   1202：MATCH CTA
   メリハリのある背景
========================================================= */

.staff-job-match__cta {
  position: relative;

  max-width: 860px;
  margin: 40px auto 0 !important;
  padding: 34px 34px 30px !important;

  overflow: hidden;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      #5a4030 0%,
      #6b4935 52%,
      #4b3529 100%
    ) !important;

  box-shadow:
    0 20px 46px rgba(90, 64, 48, 0.20);
}

/* 右上のオレンジ装飾 */
.staff-job-match__cta::before {
  content: "";

  position: absolute;
  top: -85px;
  right: -60px;

  width: 210px;
  height: 210px;

  border-radius: 50%;

  background:
    rgba(217, 138, 58, 0.20);

  pointer-events: none;
}

/* 左下の薄い装飾 */
.staff-job-match__cta::after {
  content: "";

  position: absolute;
  bottom: -110px;
  left: -85px;

  width: 240px;
  height: 240px;

  border-radius: 50%;

  background:
    rgba(255, 255, 255, 0.045);

  pointer-events: none;
}

/* 注釈 */
.staff-job-match__cta .staff-job-match__note {
  position: relative;
  z-index: 2;

  max-width: 720px;
  margin: 0 auto !important;
  padding: 0 !important;

  border: 0 !important;
  background: none !important;
  box-shadow: none !important;

  color: rgba(255, 255, 255, 0.92) !important;

  font-size: 15px;
  font-weight: 500;
  line-height: 1.9;

  text-align: center;
}

/* ボタン */
.staff-job-match__cta .staff-job-match__button {
  position: relative;
  z-index: 2;

  justify-content: center !important;
  margin: 24px auto 0 !important;
}

/* 白ボタン */
.staff-job-match__cta
.recruit-btn--secondary
.wp-block-button__link {
  min-width: 240px;

  border: 1px solid #ffffff !important;

  background: #ffffff !important;

  color: var(--recruit-brown) !important;

  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.10);
}

.staff-job-match__cta
.recruit-btn--secondary
.wp-block-button__link:hover {
  border-color: var(--recruit-orange-light) !important;
  background: var(--recruit-orange-light) !important;

  color: var(--recruit-brown) !important;
}


/* Smartphone */
@media screen and (max-width: 781px) {

  .staff-job-match__cta {
    max-width: 100%;

    margin-top: 28px !important;
    padding: 28px 20px 24px !important;

    border-radius: 20px;
  }

  .staff-job-match__cta::before {
    top: -70px;
    right: -60px;

    width: 170px;
    height: 170px;
  }

  .staff-job-match__cta::after {
    bottom: -90px;
    left: -70px;

    width: 190px;
    height: 190px;
  }

  .staff-job-match__cta .staff-job-match__note {
    font-size: 14px;
    line-height: 1.85;

    text-align: left;
  }

  .staff-job-match__cta .staff-job-match__button {
    margin-top: 20px !important;
  }

  .staff-job-match__cta .wp-block-button,
  .staff-job-match__cta .wp-block-button__link {
    width: 100%;
  }

}
/* =========================================================
   1202：MESSAGE
   コンパクトなおしゃれカード
========================================================= */

/* 2カラム全体 */
.staff-job-message__roles .wp-block-columns,
.staff-job-message__inner .wp-block-columns {
  gap: 18px !important;
  align-items: stretch !important;
}

/* 各カラム内のカード間隔を狭く */
.staff-job-message__roles .wp-block-column,
.staff-job-message__inner .wp-block-column {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* カード */
.staff-job-message__role {
  position: relative;

  margin: 0 !important;
  padding: 12px 18px 12px 42px;

  min-height: 0;

  border: 1px solid rgba(185, 104, 40, 0.13);
  border-radius: 14px;

  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fffaf5 100%
    );

  color: var(--recruit-brown);

  font-size: 16px;
  font-weight: 600;
  line-height: 1.55;

  box-shadow:
    0 6px 16px rgba(90, 64, 48, 0.05);

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

/* 左のアクセント */
.staff-job-message__role::before {
  content: "";

  position: absolute;
  top: 50%;
  left: 18px;

  width: 8px;
  height: 8px;

  border-radius: 50%;
  background: var(--recruit-orange-dark);

  box-shadow:
    0 0 0 4px rgba(217, 138, 58, 0.10);

  transform: translateY(-50%);
}

/* hover */
.staff-job-message__role:hover {
  transform: translateX(3px);

  box-shadow:
    0 8px 20px rgba(90, 64, 48, 0.08);
}


/* Smartphone */
@media screen and (max-width: 781px) {

  .staff-job-message__roles .wp-block-columns,
  .staff-job-message__inner .wp-block-columns {
    display: block !important;
  }

  .staff-job-message__roles .wp-block-column,
  .staff-job-message__inner .wp-block-column {
    display: flex;
    gap: 8px;

    margin-bottom: 8px !important;
  }

  .staff-job-message__role {
    padding: 11px 16px 11px 40px;

    border-radius: 12px;

    font-size: 15px;
    line-height: 1.5;
  }

  .staff-job-message__role::before {
    left: 17px;
    width: 7px;
    height: 7px;
  }

}

.staff-job-message__role {
  background:
    linear-gradient(
      135deg,
      #fbf5ed 0%,
      #f3e5d5 100%
    );
}
.staff-job-message__text {
  margin-top: 24px !important;
}
/* =========================================================
   1202：NEXT
   背景数字 + ボタン幅統一
========================================================= */

.staff-job-next__cards {
  align-items: stretch !important;
  gap: 20px !important;
}

.staff-job-next__cards > .wp-block-column {
  display: flex;
}

/* カード */
.staff-job-next__card {
  position: relative;
  display: flex;
  flex-direction: column;

  width: 100%;
  height: 100%;
  padding: 30px 26px 26px !important;

  overflow: hidden;

  border: 1px solid rgba(185, 104, 40, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fffaf5 70%,
      var(--recruit-ivory) 100%
    );

  box-shadow:
    0 14px 34px rgba(90, 64, 48, 0.07);
}

/* 数字を右上の背景に */
.staff-job-next__number {
  position: absolute !important;
  top: 8px;
  right: 16px;

  z-index: 1;

  margin: 0 !important;

  color: rgba(185, 104, 40, 0.08);

  font-size: 100px !important;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;

  pointer-events: none;
}

/* 文字を数字より前へ */
.staff-job-next__title,
.staff-job-next__text,
.staff-job-next__button {
  position: relative;
  z-index: 2;
}

.staff-job-next__title {
  margin: 0 !important;

  color: var(--recruit-brown);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.6;
}

.staff-job-next__text {
  margin: 14px 0 24px !important;

  color: var(--recruit-text);
  font-size: 15px;
  line-height: 1.9;
}

/* ボタンをカード下部に揃える */
.staff-job-next__card > .staff-job-next__button {
  margin-top: auto !important;
}

/* 3カードのボタン幅を統一 */
.staff-job-next__card .staff-job-next__button {
  justify-content: center !important;
}

.staff-job-next__card .wp-block-button {
  width: 220px;
  margin: 0 auto !important;
}

.staff-job-next__card .wp-block-button__link {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 56px;

  text-align: center;
}


/* =========================================================
   Smartphone
========================================================= */

@media screen and (max-width: 781px) {

  .staff-job-next__cards {
    display: block !important;
  }

  .staff-job-next__cards > .wp-block-column {
    display: block;
    margin-bottom: 14px !important;
  }

  .staff-job-next__cards > .wp-block-column:last-child {
    margin-bottom: 0 !important;
  }

  .staff-job-next__card {
    padding: 26px 22px 22px !important;
    border-radius: 18px;
  }

  .staff-job-next__number {
    top: 8px;
    right: 12px;
    font-size: 72px !important;
  }

  .staff-job-next__title {
    font-size: 20px;
  }

  .staff-job-next__text {
    margin: 12px 0 20px !important;
  }

  .staff-job-next__card .wp-block-button,
  .staff-job-next__card .wp-block-button__link {
    width: 100%;
  }

}
