/* ==========================================================================
   pages/service.css — /service/ 事業内容ページ固有
   正典: DESIGN.md（トークン・余白・角丸・opacity hover は ennect.css を再利用）
   識別色は各セクションの style 属性で --pillar-color に注入（スロット1〜4）
   ========================================================================== */

/* タイトル帯直下のリード */
.p-serviceIntro__lead {
  font-size: 1.5rem;
  line-height: 2.2;
  letter-spacing: 0.06em;
}

/* 4本柱セクション */
.p-servicePillar__accent {
  display: block;
  width: 44px;
  height: 4px;
  border-radius: 2px;
  background: var(--pillar-color, var(--color-border));
  margin-bottom: 20px;
}
.p-servicePillar__lead {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.06em;
}
.p-servicePillar__block {
  margin-top: 46px;
}
.p-servicePillar__heading {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  margin-bottom: 17px;
}
.p-servicePillar__heading::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--pillar-color, var(--color-border));
  flex-shrink: 0;
}
.p-servicePillar__issues {
  background: var(--color-surface);
  border-radius: 16px;
  padding: 28px 40px;
}
.p-servicePillar__issues li {
  position: relative;
  padding-left: 20px;
}
.p-servicePillar__issues li + li {
  margin-top: 6px;
}
.p-servicePillar__issues li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1em;
  width: 10px;
  height: 1px;
  background: var(--color-text-mute);
}
.p-servicePillar__text {
  color: var(--color-text-mute);
}
.p-servicePillar__works {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (max-width: 999px) {
  .p-servicePillar__block {
    margin-top: 30px;
  }
  .p-servicePillar__issues {
    padding: 20px 24px;
  }
  .p-servicePillar__works {
    grid-template-columns: 1fr;
  }
}

/* CTAバナーの和ラベル */
.p-serviceCta__ja {
  font-size: 1.2rem;
  letter-spacing: 0.09em;
  color: var(--color-text-sub);
  margin-top: 2px;
}
