@charset "UTF-8";
/* ============================================================
   04_サービス一覧_pc / 1440x3802
   ============================================================ */

.svc { position: relative; height: 2576px; padding-top: 60px; }  /* デザイン y=402 */
/* 装飾ブロブ（Figma: -202,66 / 1199,1377 / -139,2181） */
.deco-blob--s1 { top: -276px; left: calc(50% - 922px); width: 555px; height: 633px; }
.deco-blob--s2 { top: 1035px; left: calc(50% + 479px); width: 367px; height: 420px; }
.deco-blob--s3 { top: 1839px; left: calc(50% - 859px); width: 467px; height: 535px; }

/* ページ内タブ */
.svc-tabs {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  gap: 19px;
}
.svc-tabs a {
  display: grid;
  place-items: center;
  height: 45px;
  padding: 12px 20px 14px;
  border: 1px solid var(--green);
  border-radius: 40px;
  color: var(--green);
  font-size: 19px;
  line-height: 19px;
  font-weight: 500;
  transition: background-color .2s ease, color .2s ease;
}
.svc-tabs a:hover { background: var(--green); color: #fff; }
.svc-tabs__ico { display: none; }

.svc__list {
  position: relative;
  z-index: 1;
  width: var(--container);
  margin: 60px auto 0;          /* デザイン y=507 */
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.svc-card {
  display: flex;
  gap: 24px;
  padding: 64px 40px;
  background: #fff;
  border-radius: 10px;
}
.svc-card__no {
  writing-mode: vertical-rl;
  display: flex;
  align-items: center;
  gap: 16px;
  flex: none;
  font-family: var(--ff-en);
  font-size: 18px;
  line-height: 18px;
  color: var(--green-mid);
}
.svc-card__no .label__dot { width: 8px; height: 8px; }

.svc-card__inner { display: flex; gap: 40px; }
.svc-card__photo { flex: none; width: 520px; height: 340px; border-radius: 10px; }
.crop--svc01 > img { left:   0;  top: -15px; width: 541px; height: 406px; }
.crop--svc02 > img { left:   0;  top: -15px; width: 541px; height: 406px; }
.crop--svc03 > img { left:   0;  top: -14px; width: 536px; height: 404px; }
.crop--svc04 > img { left: -10px; top: -15px; width: 530px; height: 408px; }

.svc-card__body { width: 520px; }
.svc-card__chip {
  display: inline-flex;
  align-items: center;
  min-height: 74px;
  padding: 12px 16px 18px;
  background: var(--green);
  border-radius: 5px;
  color: #fff;
  font-size: 44px;
  line-height: 44px;
  font-weight: 700;
}
.svc-card__text {
  margin-top: 32px;
  font-size: 20px;
  line-height: 40px;
  letter-spacing: -.015em;
  font-weight: 400;
  color: #000;
}
.svc-card__btns { margin-top: 32px; display: flex; gap: 20px; }

/* オレンジの枠線ボタン */
.btn-round--outline-orange { border: 1px solid var(--orange); color: var(--orange); }
.btn-round--outline-orange:hover { background: var(--orange); color: #fff; }
.btn-round__ico--orange { background: var(--orange); color: #fff; }
.btn-round--outline-orange:hover .btn-round__ico--orange { background: #fff; color: var(--orange); }

/* ============================================================
   SP（760px 以下 / 04_サービス一覧）
   ============================================================ */
@media (max-width: 760px) {
  .deco-blob--s1, .deco-blob--s2, .deco-blob--s3 { display: none; }

  section.svc { height: auto; padding: 40px 0 60px; }
  .svc-tabs { flex-direction: column; padding: 0 16px; gap: 12px; }
  .svc-tabs a { display: flex; justify-content: space-between; align-items: center; height: auto; padding: 12px 20px; font-size: 15px; line-height: 20px; }
  .svc-tabs__ico { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--green); color: #fff; flex: none; transform: rotate(135deg); }
  .svc-tabs a:hover .svc-tabs__ico { background: #fff; color: var(--green); }

  .svc__list { width: auto; margin: 24px 16px 0; gap: 16px; }
  /* 1 行目：縦書きの番号ラベル＋写真 ／ 2 行目：見出し・本文・ボタンをカード幅いっぱいに */
  .svc-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 22px 9px;
    padding: 24px 16px;
  }
  .svc-card__no { align-self: start; gap: 6px; font-size: 11px; line-height: 11px; }
  .svc-card__no .label__dot { width: 4px; height: 4px; }
  .svc-card__inner { display: contents; }
  .svc-card__photo { grid-column: 2; width: 100%; height: auto; aspect-ratio: 290 / 160; }
  .crop--svc01 > img, .crop--svc02 > img, .crop--svc03 > img, .crop--svc04 > img {
    left: 0; top: 0; width: 100%; height: 100%;
  }
  .crop--svc03 > img { transform: scaleX(-1); }   /* SP デザインは左右反転 */
  /* sp.css のトップページ用 .svc-card__body（margin-top: 16px）を打ち消す */
  .svc-card .svc-card__body { grid-column: 1 / -1; width: 100%; margin-top: 0; }
  .svc-card__chip { min-height: 48px; padding: 9px 12px 11px; font-size: 24px; line-height: 24px; }
  .svc-card__text { margin-top: 16px; font-size: 14px; line-height: 24px; }
  .svc-card__btns { margin-top: 16px; flex-direction: column; gap: 12px; }
  .svc-card__btns .btn-round { width: 100%; }
}
