/* =====================================================================
   corporate-activities.css — 08 未来をつくる企業活動（固有）
   共通クラス(common.css)を上書きしない。差分はこのファイルのバリアントで。
   セクション帯: SDGs=透明(青背景)/白文字, 地域=薄グレー, コンプラ=濃紺,
   情報セキュリティ=薄グレー, まとめ=透明(青背景)＋白カード。
   ===================================================================== */

/* ===== 下層FV背景写真（Figma 08-corporate activities bg-image 2414:11340）：
   common.css .fv-photo（ページ先頭900px・下端マスクで光アニメへ溶かす）に画像のみ指定。
   旧 .subfv::before 方式（追いグラデで写真が沈む／FV高さ不足）は撤去。 ===== */
body[data-page="corporate-activities"] .fv-photo{ background-image:url("../pages/corporate-activities/images/fv-bg.webp") }

/* ===== FV テキスト ===== */
.ca-fv{ min-height:900px }
.ca-fv__lead{ max-width:1208px; display:flex; flex-direction:column; gap:48px; margin-top:118px /* Figma: リード見出し上端abs568（gap48=Figma 2414:11346） */ }
.ca-fv__lead-title{ font-size:var(--fz-h2,40px); line-height:1.3; font-weight:700; letter-spacing:1px; color:var(--c-white);
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-fv__lead-text{ font-size:var(--fz-body); line-height:var(--lh-body); letter-spacing:1px; color:var(--c-white) }
@media (max-width:767px){
  /* SP：min-height:900pxのSP取り残しでFVが空きすぎ→foundation同様に内容駆動へ（2026-07-13） */
  .ca-fv{ min-height:auto; padding-bottom:48px }
  .ca-fv__lead{ margin-top:38px }   /* FV縦余白さらに半減（77→38 SP 2026-07-13） */
  .ca-fv__lead-title{ font-size:24px }
  .ca-fv .subfv__title{ font-size:28px }  /* 指定により28px */
}
@media (max-width:374px){
  .ca-fv .subfv__title{ font-size:24px } /* 極小幅のクリップ回避（28pxより小さく） */
}

/* H2(40px)相当のタイトルを large 見出しに（contentsタイトルはH1=48px） */
.ca-h1{ font-size:var(--fz-h1); line-height:var(--lh-h1) }
@media (max-width:1023px){ .ca-h1{ font-size:36px } }
@media (max-width:767px){ .ca-h1{ font-size:26px } }

/* 共通ブロック（小見出し＋本文） */
.ca-block{ margin-bottom:56px }
.ca-block__title{ font-size:var(--fz-h3); line-height:var(--lh-h3); font-weight:700; letter-spacing:1px; color:var(--c-white); margin-bottom:48px; /* Figma: block内gap48 */
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-block__title--ink{ color:var(--c-main) }
.ca-block__text{ font-size:var(--fz-body); line-height:var(--lh-body); letter-spacing:1px; color:var(--c-white) }
.ca-block__text--ink{ color:var(--c-main) }
@media (max-width:767px){
  .ca-block{ margin-bottom:40px }
  .ca-block__title{ font-size:22px; margin-bottom:20px }
}

/* =====================================================================
   SDGs（透明＝固定青背景を見せる・白文字）
   ===================================================================== */
.ca-sdgs{ background:transparent; padding-top:88px } /* Figma: wrap先頭見出しy988 */
@media (min-width:1024px){ .ca-sdgs{ padding-bottom:144px } } /* Figma: セクション下余白144 */
/* 1024-1439px: ロゴ列も比例縮小するfr比（1440時 750+394 は従来と同一。2026-07-29 流体化） */
.ca-sdgs__intro{ margin-bottom:64px; display:grid; grid-template-columns:750fr 394fr; gap:64px; align-items:start } /* Figma: intro pb64 */
.ca-sdgs__intro-text{ min-width:0 }
.ca-sdgs__logo{ justify-self:end; max-width:394px; width:100%; margin-top:-16px }
.ca-sdgs__logo img{ display:block; width:100%; height:auto }
.ca-sdgs__grid{ gap:88px 48px }
.ca-sdgs-card{ display:flex; flex-direction:column; min-width:0; color:var(--c-white) }
.ca-sdgs-card__title{ font-size:var(--fz-h3); line-height:1.4; font-weight:700; letter-spacing:1px; margin-bottom:24px;
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
/* Figma 2414:11359/11360: カード見出し文・ラベルは 24px Bold lh1.5 ls1%（16px Regularではない） */
.ca-sdgs-card__lead{ font-size:var(--fz-h4); line-height:var(--lh-h4); font-weight:700; letter-spacing:0.01em; margin-bottom:24px;
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
/* Figma: 環境/人権・労働カードのリード末尾に空行1行（h90=2行+空行）→ padding で再現 */
.ca-sdgs-card__lead--pad{ padding-bottom:36px }
.ca-sdgs-card__label{ font-size:var(--fz-h4); line-height:var(--lh-h4); font-weight:700; letter-spacing:0.01em; margin-bottom:24px;
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-sdgs-card__list{ display:flex; flex-direction:column; gap:0; margin-bottom:24px; min-height:144px } /* Figma: 行間はlh1.8のみ・gap無し */
.ca-sdgs-card__list li{ position:relative; padding-left:1.2em; font-size:var(--fz-body); line-height:1.8; letter-spacing:1px }
.ca-sdgs-card__list li::before{ content:"・"; position:absolute; left:0; top:0 }
/* SDGsアイコン: Figma=108px正方を10px gapで横並び（カードごとに数が違う）。
   個別アイコンに切り出し、共通サイズ・整列・gapで統一。SPは縮小して折返し。 */
.ca-sdgs-card__icons{ display:flex; flex-wrap:wrap; gap:8px; margin-top:0;
  list-style:none; padding:0 }
.ca-sdgs-card__icons li{ flex:0 0 auto; line-height:0 }
.ca-sdgs-card__icons img{ display:block; width:108px; height:108px; }
@media (max-width:767px){
  .ca-sdgs__intro{ margin-bottom:40px }
  .ca-sdgs__intro{ grid-template-columns:1fr; gap:32px }
  .ca-sdgs__logo{ justify-self:start; max-width:280px; margin-top:0 }
  .ca-sdgs__grid{ gap:40px }
  .ca-sdgs-card__title{ font-size:22px; margin-bottom:16px }
  .ca-sdgs-card__lead,.ca-sdgs-card__label{ font-size:18px }
  .ca-sdgs-card__lead--pad{ padding-bottom:0 }
  .ca-sdgs-card__list{ min-height:0 }
  /* SP: 横幅に応じて全アイコン同一サイズで折返し（チグハグ防止） */
  .ca-sdgs-card__icons{ gap:8px }
  .ca-sdgs-card__icons img{ width:84px; height:84px }
}
@media (max-width:374px){
  .ca-sdgs-card__icons img{ width:72px; height:72px }
}

/* =====================================================================
   薄グレー帯 / 濃紺帯（背景色あり＝固定青を隠す）
   ===================================================================== */
.ca-light{
  background:var(--c-grad-end); /* Figma正: フラット#eef0f6（旧: 青みグラデ#c3cfeb） */
}
/* コンプライアンス帯: Figmaは塗り無し＝固定青背景(.site-bg)が透ける（SDGs/まとめと同じ
   透明帯の規約。Aboutでも採用済み）。白文字。 */
.ca-dark{ background:transparent; color:var(--c-white) }
/* Figma: 本ページの各セクションは上下パディング144（common .section の96より広い） */
@media (min-width:1024px){
  .ca-light,.ca-dark,.ca-summary{ padding:144px 0 }
}

/* =====================================================================
   テキスト＋画像の2カラム行
   ===================================================================== */
/* 1024-1439px: 画像列も比例縮小するfr比（1440時 580+580 は従来と同一。2026-07-29 流体化） */
.ca-row{ display:grid; grid-template-columns:580fr 580fr; gap:48px;
  align-items:start; margin-top:64px } /* Figma: テキスト列は上揃え（センター揃えではない） */
.ca-row--top{ align-items:start }
/* Figma: 地域セクションの行間・block→行 = 80（PCのみ）
   HP-v2 [row61]: 旧#compliance（block→行=120）はセクション統合により削除。統合後の#communityは
   3カード（中小企業庁/東京商工会議所/経産省）とも80pxで統一（合理的デフォルト・要確認なら120へ変更可） */
@media (min-width:1024px){
  #community .ca-row{ margin-top:80px }
}
.ca-row__text{ min-width:0; display:flex; flex-direction:column; gap:32px }
.ca-row__title{ font-size:var(--fz-h3); line-height:var(--lh-h3); font-weight:700; letter-spacing:0.01em; color:var(--c-main);
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-row__title--light{ color:var(--c-white) }
.ca-row__desc{ font-size:var(--fz-body); line-height:var(--lh-body); letter-spacing:1px; color:var(--c-main) }
.ca-row__desc--ink{ color:var(--c-main) }
.ca-row__desc--light{ color:var(--c-white) }
.ca-row__media{ min-width:0 }
/* Figmaに角丸/影なし＝白台紙にcontainで配置（直角） */
.ca-row__media img{ width:100%; height:auto; aspect-ratio:580/387; object-fit:contain; background:var(--c-white) }
/* ロゴ画像はそのままの台紙色（白orオレンジ）でcover表示 */
.ca-row__media--plain img{ object-fit:cover }
/* 大田区優工場ロゴ行はFigma正版に無いため削除（2026-07-07 parity） */
@media (max-width:1023px){ .ca-row{ gap:32px } .ca-row__title{ font-size:26px } }
@media (max-width:767px){
  .ca-row{ grid-template-columns:1fr; margin-top:40px }
  .ca-row__text{ gap:20px }
  .ca-row__title{ font-size:22px }
  .ca-row__media{ order:2 }
}

/* =====================================================================
   まとめ帯（透明＝青背景の上に白カード）
   ===================================================================== */
.ca-summary{ background:transparent }
/* Figmaに角丸/影なし＝白カード直角 */
.ca-summary__card{ background:var(--c-white); padding:80px 48px;
  display:flex; flex-direction:column; gap:48px }
.ca-summary__head{ display:flex; flex-direction:column; gap:32px; text-align:center }
.ca-summary__title{ font-size:var(--fz-h3); line-height:1.4; font-weight:700; letter-spacing:0.01em; color:var(--c-accent); /* Figma: ls1%=0.32px */
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-summary__lead{ font-size:var(--fz-lead); line-height:var(--lh-body); letter-spacing:0.01em; color:var(--c-main);
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-summary__cols{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px }
.ca-policy{ border:1px solid var(--c-line); padding:32px 24px; display:flex; flex-direction:column; gap:32px } /* Figma: gap32 */
.ca-policy__title{ font-size:var(--fz-h3); line-height:1.4; font-weight:700; letter-spacing:1px; color:var(--c-main); text-align:center;
  text-box-trim:trim-both; text-box-edge:cap alphabetic }
.ca-policy__text{ font-size:var(--fz-body); line-height:var(--lh-body); letter-spacing:1px; color:var(--c-main) }
@media (max-width:767px){
  .ca-summary__card{ padding:40px 20px; gap:32px }
  .ca-summary__head{ gap:20px }
  .ca-summary__title{ font-size:20px }
  .ca-summary__cols{ grid-template-columns:1fr; gap:20px }
  .ca-policy__title{ font-size:22px }
}
